Nikkey -- normal practice with the OpportunityLineitem and PricebookEntry table is the following (assuming you have Products enabled which you do):
- Each PricebookEntry row represents the list price of a given SKU (Product2) on a given pricebook for a given currency. This is contained in a field named
UnitPrice
(API name)
- Each OpportunityLineItem refers to a specific PricebookEntry row (that is what the UI does when you pick a product for an Opportunity)
OpportunityLineItem.Listprice
is equal to OpportunityLineItem.PricebookEntry.unitPrice
- The user can then enter the price of the Product as sold to the customer (or as expected to be sold once opportunity closes). This goes into
OpportunityLineItem.UnitPrice
(API name)
By way of example, if Product2: 00Foo
on Pricebook X has price of 10.00 USD, then when selected on the Opportunity as an OpportunityLineitem will have:
- OpportunityLineItem.ListPrice = 10.00 (this comes from the product catalog and is not editable)
- OpportunityLineItem.UnitPrice = 8.00 (this is user editable)
So, if what you are trying to do is default the OLI.Unitprice to 0.01 and you can't set up the PricebookEntry.UnitPrice (i.e. List price) to be 0.01, then you will need a trigger on OLI to do the defaulting - formulas won't work as OLI.Unitprice is a user entry field