It is worth reviewing the schema between these SObjects: Opportunity, Opportunity Product, Pricebook Entry, Product2, Pricebook2
- Create a New Workflow on Opportunity Product
- Evaluate the rule only upon Creation
- Formula evaluates to true expression is simply
true
- that is, the WF runs every time an Opportunity Product is created
- Workflow Action is a Field Update of field
IIS_Cost__c
defined to be the value of (use Formula Value to set value) Opportunity.Pricebook2.standard_cost__c
This sequence works because before the Opportunity Product can be created, SFDC prompts for a Pricebook to assign to the Opportunity. Hence, when the workflow executes upon creation of the Opportunity Product, the lookup relationship from Opportunity Product -> Opportunity -> Pricebook2
exists, allowing you to select Standard_Cost__c
As IIS Cost is presumably a currency field, it can be edited by the user after the Opportunity Product is created.
Curiously, SFDC does not permit traversal of the relationship: Opportunity Product -> PricebookEntry -> Pricebook2
in a workflow field update formula.
Note also that I wold think that Standard Cost really belongs as a custom field on PricebookEntry or arguably, on Product2 as standard cost is associated with a SKU, not a pricebook - but I'm sure you know your application better than I.