ProcTimeMatBillLineForCBInvoice

Process Time And Material Billing Line For CB Invoice

Master Business Function

Object Name: N5200204

Parent DLL: CCRIN

Location: Client/Server

Language: NER

Process Time And Material Billing Line For Contract Billing Invoice

Source Name:N5200204

Data Structure: D5200204

Function Name:ProcTimeMatBillLineForCBInvoice

System Code:52 (Contract Billing)

Function Category:BAT (Batch)

Function Use:UPD (Add/Update)

Designer:Ira Frosch

Programmer:Falah Thamir



Revisions Log 

  Date      Modified bySAR NumberDescription

13 Oct, 1999F Thamir3303189Create



1.Functional Description


1.1Purpose


This business function will perform the processing to update/create records for a Time and Material billing line.

 

1.2Setup Notes and Prerequisites


The invoice number and pay item (Data Dictionary Item SFX) should be pre-determined.


1.3Special Logic


This business function will evaluate all F4812 records for the system.  If there are no records that exactly match the search criteria, the system will 

create a Default Invoice workfile record for the Time and Material line.  Reads will be from the F4812 table.


If Invoice Number (DOCZ) = 0 then keys used in F4812.Select are DOCO, DCTO, KCOO, COCH, & OPIM;

else the keys will be same as above plus DOCZ, DCTI, & KCOI. Also, when DOCZ not zero, the historical fields in F4812 (HOTL, HOTX, & HTAM) 

will not be updated.


If the information from the F5201/F5202 is not passed in, the system will retrieve it during the creation of the Default Invoice line.  


2.Technical Specifications


2.1Parameters: See list in attachment for D5200204


2.2Related Tables 

  Table   Table Description

F4812Billing Workfile



2.3Related Business Functions

Source NameFunction Name     

N48S0200Calculate Billing Amount

N5200200Create CB Default Workfile Record


2.4Processing 


// Verify that there is a detail record for a T & M/component line which is not in 

// an active batch.

// If there isn't one, create a record with zero billing amt.     

// This will be used for printing the pay item on the invoice.

//

// Initialize Information

evt_cRecordFound = ' '

evt_cOK = ' '

evt_cEOF = '1'

evt_cErrorStatus= ' '

evt_cF4812Status= ' '

evt_cValidF4812Record = ' '

//

// Clear All Return Amount Values

//

//

// Select F4812 records based on billing line information 

//

if DOCZ = 0

thenF4812.Select (DOCO,DCTO,KCOO,COCH,LNID)
elseF4812.Select (DOCO,DCTO,KCOO,COCH,LNID, DOCZ, DCTI, KCOI )

endif
//

// If OK, continue 

//

While evt_cF4812Status = cOK and cErrorStatus = ' '

//

// Read ALL variables in

//

F4812.FetchNext (using index Contract Number, Cntr Type, +)

//

// If OK, then continue

//

If evt_cF4812Status = cOK

evt_cValidF4812Record = '1'

//

// Check 1. Eligibility Code must be Invoice and Revenue ('0') or Invoice only ('1')

//Transaction Class must not be Automatic ('A') or Revenue Placeholder 'B')

//

If evt_cF4812EligibilityCode_ELGC <> '0','1' 

Or evt_cF4812TransactionClass_TCLS = 'A', 'B'

evt_cValidF4812Record = ' '

Endif

//

// Check 2.Cutoff Dates - If Table Basis Date is less than From Date And From Date <> 0

//Or Table Basis Date is greater than Thru Date And Thru Date <> 0

//Record is not valid

//

If evt_jdF4812TableBasisDate_TBDT < BF jdDateBillFrom And BF jdDateBillFrom <> 0

Or evt_jdF4812TableBasisDate_TBDT > BF jdDateBillThru And BF jdDateBillThru <> 0

evt_cValidF4812Record = ' '

Endif

//

// Check 3.Hold Codes -If Invoice Hold Code is on (i.e., = 'A', 'B', 'I', '1', '2', or '3')

//If Release Date is 0 

//Or Release Date Greater than Bill Thru Date and Bill Thru Date <> 0

//Or Release Date Less than Bill From Date and Bill From Date <> 0

//Record is not valid

//

If evt_cF4812HoldCode = 'A', 'B', 'I', '1', '2', '3'

If evt_jdF4812ReleaseDate = 0

Or BF jdDateBillThru <> 0

And evt_jdF4812ReleaseDate > BF jdDateBillThru

Or BF jdDateBillFrom <> 0

And evt_jdF4812ReleaseDate < BF jdDateBillFrom

evt_cValidF4812Record = ' '

Else

//

//Release the record by clearing the hold

//

Endif

Endif

//

// If all tests pass, mark that at least one record was found (so no Default Billing line is created) 

//

If evt_cValidF4812Record = '1'

evt_cRecordFound = '1'

//

if szF4812_TXA1 <> BF TXA1

or szF4812EXR1 <> BF EXR1

szF4812TXA1= BF TXA1

szF4812EXR1= BF EXR1

if BF VertexActive = "1,Y"

Call Get Vertex Information
endif
Clear F4812/ CITX, ITAM, CITL, ITOL which will be recalculated by N48S0200

//

// Call N48S0200 to recalculate taxes, totals, & historical amounts

Call Calculate Billing Amounts (N48S0200)
Endif
//

//

If DOCZ = 0

then F4812.Update (including historical fields HITL, HITX, HTAM)
else F4812.Update (excluding historical fields)

//Both update statements use index Billing, Cntl ID, G/L Date, +, Primary, Unique)

endif

//

// Increment Total Amounts for this Billing Line to Return

//

// AA, ITOL, ITAM, ITXA, JTAX, IDSC, AA2, CITL, CITX, CITA, JTXF, CIDS

//

//Transaction Class = '1' signifies Labor lines - accumulate total

If evt_cF4812TransactionClass_TCLS = '1'

//

//Accumulate ITOL and CITL  (to be returned in BF TLAB and BF FLAB)

Endif

//

// Transaction Class = '2' signifies Burden lines - accumulate total

//

If evt_cF4812TransactionClass_TCLS = '2'

//

// Accumulate ITOL and CITL  (to be returned in BF TBUR and BF FBUR)

Endif

//

//Accumulate Roll Units if parameter is on

//

If BF cRollUnits_ROLU = '1'

And evt_szF4812UnitOfMeasure_UM = BF szUnitOfMeasure_UM

BF mnUnits = BF mnUnits + evt_mnF4812Units 

endif

//

// Endif (Valid F4812 record)

Endif (F4812 read correctly)

End while (F4812 read loop)

//

// If no record found, write Default Invoice workfile record with 0 amount

//

If evt_cRecordFound = ' '

//

// Call external procedure for write

//

Call CreateCBDefaultInvoiceWorkfileRecord (N5200200)

else

Return accumulated values to output parameters

Endif


BF cErrorCode = evt_cErrorStatus


Data Structure

D5200204 - Process Time And Material Billing Line For CB Invoice

D5200204

Process Time And Material Billing Line For Contract Billing Invoice


Parameters


Data

Item Data StructureI/OReq.Notes

DOCOmnContractNoIY

DCTOszContractDocumentTypeIY

KCOOszContractKeyCoIY

COCHszContractChangeOrderIY

LNIDmnContractLineNoIY

ICUmnBatchNoIY

DTFRjdDateBillFromIYIf zero, the system will process

all records before the Thru Date

DTTOjdDateBillThruIYIf zero, the system will process

all records in the workfile and

will disregard DTFR

APDTjdApplicationDateIY

DGJjdGeneralLedgerDateIY

DSVJjdServiceDateIY

ERDBcExchangeRateDateBasisIY

ERRCcErrorCodeOblank = no errors

1 = no records found in F4812

2 = Error 1 and error returned by 

N5200200

3 = Error returned by N48S0200

DOCZmnInvoiceNoIY

DCTIszInvoiceDocumentTypeIY

KCOIszInvoiceKeyCompany IY

SFXszPayItemIYThis is the pay item of the billing

line on the invoice.

CRCDszBaseCurrencyIIf multicurrency is on, this field

is required.  

CRCFszForeignCurrencyIIf multicurrency is on, this field is

required.

CRRMcCurrencyModeIIf multicurrency is on, this field

is required.  This is the mode

from the contract.

CRRDmnCurrencyRateI/OIf multicurrency is on, this field

is required. This is the rate

calculated for this date.

AN8OmnCustomerNumberI

DL01szBillingLineDescripI

OPIMszBillingLineI

PRTPcBillingLineTypeI

MCUSszProjectNoIRequired for Default Invoice record.

Should be from F5202 table.

EXR1szTaxExplanationCodeI

TXA1szTaxRateAreaI

PCTNszParentContractNoI

PCTTszParentContractTypeI

PCKOszParentContractKeyCoI

JMCUszHostBusinessUnitIYUsed to determine the RP12 from the

Business Unit Master (From F5201)

Required when calling N5200200.

When DOCZ not 0, can enter blank

because N5200200 will not be called

because records in F4812 should be

found.

ACCOcAccountOverIDetermines whether to set override

revenue account

MCUszBusinessUnitIBusiness Unit from F5202

OBJszObjectINeeded only for override revenue

account

SUBszSubsidiaryINeeded only for override revenue

account

SBLszSubledgerI

SBLTszSubledgerTypeI

ROLUcRollUnitsFlagI

UMszUnitOfMeasureIOnly for Roll Units = '1'

TBDTjdTableBasisDateIY

COszCompanyIY

PTCszPaymentTermsI

EV01cVertexActiveIRequired for Vertex

JOBSmnVertexJobNumberIRequired for Vertex

PIDszCallingProgramIdI

UmnUnitsO

AAmnCostAmtO

ITOLmnInvoiceTotalAmtO

ITAMmnInvoiceTaxAmtO

ITXAmnInvoiceTaxableAmtO

JTAXmnJournalledTaxO

IDSCmnDiscountAmtO

TLABmnTotalAmtLaborO

TBURmnTotalAmtBurdenO

AA2mnCostAmtFO

CITLmnForInvTotalAmtO

CITXmnForInvTaxAmtO

CITAmnForInvTaxableAmtO

JTXFmnForJrnlTaxAmtO

CIDSmnForInvDiscountAmtO

FLABmnForTotLaborAmtO

FBURmnForTotBurdenAmtO


Parameter NameData ItemData TypeReq/OptI/O/Both
mnContractNo_DOCODOCOMATH_NUMERICREQINPUT

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.

szContractDocumentType_DCTODCTOcharREQINPUT

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

szContractKeyCo_KCOOKCOOcharREQINPUT

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.

szContractChangeOrder_COCHCOCHcharREQINPUT

The change number of the contract. The change order number of the base contract is always initialized to 000. Each time you enter a 
change order for a contract, the system automatically increases the change order number by one. For example, the base contract is the change 
order number 000, the first change order is 001, the second is 002, and so on.

mnContractLineNo_LNIDLNIDMATH_NUMERICREQINPUT

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.

mnBatchNo_ICUICUMATH_NUMERICREQINPUT

A number that identifies a group of transactions that the system processes and balances as a unit. When you enter a batch, you can either 
assign a batch number or let the system assign it using the Next Numbers program.

jdDateBillFrom_DTFRDTFRJDEDATEOPTINPUT

The beginning date for which the transaction or code is applicable.

jdDateBillThru_DTTODTTOJDEDATEOPTINPUT

The ending date for which the transaction or code is applicable.

jdApplicatnDate_APDTAPDTJDEDATEREQINPUT

The date of the last or current application. (An application is assigned each time an invoice is issued for the contract.)

jdGeneralLedgerDate_DGJDGJJDEDATEREQINPUT

A date that identifies the financial period to which the transaction will be posted. You define financial periods for a date pattern code that you 
assign to the company record. The system compares the date that you enter on the transaction to the fiscal date pattern assigned to the 
company to retrieve the appropriate fiscal period number, as well as to perform date validations.

jdServiceDate_DSVJDSVJJDEDATEREQINPUT

A date that indicates when you purchased goods or services, or when you incurred a tax liability. 

cExchangeRateDateBasis_ERDBERDBcharREQINPUT

A code that controls which date the system uses to retrieve the exchange rate for the invoice. Valid values are: 1 Use the invoice date 
(default). 2 Use the G/L date of the invoice.

cErrorCode_ERRCERRCcharOPTOUTPUT

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).

mnInvoiceNo_DOCZDOCZMATH_NUMERICREQINPUT

The original document number.  This can be a voucher, an invoice, unapplied cash, a journal entry number, etc.  Matching document 
numbers are also used to identify related documents in the Accounts Receivable and Accounts Payable systems.  See matching document 
(DOCM).  This document number (DOCO) is always the original document number, and the matching document number (DOCM) is the check, 
adjustment, or credit to be applied against the original document. For example: A/P Automated/Manual Payment: Original (DOCO) - Voucher; 
Matching Document (DOCM) - Payment  A/R Original Invoice: Original (DOCO) - Invoice  Receipt Application: Original (DOCO) - Invoice; Matching 
Document (DOCM) - Receipt Credit Memo/Adjustment: Original (DOCO) - Invoice; Matching Document (DOCM) -Credit Memo  Unapplied 
Case: Original (DOCO) - Receipt

szInvoiceDocumentType_DCTIDCTIcharREQINPUT

A user defined (00/DI) document type for invoice entry. Any document type set up for invoice-only entry should begin with the letter R 
(receivables). The default is RI, RR, or RM. Reserved document types have been defined for vouchers, invoices, receipts, and time sheets. The 
reserved document types are: P_ Accounts Payable Documents R_Accounts Receivable Documents T_ Payroll Documents I_Inventory 
Documents O_ Order Processing Documents  Note: Verify that the default document type for invoices is set up in both UDC 00/DT and UDC 00/DI.

szInvoiceKeyCompany_KCOIKCOIcharREQINPUT

Invoice Document Company.

szPayItem_SFXSFXcharREQINPUT

A number that identifies the pay item for a voucher or an invoice. The system assigns the pay item number. If the voucher or invoice has 
multiple pay items, the numbers are sequential.

szBaseCurrency_CRCDCRCDcharOPTINPUT

A code that identifies the currency of a transaction. 

szForeignCurrency_CRCFCRCFcharOPTINPUT

The currency code of the insured amount.

cCurrencyMode_CRRMCRRMcharOPTINPUT

An option that specifies whether the system displays amounts in the domestic or foreign currency. On  The system displays amounts in the 
foreign currency of the transaction. Off  The system displays amounts in the domestic currency of the transaction.

mnCurrencyRate_CRRDCRRDMATH_NUMERICOPTBOTH

A number (exchange rate) that a foreign currency amount is divided by to calculate a domestic currency amount. The number you enter in 
this field can have a maximum of seven decimal positions. If more are entered, the system adjusts to the nearest seven decimal positions. 

mnCustomerNumber_AN8OAN8OMATH_NUMERICOPTINPUT

The address book number to which the system posts billing and accounts receivable transactions.

szBillingLineDescription_DL01DL01charOPTINPUT

A user defined name or remark.

szBillingLine_OPIMOPIMcharOPTINPUT

The pay item number as defined by the owner. This field is alphanumeric and can be up to 15 characters in length. It is recommended that 
you use numeric information for this pay item number.

cBillingLineType_PRTPPRTPcharOPTINPUT

A code that specifies the billing terms that are defined by the billing line on the contract. The system uses the predefined codes for the 
pricing type to access formulas and other information related to the calculation of billing and revenue amounts for the billing line. Valid alphabetic 
codes are: B Burden T Time and Materials U Unit Price L Lump Sum F Fee Line C Component M Milestone P Progress D Direct Draw R Rated 
Draw Valid numeric codes are: 0 Burden 1 Time and Materials 2 Unit Price 3 Lump Sum 4 Fee Line 5 Component 6 Milestone 7 Progress 8 Direct 
Draw 9 Rated Draw

szProjectNo_MCUSMCUScharOPTINPUT

Either a subsequent business unit or a project number. A subsequent business unit specifies where to charge costs (or revenues) when the 
original business unit has been closed or suspended. For example, the subsequent business unit can be used in corporate reorganizations 
when you close a business unit and direct all costs to the subsequent business unit. In this situation, you must enter journal entries to transfer 
existing balances. A project number is used to group business units within an overall business unit. For example, you can group jobs by 
project. In this case, the project business unit can also have accounts for tracking overhead costs that can be allocated to jobs.

szTaxExplanationCode_EXR1EXR1charOPTINPUT

A hard-coded user defined code (00/EX) that controls the algorithm that the system uses to calculate tax and G/L distribution amounts. The 
system uses the tax explanation code in conjunction with the tax rate area and tax rules to determine how the tax is calculated. Each 
transaction pay item can be defined with a different tax explanation code.

szTaxRateArea_TXA1TXA1charOPTINPUT

A code that identifies a tax or geographic area that has common tax rates and tax authorities. The system validates the code you enter 
against the Tax Areas table (F4008). The system uses the tax rate area in conjunction with the tax explanation code and tax rules to calculate tax 
and G/L distribution amounts when you create an invoice or voucher.

mnParentContractNo_PCTNPCTNMATH_NUMERICOPTINPUT

The parent contract number to which this particular contract is attached.

szParentContractType_PCTTPCTTcharOPTINPUT

The parent contract type to which this particular contract is attached.

szParentContractKeyCo_PCKOPCKOcharOPTINPUT

Parent Contract Document Company.

szHostBusinessUnit_JMCUJMCUcharREQINPUT

The Business Unit responsible for the job.  This is particularly useful during transfer pricing.

cAccountOver_ACCOACCOcharOPTINPUT

An option that specifies whether the account information for a billing line identifies a revenue or cost (source) account. The system 
automatically supplies the account information (business unit, object, subsidiary, subledger, and subledger type) from the automatic accounting 
instructions (system 52, code BC). You can also enter a specific account. All billing lines, with the exception of T and M, use the account 
information.  Note: When this option is set to 1, the account information identifies a cost account. The system processes the billing line against the 
Billing AAI Information table (F48S95) during journal generation. This is similar to how the system processes a T and M billing line.

szBusinessUnit_MCUMCUcharOPTINPUT

An alphanumeric code that identifies a separate entity within a business for which you want to track costs. For example, a business unit 
might be a warehouse location, job, project, work center, branch, or plant. You can assign a business unit to a document, entity, or person for 
purposes of responsibility reporting. For example, the system provides reports of open accounts payable and accounts receivable by 
business unit to track equipment by responsible department. Business unit security might prevent you from viewing information about business units 
for which you have no authority.

szObject_OBJOBJcharOPTINPUT

The portion of a general ledger account that refers to the division of the Cost Code (for example, labor, materials, and equipment) into 
subcategories. For example, you can divide the Cost Code for labor into regular time, premium time, and burden. Note: If you use a flexible chart of 
accounts and the object account is set to 6 digits, J.D. Edwards recommends that you use all 6 digits. For example, entering 000456 is not 
the same as entering 456 because if you enter 456 the system enters three blank spaces to fill a 6-digit object.

szSubsidiary_SUBSUBcharOPTINPUT

A subset of an object account. Subsidiary accounts include detailed records of the accounting activity for an object account.

szSubledger_SBLSBLcharOPTINPUT

A code that identifies a detailed, auxiliary account within a general ledger account. A subledger can be an equipment item number or an 
address book number. If you enter a subledger, you must also specify the subledger type.

cSubledgerType_SBLTSBLTcharOPTINPUT

A user defined code (00/ST) that is used with the Subledger field to identify the subledger type and how the system performs subledger 
editing. On the User Defined Codes form, the second line of the description controls how the system performs editing. This is either hard-coded 
or user defined. Valid values include: A Alphanumeric field, do not edit   N Numeric field, right justify and zero fill   C Alphanumeric field, right 
justify and blank fill  

cRollUnitsFlag_ROLUROLUcharOPTINPUT

This is a flag for Time and Material items to tell the system whether or not to roll the sum of the detail workfile (F4812) units into the summary 
billing workfile (F4822).    blank Do not roll units    1     Add units if the unit of measure in the F4812 file matches that in Owner Pay Item Detail 
(F5202).

szUnitOfMeasure_UMUMcharOPTINPUT

A user defined code (00/UM) that identifies the unit of measurement for an amount or quantity. For example, it can represent a barrel, box, 
cubic meter, liter, hour, and so on.

jdTableBasisDate_TBDTTBDTJDEDATEREQINPUT

This date is used as the basis for comparison to the effective dates of the various tables used by the Service Billing system.  This date is 
determined by the values set up in the Service Billing Constants at the time the Service Billing Work File (F4812) is generated.

szCompany_COCOcharREQINPUT

A code that identifies a specific organization, fund, or other reporting entity. The company code must already exist in the Company 
Constants table (F0010) and must identify a reporting entity that has a complete balance sheet. At this level, you can have intercompany 
transactions. Note: You can use company 00000 for default values such as dates and automatic accounting instructions. You cannot use company 00000 
for transaction entries.

szPaymentTerms_PTCPTCcharOPTINPUT

A code that specifies the terms of payment, including the percentage of discount available if the invoice is paid by the discount due date. 
Use a blank code to indicate the most frequently-used payment term. You define each type of payment term on the Payment Terms Revisions 
form. Examples of payment terms include: Blank Net 15 001      1/10 net 30 002      2/10 net 30 003      Due on the 10th day of every month 006     
Due upon receipt  This code prints on customer invoices.

cVertexActive_EV01EV01charOPTINPUT

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

mnVertexJobNumber_JOBSJOBSMATH_NUMERICOPTINPUT

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

szCallingProgramId_PIDPIDcharOPTINPUT

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.

mnUnits_UUMATH_NUMERICOPTOUTPUT

The quantity of something that is identified by a unit of measure. For example, it can be the number of barrels, boxes, cubic yards, gallons, 
hours, and so on.

mnCostAmt_AAAAMATH_NUMERICOPTOUTPUT

A number that identifies the amount that the system will add to the account balance of the associated account number.  Enter credits with a 
minus sign (-) either before or after the amount. 

mnInvTotalAmt_ITOLITOLMATH_NUMERICOPTOUTPUT

The invoice amount for a billing detail transaction.

mnInvTaxAmt_ITAMITAMMATH_NUMERICOPTOUTPUT

The tax amount in the invoice.  This can be either the sales, use or VAT tax.

mnInvTaxableAmt_ITXAITXAMATH_NUMERICOPTOUTPUT

The portion of the invoice amount that is subject to tax.

mnJrnlTaxAmt_JTAXJTAXMATH_NUMERICOPTOUTPUT

The portion of the tax amount calculated for this entry that is not automatically generated by the post program.

mnInvDiscountAmt_IDSCIDSCMATH_NUMERICOPTOUTPUT

The amount of the discount available, as opposed to the amount of the discount actually taken.  The discount calculated is based on the 
invoice amount rather than the revenue amount.

mnTotalLaborAmt_TLABTLABMATH_NUMERICOPTOUTPUT

The total labor amount of the invoice or bill.

mnTotalBurdenAmt_TBURTBURMATH_NUMERICOPTOUTPUT

The total burden amount of the invoice or bill.

mnCostAmtF_AA2AA2MATH_NUMERICOPTOUTPUT

Amount.

mnForInvTotalAmt_CITLCITLMATH_NUMERICOPTOUTPUT

The total amount of the invoice in foreign currency.

mnForInvTaxAmt_CITXCITXMATH_NUMERICOPTOUTPUT

The tax amount on the invoice in foreign currency.  This can be either the sales, use or VAT tax.

mnForInvTaxableAmt_CITACITAMATH_NUMERICOPTOUTPUT

The portion of the foreign invoice amount that is subject to tax.

mnForJrnlTaxAmt_JTXFJTXFMATH_NUMERICOPTOUTPUT

The portion of the tax amount calculated for this entry that is not automatically generated by the post program.

mnForInvDiscountAmt_CIDSCIDSMATH_NUMERICOPTOUTPUT

The foreign currency amount of the discount available, as opposed to the amount of the discount actually taken.  The discount calculated is 
based on the foreign invoice amount.

mnForTotLaborAmt_FLABFLABMATH_NUMERICOPTOUTPUT

The total labor foreign amount of the invoice or bill.

mnForTotBurdenAmt_FBURFBURMATH_NUMERICOPTOUTPUT

The total burden foreign amount of the invoice or bill.

szGlClassGLCcharOPTINPUT

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.

szGlOffsetRetentionRGLCcharOPTINPUT

A code that designates the offset accounts for retainage, for example RETN or 1225. You set up the code as an automatic accounting 
instruction. Note:  Do not use code 9999. This is reserved for the post program and indicates that offsets should not be created.

szVertexTransactionTypeVVTYcharOPTINPUT

Vertex Sales and Use Tax transaction type.

szVertexProductCategoryVVTCcharOPTINPUT

User defined code used in the Vertex Tax Decision Maker for products or services that are non-taxable or are at a non-stanard rate.

cPTCOverride_EV01EV01charOPTINPUT

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

Related Functions

None

Related Tables

None
00in">endif

//

// Endif (Valid F4812 record)

Endif (F4812 read correctly)

End while (F4812 read loop)

//

// If no record found, write Default Invoice workfile record with 0 amount

//

If evt_cRecordFound = ' '

//

// Call external procedure for write

//

Call CreateCBDefaultInvoiceWorkfileRecord (N5200200)

else

Return accumulated values to output parameters

Endif


BF cErrorCode = evt_cErrorStatus


Data Structure

D5200204 - Process Time And Material Billing Line For CB Invoice

D5200204

Process Time And Material Billing Line For Contract Billing Invoice


Parameters


Data

Item Data StructureI/OReq.Notes

DOCOmnContractNoIY

DCTOszContractDocumentTypeIY

KCOOszContractKeyCoIY

COCHszContractChangeOrderIY

LNIDmnContractLineNoIY

ICUmnBatchNoIY

DTFRjdDateBillFromIYIf zero, the system will process

all records before the Thru Date

DTTOjdDateBillThruIYIf zero, the system will process

all records in the workfile and

will disregard DTFR

APDTjdApplicationDateIY

DGJjdGeneralLedgerDateIY

DSVJjdServiceDateIY

ERDBcExchangeRateDateBasisIY

ERRCcErrorCodeOblank = no errors

1 = no records found in F4812

2 = Error 1 and error returned by 

N5200200

3 = Error returned by N48S0200

DOCZmnInvoiceNoIY

DCTIszInvoiceDocumentTypeIY

KCOIszInvoiceKeyCompany IY

SFXszPayItemIYThis is the pay item of the billing

line on the invoice.

CRCDszBaseCurrencyIIf multicurrency is on, this field

is required.  

CRCFszForeignCurrencyIIf multicurrency is on, this field is

required.