## Setting Up EnterpriseOne Advanced Pricing

This chapter provides an overview of the setup requirements and discusses how to:

- Set up advanced pricing constants.

- Work with the Accelerated Pricing Resolution Engine.

- Set up automatic accounting instructions (AAIs) for Advanced Pricing.

### Understanding the Setup Requirements

You can set up JD Edwards EnterpriseOne Advanced Pricing to meet your company's needs. JD Edwards EnterpriseOne Advanced Pricing integrates with JD Edwards EnterpriseOne Sales Order Management for efficiency and accuracy.

This table lists the JD Edwards EnterpriseOne Advanced Pricing setup features:

Feature | Description
Constants | Constants provide the system with information: System constants determine default information for the entire system. Pricing constants determine pricing information. Batch control constants determine whether an application requires management approval and batch control. Branch/plant constants control day-to-day transactions within a branch/plant. Location format determines how you identify item storage places in a branch/plant. Item availability defines how the system calculates the number of items that each branch/plant contains.
AAIs | AAIs provide JD Edwards EnterpriseOne Sales Order Management with accounting information and general ledger relationships for interacting with JD Edwards EnterpriseOne General Accounting.

You must set up these JD Edwards EnterpriseOne Advanced Pricing features in other EnterpriseOne systems, such as Inventory Management, Procurement, Sales Order Management, and General Accounting:

Feature | Description
Address Book Revisions | You can enter category codes with which you create customer groups.
Item Master | You can define the sales and purchase levels. You can define prices for sales orders at the item level, the item/branch plant, or a location within the branch/plant. For purchase orders, the system uses the purchase price level to identify whether the system retrieves the unit cost from the F4105 or the F41061 table.
Item Branch/Plant Information | You can enter category codes with which you create item groups.
Customer Billing Instructions | You can set up the customer information that the system uses as a price default, such as the adjustment schedule or customer group.
Supplier Instructions | You can set up the supplier information that the system uses as a pricing default, such as the adjustment schedule or supplier group.
Landed Costs | You can set up landed costs to specify the costs that exceed the purchase price of an item, such as delivery charges, broker fees, and so forth.
Standard Units of Measure | You can set up the standard units of measure for all items across all branch/plants to convert to the specified pricing unit of measure.

Additionally, if you use JD Edwards EnterpriseOne Advanced Pricing in conjunction with the JD Edwards Grower, Pricing, and Payments system and the JD Edwards Grower Management system, you must ensure that you select the Advanced Procurement Pricing constant on the Pricing Constants form and activate the JD Edwards Grower Management system.

To use JD Edwards EnterpriseOne Advanced Pricing in conjunction with the JD Edwards EnterpriseOne Quality Management system, you must activate the JD Edwards EnterpriseOne Quality Management system.

See Also

Entering Address Book Records

Entering Item Master Information

Entering Branch/Plant Information

Setting Up Constants

Setting Up Standard Units of Measure

Setting Up Landed Costs

Understanding Supplier Prices and Discount Rules

Generating Supplier Prices in an Alternate Currency

Activating EnterpriseOne Quality Management

Configuring the JD Edwards EnterpriseOne Grower Management System

Setting Up Grower Pricing and Payments

### Setting Up Advanced Pricing Constants

This section provides an overview of Advanced Pricing constants and discusses how to set up:

- System constants

- Pricing constants

#### Understanding Advanced Pricing Constants

Set up system constants to determine which functions to perform. For example, if you have several branch/plants and use different units of measure for the items in each branch/plant, you can set a system constant to automatically convert units of measure by branch. System constants apply to all branch/plants. You cannot customize system constants for each branch/plant.

For Advanced Pricing, the system constants define how the system retrieves price adjustments for sales orders and purchase orders. When you set up base prices and adjustments, you can use various units of measure and effective date ranges. The system retrieves the unit cost for a purchase order detail line based on either the transaction unit of measure, the purchasing unit of measure, or the primary unit of measure. Additionally, you can retrieve the price based on specific dates in the order process. For example, you can base the sales price on the date that the item is shipped versus the date that the order is entered in the system.

The system uses pricing constants to control which JD Edwards EnterpriseOne system— Sales Order Management, Procurement, or both—uses JD Edwards EnterpriseOne Advanced Pricing. Additionally, you can assign the special characters in the price formulas for sales or purchase order adjustments. You can also specify other controls, such as using the sold to address book number to retrieve direct price adjustments, applying pricing approvals, or use promotional pricing. You can set the Sales Pricing on Override Price, Procurement Pricing on Override Price, or both options to override the price and perform manual price adjustments and view the price history records. To increase system performance, you can activate the Accelerated Pricing Resolution Engine.

Like system constants, pricing constants apply to all branch/plants. You cannot customize the settings for each branch/plant.

#### Forms Used to Set Up Advanced Pricing Constants

Form Name | FormID | Navigation | Usage
System Constants | W41001F | Sales Order Management Setup (G4241), Branch/Plant Constants Select Sys Constants (system constants) from the Form menu on the Work With Branch/Plant Constants form. | Set up and review system constants.
Pricing Constants | W41001D | Select Price Constants from the Form menu on the Work With Branch/Plant Constants form. | Set up and review pricing constants.

#### Setting Up System Constants

Access the System Constants form.

Sales Price Retrieval UOM (sales price retrieval unit of measure) | Enter a user-defined code (UDC) 40/SU to specify the unit of measure that the system uses for retrieving base prices and price adjustments for sales order processing, service and warranty management, and ship and debit processing. The system enables you to define base prices in the F4106 table and price adjustments in the F4072 table in various units of measure. If the base price or price adjustments are not found in the specified unit of measure, then the system uses the primary unit of measure for the item.
Sales Price Based On Date | Enter a value to determine how the system updates the Price Effective Date in the F4201 and F4211 tables. In JD Edwards EnterpriseOne Sales Order Management, the system uses the Price Effective Date to retrieve the base price from the F4201 table and price adjustments from the F4211 table.
Purchase Price Retrieval UOM (purchase price retrieval unit of measure) | Enter a value from UDC 40/PU to specify the unit of measure that the system retrieves for the purchase base price from the F41061 table during purchase order processing. If you use JD Edwards EnterpriseOne Advanced Pricing and Procurement, complete this field. If you specify the unit of measure for transaction or pricing and the system does not find a record in that unit of measure, the system repeats the process using the primary unit of measure of the item.
Purchase Rebate Category Code | Enter a UDC (43/RU) to determine which category code that the system uses in the criteria for inclusion comparison. If you use JD Edwards EnterpriseOne Advanced Pricing and Procurement, complete this field.
Preference Schedule | Enter a value from UDC 40/AP to identify the advanced preference schedule that the system uses when resolving preferences. The advanced preference schedule determines which preferences the system resolves when using the advanced preference functionality. You cannot maintain preference schedules directly through UDCs, but you can maintain preference schedules by using the Price Adjustment Schedule program (P4070). If you use advanced preferences, complete this field.
Pref Retrieval UOM (preference retrieval unit of measure) | Enter a value from UDC 40/RU to specify the unit of measure that the system uses for retrieving advanced preference adjustments during sales order processing. The system enables you to define the advanced preference adjustments in the F4072 table in various unit of measures. If you use advanced preferences, complete this field. If you specify the unit of measure for transaction or pricing and the system does not locate a record in that unit of measure, the system repeats the process using the primary unit of measure of the item.
Accelerated Pricing Resolution Engine | Enter 1 to use the Accelerated Pricing Resolution Engine. When you enter 1 in this field, you must then access the Accelerated Pricing Resolution Engine Workbench program (P4530) to load the cache. Anytime you restart the system, you must access the Accelerated Pricing Resolution Engine Workbench program to load the cache. Note. JD Edwards recommends that you are familiar with the functions and limitations of the Accelerated Pricing Resolution Engine, as well as how to manage the Accelerated Pricing Resolution Engine before you enable its use. When any changes are made to cached tables that the system accesses for transactions (for example, sales order entry), the system does not use the changes until you reload the cache. See Working with the Accelerated Pricing Resolution Engine. Values are: Blank or 0: Do not allow use of the Accelerated Pricing Resolution Engine. 1: Allow use of the Accelerated Pricing Resolution Engine.

#### Setting Up Pricing Constants

Access the Pricing Constants form.

Advanced Sales Pricing (Y/N) (advanced sales pricing (yes/no)) | Indicate how the system determines the price of items within the system. If your system includes the JD Edwards EnterpriseOne Advanced Pricing system, you may use this feature. Values are: Y: Yes, use the JD Edwards EnterpriseOne Advanced Pricing system. N: No, do not use the JD Edwards EnterpriseOne Advanced Pricing system.
Advanced Procurement Pricing (Y/N) (advanced procurement pricing (yes/no)) | Specify whether to apply advanced pricing to the purchase price. Values are: Y: Apply advanced pricing to the purchase price. N: Apply standard price adjustments to the purchase price.
Require Price Approval (Y/N) (require price approval (yes/no)) | Enter the value that specifies whether all price changes are provided through price approval workflow. Values are: Y: Yes, apply price approval workflow. N: No, do not apply price approval workflow.
Adjustment Retrieval Method | Enter a value to specify how the pricing calculation program selects the price adjustments. Leave blank to select a named price adjustment schedule. Blank is the default. Enter 1 to select the pricing address number. Enter 2 to select both a schedule and the address number.
Sales Pricing on Override Price | Specify whether to apply additional adjustments when overriding pricing on sales order detail lines. Values are: Y: Yes, apply adjustments for an override price. N: No, do not apply adjustments for an override price.
Procurement Pricing on Override Price | Specify whether to apply additional adjustments when overriding pricing on purchase order detail lines. Values are: Y: Yes, apply adjustments for an override price. N: No, do not apply adjustments for an override price.
Structure Type for Sales Pricing | Enter a UDC, (01/TS) that identifies a type of organizational structure that has its own hierarchy in the JD Edwards EnterpriseOne Address Book system (for example, e-mail). When you create a parent/child relationship for the JD Edwards EnterpriseOne Accounts Receivable system, the structure type must be blank.
Use Ship To Address? | Select to use the ship to address book number to retrieve direct price adjustments. The system uses this address number as the starting point for processing through the buying structure to find direct price adjustments. Clear to use the sold to address number.
Symbol to Identify Variable Tables | Specify the character that you want to use to identify a variable table in the JD Edwards EnterpriseOne Advanced Pricing system. When you precede a table name by this character, the system recognizes the name as a table name for formula pricing calculations, such as alphabetic, numeric, and mathematical functions. For example, the +, −, ×, and ÷ symbols are not valid in this field.
Symbol to Identify UOM (symbol to identify unit of measure) | Specify the character that you want to use to identify a unit of measure in advanced pricing formulas. When you precede a unit of measure by this character, the system recognizes the entry as a unit of measure for formula pricing calculations, such as alphabetic, numeric, and mathematical functions. For example, the +, −, ×, and ÷ symbols are not valid in this field.
Symbol to Identify Currency | Specify the character that you want to use to identify a currency code in advanced pricing formulas. When you enter a precede a currency code by this character, the system recognizes the entry as a currency code for formula pricing calculations, such as alphabetic, numeric, and mathematical function. For example, the +, −, ×, and ÷ symbols are not valid in this field.
Symbol to Identify Data Fields | Specify the character that you want to use to identify database fields in advanced pricing formulas. When you precede a database field by this character, the system recognizes the entry as a database field for formula pricing calculations, such as alphabetic, numeric, and mathematical function. For example, the +, −, ×, and ÷ symbols are not valid in this field.
Symbol to Identify Test Result Name | Enter a character to identify a test result name in an advanced pricing formula in your system. When you enter a test result name preceded by this character, the system recognizes the name as a test result name for formula pricing calculations. Alphabetic, numeric, parenthesis, and mathematical function (for example, +, −, ×, and ÷) symbols are not valid in this field. Note. When you set up test result names, it is recommended that you do not use a user-defined character in the Test Result Name field. For example, do not use any user-defined characters that you set on the Pricing Constants form or special characters, such as &, %, !, ?, @, $, | or #. When you use a test result name in conjunction with an advanced pricing formula, the system does not interpret this symbol in both the formula and the test result name. For example, you want to reduce the purchase price of grapes by 10 percent for every Brix test result below 23. A Brix test result of 22 reduces the price by 10 percent, a Brix test result of 21 reduces the price by 20 percent, and so forth. For example, the advanced pricing formula might be: ((23 − @BRIX) × −.1) × #UPRC In this example, the @ symbol is part of the formula to determine the price of the grapes based on the Brix test result. If you use a symbol in the formula and add a test result name with a symbol, the system does not distinguish between the two symbols.
Symbol to Identify Function Name | Enter a character to identify a function name in an advanced pricing formula in your system. When you enter a function name preceded by this character, the system recognizes the name as a function name for formula pricing calculations. Alphabetic, numeric, parenthesis, and mathematical function (for example, +, −, ×, and ÷) values are not valid in this field.
Symbol to Identify Func. Arg. Separator (symbol to identify function argument separator) | Enter a character to identify a function argument separator in an advanced pricing formula in your system. When you enter a function, the system recognizes the arguments of the function based on the function argument separator. Alphabetic, numeric, parenthesis, and mathematical function (for example, +, −, ×, and ÷) values are not valid in this field.
Symbol to Identify Adjustment Detail Ref (symbol to identify adjustment detail reference) | Enter a character to identify an adjustment detail reference sequence in an advanced pricing formula in your system. When you enter an adjustment detail reference preceded by this character, the system recognizes the sequence as an adjustment detail reference sequence for formula pricing calculations. Alphabetic, numeric, parenthesis, and mathematical function (for example, +, −, ×, and ÷) values are not valid in this field.
Promotions System Flag | Enter a UDC, (40P/PS) to use an internal or third-party promotion package. Values are: 0: No promotions system. 1: JD Edwards EnterpriseOne promotions system. 2: Third-party promotions system.
Multiple Promotions Resolution Flag | Enter a UDC, (40P/PR) to specify which promotion to use when more than one promotion is in effect for an item or customer.

### Working with the Accelerated Pricing Resolution Engine

This section provides an overview of the accelerated pricing resolution engine and discusses how to set up the accelerated pricing resolution engine.

#### Understanding the Accelerated Pricing Resolution Engine

As you use the JD Edwards EnterpriseOne Advanced Pricing system, you can create a substantial number of records for the system to process. You can use the accelerated pricing resolution engine to increase system performance and give users quicker access to pricing and advanced preference data. You must first set the Accelerated Pricing Resolution Engine field on the System Constants form.

Whenever you start or restart your system, you must then manually load the cache using the Accelerated Pricing Resolution Engine Workbench program (P4530).

The cache contains data from these JD Edwards EnterpriseOne Advanced Pricing tables:

- Price Adjustment Detail (F4072).

- Group Code Key Definition Table (F4092).

- Item Key ID Master File (F40941).

- Customer Key ID Master File (F40942).

- Order Group Key ID Master File (F40943).

When the accelerated pricing resolution engine loads the cache, it runs the Accelerated Pricing Resolution (R45390) UBE in subsystem. Occasionally, your company might make substantial changes to your system setup, pricing structure, or pricing tables. When this occurs, you must access the Accelerated Pricing Resolution Engine Workbench program and reload the cache. Any substantial changes you make will not be available for the system to calculate until you reload the cache. It is recommended that you perform this task during off-peak hours, as it can take substantial system resources to reload the cache. While the cache is loading, the system accesses data directly from the database. When the reload is complete, the system reverts to accessing data using the cache. Additionally, occasions might occur when you need to disable the cache. You use the Accelerated Pricing Resolution Engine Workbench program to do so.

#### Form Used to Work with the Accelerated Pricing Resolution Engine

Form Name | FormID | Navigation | Usage
Accelerated Pricing Resolution Engine | W4530A | Advanced Operations (G423114), Accelerated Pricing Resolution Engine To load the cache, click the Load Cache button on the Accelerated Pricing Resolution Engine Workbench form. To reload the cache, click the Reload Cache button on the Accelerated Pricing Resolution Engine form. To disable the cache, click the Terminate Cache button on the Accelerated Pricing Resolution Engine form. To refresh the cache state information displayed on the form, click the Refresh State button on the Accelerated Pricing Resolution Engine form. | Work with the accelerated pricing resolution engine.

#### Working with the Accelerated Pricing Resolution Engine

Access the Accelerated Pricing Resolution Engine Workbench form.

Refresh Current State | Click to retrieve and display the state of the cache.
Load Cache | Click to load the cache.
Reload Cache | Click to reload the cache.
Terminate Cache | Click to deactivate the cache and remove the cache from memory.
Data Source | Displays the source of the data which the system retrieves and loads into the cache. The system bases the data source on OCM mappings for the Environment, Role and User fields.
Sign In Environment | Displays the environment which the user is currently accessing. If this environment does not match the value in the Cache Load Environment field, you should log out and log into the Cache Load Environment to perform a cache reload or terminate operations against the cache.
Cache State | Displays the current state of the cache. Values are: Active: Pricing operations are retrieving pricing data from the cache. Inactive: Pricing operations are retrieving pricing data from the database tables and not from the cache. Invalid: An exception condition has occurred. Pricing operations are retrieving pricing data from the database tables and the system is not retrieving pricing data from the cache. To reactivate the cache, you must click the Terminate button and then click the Reload button.
Cache Load Environment | Displays the name of the environment the system uses to load the cache for the data source. The user must log into this environment to perform a cache reload and terminate operations on the cache for this data source.
Reference Count | Displays the number of EnterpriseOne processes that are currently attached to the cache. This number includes any Call Object Kernel or run batch processes that were actively accessing cache data at the time the system retrieves state information.
Date of Last Load | Displays the date and time you initiate the most recent cache load or reload.
Memory Usage | Displays the approximate size of the cache in memory in kilobytes. This number represents the amount of memory the system requires to store the data and manage the cache in memory. This value is approximate and actual allocation might vary by operating system.
Current Cursor Count | Displays the number of concurrent cursors open in the cache at the time the system retrieves the cache state information. Cache operations are very fast and this field might frequently display zero (0). Cursor count must be zero before reload and terminate operations begin.
Max Cursor Count | Displays the maximum number of concurrent open cursors that access the cache from the original load of the cache. The system does not reset this number when you reload the cache. If the system attempts to open a cursor at a time when the maximum number of cursors are in use, the system will direct the pricing operation to retrieve data from the database table instead the cache. If this number matches the maximum number of cursors the system permits, you should consider increasing the cursor limit. You can increase or decrease the cursor limit to optimize the cache memory usage by adjusting the constant MRDB_CURSOR_MEM_SPACE_SIZE in business function B4504640.

### Setting Up AAIs for Advanced Pricing

This section provides an overview of AAIs for Advanced Pricing, lists prerequisites, and discusses how to set up AAIs in Advanced Pricing.

#### Understanding AAIs for Advanced Pricing

AAIs provide the rules that the system uses to create general ledger entries automatically. Each program that posts to the general ledger uses AAIs.

For logistics systems, you must create AAIs for each unique combination of company, document type, and general ledger class that you anticipate using. Each AAI points to a specific general ledger account consisting of a cost center, an object, and a subsidiary.

After you define AAIs, the system can appropriately record transactions. When you run a sales update, the system creates entries for inventory accounts, for expense accounts for cost of goods sold (COGS), and for revenue accounts for orders. You may also offset accounts for freight, taxes, or any other charges that are associated with orders.

AAIs enable you to direct how various journal entries are created by sales order transactions. Each AAI contains combinations of:

- Company.

- Document type.

- General Ledger class code.

- General Ledger account.

You can create various combinations to direct journal entries to different offset accounts. For example, phone-in orders might affect different general ledger accounts than over-the-counter orders.

Note. When using JD Edwards EnterpriseOne Advanced Pricing and Procurement, the system does not use AAIs for purchase order adjustments. For example, the system does not create entries for the additional discounts that are applied to the unit cost when you match a voucher to a receipt.

AAIs Used in the JD Edwards EnterpriseOne Advanced Pricing System

This table lists AAIs used in JD Edwards EnterpriseOne Advanced Pricing:

AAI | Description
4270 Price Adjustments | Specifies the sales discount account for entries that are created by the Sales Update program (R42800).
4280 Rebate Payable | Specifies accrued accounts for offset entries.
4234 Ship and Debit | Specifies temporarily accrued accounts, which are recognized as a COGS sales reduction.

After you review and revise the existing AAIs for your business needs, you might need to set up additional AAI items.

#### Prerequisites

Before you complete the tasks in this section:

- Verify that account master information is set up.

- Verify that companies are set up.

- Verify that transaction types are set up.

- Verify that document types are set up.

- Verify that general ledger class codes are set up.

- Determine the account numbers for recording transactions.

#### Form Used to Set Up AAIs for Advanced Pricing

Form Name | FormID | Navigation | Usage
Account Revisions | W40950D | Sales Order Management Setup (G4241), Automatic Accounting Instructions On Work With AAIs, locate the AAI and click Select. | Set up and revise AAIs.

#### Setting up AAIs

Access the Account Revisions form.

Obj Acct (object account) | Specify the portion of a general ledger account that refers to the division of the cost code (for example, labor, materials, and equipment) into subcategories. For example, you can divide the cost code for labor into regular time, premium time, and burden. Note. If you use a flexible chart of accounts and the object account is set to six digits, use all six digits. For example, entering 000456 is not the same as entering 456 because, if you enter 456, the system enters three blank spaces to fill a six-digit object.
Sub (subsidiary) | Enter the subset of the object account. Subsidiary accounts include detailed records of the accounting activity for an object account. Note. If you use a flexible chart of accounts and the object account is set to six digits, you must use all six digits. For example, entering 000456 is not the same as entering 456 because, if you enter 456, the system enters three blank spaces to fill a six-digit object. If you leave this field blank, the system uses the value that you entered on the work order in the Cost Code field.