Hierarchical Price Books Setup

Prerequisites

To setup and use Hierarchical Price Books, you need to:

Have these user licenses Have these permissions Complete these tasks
and review these topics
before continuing

To use hierarchical price books on:

Jobs Tickets Quotes

Use any
release channel

You must use one of the following release channels:

  • Sync V4 Beta

  • Sync V4

  • V4 Quarterly Beta

  • V4 Quarterly

Price Book Item must be from the Job’s Price Book hierarchical family. Use the Item Picker Lightning Component and the options to add items from a Price Book to add a new Ticket Item.

Only pricebooks in the same hierarchical tree (up to 5 price books deep) are allowed for:

  • Ticket Items

  • Quote Items

  • Invoice Items

  • Job Resource

This restriction is done via validation rules.

Step-by-Step Guides

To set up the Hierarchical Price Books Feature, complete each of these sections in order:

Configure FieldFX Objects

  1. Access FieldFX Back Office.

  2. Switch to Salesforce Classic.

  3. From Setup, enter object in the Quick Find box, then select Objects.

  4. Enable the following checkboxes and disable these rules:

  5. Continue with Update Translation Files.

Enable Job Object Extended Pricing Checkbox

Add an Enable Extended Pricing checkbox to the Job object.

  1. Click Job.

  2. Under Custom Fields & Relationships, click New.

  3. Select Formula.

  4. Click Next.

  5. In Field Label, enter "Enable Extended Pricing".

  6. Under Formula Return Type, select "Checkbox".

  7. Click Next.

  8. In Enable Extended Pricing (Checkbox), enter the following formula:

    NOT(ISBLANK(FX5__Price_Book__r.FX5__Parent_Price_Book__c))

    Use this formula to ensure that Enable Extended Pricing gets selected automatically for a job when its price book has a designated Parent Price Book.

  9. Click Next.

  10. Click Visible twice.

  11. Click Next.

  12. Select the page layouts on which to include the checkbox.

  13. Click Save.

  14. Grant permissions for the checkbox.

  15. Continue with Enable Quote Object Extended Pricing Checkbox.

Enable Quote Object Extended Pricing Checkbox

Add an Enable Extended Pricing checkbox to the Quote object:

  1. On the Objects list, click Quote.

  2. Under Custom Fields & Relationships, click New.

  3. Select Formula.

  4. Click Next.

  5. In Field Label, enter "Enable Extended Pricing".

  6. Under Formula Return Type, select "Checkbox".

  7. Click Next.

  8. In Enable Extended Pricing (Checkbox), enter the following formula:

    NOT(ISBLANK(FX5__Price_Book__r.FX5__Parent_Price_Book__c))

    Use this formula to ensure that Enable Extended Pricing gets selected automatically for a quote when its price book has a designated Parent Price Book.

  9. Click Next.

  10. Click Visible twice.

  11. Click Next.

  12. Select the page layouts on which to include the checkbox.

  13. Click Save.

  14. Grant permissions for the checkbox.

  15. Continue with Disable the Job Price Book Validation Rule.

Disable the Job Price Book Validation Rule

Disable the JobPriceBook validation rule:

  1. In the Objects list, click Ticket Item.

  2. Under Validation Rules, click Edit next to JobPriceBook.

  3. Deselect Active.

  4. Click Save.

  5. Continue with Run Enable Extended Pricing Checkboxes Scripts.

Run Enable Extended Pricing Checkboxes Scripts

Run scripts for the Enable Extended Pricing checkboxes:

  1. Access Workbench.

  2. Select Utilities | Apex Execute.

  3. Enter the following script:

    System.debug(FX5.FXWorkerLauncher.DoWork('FX5.CustomFieldInfoHandler', null));
  4. Click Execute.

  5. Continue with Update Translation Files.

Update Translation Files

Add the following keys to static resources used to translate user interface text:

"Console_Flyout_ExtendedPriceBookTableTitle": "Extended Price Book Items",
"QuoteItems_ShowMoreFromExtendedPriceBook": "Show more from extended price book",
"TicketItems_ShowMoreFromExtendedPriceBook": "Show more from extended price book",

Update Price Book Items

  1. Open a new tab in your browser

  2. Access Workbench

  3. Select Utilities | Apex Execute

  4. Enter the following script:

    FX5.FXBatchableLauncher.Run('FX5.CatalogItemPriceBookIndexBatchable');
  5. Click Execute.

  6. Close Workbench.

  7. Move back to FieldFX Back Office.

  8. From Setup, enter apex jobs in the Quick Find box, then select Apex Jobs.

  9. Monitor the status of the CatalogItemPriceBookBatcher jobs and only proceed once the final job processes.

  10. Continue with Add a Price Book Hierarchy.

Add a Price Book Hierarchy

  1. Access FieldFX Back Office.

  2. Open the Price Books tab.

    Open the Price Books tab that uses the following icon:

    Screenshot of the Price Book tab
  3. Open a price book you want as the lowest in the hierarchy.

  4. Click Edit.

  5. In Parent Price Book, select the price book under which to place this price book.

  6. Click Save.

  7. Open a price book you want as the next level in the hierarchy.

  8. Click Edit.

  9. In Parent Price Book, select the price book under which to place this price book.

  10. Click Save.

  11. Repeat these steps for other price books.

  12. Continue with Disable Certain Validation Rules.

Disable Certain Validation Rules

Disable validation rules that do not take into account price book hierarchies, like the managed QuotePriceBook validation rule on the Quote Item object.

To disable that rule, follow these steps then repeat for any custom validation rules that don’t account for price book hierarchies.

  1. From Setup, select the Object Manager.

  2. Select the Quote Item object.

  3. Select Validation Rules from the left panel.

  4. Select QuotePricebook from the list.

  5. Select Edit.

  6. Deselect the Active checkbox.

  7. Click Save.