DBA Table Method

Purpose
Scope
Details
 Table Methods (P059027/F069027)
 Calculation Tables (P059021/F069026)
 DBA Setup (P059116/F069116)
 Employee DBA Instructions (P050181/F06106)
 Work With Pre-Payroll DBA Calculation Control File (P07901/F07901)
 Named Event Rule
 Input Variables and Output Results
 Named Event Rule: DBACalcMonthsBetweenDates
 Named Event Rule: DBACalcFetchNextF09026LimitRange
 Named Event Rule: DBACalcIfNotElseMultipleSingle
 Named Event Rule: DBACalcIfMoveElseMoveElseMove
 Named Event Rule: DBACalcMult
 Named Event Rule: DBACalcOneorMoreMoves
 Named Event Rule: DBACalcIfNotEqandGreaterThan

Purpose

This document will assist in deciphering a Table Method (P07901/F07901).

Table Methods are setup in the P059027, and stored in Table F069027.

Scope

Details

Table Methods (P059027/F069027)

Table Method (PRUM) - This defaults in from the Calculation Table (P059021)
DBA Method 1 (DEDM) - This is setup in DBA Setup (P059116), under Method of Calculation

table method

Calculation Tables (P059021/F069026)

Table Code (FTC) - Is pulled in from the Table Code (DTAB) in DBA Setup (P059116)
Table Method (PRUM) - Viewed also in Table Methods (P059027)

calculation table

DBA Setup (P059116/F069116)

DBA setup

Note the Method of Calculation. Only a method of calculation that is valid for the table method set up on the calculation table can be used. The valid methods of calculations are defined at the table method level. If a Method of Calculation is entered that is not valid for the table method on the calculation table an error is generated:

Error

In this example a value of 2 is the only valid Method of Calculation for table method SA which is attached to table code 08011 (see first image)


Employee DBA Instructions (P050181/F06106)

P050181

Work With Pre-Payroll DBA Calculation Control File (P07901/F07901)

(Accessible via fast path only)

P07901

DBA calc

Every Table Method and NER Function within the table method will have (input) Variables and (output) Return Results.

The Return Results data items may be used to temporarily store information to be used in the subsequent line numbers or may be used to hold historical data.


Named Event Rule

The named event rule defines the function of the record within the table method. All the Named Event Rules in the F07901 are handled by the N0700003.

It is often difficult when looking at the NER and the description to determine exactly what it is doing. One example of such NER is DBACalcIfMoveElseMoveElseMove. The description of this NER is:

If <> then Move, Else if <> then Move, Else Move

So how can it be determined exactly what this NER is doing?

Access OMW and move the N0700003 over to a project.

Highlight the N0700003 in the project and click on the Design icon in the center

Click on the Design Tools tab

Click on the Start Business Function Design Aid icon

BFSN design aid

Highlight the Function Name and from the Form exit, select edit. This defines the function of the NER.

NER


Input Variables and Output Results

These data items are defined in the UDC 07|VN. These data items will correspond back to the table method, the calculation table, the DBA setup, and/or the employee setup. It is important to note that not all data items in the 07|VN will have a corresponding record in the Data Dictionary.

Dissection of a table method in the P07901/F07901 follows.

Named Event Rule: DBACalcMonthsBetweenDates

- Number of Months between two dates

This record will calculate the number of months the employee has been employed by subtracting the Date Started from the Pay Period End Date. This value is then passed into the Upper Limit.

P07901 dissected

Input Variables

UCL Calculation

Output Results Value
DST: Date Started 01/01/2009 UCL: Upper Limit 13.17
PPED: Pay Period End Date 01/30/2010 UCL2: Upper Limit 2
WKSV: Weeks of Service Unchecked DPR2: Proration Factor 2
PPBD: Pay Period Begin Date 01/17/2010 DPR2: Proration Factor 2
DEFR: Rate Control Blank (3)
TABT: Table Type D
DTAB: Table Code 08011

PPED-DST 01/30/2010 – 01/01/2009 (395 days / 30 days = 13.17 months). This value, 13.17, is passed into UCL to determine which table record is to be used to calculate the employee’s accrual (see next line number).


Named Event Rule: DBACalcFetchNextF09026LimitRange

- Select and Fetch F069026 for Limit Range

This record fetches the applicable record from the calculation table based on the upper limit passed in from the previous record. The output results are updated with the appropriate values if applicable.

Limit range

Input Variables

Value

Output Results Value
TABT: Table Type D LCL: Lower Limit 0
DTAB: Table Code 08011 UCL: Upper Limit 35.99
UCL: Upper Limit 13.17 FT2: Table Amount 1 10.00
DCLC: Accrue Days Unchecked FT3: Rate 0
AN8: Address Number FT4: Amount 2 0
UCL2: Upper Limit 2 ADL: Annual Dollar Limit 100.00
DPR1: Proration Factor 1 EXRT: Excess Rate 0
DPR2: Proration Factor 2 RTAB: Rollover Table Blank
CMAX: ITD Limit 0

upper limit

In this case the first record is retrieved as 13.17 falls between 0 and 35.99. Now UCL becomes 35.99.


Named Event Rule: DBACalcIfNotElseMultipleSingle

-If Not Equal Multi Else Multi

This function checks to see if variable 01 is not equal to variable 02. If true, multiply variable 03 by variable 01 getting result 01. If false, multiply variable 03 by variable 04 getting result 01.

If PRFX is not equal to zero, multiply PFRX by FT2 and move the result to FT2. If PRFX is equal to zero, multiply FT2 by 1 and move the result to FT2. (In this scenario the result is False

mutilpleSingle

Input Variables Value Output Results Value
PRFX: Proration Facto Blank FT2: Table Amount 1 10.00
0
FT2: Table Amount 1 10.00
1

Proration factor (PRFX) is not stored; it is derived based on the rate control field (i.e. based on rate control what percentage of the DBA is active in the pay period).

Rate Control: This field will be used to control the rate used to calculate a DBA when multiple rates are valid within the pay cycle. During payroll and interim processes, determine whether the system will use the ending rate, beginning rate or prorate all rates found within a pay cycle period.

Since there is no rate change applicable during this pay period, the rate control would not be activated. This would result in the proration factor for the accrual to be zero.

Since PRFX is equal to zero FT2 is multiplied by 1 and is moved to FT2.


Named Event Rule: DBACalcIfMoveElseMoveElseMove

-If <> then Move, Else if <> then Move, Else Move

The function performs a move if the first test is True. If the first test is false then a second if is tested. If the second if is false then the third else is used.

If FT3 is not equal to zero then move FT3 to RAT, if false then…

If FT3 is equal to zero and RTAM is not equal to PHRT, move RTAM to RAT, if false then…

If FT3 is equal to zero and RTAM is equal to PHRT, move PHRT to RAT

mutilpleSingle

Input Variables Value Output Results Value
FT3: Rate 0 RAT: Rate or Amount 1.00
0
RTAM: Rate or Amount 1.00
PHRT: Hourly Rate 25.000

FT3 (0) is equal to zero (False)
FT3 (0) is equal to zero and RTAM (1.00) is not equal to PHRT (25.00), move RTAM (1.00) to RAT (True)
Calculation stops here

Output Result 01 for RAT is now 1.00


Named Event Rule: DBACalcMult

- Multiple Function

Multiplies variable 01 variable 02.

Multiply FT2 by RAT and move the result to GPA

calcmult

Input Variables Value Output Results Value
FT2: Table Amount 10.00 GPA: Gross Pay 10.00
RAT: Rate or Amount 1.0

Multiply FT2 (10.00) by RAT (1.00). The result is moved to GPA (10.00)


Named Event Rule: DBACalcOneorMoreMoves

- Move One Var to One Rtn, Up to 5 individual moves

This function moves one value into another.

Move RAT to PHRT, move FT2 to PHRW, move RAT to PBRT, move RAT to BHRT

MoreMoves

Input Variables Value Output Results Value
RAT: Rate or Amount 1.00 PHRT: Hourly Rate 1.00
FT2: Table Amount 1 10.00 PHRW: Hours Worked 10.00
RAT: Rate or Amoun 1.00 PBRT: Rate Distribution 1.00
RAT: Rate or Amount 1.00 BHRT: Hourly Rate Base 1.00

This function is just moving (copying) the values from one data item to another for historical purposes.

F0709 after prepayroll: (PHRT, PBRT and BHRT are not stored in the F0709/F0719.)

F0709 after prepayroll

Payment Review>DBA Review

DBA review

Miscellaneous Information

table methods

When viewing a table method via the application (Table Methods/P059027) it appears there is ample space for the description, however each line is actually limited to only 50 characters. Due to this the description in the application may not fully define the table method functionality as is the case with table method AS. To determine the full functionality it is advised to review the table method in P07901.

limited to 50 char

Line 4.00 Captures the employee’s age

Line 5.00 Fetches the appropriate record from the calculation table based on the employee’s age

Line 6.00 Multiplies the employee’s annual salary by the rate (this is moved to data item SALR)

Line 6.50 Rounds off the decimals of the value stored in data item SALR

Line 7.00 Compares the value in SALR to the value in FT4, which is defined on the calculation table as Amount/Rate2. This acts as a limit. This is not described in the Table Method definition.


Named Event Rule: DBACalcIfNotEqandGreaterThan

- If V1<>V2 and V3 > V1, Move V1 to R1, Else Move V3 to R1

For example, a life insurance plan is established in which the employee is covered up to their annual salary amount but not more than 500,000. Therefore on the calculation table, FT4 would be set to 500000.

If the employee’s salary is 600,000 annually, this record would perform as follows:

V1 = FT4 = 500000
V2 = 0
V3 = SALR = 600000

If V1<>V2 and V3 > V1, Move V1 to R1, Else Move V3 to R1

If 500000<>0 and 600000>500000, Move 500000 to SALR, Else Move 600000 to SALR
True True Perform Ignore

GreaterThan

Line 8.00 Adds 499 to the value in the SALR field and puts the result in SALR

Line 9.00 Divides the value in SALR by 1000 (this is the rounding)

Line 9.50 Rounds off the decimals

Line 10.00 Calculates the result in step 9.50 by the rate in the calculation table (FT2)

Line 10.50 Applies the proration factor if applicable

Line 11.00 Moves values from the input variables to the output results for historical posting.

Miscellaneous Information (cont.)

Important! Creating a new table method is considered custom. Oracle does not support custom table methods.