/
Sales Program Record View

Sales Program Record View

Sales Programs are used to automate the calculation of accruals that will be settled at a later date (Brokerage, Rebate, and Off Book programs), charges and/or discounts that need to show on a customer invoice (On Invoice programs), and expense/accruals that need to post with the sales transaction (Accrual programs). The purpose of this page is to add, edit, remove, and activate/inactive these records.

Software Version: 2022.06.16 and newer

Page Header

Toolbar IconsDescription
Delete Deletes the transaction, batch, or master file record. When clicked, users will be prompted with: "Are you sure you want to delete this record?". Click "OK" to confirm, or "Cancel" to return without deleting. 

WARNING: Records cannot be recovered once they are deleted!

Help Opens the online WIKI help page for the current page. 
New

 Allows users to select the type of transaction or record they want to add. The available options include:

  • Accrual: Accrual programs use Sales Transactions to automate rule-based journal entries that are included with the Sales transaction's Journal Entry and are not visible to the customer. They can be used for rule-based delivered freight, royalties, and other taxes that are paid for by the company.
  • Brokerage: Brokerage programs use sales transactions to account for and store the details of an expense that will be paid to a vendor in the future. The expense and accrual entries are included with the Sales transaction's Journal Entry and the details are added to the Broker Balance sub-ledger. When Brokerage programs are 'Settled', AP Invoices are created to debit the accrual account and credit the Vendor's Accounts Payable account. This moves the sub-ledger balance from the Broker to the Vendor.
  • Off Book: Off Book programs use Sales Transactions to automate rule-based entries to an Off Book sub-ledger. These balances can be paid (to a customer or vendor) in the future or written off. These programs do not impact the General Ledger when the Sales transaction is posted, and they are not visible to the customer. They only impact the General Ledger when they are Settled. When they are 'Settled', AP Invoices or AR Credit Memos are created to debit the programs assigned 'Expense Account' and credit the Vendor's Accounts Payable or Customer's Accounts Receivable account. This moves the sub-ledger balance from the Broker to the Vendor. These are often used to keep a tally of money that can be used for food shows and other marketing activities. Balances that are written off have no impact on the General Ledger.
  • On InvoiceOn Invoice programs automate adding additional line items to Sales Transactions (i.e., Promotional Discounts, Sales Tax, or rule-based Freight charged to a customer). These line items are included with the Sales transaction's Journal Entry and are visible to the customer.
  • Rebate: Rebate programs use sales transactions to account for and store the details of an expense that will be paid to a vendor or credited to a customer in the future. The expense and accrual entries are included with the Sales transaction's Journal Entry and the details are added to the Rebate Balance sub-ledger. When Rebate programs are 'Settled', AP Invoices or AR Credit Memos are created to debit the accrual account and credit the Vendor's Accounts Payable or Customer's Accounts Receivable account. This moves the sub-ledger balance from the Rebate to the Vendor/Customer. Open Rebates balances can also be applied to open sales transactions when applying payment receipts.
Notes Opens the Notes dialog, filtered for the appropriate Note Type(s). From here, users can add, review, or edit Notes associated with the record. This icon is always enabled. 

Save

 Saves the changes made to the record. 
Save & Close Saves your changes and closes the page.
FieldsDescription
Program

Identifies the Program, displayed as [Program ID]: [Description].  This is a single-select lookup that will reload the page for the associated Program. The lookup contains a list of all Sales Programs.

Properties Tab

The Properties tab is always visible.

Toolbar Icons
Description
Excel Exports the contents of the grid to an Excel file that will automatically download. The contents that export are those that are visible to the user. Therefore, if the user has filtered the view, or excluded columns, only the contents in the grid will be exported. 
Quick Column Filter Used to filter across all columns in the grid. When the user types text into the Quick Column Filter text box, the grid's Filter Row will be automatically hidden. The text in the Quick Column Filter text box automatically replaces any existing Filter Row filters. The results of the data immediately refresh as you enter text.
FieldsDescription
ID and Descriptions
Program ID

Program IDs are the unique identifier for Sales Programs. This is a not editable text box that defaults to '(Next Program ID)' on new and displays the Program ID after Save.

Database Field: ERPx_SPProgramHeader.ProgramID

Description

Identifies the Description of the corresponding Program. This is a textbox that defaults to blank for new records and is not required. If entered it must be <= 200 characters. This is always editable.

Database Field: ERPx_SPProgramHeader.Description

Setup
Program Type

Identifies the Type of program. This defaults from the value selected when the 'New' icon was selected, and the program was initially saved. This is always disabled.

Database Fields: ERPx_MFSysEnumeration WHERE EnumerationClass = 'SPProgramType', ERPx_SPProgramHeader.ProgramClassSK

Program Class

Identifies the Class associated with the Program Type. This is a single select lookup that defaults as blank, is required, and if missing, the message "Program Class is required." will be displayed on Save. This is not editable after the initial save.

The lookup contains a list of all Program Classes associated with the Program Type being added/edited.

Program Classes are used to classify and group programs by Program Type: Brokerage, On Invoice, Accrual, Rebate, and Off Book.

Database Fields: ERPx_SPProgramClass.ClassName, ERPx_SPProgramHeader.ProgramClassSK

Start

Identifies the date the Program starts. Sales Orders with an 'Ordered Date' on or after this date will be evaluated for the Program. This is a date picker that defaults as blank, is required, and if missing the message "From date is required." will be displayed on Save. This is always editable.

Database Field: ERPx_SPProgramHeader.StartDate

End

Identifies the date the Program ends. Sales Orders with an 'Ordered Date' on or after this date will not be evaluated for the Program. This is a date picker that defaults as blank, is required, and if missing the message "To date is required." will be displayed on Save. This is always editable. The 'To' date must be >= the 'From' date else the message "The To (date) must occur on or after the From (date)." will be displayed on Save. This is always editable.

Database Field: ERPx_SPProgramHeader.EndDate

Program Rate Currency 

Identifies the 'Currency' that Program Amounts are calculated in. This is a single select lookup that defaults as blank, is required, and if missing, the message "Program Rate Currency is required." will be displayed on Save. Once selected, the program's Addresses tab will only display Customer Addresses belonging to Customers assigned to the same currency. For programs that 'Assign Addresses By' "Address Sets", the Address Sets tab displays all Address Sets, but the program will only apply to the Address within the Set that belong to Customers assigned to the same currency. This is not editable after the initial save.   

The lookup contains a blank value, the current assigned value, and all the Currencies assigned to the Company from System-->Configuration-->Currencies.

Database Fields: ERPx_MFCurrency.CurrencyID, ERPx_SPProgramHeader.CurrencySK

Assign Address By

Customers are assigned to programs by Customer Address and this property identifies which method is used for assigning the Addresses to the program. This is a single select lookup that defaults as blank, is required, and if missing, the message "Assign Address By is required." will be displayed on Save. This is not editable after the initial save.

The lookup contains opens for

  • Address: Addresses will be assigned to the program individually. If this option is selected, the Addresses tab will be visible after the initial save allowing the assignment of individual customer addresses. 
  • Address Set: Addresses will be assigned to the program selecting one or more Address Sets. If this option is selected, the Address Sets tab will be visible after the initial save allowing the assignment of Addresses Sets. 

Database Field: ERPx_SPProgramHeader.AddressFilterEN

Freight Accrual

A Yes/No lookup to Identify whether an Accrual Program is used to accrue "Delivered Freight" amounts. This defaults to "No", is required, and is always editable.

  • If "Yes", the computed program amount for each applicable sales transaction line is considered "Delivered Freight" and will be included in the 'Freight Amt.' columns and will have an impact on the Net Amt. calculation for the line item. 
  • If "No", the computed program amount for each applicable sales transaction line is considered a non-freight accrual and will not be included in the 'Freight Amt.' columns and will not have an impact on the Net Amt. calculation for the line item.

This setting impacts other Programs with a 'Calculated On' of "% (Gross - Freight)" by allowing them to exclude a "Freight Accrual" program amount. If this is set to "Yes", no existing or new Item Sets can have a 'Calculated On' of "% (Gross - Freight)" else the message "Item Sets - Calculated On cannot be % (Gross - Freight) when the Freight Accrual property is set to Yes." will be displayed on Save.

Note: This property is only visible for Accrual program types.

Database Field: ERPx_SPProgramHeader.ExcludeFromNetAmtBalance

Inactive

A Yes/No field used to identify if the record is Inactive. If set to "Yes" then the record is Inactive and will not be included in look-ups for transactions or other master files. If set to "No" then the record is Active and can be freely used. This field defaults to "No" and is always editable. This field is only displayed after the record is initially saved.
 

Database Field: ERPx_SPProgramHeader.Isinactive

Settlements - This group is not visible for 'Accrual' and 'On Invoice' program types.
Settle To 

Identifies how the Program will be settled (paid). This is a single select lookup that defaults as blank, is required, and if missing, the message "Settle To is required." will be displayed on Save. Once this has been set and saved, it is no longer editable.

The lookup contains the values in the SPSettlementMethod Enumeration Class. The options include:

  • AP Invoice - Paid In Full Orders: Only Sales Orders that have been paid in full will be auto selected to be settled by creating an A/P Invoice to the Vendor identified as the 'Payee'.
  • AP Invoice - All Orders: As soon as the Sales Order is posted it is eligible to be settled by creating an A/P Invoice to the Vendor identified as the 'Payee'.
  • AR Credit Memo: As soon as the Sales Order is posted it is eligible to be settled by creating an A/R Credit Memo to the Customer identified as the 'Payee'. This option is not available for 'Brokerage' programs.:

This is not visible for 'Accrual' and 'On Invoice' program types.

Database Field: ERPx_SPProgramHeader.SettlementMethodSK

Settlement Frequency

Identifies how often the Program will be settled (paid). This is a single select lookup that defaults to 'As Needed', is required, and if missing, the message "Settlement Frequency is required." will be displayed on Save. This is always editable and is for informational purposes only, this does not drive any functionality. 

The lookup contains the values in the SPSettlementFrequency Enumeration Class.

This is not visible for 'Accrual' and 'On Invoice' program types or for Rebate programs where the 'Settle To' is set to "AR Credit Memo".

Database Field: ERPx_SPProgramHeader.SettlementFrequencySK

Payee

Identifies the name of the Vendor or Customer that is the recipient of a Brokerage, Rebate, or Off Book Program Settlement. This is a single select lookup that defaults as blank and is disabled on New until a 'Settle To' value has been selected. It is required and if missing, the message "Payee is required." will be displayed on Save. Once this has been set and saved, it is no longer editable.

If the 'Settle To' value is:

  • AP Invoice - Paid In Full Orders, the lookup contains all the active Vendors
  • AP Invoice - All Orders, the lookup contains all the active Vendors
  • AR Credit Memo, the lookup contains all the active Customers. This option is not available for 'Brokerage' programs.

This is not visible for 'Accrual' and 'On Invoice' program types.

Database Fields: ERPx_APVendor.VendorName, ERPx_ARCustomer.CustomerName, ERPx_SPProgramHeader.ProgramEntitySK

Consolidate Settlement Transactions by

Identifies how program settlements are created, when there are more than one Sales Transaction being settled for the same Payee. This is required and defaults to "Payee" for Brokerage & Off Book programs and to "Sales Transaction" for Rebate Programs. This is always editable.    

Settlements behave as follows:

  • Payee: one A/P Invoice or A/R Credit memo will be created for each Payee regardless of how many sales transactions are being settled.
  • Sales Transaction: one A/P Invoice or A/R Credit memo will be created for each sales transaction being settled.

This is not visible for 'Accrual' and 'On Invoice' program types.

Database Field: ERPx_SPProgramHeader.ConsolidateSettlementTransactionsByEN

Accounting Rules
Expense Account

The GL Account that is Debited to record the expense from a (positive amount) Sales Program. The default values and edit rules are based on the Program Type: 

Accrual: Defa