N5100009A

Build Profit Recognition Records

Minor Business Rule

Object Name: N5100009

Parent DLL: CAEC

Location: Client/Server

Language: NER

Purpose
The purpose of this business function is to determine Profit Recognition data for a Job, Project or Subledge/Subledger Type and generate records in 

the F5144 and F5145 files, as required.

 

PROCESSING NOTES:

Records inserted into the F5144 file will be processed accordingly:


Profit Recognition summarized by Project 

Produces blank records for each job belonging to a project and an audit record for the project containing the accumulated totals of those jobs that 

belong to the project.  Sorted by Project.


Profit Recognition summarized by Job

Produces a detail record for each job with blanks in the subledger and subledger type fields.  Sorted by Job.


Profit Recognition summarized by Subledger/Subledger Type

Produces a detail record for each job.  Sorted by Ledger Type / Subledger / Subledger Type.


Period End Date

The user enters a valid date and the system will calculate what the fiscal period end date should be and makes that the new effective date while the 

user entry date becomes the generation date.


Prior Quarter End Date

If user entered a date here, search through F5144 for that effective date.  If such a record exists, move the found record's Earned Job to Date 

amounts for current record's Earned Prior Quarter.  If user did not enter a date, set the Earned Prior Quarter amount = 0.


Profit Recognition Threshold

This percentage is requested by the user and an F5144 and subsequent F5145 record will only be created if the profit is indeed greater than or equal 

to the threshold amount.


Deferred Preference 

By default profit will be recognized all at once, but the user can defer over the life of the Job/Project.


Projected Final Cost Method

By default the projected Final Cost is accumulated as stored in the HA ledger, but the user can request to derive Projected Final Cost using the 

percentage of completion from the F% ledger with a blank Cost Code and Cost Type. 


Profit Recognition Method

By default the method of calculating Profit will be based on the "Percent of Cost."  However, the user can request "Percent of Revenue" or "Percent 

of Cost or Revenue; whichever gives lower profit." 


Accumulate the JCCA and JCST AAI ranges set up for the company.


Records inserted into the F5145 file will be processed accordingly:


A record is created for each object that belongs to one F5144 record created.  

Data Structure

DN5100009 - Build Profit Recognition Records

Parameter NameData ItemData TypeReq/OptI/O/Both
jdFiscalPeriodEndDateDEFJDEDATEREQINPUT

The date on which this transaction takes effect. The effective date is used generically. It can be the date of the next raise, a lease effective 
date, a price or cost effective date, a currency effective date, a tax rate effective date, a change in well status, or any other date that is 
appropriate.

jdPriorQuarterEndDateDEEJDEDATEREQINPUT

The ending date (in the range of SPC expiration dates) to be used to build the workfile for review. This date should be entered in 
MM/DD/YY format.

szCompanyCOcharREQINPUT

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.

cSummarizationLevelEV01charREQINPUT

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

mnProfitThresholdPercentPTPCMATH_NUMERICREQINPUT

The level of completion at which the actual cost becomes significant for recognizing profit on a job. If the percent complete for a job is less 
than the threshold percent, profit recognition is deferred. If the percent complete is equal to or greater than the threshold, profit recognition can 
occur. You can recognize the entire deferred profit toward the current recognition period or recognize it proportionately over the life of the 
job. You can specify the threshold percent with either of the following:   o  A processing option for the Profit Recognition program   o  The Profit % 
field on the Single Job Adjustments form 

cDeferredProfitRecongniPTTHcharREQINPUT

A value that controls how to recognize the deferred profit that accrues while the percent complete for a job is less than the threshold percent 
for profit recognition. Valid values are: 1    Recognize all the accrued profit in the first period that the percent complete is equal to or greater 
than the threshold. 2    Recognize the accrued profit proportionately over the life of the job beginning with the first period that the percent 
complete is equal to or greater than the threshold. The total profit recognized is equal to:        [(% Complete - Threshold %) / (1 - Threshold %)] * 
Projected Final Profit

cProjectedFinalCostMethodEV03charREQINPUT

A radio button that specifies the level at which trace/track result is to be displayed.  Select the Detail to display all transactions except IB, IX, 
and IZ types.  Or, select Derivative Lots Only to display only those transactions that may have created new derivative lot. 

cMethodProfitRecogRECMcharREQINPUT

A code that specifies the method of recognition for job-to-date earned profit. The recognition method controls whether the percent complete 
is applied to costs or billings (revenue). Valid values are: 1    Percent of cost (cost to cost). 2    Percent of revenue. 3    The percent complete 
applies to the lesser of the two, cost or revenue. The system applies the percentage to the one that results in a lower job-to-date earned 
profit. Note: If the job-to-date earned profit is equal for both cost and revenue, the system uses method 1.

szCostCenterMCUcharREQINPUT

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.

szSubledgerSBLcharREQINPUT

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.

cSubledgerTypeSBLTcharREQINPUT

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  

szVersionconsolidatedVERcharREQINPUT

Identifies a specific set of data selection and sequencing settings for the application. Versions may be named using any combination of 
alpha and numeric characters. Versions that begin with 'XJDE' or 'ZJDE' are set up by J.D. Edwards.

mnNextNumberValueNNBRMATH_NUMERICREQINPUT

The number that the system will use next for automatically assigning numbers. Next numbers can be used for many types of documents; 
they include voucher numbers, invoice numbers, journal entry numbers, employee numbers, address numbers, and so on. You must adhere to 
the next numbers that have been pre-established unless custom programming is provided.

mnFiscalPeriodPNMATH_NUMERICREQINPUT

A number indicating the current accounting period.  This number, used in conjunction with the Company Constants table (F0010) and the 
General Constants table (F0009), allows the user to define up to 14 accounting periods. See General Ledger Date.  The current period number 
is used to determine posted before and posted after cut off warning messages.  It is also used as the default accounting period in the 
preparation of financial reports.

mnFiscalYearFYMATH_NUMERICREQINPUT

A number that identifies the fiscal year. Generally, you can either enter a number in this field or leave it blank to indicate the current fiscal 
year (as defined on the Company Setup form). Specify the year at the end of the first period rather than the year at the end of the fiscal period. 
For example, a fiscal year begins October 1, 1998 and ends September 30, 1999. The end of the first period is October 31, 1998. Specify the 
year 98 rather than 99.

mnFiscalCenturyCTRYMATH_NUMERICREQINPUT

The calendar century associated with the year. Enter is the first two digits of the year. For example, 19 indicates any year beginning with 19 
(1998, 1999), 20 indicates any year beginning with 20 (2000, 2001), and so on.

jdDateGenerationDGENJDEDATEREQINPUT

The date entered when the Profit Recognition File Build program (R51800) was run. This date is used to derive the profit recognition 
effective date, which is the period ending date in which this generation date occurs.

szLedgerTypeLTcharREQINPUT

A user defined code (09/LT) that specifies the type of ledger, such as AA (Actual Amounts), BA (Budget Amount), or AU (Actual Units). You 
can set up multiple, concurrent accounting ledgers within the general ledger to establish an audit trail for all transactions.

szProjectMCUScharREQINPUT

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.

mnStoredMaterialsSTMLMATH_NUMERICOPTBOTH

A code that specifies whether to accrue or defer additional costs to a job. A deferred cost can be the value of stored materials, which have 
been received but not yet used on a job. A positive amount in this field is an accrued cost that increases the job-to-date actual costs. A 
negative amount is a deferred cost that decreases the job-to-date actual costs. In the profit recognition process, this amount is initially set to 
zero. Note: The JCSMI and JCSMJ AAIs identify the accounts for deferred costs. JCAPC and JCAPO AAIs identify the accounts for accrued costs.

mnCostOriginalBudgetCOBMATH_NUMERICOPTBOTH

The original budgeted amount for the cost accounts of a job. It is equal to the sum of the original budgets (data item BORG) for all the cost 
accounts for the current year in the Account Balances table (F0902). The ledger types of the related ledgers are user defined codes 
(51/RB). Note: The JCSTxx AAIs control the ranges of accounts that are considered cost accounts.

mnRevnOriginalBudgetROBMATH_NUMERICOPTBOTH

The original budgeted amount for the revenue accounts of a job. It is equal to the sum of the original budgets (data item BORG) for all the 
revenue accounts for the current year in the Account Balances table (F0902). The ledger types of the related ledgers are UDC 51/RB. Note: 
The JCCAxx AAIs control the ranges of accounts that are considered as revenue accounts.

mnCostChangesCCHMATH_NUMERICOPTBOTH

The total of all the changes to the budgeted amounts for the cost accounts of a job. It is calculated using the current year records from the 
Account Balances table (F0902) for the job's cost accounts. The balance forward and the net posting amounts for each period up to the current 
period are added together for these records. The ledger types of the related ledgers are user defined codes (51/RB). Note: The JCSTxx 
AAIs control the ranges of accounts that are considered cost accounts.

mnRevnChangesRCHMATH_NUMERICOPTBOTH

The total of all the changes to the budgeted amounts for the revenue accounts of a job. Revenue is calculated using the current year 
records from the Account Balances table (F0902) for the job's revenue accounts. The balance forward and the net posting amounts for each period 
up to the current period are added together for these records. The ledger types of the related ledgers are user defined codes (51/RB and 
51/RU). Note: The JCCAxx AAIs control the ranges of accounts that are considered as revenue accounts.

mnActualCostToDateCATDMATH_NUMERICOPTBOTH

The actual amount (ledger type AA) recorded to date in the Account Balances table (F0902) for a job's cost accounts. It is the sum of the 
prior year-end balance and the net amount of all the postings in the current year through the current period. Note: The JCSTxx AAIs control the 
ranges of accounts that are considered cost accounts.

mnActualRevnToDateRATDMATH_NUMERICOPTBOTH

The actual amount (ledger type AA) recorded to date in the Account Balances file (F0902) for a job's revenue accounts. It is the sum of the 
prior year-end balance and the net amount of all the postings in the current year through the current period. Note: The JCCAxx AAIs control the 
ranges of accounts that are considered as revenue accounts.

mnJobToDateEarnedCostCJTDMATH_NUMERICOPTBOTH

The cumulative earned cost for a job. This cost is controlled by the method of recognition. The following rules apply:   o  When the method 
relates to the percent of cost, this cost is equal to the job-to-date actual cost.   o  When the method relates to the percent of revenue, and the 
projected final profit is positive, this cost is equal to the projected final cost multiplied by the earned percentage.   o  When the method relates to 
the percent of revenue, and the projected final profit is negative, the job-to-date earned profit is set to equal the projected final profit. As a 
result, this cost is equal to the job-to-date earned revenue minus the job-to-date earned profit.   o  When the method relates to the percent of 
revenue, and the threshold percent complete is greater than the actual percent complete, this cost is equal to the job-to-date earned revenue.

mnJobToDateEarnedRevenRJTDMATH_NUMERICOPTBOTH

The cumulative earned revenue for a job. This revenue is controlled by the method of recognition and the following criteria:   o  When the 
method relates to the percent of revenue, this revenue is equal to the job-to-date actual revenue.   o  When the method relates to the percent of 
cost, and the projected final profit is positive, this revenue is equal to the projected final revenue multiplied by the earned percentage.   o  
When the method relates to the percent of cost, and the projected final profit is negative, the job-to-date earned profit is set to equal the 
projected final profit. As a result, this revenue is equal to the job-to-date earned cost plus the job-to-date earned profit.   o  When the method relates to 
the percent of cost, and the threshold percent complete is greater than the actual percent complete, this revenue is equal to the job-to-date 
earned cost.

mnCostProjectedFinalCPFMATH_NUMERICOPTBOTH

The original budgeted amount for all cost accounts on a job in the Projected Amounts ledger type HA. This figure is the sum of the Original 
Budget field (BORG) from the current year balance records in the Account Balances table (F0902) for all cost accounts. Note: The JCSTxx 
AAIs determine what accounts are considered cost accounts.

mnCostProjectedFinalAdjCPFAMATH_NUMERICOPTBOTH

The projected final amount (ledger type HA) in the Account Balances table (F0902) for a job's cost accounts. Initially, this amount is equal to 
the projected final cost that results when the Profit Recognition File Build program (R51800) is run. You can then use this field to manually 
change the amount. You can also enter a percentage so that the system automatically calculates the amount. If you enter a percentage, which 
is the percent complete as it applies to cost, enter the number preceded or followed by %. For example, you can enter 20 percent as either 
%20 or 20%. Note: The JCSTxx AAIs control the ranges of accounts that are considered cost accounts.

mnRevnProjectedFinalRPFMATH_NUMERICOPTBOTH

The original budgeted amount for the revenue account on a job in the Projected Amounts ledger HA. This value is equal to the Original 
Budget field (BORG) from the current year balance record in the Account Balances table (F0902) for the revenue account. The JCCA AAI 
determines the revenue account for a job based upon its company.

mnRevnProjectedFinalAdjRPFAMATH_NUMERICOPTBOTH

The projected final amount (ledger type HA) in the Account Balances table (F0902) for a job's revenue accounts. Initially, this amount is 
equal to the projected final revenue that results when the Build Recognition Data program (R51800) is run. You can then use this field to manually 
adjust the amount. You can also enter a percentage to have the system automatically calculate the amount. If you enter a percentage, which 
is the percent complete as it applies to revenue, enter the number preceded or followed by %. For example, you can enter 20 percent as 
either %20 or 20%. Note: The JCCAxx AAIs control the ranges of accounts that are considered as revenue accounts.

mnCostEarnedPriorYrCEPYMATH_NUMERICOPTBOTH

The actual costs as calculated the last time that profit recognition was run in the prior year. Profit recognition is not run automatically, so the 
value in this field represents costs at the end of last year only if profit was recognized through the end of the year.

mnRevnEarnedPriorYrREPYMATH_NUMERICOPTBOTH

The actual revenue as calculated the last time that profit recognition was run in the prior year. This value represents revenue at the end of 
last year only if profit was recognized through the end of the year.

mnCostEarnedEndOfPriorCEPQMATH_NUMERICOPTBOTH

The actual costs as calculated the last time that profit recognition was run in the prior quarter.  This field is used for calculating Earned 
Current Quarter Cost.

mnRevenueEarnedEndOfPriorREPQMATH_NUMERICOPTBOTH

The revenue as calculated the last time that profit recognition was run in the prior quarter. This field is used to calculate Earned Current 
Quarter Revenue.

mnCostEarnedPriorMoCEPMMATH_NUMERICOPTBOTH

The actual costs as calculated the last time that profit recognition was run.

mnRevnEarnedPriorMoREPMMATH_NUMERICOPTBOTH

The actual revenue as calculated the last time that profit recognition was run.

cPreliminaryOrFinalProcessingPRFIcharOPTNONE

A code that specifies whether to run in preliminary or final mode. Valid values are: Blank  Preliminary mode. This is the default. 1        Final 
mode. This mode updates record changes.

szProgramIdPIDcharOPTNONE

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.

Related Functions

None

Related Tables

None