F4074MaintainPriceHistory

F4074 Maintain Price History

Major Business Rule

Object Name: B4200230

Parent DLL: CDIST

Location: Client/Server

Language: C

Functional Description

Purpose

Use this function to maintain the Price History File (F4074) and the Price History Work File 
(F40UI74).  These files are used by the Sales Order Processing system to keep track of audit trail 

information for the base price and advanced adjustment records of a sales order.  You can use this 

function to add, change, inquire, and delete records from the Price History File or the Price History 

Work File.  In addition, the function can be invoked to retrieve the next adjustment record.  The 

records retrieved will be in sequence number (OSEQ) order. Also, with this function, it is possible to 

retrieve only a certain ACNT type of price records by passing in a value to Adjustment Control 

Code (ACNT).



Setup Notes and Prerequisites

• When maintaining F4074, use this function at the following events:  Update Record to DB - After or 
Add Record to DB - After.  This will allow the application to first update/add the sales order detail 

record before performing any updates/adds to the F4074.  The F4074 is essentially a tag file for the 

F4211.

'b7'b7

Special Logic


None.


Technical Specification


2.2Related Tables 

Table Table Description

F4074Price History File


2.3Related Business Functions

Source NameFunction Name

B9800100.cGetAuditInfo


2.4Processing 

You can call this business function in four different actions (ACTI):


A = Add

C = Change

I = Inquire

D = Delete

N = Fetch Next 


If Inquire mode and File == 1, fetch a record from the Price History File F4074 by the following 

keys:


DOCO - Order Number

DCTO - Order Type

KCOO - Key Company

LNID - Line Number

OSEQ - Sequence Number


              nNoOfKeys  = 5;


If 'Fetch Next' mode and File == 1, fetch the next record from the Price History File F4074 by the 

following keys: (Added 9/27/96)


    If it is the first time in  ( i.e. hRequest == NULL)

         Open F4074  - Save hRequest in Genlng Variable to pass back

          Sort the F4074 in Ascending order

          Set Selection where  OSEQ F4074 > lpDS OSEQ passed in

    else

         retrieve the hrequest from the Genlng Variable passed in


     Fetch the record

       DOCO - Order Number

       DCTO - Order Type

       KCOO - Key Company

       LNID - Line Number


      nNoOfKeys  = 4


 NOTE: Fetch the next record with a OSEQ greater than the OSEQ-parm (i.e. DOCO == DOCO-parm AND . . 

.OSEQ > OSEQ-parm.  Return the new record's OSEQ in the OSEQ parameter.


If Inquiry mode and File = 2, fetch a record from the Price History Work File F40UI74 by the 

following keys:  (Added 9/19/96)


CTID - Computer ID

JOBS - Job Number

XLIN - Line Number 2

DOCO - Order Number
DCTO - Order Type

KCOO - Key Company

LNID - Line Number

AREV - Revision Level

OSEQ - Sequence Number


              nNoOfKeys = 9


If 'Fetch Next' mode and File = 2, fetch a record from the Price History Work File F40UI74 by the 

following keys:  (Added 9/27/96)


    If it is the first time in  ( i.e. hRequest == NULL)

         Open F40UI74  - Save hRequest in Genlng Variable to pass back

          Sort the F40UI74 in Ascending order

          Set Selection where  OSEQ F40UI74 > lpDS OSEQ passed in

    else

         retrieve the hrequest from the Genlng Variable passed in



    Fetch the Record

CTID - Computer ID

JOBS - Job Number

XLIN - Line Number 2

DOCO - Order Number
DCTO - Order Type

KCOO - Key Company

LNID - Line Number

AREV - Revision Level


             nNoOfKeys = 8


NOTE: Fetch the next record with a OSEQ greater than the OSEQ-parm (i.e. CTID == CTID-parm AND . . 

.OSEQ > OSEQ-parm.  Return the new record's OSEQ in the OSEQ parameter.



If a record is found, map table columns to their corresponding columns in the parameter data 

structure.  This will essentially return the entire record to the calling application.


If the record is not found in the table and the Suppress Error Message EV01 is not equal to '1', set 

error message '0001' and return to calling application.  Use the standard logic for EV01 and DTAI.


If the Action Code ACTI = 'A', add a record to the table with all the database fields from the passed 

parameters.


If the Action Code ACTI = 'C', update the following fields from the passed parameters:


ASNAdjustment Schedule

ASTAdjustment Name

ITMItem Number

AN8Address Number

ICIDItem/Customer Key ID

SDGRSales Detail Group

SDV1Sales Detail Value 01

SDV2Sales Detail Value 02

SDV3Sales Detail Value 03

CRCDCurrency Code

UOMUnit of Measure

UPRCUnit Price

FUPForeign Unit Price

GLCG/L Class

ARSNReason Code

ACNTAdjustment Control Code

SBIFSubledger in G/L

MDEDManual Add/Change

PROVPrice Override Code

ATIDPrice Adjustment Key ID

MNQQuantity From

LEDGCost Method

FRMNFormula Name

BSCDBasis Code

FVTRFactor Value

ABASOverride Price Y/N

PIDProgram ID

TXBTaxable


Note:  In add and change modes, update the User ID (USER), WorkStation ID (JOBN), Date Updated 

(UPMJ), and the Time of Day (TDAY) by retrieving corresponding information using GetAuditInfo (B9800100.c).


If the Action Code ACTI is equal to 'D' and File = 1, delete all matching records from F4074 by the 

following keys:


DOCO - Order Number

DCTO - Order Type

KCOO - Key Company

LNID - Line Number

 

              nNoOfKeys = 4


If the Action Code ACTI is equal to 'D' and File = 2, delete all matching records from F40UI74 by the 

following keys: (Added 9/19/96)


CTID - Computer ID

JOBS - Job Number

XLIN- Line Number 2

DOCO - Order Number
DCTO - Order Type

KCOO - Key Company

LNID - Line Number


             nNoOfKeys = 7


Data Structure

D4200230 - F4074 Maintain Price History

Special Input Expected
CTIDComputer IDRequired for F40UI74 maintenance (Added 9/19/96)

JOBSJob NumberRequired for F40UI74 maintenance (Added 9/19/96)

XLINLine NumberRequired for F40UI74 maintenance (Added 9/19/96)

DOCOOrder Number

DCTOOrder Type

KCOOOrder Company

LNIDLine Number

AREVRevision LevelRequired for F40UI74 maintenance (Added 9/19/96)

OSEQSequence Number

ASNAdjustment Schedule

ASTAdjustment Name

ITMItem Number

AN8Address Number

ICIDItem/Customer Key ID

SDGRSales Detail Group

SDV1Sales Detail Value 01

SDV2Sales Detail Value 02

SDV3Sales Detail Value 03

CRCDCurrency Code

UOMUnit of Measure

UPRCUnit Price

FUPForeign Unit Price

GLCG/L Class

ARSNReason Code

ACNTAdjustment Control CodeCan be passed in to filter records using ACNT. Filtering works only for the action code 'N' (Fetch Next).

SBIFSubledger in G/L

MDEDManual Add/Change

PROVPrice Override Code

ATIDPrice Adjustment Key ID

PIDProgram ID

MNQQuantity FromFuture Use

LEDGCost MethodFuture Use

FRMNFormula NameFuture Use

BSCDBasis CodeFuture Use

FVTRFactor ValueFuture Use

ABASOverride Price Y/NFuture Use

ACTIAction CodeA- Add C-Change I-Inquire D-Delete N-Fetch Next (Added 9/27/96)

EV02File 1 - F4074, 2 - F40UI74 (Added 9/19/96)

EV01Suppress Error Message

DTAIError Message IDI

GENLNGhRequestIf ACTI == N then this function will return a hRequest which must be passed back into this function to obtain the 

next record.  The caller of this function must free the hRequest by calling FreeHUserorHRequest.


Special Output Returned

OSEQSequence Number

ASNAdjustment Schedule

ASTAdjustment Name

ITMItem Number

AN8Address Number

ICIDItem/Customer Key ID

SDGRSales Detail Group

SDV1Sales Detail Value 01

SDV2Sales Detail Value 02

SDV3Sales Detail Value 03

CRCDCurrency Code

UOMUnit of Measure

UPRCUnit Price

FUPForeign Unit Price

GLCG/L Class

ARSNReason Code

ACNTAdjustment Control CodeCan be passed in to filter records using ACNT. Filtering works only for the action code 'N' (Fetch Next).

SBIFSubledger in G/L

MDEDManual Add/Change

PROVPrice Override Code

ATIDPrice Adjustment Key ID

PIDProgram ID

MNQQuantity FromFuture Use

LEDGCost MethodFuture Use

FRMNFormula NameFuture Use

BSCDBasis CodeFuture Use

FVTRFactor ValueFuture Use

ABASOverride Price Y/NFuture Use

GENLNGhRequestIf ACTI == N then this function will return a hRequest which must be passed back into this function to obtain the 

next record.  The caller of this function must free the hRequest by calling FreeHUserorHRequest.


^

Parameter NameData ItemData TypeReq/OptI/O/Both
mnOrderNumberDOCOMATH_NUMERICNONENONE

A number that identifies an original document. This document can be a voucher, a sales order, an invoice, unapplied cash, a journal entry, 
and so on.

szOrderTypeDCTOcharNONENONE

A user defined code (00/DT) that identifies the type of document. This code also indicates the origin of the transaction. J.D. Edwards has 
reserved document type codes for vouchers, invoices, receipts, and time sheets, which create automatic offset entries during the post 
program. (These entries are not self-balancing when you originally enter them.) The following document types are defined by J.D. Edwards and 
should not be changed: P Accounts Payable documents   R Accounts Receivable documents   T Payroll documents   I Inventory documents  
O Purchase Order Processing documents   J General Accounting/Joint Interest Billing documents   S Sales Order Processing documents

szOrderCompanyKCOOcharNONENONE

A number that, along with order number and order type, uniquely identifies an order document (such as a purchase order, a contract, a 
sales order, and so on). If you use the Next Numbers by Company/Fiscal Year facility, the Automatic Next Numbers program (X0010) uses the 
order company to retrieve the correct next number for that company. If two or more order documents have the same order number and order 
type, the order company lets you locate the desired document. If you use the regular Next Numbers facility, the order company is not used to 
assign a next number. In this case, you probably would not use the order company to locate the document.

mnLineNumberLNIDMATH_NUMERICNONENONE

A number that identifies multiple occurrences, such as line numbers on a purchase order or other document. Generally, the system assigns 
this number,but in some cases you can override it.

mnSequenceNumberOSEQMATH_NUMERICNONENONE

For OneWorld, the sequence by which users can set up the order in which their valid environments are displayed. For World, a sequence or 
sort number that the system uses to process records in a user defined order.

szAdjScheduleASNcharNONENONE

A user defined code (40/AS) that identifies a price and adjustment schedule. A price and adjustment schedule contains one or more 
adjustment types for which a customer or an item might be eligible. The system applies the adjustments in the sequence that you specify in the 
schedule. You link customers to a price and adjustment schedule through the customer billing instructions. When you enter a sales order, the 
system copies the schedule attached to the sold to address into the order header. You can override this schedule at the detail line level. For 
Agreement Management, this is the Agreement Penalty Schedule. The information in the Agreement Penalty Schedule provides the system 
with the criteria for an agreement to have penalty conditions.

szAdjNameASTcharNONENONE

A user defined code (system 40, type TY) that identifies an adjustment definition. You define adjustments on Price Adjustment Names. For 
Agreement Penalty Schedules Add a definition for each of the four types of penalties:        Minimum quantity         Maximum quantity         Under 
commitment         Over commitment

mnShortItemNumberITMMATH_NUMERICNONENONE

An inventory item number. The system provides three separate item numbers plus an extensive cross-reference capability to other item 
numbers (see data item XRT) to accommodate substitute item numbers, replacements, bar codes, customer numbers, supplier numbers, and 
so forth. The item numbers are as follows:   o Item Number (short) - An eight-digit, computer-assigned item number     o 2nd Item Number - The 
25-digit, free-form, user defined alphanumeric item number     o 3rd Item Number - Another 25-digit, free-form, user defined alphanumeric item 
number

mnAddressNumberAN8MATH_NUMERICNONENONE

A number that identifies an entry in the Address Book system, such as employee, applicant, participant, customer, supplier, tenant, or 
location.

szCurrencyCodeCRCDcharNONENONE

A code that identifies the currency of a transaction. 

szUnitOfMeasureUOMcharNONENONE

A user defined code (00/UM) that indicates the quantity in which to express an inventory item, for example, CS (case) or BX (box).

mnUnitPriceUPRCMATH_NUMERICNONENONE

The list or base price to be charged for one unit of this item. In sales order entry, all prices must be set up in the Item Base Price File table 
(F4106).

mnForeignUnitPriceFUPMATH_NUMERICNONENONE

The foreign price per unit.

szGLClassGLCcharNONENONE

A code that determines the trade account that the system uses as the offset when you post invoices or vouchers. The system concatenates 
the value that you enter to the AAI item RC (for Accounts Receivable) or PC (for Accounts Payable) to locate the trade account. For 
example, if you enter TRAD, the system searches for the AAI item RCTRAD (for receivables) or PCTRAD (for payables).  You can assign up to four 
alphanumeric characters to represent the G/L offset or you can assign the three-character currency code (if you enter transactions in a 
multicurrency environment). You must, however, set up the corresponding AAI item for the system to use; otherwise, the system ignores the G/L 
offset and uses the account that is set up for PC or RC for the company specified.  If you set up a default value in the G/L Offset field of the 
customer or supplier record, the system uses the value during transaction entry unless you override it.  Note: Do not use code 9999. It is reserved for 
the post program and indicates that offsets should not be created.

szReasonCodeARSNcharNONENONE

User defined code (system 40, type AR) you can use to identify why you change an adjustment.

cAdjControlCodeACNTcharNONENONE

A code that specifies additional processing features related to an adjustment. Valid values are: 1 Do not print the adjustment on the invoice 
or the purchase order print document. The system adds the adjustment amount to the unit price. 2 Print the adjustment on the invoice or the 
purchase order print document. The system adds the adjustment amount to the unit price. 3 Update the Sales Order Detail File table (F4211) with 
adjustment detail line information. The system will not include this type of adjustment when it calculates the current net price. Use this code for 
order-level adjustments only. 4 Create an accrual adjustment. The system updates the Price Adjustment Ledger File table (F4074) and 
posts the adjustment to the general ledger during the Sales Update process.  5 Create a rebate adjustment. The system updates the Rebate 
Transaction Summary table (F4078) with the quantity, weight, and amount of the order detail line.  6 Print the adjustment on the invoice. The 
system adds the adjustment to the order total, but does not include it in the unit price. The system will post separate G/L and A/R entries for this 
adjustment during Sales Update.  7 Create a supplier proof of sale rebate adjustment. The system updates the Rebate Transaction Summary 
table with the quantity, weight, and amount of the order detail line and posts the adjustment to the general ledger during Sales Update.  8 Create 
a rounding adjustment, based on the rounding rules set up in the Price Adjustment Detail Revisions program (P4072). The system adds the 
adjustment amount to the unit price. 

cSubledgerGLSBIFcharNONENONE

A user defined code (system 40, type SI) that identifies the type of information that you want the system to use to update the Subledger field 
in the General Ledger file (F0911) when you use this adjustment type to price a sales order.

cManualAddChangeMDEDcharNONENONE

Specifies whether the adjustment type can be manually added to or changed from the Price Adjustments form (P4074W) when you enter 
sales orders.

cPriceOverrideCodePROVcharNONENONE

A value established by the sales order entry program whenever a unit or extended price is entered into an order line item, overriding the 
price calculated by the program.

mnPriceAdjKeyIDATIDMATH_NUMERICNONENONE

The unique key I.D. for each adjustment level.

szProgramIDPIDcharNONENONE

The number that identifies the batch or interactive program (batch or interactive object). For example, the number of the Sales Order Entry 
interactive program is P4210, and the number of the Print Invoices batch process report is R42565. The program ID is a variable length value. 
It is assigned according to a structured syntax in the form TSSXXX, where: T The first character of the number is alphabetic and identifies the 
type, such as P for Program, R for Report, and so on. For example, the value P in the number P4210 indicates that the object is a 
program. SS The second and third characters of the number are numeric and identify the system code. For example, the value 42 in the number P4210 
indicates that this program belongs to system 42, which is the Sales Order Processing system. XXX The remaining characters of the numer are 
numeric and identify a unique program or report. For example, the value 10 in the number P4210 indicates that this is the Sales Order Entry 
program.

mnQuantityFromMNQMATH_NUMERICNONENONE

A value that specifies how an adjustment or preference will be applied to a price. This value can be a quantity, weight, or amount, 
depending on how you have defined the level-break type in the Price Adjustment Detail table (F4072).

szCostMethodLEDGcharNONENONE

A user defined code (40/CM) that specifies the basis for calculating item costs. Cost methods 01 through 19 are reserved for J.D. Edwards 
use.

szFormulaNameFRMNcharNONENONE

A user defined code (system 40, type FM) that identifies a price formula. All price formulas are stored in the Price Formula table (F4076).

cBasisCodeBSCDcharNONENONE

A code that specifies how the system uses the factor value to calculate the adjustment or penalty schedule. The Basis Code field works 
with the Factor Value field. Valid values are: 1 Multiply the base price by the factor value. The adjusted price is a percentage of the base 
price. 2 Multiply the current net price by the factor value. The adjusted price is a percentage of the current net price. 3 Multiply the item cost by the 
factor value. The adjusted price is a percentage of the item cost. You cannot use this basis code for a basket-level or order-level 
adjustment. 4 Add the factor value to the item cost. You cannot use this basis code for a basket-level or order-level adjustment. Note: If you use basis code 3 
or 4, specify the item cost that you want to use in the calculation in the Cost Method field (LEDG) in the detail area of the Price Adjustment 
Detail form. 5 Adjust the price by the factor value. If the value is positive, it increases the price by that amount; if the value is negative, it 
decreases the price by that amount. 6 Use the adjustment amount from the variable table. You specify the variable table in the Factor Value field. 7 Use 
a formula to calculate the adjustment. You specify the name of the formula in the Factor Value field. 8 Use a custom, user-defined program to 
calculate the adjustment. You specify the program ID in the Object Library field.         Note: If you define an adjustment that uses a custom 
program, the program must be one that you developed for this purpose and are prepared to support. J.D. Edwards is not responsible for providing 
custom programs or for supporting programs that you have developed. 9 Calculate the adjustment so that the resulting unit price has a gross 
profit margin equal to the factor value. You cannot use this basis code for a basket-level or order-level adjustment, or for a sliding rate 
adjustment. For Agreement Penalty Schedules, enter 5 for all penalty schedules.

mnFactorValueFVTRMATH_NUMERICNONENONE

A code that indicates how the system adjusts an order line. The value in this field works in conjunction with the Basis field (BSCD). How you 
define the Basis field determines whether you enter a number or a code in this field. For WorldSoftware , if your basis code is    1-5   Enter a 
positive number for markups, for example, 10. Enter a negative number for discounts, for example, 10-.    6     You want to base the adjustment on 
a variable table. Enter the code that identifies the variable table.    7     You want to use a formula to calculate the price. Enter the code that 
identifies the formula.    8     You want to calculate the adjustment using a custom program. Enter the program ID. For Agreement Penalty 
Schedules: Because the basis code for penalties is 5,enter a number as the factor value. Most agreement penalties are for a currency amount. The 
system multiplies the factor you enter by each unit of measure to calculate the penalty. For OneWorld, if your BasisCode is    1-5   Enter a 
positive number for markups, for example, 10. Enter a negative number for discounts, for example, 10-.    6     You want to base the adjustment on a 
variable table. Enter the code that identifies the variable table in the Formula Name column.    7     You want to use a formula to calculate the 
price. Enter the code that identifies the formula in the Formula Name column.    8     You want to calculate the adjustment using a custom 
program. Enter the program ID in the Formula Name column.

cOverridePriceYNABAScharNONENONE

A code indicating how the adjustment affects the price of a sales order line. For WorldSoftware, valid codes are:    Y The adjustment price 
overrides the base price.    N The adjustment is used to calculate a discount or markup to the base price. For OneWorld, a checkmark indicates 
that the override price overrides the base price. No checkmark indicates that the adjustment is used to calculate a discount or markup to the 
base price. For Agreement Penalty Schedules:     o For WorldSoftware, enter N.     o For OneWorld, leave the override price turned off (no 
checkmark).

cActionCodeACTIcharNONENONE

Special Input Expected
ACTIab Action Code


Significant Data Values

A-Add

C-Change

I-Inquire

D-Delete

N-Fetch Next (Added  9/27/96)ab 


^

cErrorCodeERRCcharNONENONE

This error code indicates if any errors occurred during the creation of the Trip Document Detail (F4914) records by the Delivery Document 
Set Server program (XT4914).

cSuppressErrorMsgEV01charNONENONE

An option that specifies the type of processing for an event.

szErrorMsgIDDTAIcharNONENONE

A code that identifies and defines a unit of information. It is an alphanumeric code up to 8 characters long that does not allow blanks or 
special characters such as %, &, or +. You create new data items using system codes 55-59. You cannot change the alias.

cFileEV01charNONENONE

Special Input Expected
EV02ab File  ab  ab  ab 


Significant Data Values

1 - F4074

2 - F40UI74 (Added 9/19/96)



^

szComputerIDCTIDcharNONENONE

mnJobNumberJOBSMATH_NUMERICNONENONE

The job number (work station ID) which executed the particular job.

mnLineNumber2XLINMATH_NUMERICNONENONE

Line number.

mnRevisionLevelAREVMATH_NUMERICNONENONE

This field maintains the current revision level of Advanced Pricing adjustments awarded within a sales order. Adjustments associated with 
a revision level below the current level are considered obsolete.

szLineTypeLNTYcharNONENONE

A code that controls how the system processes lines on a transaction. It controls the systems with which the transaction interfaces, such as 
General Ledger, Job Cost, Accounts Payable, Accounts Receivable, and Inventory Management. It also specifies the conditions under 
which a line prints on reports, and it is included in calculations. Codes include the following: S Stock item   J Job cost   N Nonstock item   F Freight  
T Text information   M Miscellaneous charges and credits   W Work order

szDescriptionDSC1charNONENONE

Brief information about an item; a remark or an explanation.

sz2ndItemNoLITMcharNONENONE

A number that identifies the item. The system provides three separate item numbers plus an extensive cross-reference capability to 
alternative item numbers. The three types of item numbers are: Item Number (short) An 8-digit, computer-assigned item number. 2nd Item Number A 
25-digit, user defined, alphanumeric item number. 3rd Item Number  Another 25-digit, user defined, alphanumeric item number. In addition to 
these three basic item numbers, the system provides an extensive cross-reference search capability. You can define numerous 
cross-references to alternative part numbers. For example, you can define substitute item numbers, replacements, bar codes, customer numbers, or 
supplier numbers.

sz3rdItemNoAITMcharNONENONE

The system provides three separate item numbers plus an extensive cross-reference capability to alternate item numbers. These item 
numbers are as follows: 1.  Item Number (short) - An 8-digit, computer-assigned item number. 2.  2nd Item Number - The 25-digit, free-form, user 
defined alphanumeric item number. 3.  3rd Item Number - Another 25-digit, free-form, user defined alphanumeric item number.  In addition to 
these three basic item numbers, an extensive cross-reference search capability has been provided (see XRT). Numerous cross references to 
alternate part numbers can be user defined, such as substitute item numbers, replacements, bar codes, customer numbers, or supplier 
numbers.

idHRequestGENLNGIDNONENONE

General purpose ID variable.

cAdjustmentLevelOLVLcharNONENONE

A code that specifies the level at which the system calculates price adjustments. Valid values are: 1 Line level - The system calculates the 
adjustment based on information in the sales order detail line. 2    Basket level - The system calculates the adjustment based on information 
accumulated from all sales order detail lines that you have identified as a basket pricing group. You define the basket reprice group on the 
Additional Information tab on the Item Branch Information form in the Item branch program (P41026). If you are defining a basket or order level 
adjustment, leave the Item Group and Order Detail Group fields blank.  3 Order level - The system calculates the adjustment based on 
information accumulated from all the sales order detail lines you have identified as an order pricing group. You define the order reprice group on the 
Additional Information tab on the Item Branch Information form in the Item branch program. If you are defining a basket or order level 
adjustment, leave the Item Group and Order Detail Group fields blank.  4 Volume incentive level - The system calculates the adjustment based on the 
accumulated value of multiple sales orders. The accumulated value is based on how you define the adjustment in the Price Adjustment 
Type program (P4071). If you are working with the Agreement Management system, for Agreement Penalty Schedules, enter 1 to calculate the 
penalty at the sales order detail-line level.

mnProcessIDPEIDMATH_NUMERICOPTNONE

A code that identifies the Inter-Process Communication ID.

mnTransactionIDTCIDMATH_NUMERICOPTNONE

mnItemGroupKeyIDIGIDMATH_NUMERICOPTNONE

A number that identifies an item group or an order detail pricing group. Each pricing group is comprised of either item category codes (for 
an item group) or sales order detail field values (for an order detail group). For every unique combination of values in the pricing group, the 
system assigns a number (key ID) to identify the group. The system retrieves this number from the Next Numbers program (P0002) for the 
system code 40 and the line number 5.

mnCustomerGroupKeyIDCGIDMATH_NUMERICOPTNONE

A number that identifies a customer pricing group. Each pricing group comprises customer category codes. For every unique combination 
of values in the pricing group, the system assigns a number (key ID) to identify the group. This number is retrieved from the Next Numbers 
program (P0002) using system code 45, line number 2.

mnOrderGroupKeyIDOGIDMATH_NUMERICOPTNONE

A number that identifies an order detail pricing group. Each group consists of sales order detail values. For each unique combination of 
values in the order group, the system assigns a number (key ID) to identify the group. The system retrieves this number from the Next Numbers 
program (P0002) by using system code 45 and line number.

szOrderSuffixSFXOcharOPTNONE

In the A/R and A/P systems, a code that corresponds to the pay item. In the Sales Order and Procurement systems, this code identifies 
multiple transactions for an original order. For purchase orders, the code is always 000. For sales orders with multiple partial receipts against an 
order, the first receiver used to record receipt has a suffix of 000, the next has a suffix of 001, the next 002, and so on.

mnPriceHistoryAltKeyAKIDMATH_NUMERICOPTNONE

A value that specifies an alternate key in the Price Adjustment Ledger File table (F4074). 

szPriceHistoryAltKeySourceSRCFDcharOPTNONE

A user defined code that you enter to indicate the JD Edwards system,such as Service Warranty Management etc,that the price adjustment 
supports.

mnAddressNumberPriceAdjustANPSMATH_NUMERICOPTNONE

An address book number that indicates whether the adjustment schedule is directly attached to the customer rather than to the name of an 
adjustment schedule.

mnTierTIERMATH_NUMERICOPTNONE

A number that represents the tier level in the structure at and below which the system applies this adjustment. This number must be equal to 
or less than the value specified in the Accumulate at Tier field.  In a buying structure, a tier level value of 1 represents the top or highest level. 
A tier level with a greater numeric value than 1 represents a lower level in the buying structure.

mnSubSequenceNumberSUBSEQMATH_NUMERICOPTNONE

The number of the subadjustments (for example, a sliding rate adjustment) within an adjustment.

szFactorValueUMFVUMcharOPTNONE

A user defined code (00/UM) that specifies the unit of measure associated with the factor value for an advanced price adjustment.   This 
value is valid for adjustments that represent a whole monetary unit only. For example, you can define a level break of 10 DZ and an adjustment 
will award a discount of 1 USD per EA.

cSlidingRateFlagSRFLAGcharOPTNONE

An option that specifies how the system applies adjustments to the unit price. Valid values are: On The system applies a sliding rate 
adjustment. This type of adjustment is based on a collection of rates that are applied from each threshold level. Off The system applies a single rate 
adjustment. This type of adjustment is based on the most applicable threshold. Note: If you choose the sliding rate, you cannot add a gross 
profit margin adjustment (basis code 9) to this adjustment.

mnBasedOnValueBSDVALMATH_NUMERICOPTNONE

A value that the system uses to calculate an adjustment. The value can be a quantity, weight, or amount.

szAdjustmentCalculationADJCALcharOPTNONE

An equation that the system uses to determine the adjustment unit price for sliding rate adjustments or adjustments that do not allow partial 
quantities.

cMutuallyExclusiveAdjustmeMEADJcharOPTNONE

An option that specifies whether an adjustment is mutually exclusive within the specified adjustment group. When you choose this option, 
the system generates a warning when more than one adjustment from the same adjustment group is applied.

szAdjustmentGroupADJGRPcharOPTNONE

A user defined code (45/AG) used to associate adjustment definitions to adjustment groups. You can define adjustments that belong to the 
same adjustment group as exclusive by turning on the mutually exclusive option. When the mutually exclusive option is turned on, the system 
will issue a warning if more than one adjustment from the same group is applied. 

cAdjustmentStatusADJSTScharOPTNONE

A code that indicates whether an adjustment has been cancelled. Although the adjustment remains in the Price Adjustment Ledger File 
table (F4074), it does not affect the price.

szPromotionIDPMTNcharOPTNONE

An identification number that tracks revenue, costs, and expenses for each promotion.

cPromotionDisplayControlPDCLcharOPTNONE

An option that specifies whether the system prints the promotion ID for this adjustment on an invoice or on the purchase order print 
document.

szChargeReferenceADJREFcharOPTNONE

The adjustment reference is a value entered by the user via the Price History/Check Price and Availability application, which is associated 
with a given price adjustment.  It is valid for detached adjustments only.  This code will be displayed with its corresponding detached 
adjustment charge on the printed invoice and pick slip.  It will also be displayed on the Online Invoice (P42230) and Display Order (P42232) 
applications.  

mnAccumulateAtAddressACCAN8MATH_NUMERICOPTNONE

A number that indicates the address book number for which the system accumulates rebates or volume incentive values.   The system uses 
this address book number as the starting point for processing through the buying structure. The system processes through the buying 
structure until it determines the Accumulate at Tier level. The system then uses the address number of that tier level to update the rebate and 
volume incentive tables, Rebate Transaction Summary (F4078), and Rebate Transaction Detail (F4079).

mnBeneficiaryAddressBNADMATH_NUMERICOPTNONE

The address number that the system uses when generating a rebate claim. If this is a sales rebate, the beneficiary address will specify the 
customer to whom the rebate will be paid. If this is a procurement rebate or a supplier proof of sale rebate, the beneficiary address will 
specify the supplier from whom the rebate will be collected.

Related Functions

B4200210 Get F4211 Detail Information
B9800100 Get Audit Information

Related Tables

F4074 Price Adjustment Ledger File
ride Code

ATIDPrice Adjustment Key ID

MNQQuantity From

LEDGCost Method

FRMNFormula Name

BSCDBasis Code

FVTRFactor Value

ABASOverride Price Y/N

PIDProgram ID

TXBTaxable


Note:  In add and change modes, update the User ID (USER), WorkStation ID (JOBN), Date Updated 

(UPMJ), and the Time of Day (TDAY) by retrieving corresponding information using GetAuditInfo (B9800100.c).


If the Action Code ACTI is equal to 'D' and File = 1, delete all matching records from F4074 by the 

following keys:


DOCO - Order Number

DCTO - Order Type

KCOO - Key Company

LNID - Line Number

 

              nNoOfKeys = 4


If the Action Code ACTI is equal to 'D' and File = 2, delete all matching records from F40UI74 by the 

following keys: (Added 9/19/96)


CTID - Computer ID

JOBS - Job Number

XLIN- Line Number 2

DOCO - Order Number
DCTO - Order Type

KCOO - Key Company

LNID - Line Number


             nNoOfKeys = 7


Data Structure

D4200230 - F4074 Maintain Price History

Special Input Expected
CTIDComputer IDRequired for F40UI74 maintenance (Added 9/19/96)

JOBSJob NumberRequired for F40UI74 maintenance (Added 9/19/96)

XLINLine NumberRequired for F40UI74 maintenance (Added 9/19/96)

DOCOOrder Number

DCTOOrder Type

KCOOOrder Company

LNIDLine Number

AREVRevision LevelRequired for F40UI74 maintenance (Added 9/19/96)

OSEQSequence Number

ASNAdjustment Schedule

ASTAdjustment Name

ITMItem Number

AN8Address Number

ICIDItem/Customer Key ID

SDGRSales Detail Group

SDV1Sales Detail Value 01

SDV2Sales Detail Value 02

SDV3Sales Detail Value 03

CRCDCurrency Code

UOMUnit of Measure

UPRCUnit Price

FUPForeign Unit Price

GLCG/L Class