Can I used DemandTools to add Products to Price Books?
Yes. DemandTools MassEffect provides access to the Product2, Pricebook2, PriceBookEntry, and OpportunityLineItems tables and can be used to upload records to the various tables.Here is a brief overview of what is described in the Salesforce's help documentation (Help and Training) with regard to adding products to Price Books:
Products can be added to a Price Book by inserting into the 'PricebookEntry' table.
NOTE: Products CANNOT be added to a custom Price Book until they have been added to the Standard Price Book. The following error will be returned by Salesforce to the DemandTools logfile when attempting to insert into a custom Price Book BEFORE adding to the Standard Price Book:
Message: No standard price defined for this product
The PricebookEntry table contains the following fields:
- Currency ISO Code
- List Price (aka Unit Price)
- Use Standard Price
NOTE: The ID's (not the names) for the PriceBookID and ProductID fields will be needed to complete the insert. The PriceBookID can be found by querying the Pricebook2 table. The ProductID can be found by querying the Product2 table.
Create an input file with PriceBookID, ProductID and List Price, then set/map as follows:
- Active -> right click and use "Add Constant" to set as "True"
- Currency ISO Code ->leave blank for default, or map over a specific currency code
- List Price (aka Unit Price) -> map from input file
- PriceBookID -> map from input file
- ProductID -> map from input file
- Use Standard Price: This should be TRUE or FALSE and indicates whether to use the price from Standard Price Book or not. Can also be left blank in which case will default to FALSE.
- FALSE: THIS IS THE ONLY OPTION WHEN ADDING PRODUCTS TO THE STANDARD PRICE BOOK. When inserting into a custom Price Book, this means you will use the Unit Price from the custom Price Book and NOT the Unit Price from the Standard Price Book.
- TRUE: This choice will use the Unit Price from the Standard Price Book. A UNIT PRICE MUST STILL BE MAPPED AND THE UNIT PRICE MUST BE THE SAME AS THE LIST PRICE FROM THE STANDARD PRICE BOOK.
If Unit Price is NOT mapped, user will get the following error in the logfile: Message: Required fields are missing: [UnitPrice]
If Unit Price IS NOT THE SAME as the List/Unit Price specified in the Standard Price Book table will get the following error in the logfile: Message: field integrity exception: UnitPrice (unit price not equal to standard price)
To add Products with 2 currencies, add the Product again to the PricebookEntry table and just change the currency field.