## Updating Prices

This chapter discusses how to:

- Update base prices.

- Update prices for a customer.

- Convert price levels.

- Generate new base prices in a different currency.

### Updating Base Prices

This section provides an overview of base price updates and discusses how to:

- Set processing options for the Base/Price Maintenance - Batch program (R41830).

- Run the Base/Price Maintenance - Batch program.

#### Understanding Base Price Updates

After you define base prices, you can update them as needed, for example, to change a price or create a price that will be effective on a future date. You can use the Base Price Revisions program (P4106) to update base prices individually, or you can run the Base/Price Maintenance - Batch program (R41830) to update multiple prices at one time. When you update multiple prices in batch mode, the system either overrides the existing price with a new price or calculates an adjustment to the existing price, depending on how you set the processing options for the Base/Price Maintenance - Batch program.

The system creates new prices based on the valid price that is selected by the batch program. When you run a version of Base/Price Maintenance - Batch in proof mode, the system generates a report that displays the updates that the program will make to the selected records when you run it in final mode.

When you set up a version of this program, you identify the specific fields that you want the system to select. For example, you can set up a version to select customer, customer group, item, or item group. Or you can exclude certain types of prices that you do not want to update.

Any new prices that the system creates are included in the report, as well as their effective dates and the old price that the system used as the basis for the new prices. You can run this program in proof mode as many times as necessary.

Change Existing Prices

To change multiple prices, you can run the base price revisions version of the Base/Price Maintenance - Batch program. Depending on how you set the processing options, the program either overrides the existing price with a new price that you specify or calculates an adjustment to the existing price. The adjustment can be an addition, a subtraction, a percentage adjustment, or an override amount.

When you run the base price revisions version in proof mode, the system generates a report that displays the updates that the program will make to the selected records when you run it in final mode. You must set the update processing option for this program to perform updates to the Item Base Price File table (F4106).

Create Future Prices

To create multiple base prices that you can use on a future date, you can run the future price additions version of the Base/Price Maintenance - Batch program. This version of the program writes new price records to the F4106 table that are based on the effective dates in the price additions processing option for this program. You must specify a from date and a through date or the program ends without creating the new prices.

When you run the future price additions version in proof mode, the system generates a report that displays the updates that the program will make to the selected records when you run it in final mode.

The system creates future prices based on the existing price with the greatest expiration date. Depending on how you set the processing options, the program either overrides the existing price with a new price that you specify or calculates an adjustment to the existing price. The adjustment can be an addition, subtraction, or percentage adjustment. If you leave the adjustment type and factor blank, the system copies future prices from the current price and does not apply any adjustments.

See Also

Generating New Base Prices in a Different Currency

#### Setting Processing Options for the Base/Price Maintenance - Batch Program (R41830)

Use these processing options to control whether the system updates the Item Base Price File table (F4106), to specify price adjustments, and to specify whether new records are created or existing records are updated.

Update

This processing option determines whether the system updates the F4106 table.

1. Update Base Price File | Specify whether the system updates the F4106 table. Values are: Blank: The system does not update the file. 1: The system updates the file.

Adjustments

These processing options specify the type and factor of a price adjustment.

1. Price Adjustment Type | Specify the type of adjustment that the system makes to the F4106 table. Values are: A: Adjust the price by an amount. %: Adjust the price by a percentage. *: Adjust the price to an override price.
2. Amount | Specify an amount or percentage factor for the system to use to calculate the price. Use this processing option in conjunction with the price adjustment type. For example, if you entered an adjustment type A, enter 10 to increase the price by 10 or –10 to decrease the price by 10. If you entered an adjustment type of %, enter 10 to increase the price by 10 percent or –10 to decrease the price by 10 percent.

Date

These processing options control whether base prices are updated or whether new records are created.

1. Effective From Date and 2. Effective Thru Date | Specify the dates that the system uses for updating prices. If the effective from and through dates are entered, the system creates new base price records. If both of these processing options are left blank, the system updates existing base price records.

#### Running the Base/Price Maintenance - Batch Program

Select Price Management (G4222), Batch Base Price Revisions.

### Updating Prices for a Customer

This section provides an overview of customer price updates and discusses how to:

- Set processing options for the Sales Order Batch Price/Cost Update program (R42950).

- Run the Sales Order Batch Price/Cost Update program.

#### Understanding Customer Price Updates

You update prices for a customer to recalculate sales orders based on the most current price or price adjustment. You might need to do this for items with volatile prices. You can also use this process to update the unit and extended costs of items on sales orders with the most current costs. If multicurrency processing is activated in the system, the system also updates the Foreign Unit and Extended Costs fields.

This table describes the tasks that use the Sales Order Batch Price/Cost Update program to:

Task | Description
Update sales order costs. | The system replaces the unit and extended costs in any open, unshipped orders with current costs from the Item Cost File table (F4105).
Update sales order prices. | The system recalculates the unit and extended prices in the Sales Order Detail File table (F4211) by using the most current base price and price adjustments. The system bases this recalculation on the date that you enter in the processing options.
Replace sales order exchange rates. | You can use this program to update the currency exchange rate that the system uses to calculate costs and prices on an order. The system replaces the currency exchange rate that was in effect at the time you entered the order with the existing currency exchange rate.

You can set the processing options for the Sales Order Batch Price/Cost Update program to define which date on the sales order the system uses to determine whether it should recalculate costs or prices. For example, you can base the recalculations on the promised date. Sales order prices can be updated more than once.

When you run the Sales Order Batch Price/Cost Update program, the system updates the order detail information for open sales orders. The system can either replace the current price in the order detail line with the new price or the system can add a nonstock line for the difference between the current price and the new price. You must specify a nonstock line type in the processing options for the system to add an additional line. If you do not specify a line type, the system overrides the original price with the new price.

After you run the Sales Order Batch Price/Cost Update program, you can review the report, which details the changes to the original unit price and extended price on each sales order.

Note. You can set the processing options on the Sales Update program (R42800) or the Print Invoices program (R42565) to run the Sales Order Batch Price/Cost program prior to creating general ledger (GL) records. The system updates all selected sales orders with current costs (if orders have not been shipped), exchange rates, and prices before it creates general ledger records.

#### Setting Processing Options for the Sales Order Batch Price/Cost Update Program (R42950)

Use these processing options to control system processing and system updates, and to specify versions.

Process

These processing options specify whether to update costs, exchange rates, and intercompany exchange rates on sales orders.

1. Cost | Specify whether the system updates the cost on a sales order. A cost change will always be updated to the original sales order entry line. Costs will be updated only if inventory has not been relieved from inventory. Values are: Blank: The system does not update cost. 1: The system updates the cost.
2. Exchange Rate | Specify whether the system updates the currency exchange rate. When the currency exchange rate is updated, only domestic prices and foreign costs will be recalculated. Values are: Blank: The system does not update the exchange rate. 1: The system updates the exchange rate.
3. Intercompany Exchange Rate | Specify whether the system updates the intercompany exchange rate. Values are: Blank: The system does not update the intercompany exchange rate. 1: The system updates the intercompany exchange rate.

Price Process

These processing options specify whether the system updates the price on a sales order, defines the effective date used to update prices, and retains the sales order price effective date.

1. Price | Specify whether the system updates the price on a sales order. You can update a price change to the original sales order line, or display it as a separate line by completing the Update Price Change To New Line processing option on the Display/Calculation tab. Values are: Blank: Do not update the price. 1: Update the price.
2. Price Effective Date | Enter the date from the sales order that the system uses to update prices. Values are: Blank: Transaction Date 1: Requested Ship Date 2: Promised Ship Date 3: Original Promised Date 4: Actual Ship Date 5: System Date 6: Invoice Date *: System Constant
3. Retain Sales Order Price Effective Date | Specify whether the system retains the sales order's override price effective date or price effective date from the preference. Values are: Blank: Use the Pricing Effective Date processing option to determine the price effective date. 1: Retain the price effective date on the sales order if the date was manually overridden by the user, or if the price effective date was determined through the sales price based on the date preference.

Display/Calculation

These processing options specify whether the system creates a new line and status for the price change, updates price based on the quantity or split quantity, and handles free goods on the original sales order.

1. Update Price Change To New Line | Specify whether the system creates a new line that details the extended price difference of a sales order line that has a price change. Values are: Blank: Update change to the original sales order line. Line Type: Update change to new sales order line using the specified line type.
2. New Line's Override Next Status | Specify a next status for the new order detail line. If you leave this processing option blank, the system uses the original detail-line next-status.
3. Price Based On Original Quantity | Specify whether the price is based on the original line quantity or the current line quantity. When a sales order detail line is split, the user can update the price of the split lines based on the quantity of the original detail line before it was split. For example, a sales order line is entered for a quantity of 10. The customer wants to ship two items to location A, and the other eight to location B. The original line is split into two sales order lines. Values are: Blank: Update the price based on the current quantity. 1: Update price based on original quantity.
4. Preserve Free Goods | Specify whether the system preserves the existing free good promotion. Values are: Blank: Cancel the existing free good promotion and include new free goods. 1: Preserve free goods on the order and reprice remaining. No free good processing occurs. Even new free goods will not be awarded.

Versions

This processing option controls the version that the system uses when calling the Sales Order Entry program.

1. Sales Order Entry (P4210) | Select a version of the Sales Order Entry program that the system uses to update sales order price and costs.

#### Running the Sales Order Batch Price/Cost Update Program

Select Price Management (G4222), Batch Update Sale Price/Cost.

### Converting Price Levels

This section provides an overview of price level conversions and discusses how to:

- Set processing options for the Item Sales Price Level Conversion program (R41816).

- Run the Item Sales Price Level Conversion program.

#### Understanding Price Level Conversions

You use the Item Sales Price Level Conversion program (R41816) to change the sales price level of an item or a group of items that you have previously entered in the Item Master table (F4101).

You can run this program in proof or final mode. You should always run the Item Sales Price Level Conversion program in proof mode first to identify errors. The program generates a report that displays any problems the system encounters during sales price level conversions. You can correct these errors before you run the program in final mode.

The Item Sales Price Level Conversion program deletes all price records at the previous level and creates new price records at the new level. For example, when converting from the item/branch/plant level to the item level, the program deletes all price records for each item/branch/plant and creates a new price record for the item.

You should not attempt to access the Item Master or Item Base Price File tables when this program is running in final mode.

Because this program is based on the F4101 file, you cannot search on a specific branch/plant.

#### Setting Processing Options for the Item Sales Price Level Conversion Program (R41816)

Use these processing options to control how the system processes data.

Process

These processing options control whether the system runs in proof or final mode, defines the price level that is being changed, prints an exception report, and deletes expired records.

1. Price Level | Specify the new price level to change the sales price level of an item or item group.
2. Branch to Default Price From | Specify the branch/plant from which the system will take the default price. If the Price Level processing option is 1, enter the branch/plant from which the system retrieves a default price. If the Price Level processing option is 3, enter the branch/plant from which the system retrieves the default price based on the primary location. Warning! If moving the price level from Level 2 or 3 to Level 1, and the item exists in one or more branch/plants, but not in the branch/plant that is identified in this field, then the following message will be seen in the output file: Branch does not match Processing Opts. If the program is run in final mode, all of the F4106 records will be deleted. The program functions by deleting existing base price records and replacing them with new records based on the from branch/plant that is identified in this processing option. If an item does not exist in the from branch/plant, no F4106 records will be created for that item.
3. Proof or Final Mode | Specify whether the system runs in proof or final mode. Final mode updates the files. Values are: Blank: Proof mode. 1: Final mode. Note. It is strongly recommended that you run this program in proof mode before running it in final mode.
4. Print Exceptions | Specify whether the system prints all records or only the exceptions on the report. Values are: Blank: Print all items. 1: Print only exceptions.
5. Delete Expired Records | Specify whether the system deletes expired records or keeps them for history purposes. Values are: Blank: Do not delete expired records. 1: Delete expired records.

#### Running the Item Sales Price Level Conversion Program

Select Sales Order Advanced & Technical Ops (G4231), Sales Price Level Conversion.

### Generating New Base Prices in a Different Currency

This section provides an overview of new base prices in a different currency and discusses how to:

- Set processing options for the Base Price Generation by Currency Program (R410601).

- Generate new base price or currency.

#### Understanding New Base Prices in a Different Currency

You can create new base prices in a different currency for multiple records at one time by running the Generate Base Price/Currency program (R410601). This program generates new base prices based on existing records.

The Generate Base Price/Currency program is especially useful if you need to create multiple base price records in a different currency. For example, use this program if the company is about to conduct business with a customer who uses a currency in which you do not have base price records. If you need to create a new price for an individual record, update the existing record on the Base Price Revisions form. You do not have to run this program.

When you run the Generate Base Price/Currency program, use the processing options to control the currency and exchange rate in which the new base prices are created.

The Generate Base Price/Currency program copies the original base price record, calculates a new amount, and creates a price record with the new currency amount. More specifically, the program:

- Creates only one new base price record for each unit of measure.

  It does not create a price record for a currency if the record already exists. The exception to this rule is when currency codes that are associated with an item have different effective through dates. Depending on the dates, the program might create more than one new price record.

- Runs the Generate Base Price/Currency program first in proof mode, and then in final mode in the following way:

  - Proof

    Review the audit report to ensure that the records that are generated by the program are accurate. If the audit report is not accurate, change the processing option and data selection values accordingly and rerun the program in proof mode.

  - Final

    When you are satisfied with the audit report that is created in proof mode, run the program in final mode. Review the new base price records on the audit report. You can also review new records on the Base Price Revisions form. Notice that the amounts are rounded according to the decimal places that are set up in the data dictionary for Unit Price (UPRC).

    If necessary, adjust the new base price records manually on the Base Price Revisions form. For example, if the program creates a new base price for 50,000 JPY as 675.1155 CAD, you might adjust the new amount to 675 CAD.

Example: Generating New Base Prices

This example describes an item with base price records before and after you generate a new base price in a different currency.

Before you generate new base prices, an existing item has these base price records:

Unit Price | UoM | Currency Code
1,000.00 | EA | USD
1,563.00 | EA | CAD
642.26 | EA | GBP

The processing options for the Generate Base Price/Currency program are set in the following way:

- Run Modes

  - Mode = 1 (final)

  - Date = June 30

- Currency

  - Convert to = EUR

  - Convert From = USD

  - Exchange rate = 1.02011

  - Method = 1 (multiplier)

Even though several currency amounts are associated with the item, the program generates only one new EUR amount based on the USD price.

The Generate Base Price/Currency program generates a new price record for 1,020.11 EUR, based on the 1,000.00 USD record. The original 1,000.00 USD record remains so that you can continue to invoice customers in that currency, as needed. The existing item has new base price records:

Unit Price | UoM | Currency Code
1,020.11 | EA | EUR
1,000.00 | EA | USD
1,563.00 | EA | CAD
642.26 | EA | GBP

After the new price record is generated for 1,020.11 EUR, the program will not generate another price record for the item unless the expiration date of the existing price record is greater than or equal to the date that is entered in the processing option.

Data Selection for Generate Base Price/Currency Program

Typically, companies generate new base prices for all customers within a specific branch/plant. If the company has multiple branch/plants with different currencies, you can run the Generate Base Price/Currency program multiple times. For base prices that do not have a branch/plant, specify blank for branch/plant in the data selection.

#### Setting Processing Options for the Base Price Generation by Currency Program (R410601)

Use these processing options to control the processing mode and specify the currency data when running this program.

Run Modes

These processing options specify whether to run the program in proof or final mode and determine the date to use when the system generates new price records.

Proof or Final Mode | Specify whether the system runs in proof or final mode. An audit report is generated in both modes. Final mode updates the file. Values are: Blank: Proof mode. 1: Final mode.
Price Record Date | Enter the date to use to determine which price records will be generated. If the expiration date of a price is greater than or equal to the date that is entered, a new price record will be generated. Leave this processing option blank to use the system date.

Currency

These processing options specify the currency codes, currency conversion rate, and conversion method.

Currency Code To | Enter the currency code to convert to.
Currency Code From | Enter the currency code to convert from.
Currency Conversion Rate | Enter a number that represents an exchange rate. A foreign currency amount is multiplied by the exchange rate to calculate a domestic currency amount. The number in this field can have a maximum of seven decimal positions. If more are entered, the system adjusts to the nearest seven decimal positions.
Conversion Method | Specify whether the system multiplies or divides the current price by the currency conversion rate. Values are: Blank: The system divides the current price by the currency conversion rate. 1: The system multiplies the current price by the currency conversion rate.

#### Generating New Base Price or Currency

Select Price Management (G4222), Generate Base Price/Currency.