1. Home
  2. Knowledge Base
  3. Sales Order
  4. Sales Order: Sales Order Line Item Maintenance

Sales Order: Sales Order Line Item Maintenance

Sales Order Line Item Maintenance

Sales Order Line Item Maintenance - Item Details pane

This detailed subwindow forms part of the Sales Order Maintenance window.



Line Item List

All line items will be listed for the Sales Order that have not been fully dispatched. Click on a line item to show and edit the full details.

Tip TIP: While a quotation, or before saving a sales order, and with the list sorted by line number (Line column heading is bold text), you can re-number the line items by dragging a line and dropping it on a different position in the list.

Tip TIP: In addition, if it is a Quotation and it has already been saved, the list context menu has a Renumber from 1 function that will renumber lines starting from 1. This is needed it low line numbers have been deleted.

Lines and Weight

The number of Sales Order line items due for dispatch and the total of part item mass this represents.

Balance Total Without Tax

The total value for all outstanding items on the Sales Order, inclusive of discount but exclusive of tax.

Balance Total with Tax

The total value for all outstanding items on the Sales Order, inclusive of discount and tax.




This will create a new (normally blank) record in the file. You will then be able to enter details for the record. Then confirm with an OK, or abandon the New record with a Cancel.

You will be warned if a CBD Invoice has been prepared for the SO as any changes will cause inconsistencies between what your customer expects to pay and what you will expect to receive.

When entering an order item the following rules apply:

  • The line number will be automatically generated.
  • The part description, UoM multiplier, sales UoM, price, sales account, discount rate and tax class are all entered automatically when a part number is entered. However they may be edited using the mouse to select the desired field.
  • The part description, UoM multiplier, sales UoM and price will be brought from a Customer Part record if such a record exists for this Part and Customer. If this is the case you will not be able to edit the price, discount and UoM details unless you have security setting permission to edit the customer part record.
  • Non-part items are recorded in Sales History but not in Order Preparation History or, of course, in Stock History.
  • N type Non-stock parts can be entered, however no stock history or quantity adjustments will be made. You will receive a warning, but this warning message can be suppressed with the option optSONoNTypePartWarn set to 1.
  • P type parts are considered “Exploded kits” when used in a Sales Order. In the SO, picking list, dispatch note and in all review listings they are shown exploded into components. Multi-level kits are permitted with no restrictions. A kit can only have a UoM multiplier of 1, and the ordered quantity must be in whole units. Once a P type part is in a Sales Order it’s BoM cannot be altered, nor can the part type be changed.
  • The part’s standard and special sales texts, engineering data and associated product serial numbers are appended to the description on the Quotation, Sales Order, Dispatch Note and optionally the resulting Invoice.
  • If you are adding items to a Quotation, no changes are made to the Due to Sales Orders part record value and no change is made to the customer’s On-order value.
  • If you convert a Quotation to an Order, or as you add or change items on an Order, adjustments are made to the Due to Sales Orders part record value and to the customer’s On-order value. For parts, order preparation history is recorded in the Stock History file. For P type Exploded Kits, processing is carried out for components, not the kit part number.

Note NOTE: Prices from Customer Part records always take precedence over part master prices. If the Customer Part record is for a foreign currency, the Sales Order must be for that currency for the part to be added successfully.

Note NOTE: System Manager System Preferences control the recording of history, including restricting the Order Preparation History.

Tip TIP: If at any time you believe the Customer On-order value or Part’s Due to SO quantity are out of step with Sales Orders, these values can be re-calculated automatically in the “System Manager” “Reset Data File…” function. In the case of parts you can review the source of the quantity with the “Stock History” “Processing Analysis” function.

Customisation CUSTOM CAPABILITY: oCustom1.$SolEntryPartCheck() enables you to set up a custom method for part verification. For example, you may wish to prohibit the sale of parts with particular Index Codes or from certain store locations.

Customisation CUSTOM CAPABILITY: The oCustom1.$SolptnoFinal() method enables you to carry out processing after part entry. In addition oCustom1.$AfterItemAddedToSo() enables you to set up a custom method in advance of the editing process. For example, you may wish to set up some special account code relating to the Part-Customer combination rather than the part alone.


This will create a Copy of the current record displayed on the window. You will then be able to change the details. Confirm with an OK, or abandon the new record with a Cancel.


Execute this button to permanently remove the currently selected record from the file. If you are permitted to delete the item, you will be asked for confirmation, otherwise an explanation will be given.

The window has 4 tab panes.

Item Details 
Pricing Details 

Item Details

This pane shows the essential base details for the selected order line item.



Line Item Number

The line item number, from 1 to 999, is automatically generated for each sales item, a deleted line number is not re-used unless there are no higher line item numbers.

Part Number

Sales Order Line Items. Part number. {SOLFILE.SOLPTNO char 18}

The part number on order which must be a pre-defined part in the Parts section, or blank if not an inventory part. N type non-stock parts can be used, and are useful for standard delivery charges, services, etc.; no part quantities are affected or stock history made for non-stock parts. A partial part number can be entered, whereupon the nearest matching part record is located by the system. The ScratchPad can be used to drag and drop a selection of parts onto the Line Item List.

Tip TIP: You can setup the optSONoEngChange option in Settings Maintenance. If the value is 1, users will be prevented from adding a part which has Engineering-in-Progress set, rather than just being given a warning.

Part Type

Parts Master. Part type (A,B,M,N,O,P). {PTMFILE.PTMTYPE char 1}


Sales Order Line Items. Item description. {SOLFILE.SOLDESC char 32000}

If a valid part number is added the part description is provided here. It can be edited if needed. The description field must be used for non-part items such as services.

Note NOTE: You can apply parts individual texts to Sales Orders in an alternative manner. If you set option optSODefaultIndivText to ‘1’, ‘Y’, ‘Yes’ or ‘YES’, the Part Individual Text will form a default description for the part rather than an additional text. I.E. In a Sales Order, when optSODefaultIndivText is set to ‘1’, the line item description will default to the individual sales text for the part (as long as there is no relevant Customer Part record). Whenever this option is set, the Individual Sales Texts for parts will NOT be printed on the Sales Order, as they are when not set.

Note NOTE: If user option optSODisableSoldesc = 1 or YES, the line item description entry field to be permanently disabled for the user (to force use of a custom text configurator, for example).

Order Quantity

Sales Order Line Items. Quantity in Sales UoM. {SOLFILE.SOLSQTY number 3dp}

Quantity in Sales Units of Measure ordered which defaults to 1.000. If you change the quantity, the Balance due will also change. If you reduce the quantity such that the Balance due becomes zero, the line item will be deleted.

There is a System Manager System Preferences setting that controls whether a warning is given if the ordered quantity will result in the projected stock quantity dropping below minimum level were the dispatch be made immediately. If the Warn user during normal SO item entry of low part stock is checked you will receive warnings. The following rules will apply:

  • If it is a non-part item, no message will occur.
  • The system calculates part projected quantity as the Physical quantity minus Allocated to WO quantity minus Due to SO quantity minus the line item entered quantity (or increased quantity if editing). Note that it does NOT take into account any Due from P/WO quantity. For example, the part has a physical of 20, an Allocated to WO of 4, a Due to SO of 6 and new order quantity of 3; the projected will be 20-4-6-3=7.
  • If the part has an Planning Alias and the projected quantity for the part is less than the part Minimum stock quantity, the projected quantity becomes the previous projected quantity less the part’s minimum quantity. The position of the Alias Part is then considered with this quantity in mind. In the above example, where the part has a Minimum stock of 8 and it has an Alias, the projected stock will become 7-8=-1 and the condition of the Alias will be reviewed with respect to an equivalent order quantity of 1.
  • If the part is not a P type Exploded kit, you will receive a message if the projected quantity is less than the Minimum Stock.
  • If the part is a P type Exploded kit, the system will analyse the status of all components for the kit, with respect to the projected assembly’s quantity requirements times the Bill of Material quantities of components and their respective projected quantity status. If there are any shortages predicted from the analysis, a list of them will be presented in the Sales Order Kit Items with Suspect Availability window.

Note NOTE: These warnings are based on a as-of-now projection of quantities. It does not provide you with any view of when parts could be supplied within your production plan. For a much better analysis, use the “Review Part Available-to-Sell” function.

Customisation CUSTOM CAPABILITY: oCustom1.$SolsqtyCheck() can be used to process your own quantity validation or messaging system. Within it, if you set the flag false (Calculate #F as 0) the normal processing will be by-passed.

Sales Unit of Measure

Sales Order Line Items. Sales UoM for the item. {SOLFILE.SOLSAUM char 6}

Item reference

Sales Order Line Items. Item reference. {SOLFILE.SOLUSER char 15 Idx} Added line items inherit the last code you entered.

Tip TIP: This reference can be used to individually code line items. It is subsequently passed to sales history. It can be used in searches and report sorts for both orders and history analysis.

Dispatch Due Date

Sales Order Line Items. Dispatch date for the quantity. {SOLFILE.SOLDATE date date1980}

The date of planned dispatch for the item. If multiple deliveries of an item are planned, multiple item lines with different delivery due dates must be created. For a new Sales Order or Quotation the default date is the next make calendar active date. After entry of one item, default date for further items is that set for the first line item.

Note NOTE: You can control the initial default Dispatch Due Date when the user enters the first line item for a Sales Order. Condition A: If option optSODueDateDays = 0 or blank, the SO Due Date is the next make day to today. Condition B: If option optSODueDateDays = 1 or -N, the SO Due Date will be the current make day (or next if today is not a make day). Condition C: If option optSODueDateDays = N where it is > 1, the SO Due Date will be N make days beyond the current make day (or next if today is not a make day). If the Make Calendar does not extend sufficiently for condition C, condition B will apply.

Note NOTE: If option optSOPromoPriceWarn = 1 or YES, the user gets a warning if the customer part, or part if there is none, is set for promotional pricing and the dispatch date is not within a promotion range.

Tip TIP: Besides individually setting the due date of line items, there is a way to set all line items in one go to a particular date or even a date calculated in a custom algorithm. In this case all the above restriction and price calculations are by-passed. This is the process:

  1. Right-click on the date field.
  2. Select Date Calculator, or choose that from the ScratchPad main menu.
  3. Calculate a date so it appears in the calculator result (below the Today button).
  4. Click on that result date and drag-and-drop it onto the list of job line items.

Customisation CUSTOM CAPABILITY: The above date drag-and-drop can be intercepted by oCustom1.$SolDateDrop method which takes the date, document header row and item list as parameters. You could devise a sophisticated re-dating algorithm here to bypass the default behaviour of the drag-and-drop mechanism. There are other possible uses this feature could be put to.

Originally Required Date

Sales Order Line Items. Customer originally requested receipt date. {SOLFILE.SOLDATO date date1980}

Latest Expected Date

Sales Order Line Items. Latest expected customer receipt date. {SOLFILE.SOLDATX date date1980}

List Price

Sales Order Line Items. Price before discount per Sales UoM. {SOLFILE.SOLPRIC number 2dp}

The default is the Sales Price from the part’s master record for the part times the Sales UoM Multiplier. It can then be edited. If the order is for a foreign currency, the exchange rate for the SO will be applied. However, if the currency is one of the five sales price currencies set in the File — System Manager — Company Details, and the part has a currency price, this price will then be applied.

Customisation CUSTOM CAPABILITY: oCustom1.$AfterSoAutoPriceCalc method provides for interception of the automatic part price calculation for situations where complex customised pricing may be needed.

Commission agents

Sales Order Line Items. Commission agents applicable to this line item (comma separated list of COMIDs). {SOLFILE.SOLCOMA char 100}. The agents applied by default are the agents listed for the customer or additional dispatch address, if applied, filtered by the commission class of the part or non-part class set in company details. The resulting default commission agents comma-separated list can be modified, however on leaving the field the system checks that codes are valid, sorts the list and removes any duplicates.

Note NOTE: For more details of the commissioning agents system within the program see the Commissioned Sales Agents Maintenance window and the Sales Commissions Review window topics.



Customer Parts Details

To open the Customer Parts Maintenance window.

Note NOTE: If no part line is selected, a list of all customer parts for the order customer will be listed. Double-clicking on a subsequent part will add it to the Parts Scratchpad that can be used to drag and drop it back onto the order. This technique can be used before any items have been added to the order.

Show Extra Part Text

To show the extra texts associated with a part. You will be able to change these texts.

This button will, if a part is selected, open the Part Sales Texts window in which the part’s extra sales texts can be viewed and amended. Both individual and standard sales texts are shown. These texts are inserted in the printed Sales Order following the item line for the part.

Note NOTE: If you hold the Shift key down when clicking on the button, you will open the Part Works Texts window rather than the Sales Text window.

Configure a New Part

To add a line item with a newly configured assembly part. This can only be activated with a saved document.

This button only has any function if the Parent Number prefix in SO Configuration has a non-blank value. Sales Item Configuration options are set up in File — System Manager — Sales Item Configuration.

Given that you have an appropriate setup in the System Manager section, you can create new assemblies with associated Bills of Material and Process Routes directly using this feature.

It will open the Sales Order Item Configuration window and the Select Like-Part for Components Listing window to select a Like-Part for the configuration.

Back to top

Pricing Details

Sales Order Line Item Maintenance - Pricing Details pane

Pricing details for the selected order line item.



List Sales Price

Sales Order Line Items. Price before discount per Sales UoM. {SOLFILE.SOLPRIC number 2dp}

List Sales Value

The total value for the line item quantity, exclusive of discount and tax.

Quick Payment Amount

Quick payment discount value if applied.

Discount Rate

Sales Order Line Items. Discount % applied to the item price. {SOLFILE.SOLDISC number 2dpShortnum}

The default discount is the customer’s discount rate applying for this part’s discount class. The discount rate can then be edited within a range from 0.00 to 99.99%.

Discounted Price

The discounted sales price before tax per sales unit of measure.

Discounted Value

The discounted value for the entire Sales Order line item, exclusive of tax.

Net Price with QP Applied

The discounted sales price before tax per sales unit of measure and including quick payment discount if applied.

Net Value with QP Applied

The discounted value for the entire Sales Order line item, exclusive of tax and including quick payment discount if applied.

Sales Tax Class

Sales Order Line Items. Tax code applicable. {SOLFILE.SOLTAXC integer shortint}

The tax rate and amount applicable for this part is automatically calculated from the System Manager control value assigned to the tax class. The tax class can be 0 through 6. A zero class is always zero tax. The default class is drawn from the part’s master record or set to 1 if a non-part item. The default is always zero if there is an Additional Address for the order which has the Zero tax rate default option checked, or where there is no additional address and the Customer has the Zero tax rate default option checked. The tax percent rate is saved with the line item record but can not be edited. It remains in force until invoicing when it is updated to reflect any changes in the “System Manager” settings. This provides for tax rate changes that are always applicable at the date of dispatch and invoice.

Warning WARNING: Line item tax class defaults using the rules above at the time it is created. After changing the Additional Address to one with a different option setting you may find that the default tax class will change. If you do change the status of any of the defaults, existing line items are NOT reset.

Sales Tax Rate

Sales Order Line Items. Tax % applied. {SOLFILE.SOLTAX number 2dp}

Discounted Taxed Price

The sales price per sales unit of measure, inclusive of discount and tax.

Discounted Taxed Value

The total value for the Sales Order line item, inclusive of discount and tax.

Discounted Taxed Price with QP Applied

The sales price per sales unit of measure, inclusive of discount and tax and including quick payment discount if applied.

Discounted Taxed Value with QP Applied

The total value for the Sales Order line item, inclusive of discount and tax and including quick payment discount if applied.

Tax regime and class

Sales Order Line Items. Tax regime code applicable. {SOLFILE.SOLTAMC char 6} and Tax class applicable. {SOLFILE.SOLTAXC char 1} See the Tax Maintenance window for full details of the tax handling system.

The default regime is provided from the customer or the additional dispatch addresses, if applied. The default class comes from the part or default sales non-part setting in the company details.

Back to top


Sales Order Line Item Maintenance - Additional pane

This pane shows additional details for the selected order line item.



Stock Unit of Measure

Parts Master. Standard stock unit of measure. {PTMFILE.PTMSTUM char 6}

Sales Unit of Measure

Sales Order Line Items. Sales UoM for the item. {SOLFILE.SOLSAUM char 6}

By default this is obtained from the part’s master record. It can be optionally changed but if the Stock UoM and Sales UoM texts are syntactically the same the multiplier will default to 1.0000.


Sales Order Line Items. Multiplier of Stock UoM to get Sales UoM. {SOLFILE.SOLMULT number 4dp}

By default this is obtained from the part’s master record. It can be optionally changed.

Sales Account

Sales Order Line Items. G/L sales posting account code. {SOLFILE.SOLACCO char 10}

This field is of particular interest when your program license includes the Ledgers option. It provides for a selection of a sales type General Ledger account for the posting of the sale item at the time of dispatch and invoicing. It defaults to the account for the part or the default account for non-part sales. If no account is entered the default part account will be used. If you hold the shift key down when passing out of the account code box, the system will accept a non-Sales type G/L account, otherwise only a ‘S’ type account will be permitted. If you don’t have ledgers, this field can be used for any extra coding needs you may have.

Delivery Terms for Quotation

Sales Order Line Items. Quotation delivery terms. {SOLFILE.SOLDELI char 300}

Note NOTE: Normally the Delivery Terms can only be modified while the document is a quotation. If you set option optSOEditDeli to ‘1’, this field will remain editable after the quotation has been confirmed into a Sales Order.

Balance due

Sales Order Line Items. Balance quantity due in Sales UoM. {SOLFILE.SOLBAL number 3dp}

This quantity field is automatically maintained to accommodate multiple dispatches. If you change the order quantity, this value will also change.


The mass of the balance due quantity of the selected part item.

Bonded Quantity

Sales Order Line Items. Bonded quantity in Sales UoM. {SOLFILE.SOLBOND number 3dp}

This is a calculated value that shows the quantity of the item placed in bond pending dispatch to the customer. Bonded items are removed from inventory (physical) but not as yet dispatched, and therefore invoiced, to the customer.

Shipping Load

Sales Order Line Items. Shipping load reference (from MCNLOAD sequence). {SOLFILE.SOLLOAD char 6}

This identifies whether the line item has been assigned to a Shipping Load. If blank, it is not assigned. For more details on the Shipping Load system see the Sales Order Shipping Load Assignment window.

Last Dispatch Date

Sales Order Line Items. Last dispatch date for split deliveries. {SOLFILE.SOLLASD date date1980}

This date field is automatically updated when an incomplete dispatch occurs.

Ignore as MRP demand

Sales Order Line Items. Ignore as MRP demand. {SOLFILE.SOLMRP boolean}

A part can be have the Default SO items to be ignored in MRP demand attribute set. This will pass to this SO item attribute when a part is loaded. This characteristic can then the changed in Sales Order line item maintenance. You can use this attribute to eliminate certain products or product groups from control by Materials Requirement Planning. However, you should bear in mind that if the part is an assembly, MRP will not schedule any requirements for it. The consequences of this must be understood in advance as they could be somewhat damaging to your supply situation.

Marketing project code

Sales Order Line Items. Marketing project code, default from SOHMKTP (IDXID = con(‘0’,SOLMKTP)). {SOLFILE.SOLMKTP char 4 Idx} See the Marketing Data Maintenance window help for more details of Marketing Project codes and their use.

Marketing project description

Index and Other Codes. Index code, scrap reason, QA test or Incoterm description. {IDXFILE.IDXDESC char 255}


Lists the available marketing codes set up the File — System Manager — Index Codes. Double-click on a listed code to enter that value.

Back to top


Sales Order Line Item Maintenance - Planning pane

This pane shows the planning implications of the sale for a part.



Current Quantities

For details see the Parts Current Quantity subwindow.

Period Usage

See the Parts Usage subwindow for details.

Back to top

See also: –

Compiled in Program Version 5.10. Help data last modified 4 Jun 2012 04:49:00.00. Class wSolMaintSub last modified 3 Nov 2017 07:09:32.

Was this article helpful?

Related Articles

Need Support?

Can't find the answer you're looking for?
Contact Support

Get started.

Try our state-of-the-art ERP Manufacturing Software today.