1. Home
  2. /
  3. Setup Guides
  4. /
  5. Sales Pricing
  6. /
  7. Control parameters
  8. /
  9. Define sales price control...

Define sales price control parameters

Before you set up any prices or discounts in the pricing-related files, you must define some higher-level control parameters.

DIS control file

As pricing is very flexible and the sales price can be derived in several ways, you need some parameters to control the way that pricing works. These parameters are defined on the Pricing policies panel.

Field Description
Sequence for pricing You need to define the sequence in which the system will search the Sales price list, Customer contracts and Sales pricing methods in order to calculate the sales price for a sales order/quotation line.

During this search it may be possible that more than one price is found. In such an event the First price and Best value compared to promotion parameters must be defined to control this. If you set both these flags to False, the system will use the first price found.

First price/prom If you set this flag to True, the system will select the lowest of either the first price found, or the promotion type method selected.
Which promotion record is selected will depend upon the settings of the Stop search fields on each of the qualifying methods. If all of these have Stop search set to False then the best promotion price will be used. If any of the promotion methods have Stop search set to True then the lowest price found in the promotion records that have been read up to and including this one will be used.
Best value/prom If you set this flag to True, the system will select the best value found from any of the following pricing sources: Sales price list (from order header, normally the defined price list for the customer), Customer contracts, Normal type method, Promotion type method or Standard price list (from DIS control file)

In case any of these pricing sources are defined to get chain discounts then any applied chain discounts will also be taken into account in the search for the best customer value.

Which normal or promotion record is selected will depend upon the settings of the Stop search fields on each the qualifying methods. If all of these have Stop search set to False then the best normal or promotion price will be used. If any of the normal or promotion methods have Stop search set to True then the lowest price found in the normal or promotion records that have been read up to and including this one will be used.

Short term pricing Set this flag to True if you want to be able to use the validity dates of the sales pricing method details as additional keys allowing you to have multiple details with the same keys but for different dates.

Typically used to override default details in an existing method for a short time without making extensive changes to the method definition itself.

Additional discount If the user manually enters a price or discount on a sales order/quotation line, and this flag is set to True, the system will apply any applicable discounts to that line. See Types of discounts automatically applied to a line below for more information on the impact of the setting in this field.

Chain discount Indicate if chain discounts can be applied in Distribution.

Chain discounts can be applied on top of prices and discounts generated from a Customer contract, Sales price list and/or Sales pricing method (where Type = N (Normal)).

If you set this flag to True, you will be able to set the Chain discounts flag to True in the Customer contract, Sales price list and Sales pricing method type N.

If you set this flag to False, the chain discount related fields will not be displayed in the system.

Note: The actual chain discounts to be applied are set up as a Sales pricing method type C in the Sales pricing methods file.

If this flag is changed from True to False, the system will verify if chain discounts exist, or have been defined, in the Sales pricing methods file. If the system finds any chain discounts, you will not be able to change this flag to False.

Order summary disc Indicate if Order summary discounts (i.e. Sales pricing method types O and H) can be applied in Distribution.

Order summary discounts can be applied on top of prices and discounts generated from a Customer contract, Sales price list and/or Sales pricing method (where Type = N, C and/or P).

If you set this flag to True, you will be able to set the Order summary disc flag to True in the Customer contract, Sales price list and Sales pricing method for types N, C and P.

If you set this flag to False, the Order summary discount related fields will not be displayed in the system.

Note: The actual discounts to be applied are set up as a Sales pricing method type O and/or H in the Sales pricing methods file.

If this flag is changed from True to False, the system will verify if order summary discounts (type O or H) exist, or have been defined, in the Sales pricing methods file. If order summary discounts are found, you cannot change this flag to False.

Basket processing Basket is a system term signifying a collection of item related elements, (e.g., item, item group, item family), that together form an entity upon which order summary sales pricing methods, (types O = Order line summary discount and H = Header discount), can be applied.

Set this flag to True if you want to allow basket processing in the company. You create the basket definitions in the Work with baskets file.

If you set the field to False, basket processing will not be permitted and no related fields will be displayed on panels.

If you want to set up pre-defined keys to improve performance in the basket processing and limit the flexibility of the basket definitions, complete the Keys 1-3 fields on this panel. See the Panel help description for the Fixed basket keys and Keys 1-3 fields.

Fixed basket keys A high volume of file accesses takes place during the basket qualification process. Thus, a mechanism is needed making it possible to reduce the file accesses and increase performance by limiting the combination of keys that can be used to define baskets. These fixed basket key 1-3 fields allow you to define the item related keys (from the DIS control keys table) that will be used as pre-defined and fixed keys when baskets are defined.

The fields are open for maintenance when the Basket processing field on this panel is set to True and as long as no basket has been defined in the system, i.e. no basket definition exists. Otherwise the fields are protected from maintenance. All basket definition must be removed/deleted from the system before the basket pricing policy could be changed from full flexibility to fixed basket pricing keys or vice versa.

If you fill in any one of these keys here the basket pricing set-up process will protect the possibility to flexibly define any key combination for a basket in the Work with baskets file, and only permit the fixed basket pricing key(s) to be used.

Standard price list The system supplies a default price list identifier (price list 01 in Price list table) which is connected in this field. Note: You do not have to use it or establish any other Price list because you can define the prices in the Customer contracts or Sales pricing methods. When Distribution runs the main pricing program (DMR910) it will start with retrieving a Base price. The base price retrieval will be done using price lists in the following order until a price is retrieved:

1. Using the price list that has been passed to the program as an input parameter. In sales order entry this will be the price list that you find in the order header (and that price list is retrieved from the Customer file and can also be overridden).

2. Using the standard price list defined in the pricing policies in DIS control file.

It will use this base price as the starting point for calculating any prices or discounts as it needs a starting price in the event that it encounters only discounts in the Customer contracts and Sales pricing methods. It will also use this base price when checking against amount limits if no price has been encountered at that point.

A/R payment terms

Cash discount deduct

The Cash discount deduct field controls the offering of an extra discount should the invoice be paid on time. You set up the cash discounts in the Terms of payment table.

Indicate if the cash discount should be deducted from the VAT base amount. If set to True, the Cash discount percentage 1, defined in the Terms of payment table, shall be deducted from the VAT base amount before the calculation of invoice total and VAT amount is done in the sales order Invoicing routine. The cash discount percentage will then be displayed on the invoice and invoice copy before the presentation of VAT lines, if this feature is selected and the cash discount is not zero.

If you want the cash discount to be calculated from the gross amount, i.e. the cash discount base amount is gross, you must set this field and the Cash disc net amount field in the Terms of payment table to False.

Order summary base values

Line level and Header level

If you set up O and H types, the system needs to perform calculations to work out the total amounts used for checking against amount limits. You need to indicate what it should use, i.e. non-discounted or a discounted net price. See description of O type for Line level and H type for Header level above.

Line level: Indicates whether the order line non-discounted price or net price is to be used in the order summary line level discounts calculation. Note: This net price is the net price before any order summary discounts have been applied (O-type or H-type discounts), i.e. after the very last chain-discount.

Header level: Indicates whether the order line non-discounted price or net price is to be used in the order summary header level discounts calculation. Note: This net price is the net price before any order summary discounts have been applied (O-type or H-type discounts), i.e. after the very last chain-discount.

Types of discounts automatically applied to the line

The following outlines the result of the field settings for Additional discount in the DIS control file and Man priced on the sales order and quotation line.

The settings in these two fields are used together to control which types of discount are automatically applied at creation of the line.

Additional discount

(DIS control file)

Indicates if the system should apply any applicable discounts to a manually entered price or discount on a sales order line or quotation line.

Man priced (sales order/quotation line) Result
False False All types of discounts will automatically be created at order entry for an order line.
False True Only H type summary discounts will automatically be created for the line at order entry. The system will first retrieve the price or take the manually entered price and then apply any manually entered discount.
True False All types of discounts will automatically be created at order entry for an order line.
True True All types of discounts will automatically be created at order entry for an order line. The system will first retrieve the price or take the manually entered price, then retrieve and apply any other discounts and lastly apply any manually entered discount.

DIS control keys

Sales pricing methods use a combination of item, customer and order-related keys; of which up to five of the following keys may be defined as selection criteria.

Note: These keys are used in several other areas and must be activated in the DIS control keys table for pricing before they can be used in sales pricing methods.

Customer related Item related Order related
Area Basket (Can only be used in order summary pricing methods of types O and H) Agreement type
Buying group Item Customer address category (not valid for Supplier rebates)
Country Item account group Inventory contract number
Customer Item category 1 Inventory contract type
Customer account group Item category 2 Manner of transport
Customer address category (not valid for Supplier rebates) Item category 3 Order type
Customer category 1 Item category 4 Project
Customer category 2 Item category 5 Terms of delivery
Customer category 3 Item category 6 Terms of payment
Customer category 4 Item discount group Warehouse
Customer category 5 Item family Warranty type
Customer category 6 Item group  
Customer group Item price group  
Customer structure
Note: Not supported by Order summary discount calculation (i.e. H and O method types).
Item sector  
Discount group Item segment 1  
  Item segment 2  
  Item segment 3  
  Item segment 4  
  Item segment 5  
  Item segment 6  

Variable sales prices

Variable sales prices are calculated as a margin or mark-up of the cost value or purchase price of your items.

If you want to calculate and apply variable sales prices you need to define the relevant settings:

Cost bases table

All of the Cost Bases are defined in the Cost bases table. Each cost base is identified by a Basis Code. All are available for you to use in the Sales price lists, Customer contracts and Sales pricing methods (with few restrictions, see below) provided that they have been activated in this table.

The only restrictions are the following:

  • Retail price (RET) cannot be used in the Item Sales Price definition as you are getting the retail price from that same source and that can be via a margin/mark-up calculation of the price (that your use the cost base for).
  • Sales discount value (SDV) cannot be used in any price calculation (i.e. Sales price lists, Customer contracts or Sales pricing methods). This cost bases is only used within the Supplier Marketing Support (SMS) application and represents the total discount amount from the discount.
Cost bases

Can be any of these values

Average Cost/Item
Last Purchase Cost Item
Standard Cost/Item
Average Cost/Warehouse
Last Purchase Cost/Warehouse
Standard Cost/Warehouse
Purchase Price 1
Purchase Price 2
Purchase Price 3
Purchase Price 4
Purchase Price 5
Retail Price
Sales Discount Value

Complete the following fields:

    Active
    To activate a particular Basis code this field must be set to True.
    Valid for sales pri
    Set this field to True if you want the code to be valid for utilisation in the sales pricing routines (Sales price list, Customer contracts and Sales pricing methods).

Item file settings

The Base cost values are extracted from the following panels in the Item file:

Panels Fields Other information
Item file maintenance, Inventory information Standard cost, Last purchase cost, Average cost The value in these fields are for the stock unit. If an item is ordered in a unit other than the stock unit, the base cost will be re-calculated according to the conversion factor and currency.
Item file maintenance, Warehouses Standard cost, Last purchase cost, Average cost The value in these fields are for the stock unit. If an item is ordered in a unit other than the stock unit, the mark-up base cost will be re-calculated according to the conversion factor and currency.
Item file maintenance, Purchase price per detail, details Price 1 – 5  
Item file maintenance, Sales prices Retail method, Retail value Retail price can only be used as a basis in Customer contracts and Sales pricing methods.

Printing discounts

All customers are different and, as such, like to see the discounts printed in different ways, if at all. The printing of discounts on external documents (e.g., order confirmation, quotation confirmation, invoice), is controlled by two flags stored against each customer. One for Print discounts and one for Aggregate discounts.

This gives the following three alternatives for printing/not printing discounts:

  • No discounts are printed (i.e. Net price is displayed)
  • A list of individual discounts along with their descriptions is printed
  • A single aggregate discount (the total value of all discounts) is printed.

For each customer in the Business partner file/Customer file panel, define your settings as applicable:

Result To do
Exclude the printing of discounts and only show the Net price. Set Print discounts to False
Print each discount together with their description. Set Print discounts field to True

Set Aggregate discounts to False

Print the total value of all discounts. Set Print discounts to True

Set Aggregate discounts to True

Related topics