Job Number:
This is a unique number retrieved from B0000564. Before calling the cache for the first time, get
this number from the function. Use the same number every time this cache is called.
Cache Action Code:
Cache Get = 1
Cache Add = 2
Cache Update = 3
Cache Delete = 4
Cache Delete All = 5
*Cache Get Next = 6
Cache Add/Update = 7 (DO NOT USE)
**Cache End = 8
Cache Close Cursor = 9
*After finished with selecting next records, call the Close Cursor (9).
**When finished with the entire cache, be sure to End (8)
Cache Cursor:
Declare a variable of DD Type GENLNG. Be sure to provide this variable as input/output. DO NOT
manipulate the value of the variable, it is used by the function.
Index 1:
*Job Number
*Plan ID
*Plan Option
Number Keys:
The number of keys in the index being used to perform the selected action. This allows for partial
key fetch or delete.
Suppress Error Message:
1 = Suppresses the function from setting errors on the application. An error code is still returned
in the Error Message ID parameter.
Cache Name:
Convert the Job Number into a string and pass in this parameter. This is how the cache is kept
unique in memory from any other (just like a table name keeps the table unique from any other table).
Error Message ID:
Returns an error if the selected cache action cannot be performed. For example, if a Load cache was
called without an event code, or if Fetch Next was requested and the last cache record has already
been reached.
The remaining fields are information from the F08320, F083202, F08320B, F08320C, and F08320D
Functional Description
Purpose
The purpose of this cache is to store the plan/plan option information to limit the amount of table
I/O. Storing this in cache will make displaying the director form faster, as well as providing a
convenient location to keep the current step in the process.
Setup Notes and Prerequisites
Special Logic
Technical Specification
Use the following action codes to work with cache:
'6' = Get Next Cache Record (using a partial key)
'7' = (Do Not Use)
'8' = End Cache (Cache is deleted and closed)
'9' = Close Cache Cursor
initialized. A value will be passed back that must be stored in a variable. Each time this BSFN is
called the value in that variable must be passed into the BSFN and a new value will be sent back to the
variable. This is the cache handle. If the calling program needs more than one handle on the database
at a time, then more than one GENLNG can be used.
The Cache Job Number should be the next number from B0000564 for the Next Number Index.
The Cache Name should be the Job Number converted into string format
Return errors through Error Message ID, DTAI.
The data can be accessed using the full key or a partial key using Number Keys and Index ID, to
distinguish between a full or a partial fetch. JobNumberAKey1 must always be part of the key.
See the help on the Index parameter for a list of the indexes defined for this cache
When adding a record always attempt to get the record first. If no error is returned then the record already exists and it cannot be added.
D0800585 - Plan/Option/Tag Table Cache
Parameter Name | Data Item | Data Type | Req/Opt | I/O/Both |
---|---|---|---|---|
mnJobnumberA | JOBS | MATH_NUMERIC | REQ | INPUT |
The job number (work station ID) which executed the particular job. | ||||
szCacheActionCode | CACTN | char | REQ | INPUT |
A code that indicates the activity you want to perform. Valid codes:
o Get - Retrieve the cache element
o Add - Add a cache element
o
| ||||
idCacheCursor | GENLNG | ID | REQ | BOTH |
General purpose ID variable. | ||||
mnIndexID | NKEYS | MATH_NUMERIC | OPT | INPUT |
The number of keys in an index that will be used to retrieve, delete, or update a record. | ||||
mnNumberKeys | NKEYS | MATH_NUMERIC | OPT | INPUT |
The number of keys in an index that will be used to retrieve, delete, or update a record. | ||||
cSuppressErrorMessage | SUPPS | char | OPT | INPUT |
A flag indicating whether or not runtime error messaging will occur when an error message is issued from a business function.
0 = allow
| ||||
szErrorMessageID | DTAI | char | OPT | OUTPUT |
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
| ||||
szCacheName | PID | char | REQ | INPUT |
The number that identifies the batch or interactive program (batch or interactive object). For example, the number of the Sales Order Entry
| ||||
szPlanId | PLAN | char | OPT | NONE |
An abbreviation or number that identifies a specific employee benefit. Examples are:
o Employee Health Insurance
o Accidental Death
| ||||
szPlanAdditionalOption | AOPT | char | OPT | NONE |
A code that identifies any additional options available for a benefit plan that have been defined in the Plan Additional Options table
| ||||
szPlanName | EXA | char | OPT | NONE |
A description, remark, explanation, name, or address. | ||||
szOptionName | DL01 | char | OPT | NONE |
A user defined name or remark. | ||||
szPlanCompressedName | DC | char | OPT | NONE |
The compressed description contains the alpha name without slashes, dashes, commas, and other special characters. The compressed
| ||||
mnProviderTrustee | ANN8 | MATH_NUMERIC | OPT | NONE |
The address book number for the supplier who receives the final payment.
In Benefits administration, this is the address book number of the
| ||||
jdEffectiveDate | EFT | JDEDATE | OPT | NONE |
The date that identifies when a date is first valid. The effective date is used generically. It can be a lease effective date, a price or cost
| ||||
jdEndingEffectiveDate | EFTE | JDEDATE | OPT | NONE |
The date on which the item, transaction, or table becomes inactive, or through which you want transactions to appear. This field is used
| ||||
cStatusCode | STUS | char | OPT | NONE |
A user defined code (system 08/type ST) that defines the current state of the benefit plan. For example, you can use A to define the plan as
| ||||
szPlanType | PLTY | char | OPT | NONE |
A user defined code (system 08/type PT) that identifies the specific type of plan. For example, L can be used to identify a life insurance
| ||||
cBeneficiaryFlag | BENF | char | OPT | NONE |
A code that indicates whether beneficiary information is required for employees participating in the plan or plan additional option. Valid
| ||||
mnPlanEmployeeDBAID | FDBA | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that is used to calculate the dollar amount that the employee
| ||||
mnOptEmployeeDBAID | FDBA | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that is used to calculate the dollar amount that the employee
| ||||
mnOptEEDBAAddAmt | EEAM | MATH_NUMERIC | OPT | NONE |
The employee's additional payroll deduction (employee share amount) for optional coverage. | ||||
cEEDBAOptionRule | OPR1 | char | OPT | NONE |
A code that specifies the rule that the system uses to determine the specific DBA to add to an employee's DBA instructions when the
| ||||
mnPlanEmployerDBAID | SDBA | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that the system uses to calculate the dollar amount that the
| ||||
mnOptEmployerDBAID | SDBA | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that the system uses to calculate the dollar amount that the
| ||||
mnOptERDBAAddAmt | ERAM | MATH_NUMERIC | OPT | NONE |
An additional amount that the employer contributes toward the cost of a benefit option. For example, an employer might pay 100.00 toward
| ||||
cERDBAOptionRule | OPR2 | char | OPT | NONE |
A rule that indicates the specific DBA to add to the employee's DBA instructions when an employee is enrolled in a plan. This rule also
| ||||
mnPlanEmpFlexPoints | PDDP | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants file (F069116) that is used to calculate the points amount that the employee
| ||||
mnOptEmpFlexPoints | PDDP | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants file (F069116) that is used to calculate the points amount that the employee
| ||||
mnOptEEFlexAddAmt | EEPT | MATH_NUMERIC | OPT | NONE |
The additional points or credits the employee contributed for optional coverage. | ||||
cEmpFlexOptionRule | OPR3 | char | OPT | NONE |
A rule that indicates the specific DBA to add to the employee's DBA instructions when an employee is enrolled in a plan. This rule also
| ||||
mnPlanFlexCreditPoints | PDCP | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that will be used to calculate the points amount that the employer
| ||||
mnOptFlexCreditPoints | PDCP | MATH_NUMERIC | OPT | NONE |
The DBA defined in the Payroll Transactions Constants table (F069116) that will be used to calculate the points amount that the employer
| ||||
mnOptERFlexAddAmt | ERPT | MATH_NUMERIC | OPT | NONE |
The additional points or credits the employer contributed for optional coverage. | ||||
cERFlexCreditOptionRule | OPR4 | char | OPT | NONE |
A rule that indicates the specific DBA to add to the employee's DBA instructions when an employee is enrolled in a plan. This rule also
| ||||
szPlanPolicyNumber | CERN | char | OPT | NONE |
The certificate or policy number of the benefit plan. | ||||
mnPlanCoverageAmount | COVA | MATH_NUMERIC | OPT | NONE |
The dollar amount of coverage that this plan provides to every employee enrolled in the plan. | ||||
cMandatoryParticipation | MANP | char | OPT | NONE |
A code that tells indicates whether the plan is required for all employees. Valid codes are:
Y
Yes, all employees must participate in this plan.
| ||||
cAmountOrRatePlan | EAOR | char | OPT | NONE |
A code that indicates whether you can enter an amount or rate when you enroll an employee in a benefit plan. Typically, you enter Y (yes)
| ||||
szPrerequisitePlan | PPLN | char | OPT | NONE |
The benefit plan, if any, in which the employee must be enrolled before the employee is eligible to participate in this plan. | ||||
cFlexPlanYN | DPYN | char | OPT | NONE |
A code that defines whether the combined deduction/benefit amount for this plan contributes to the enrolled employee's reimbursable
| ||||
szEligibilityTable1 | XET1 | char | OPT | NONE |
The table used to specify the rules, if any, for the employee's initial enrollment in the plan.
Even when a plan has no eligibility criteria, J. D.
| ||||
szEligibilityTable2 | XET2 | char | OPT | NONE |
A code used to specify the rules, if any, for an employee's continuing enrollment in the plan.
Even when a plan has no eligibility criteria, J.D.
| ||||
cCobraPlan | CBRA | char | OPT | NONE |
A code that specifies one of the following:
o Whether the system should place an employee being terminated from the plan in COBRA
o
| ||||
cFlexibleSpendingAcct | FSAF | char | OPT | NONE |
A code that determines whether or not the combined deduction/benefit amount for this plan will contribute to the reimbursable spending
| ||||
szDescriptionforESS | DS50 | char | OPT | NONE |
A descriptive statement of up to 50 characters in length. | ||||
cElectPlanFlag | EPFG | char | OPT | NONE |
The Elect Plan Flag specifies whether an employee may enroll in the plan when plan options are available. Valid values include:
0
The plan
| ||||
mnTrackPCPNumberFlag | PCPF | MATH_NUMERIC | OPT | NONE |
An option that specifies whether the benefit plan or benefit plan option tracks primary care physician numbers. If you choose this option,
| ||||
mnMinNumOfDep | MINDEP | MATH_NUMERIC | OPT | NONE |
The minimum number of people that can be covered under a specific plan or plan option. This number includes the employee. For
| ||||
mnMaximumNumberofDependents | MXDP | MATH_NUMERIC | OPT | NONE |
This variable denotes the maximum number of dependents that may be enrolled in a benefit plan. | ||||
cDeductionsInNextPayPeriod | BGPP | char | OPT | NONE |
This field specifies when the deduction for the plan or plan option enrollment will begin. The choices are:
o Start on the enrollment date
o
| ||||
szPlanGroupingCode | PLNGRP | char | OPT | NONE |
An option that allows the user to designate which benefit plans or benefit plan options are related, based on a provider or other criteria. | ||||
szShortDescriptForESS | SPLDES | char | OPT | NONE |
A short description (up to 15 characters) of the benefit plan or benefit plan option. | ||||
cNon_ParticipatingPlanFlag | NPPLFL | char | OPT | NONE |
A code that specifies whether an employee can elect to decline participation in the benefit plan. | ||||
mnPremiumPayment | PREP | MATH_NUMERIC | OPT | NONE |
The premium payment amount that applies to this plan. | ||||
szVestingTable | VTAB | char | OPT | NONE |
A user defined code (table 06/VT) that identifies the table that applies to this plan. | ||||
mnDbaEmployeePercent | EDBA | MATH_NUMERIC | OPT | NONE |
This is the employee percentage for the plan contribution. (50% = .50) | ||||
mnDbaEmployerPercent | RDBA | MATH_NUMERIC | OPT | NONE |
The Employer Percentage for the plan contribution. | ||||
mnPerCoverageDollars | PCDO | MATH_NUMERIC | OPT | NONE |
The amount of coverage that is paid for by the amount in the Monthly Premium field (data item PREP). For example, a premium charge can
| ||||
mnSalaryFactor | SALF | MATH_NUMERIC | OPT | NONE |
A multiplier (factor) that the system uses to calculate the amount of coverage provided to an employee, based on the employee's
| ||||
szBenefitDeductionTable | DTAB | char | OPT | NONE |
The table used if the calculation requires table values. | ||||
szVestingCalculationRule | VCRL | char | OPT | NONE |
A user defined code to describe the vesting calculation rule. Note: This field is for future use. | ||||
szPtTableVestingHours | PTVH | char | OPT | NONE |
The pay type table used to calculate the hours worked for vesting service. | ||||
mnVestingMinHours | VSMH | MATH_NUMERIC | OPT | NONE |
The minimum number of hours required during a specified period of time to be eligible for a year of vesting service. | ||||
cVestingCompPer | VCPE | char | OPT | NONE |
The computation period used to calculate if a person has fullfilled the minimum requirements to qualify for a year of vesting service.
C
| ||||
szReportCodePlanMstr001 | PH01 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B1. | ||||
szReportCodePlanMstr002 | PH02 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B2. | ||||
szReportCodePlanMstr003 | PH03 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B3. | ||||
szReportCodePlanMstr004 | PH04 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B4. | ||||
szReportCodePlanMstr005 | PH05 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B5. | ||||
szReportCodePlanMstr006 | PH06 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B6. | ||||
szReportCodePlanMstr007 | PH07 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B7. | ||||
szReportCodePlanMstr008 | PH08 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B8. | ||||
szReportCodePlanMstr009 | PH09 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B9. | ||||
szReportCodePlanMstr010 | PH10 | char | OPT | NONE |
A code you can define for reporting on benefit plans. You can define this code using user defined code table 08/B0. | ||||
cAgeRateFlag | ARFL | char | OPT | NONE |
A code that determines whether the employee's age/salary will be taken as the age/salary at enrollment time or the current
| ||||
mnMaximumPremium | MXPR | MATH_NUMERIC | OPT | NONE |
The maximum premium amount permitted. | ||||
mnRoundingAmount | RNDA | MATH_NUMERIC | OPT | NONE |
The amount that the system uses to round the coverage dollars to the nearest whole number. For example, if the coverage dollars are
| ||||
szSecondary401kPlan | PLN2 | char | OPT | NONE |
Secondary 401(k) Plan. | ||||
mnPayTypeForFlexibleSpendi | PAYF | MATH_NUMERIC | OPT | NONE |
This is the Pay Type used when making reimbursements from the Flexible Spending Accounts.
Note: It is Critical that the Category Code 10
| ||||
cEePointsAllowanceFor | FLXA | char | OPT | NONE |
This flag is used to identify the EE Points that are given to the employee so they can "purchase" the benefits that they want.
For instance, if a
| ||||
cFlagEmployeeEmployer | EFL1 | char | OPT | NONE |
Indicate whether this DBA is an employee or employer contribution. | ||||
cFlagEmployeeEmployer2 | EFL2 | char | OPT | NONE |
Indicate whether this DBA is an employee or employer contribution. | ||||
cFlagEmployeeEmployer3 | EFL3 | char | OPT | NONE |
Indicate whether this DBA is an employee or employer contribution. | ||||
cFlagEmployeeEmployer4 | EFL4 | char | OPT | NONE |
Indicate whether this DBA is an employee or employer contribution. | ||||
cFlagPointsMoney | EFP1 | char | OPT | NONE |
Indicate whether this DBA represents a point value or a monetary value. | ||||
cFlagPointsMoney2 | EFP2 | char | OPT | NONE |
Indicate whether this DBA represents a point value or a monetary value. | ||||
cFlagPointsMoney3 | EFP3 | char | OPT | NONE |
Indicate whether this DBA represents a point value or a monetary value. | ||||
cFlagPointsMoney4 | EFP4 | char | OPT | NONE |
Indicate whether this DBA represents a point value or a monetary value. | ||||
cFlagRateEntry | EFR1 | char | OPT | NONE |
A code that indicates whether you are allowed to enter an amount or rate during employee benefit enrollment. This code is used primarily
| ||||
cFlagRateEntry2 | EFR2 | char | OPT | NONE |
A code that indicates whether you are allowed to enter an amount or rate during employee benefit enrollment. This code is used primarily
| ||||
cFlagRateEntry3 | EFR3 | char | OPT | NONE |
A code that indicates whether you are allowed to enter an amount or rate during employee benefit enrollment. This code is used primarily
| ||||
cFlagRateEntry4 | EFR4 | char | OPT | NONE |
A code that indicates whether you are allowed to enter an amount or rate during employee benefit enrollment. This code is used primarily
| ||||
cDefaultOption | OPTD | char | OPT | NONE |
A code that specifies if an option is a "default" option for the Plan. Valid values are as follows: Y Default Option N Non - default Option. | ||||
cValidOption | OPTF | char | OPT | NONE |
A code to indicate whether an option is valid for the plan. This code allows you to cancel options when they are no longer valid. Valid
| ||||
mnInsuranceMultiplier | INSMUL | MATH_NUMERIC | OPT | NONE |
szDataItem_2 | DTAI | char | OPT | NONE |
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
| ||||
cMultipleOrFlatRate | MORFR | char | OPT | NONE |
A code that specifies whether the system determines coverage by using a multiple of an employee value, such as a multiple of an
| ||||
szUserId | USER | char | OPT | NONE |
The code that identifies a user profile. | ||||
szWorkStationId | JOBN | char | OPT | NONE |
The code that identifies the work station ID that executed a particular job. | ||||
jdDateUpdated | UPMJ | JDEDATE | OPT | NONE |
The date that specifies the last update to the file record. | ||||
mnTimeLastUpdated | UPMT | MATH_NUMERIC | OPT | NONE |
The time that specifies when the program executed the last update to this record. | ||||
szUpdatingProgram | PID | char | OPT | NONE |
The number that identifies the batch or interactive program (batch or interactive object). For example, the number of the Sales Order Entry
|
None |
None |