RetEmployeeCurrentEnrollment

Retrieve Employee Current Enrollment Information

Minor Business Rule

Object Name: N0800037

Parent DLL: CHRM

Location: Client/Server

Language: NER

Functional Description

Purpose

The purpose of this Named ER is to retrieve employee current enrollment information for a plan, as of 

an effective date.

Setup Notes and Prerequisites


Special Logic




Technical Specification

Initialize the following flags:  cEnrollmentFoundFlag, cFutureEnrollmentFlag, cActiveEnrollmentFlag 

to '0'


//Process through the enrollment table, F08330, until an enrollment record is found for the 

mnAddressNumber and szPlanId, omitting mistaken enrollment.   Stop searching when an enrollment is found that 

begins before the jdDateEffectiveRates and ends after the jdDateEffectiveRates (or has a blank end 

date). //



//If active enrollment record found, set the cActiveEnrollmentFlag//

If the enrollment record found was an active enrollmnet, then Set cActiveEnrollmentFlag equal to '1'

//Check for history only when requested//

If cCheckForHistoryFlag = '1', Call Named ER "Check For Enrollment History (N0800035), passing in 

mnAddressNumber, szPlanId, szPlanAdditionalOption, jdEnrollmentEffEndDate, jdDateDbaBegins, cMode of '1' 

and jdDateDbaEnds, and passing back a flag to indicate whether history is located.

//Retrieve the Employee and Employer DBA, Employee and Employer Points DBA and Enter AmountRateFlag 

from the Plan Master//


//Retrieve overrides for employee and employer DBA $ and employee and employer Points DBA//

Fetch DBA's from Plan Master file F08320.


//Employee DBA Override Dollar Amount//

If cAmountOrRateYn = 'Y' FetchSingle F06106 with keys: mnAddressNumber, mnEmployeePayDedDBA, 

jdDateDbaBegins returning override amount.


//Employer DBA Override Dollar Amount//

If cAmountOrRateYn = 'Y' Fetch record from F06106 with keys: mnAddressNumber, 

mnEmployerPaidBenefitDBA, jdDateDbaBegins and returning override amount.


//Employee DBA Override Points//

If cAmountOrRateYn = 'Y' Fetch record from F06106 with keys: mnAddressNumber, mnEmployeePointDBA, 

jdDateDbaBegins and returning override point.


//Employer DBA Override Points//

If cAmountOrRateYn = 'Y' Fetch record from F06106 with keys: mnAddressNumber, mnEmployerPointDBA, 

jdDateDbaBegins and returning override point.



Otherwise:  If no enrollment record found Initialize all the output parameters.

Data Structure

DN0800037 - Retrieve Employee Current Enrollment Information

Parameter NameData ItemData TypeReq/OptI/O/Both
mnAddressNumberAN8MATH_NUMERICNONENONE

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

szPlanIdPLANcharNONENONE

An abbreviation or number that identifies a specific employee benefit. Examples are:   o  Employee Health Insurance   o  Accidental Death 
and Dismemberment   o  Health Club Expense Reimbursement   o  Employee Stock Appreciation Rights  A benefit plan typically is associated 
with a deduction, benefit, or accrual. For example, a medical plan is a benefit that might also require a deduction to withhold premiums from 
an employee's pay.

szPlanAdditionalOptionAOPTcharNONENONE

A code that identifies any additional options available for a benefit plan that have been defined in the Plan Additional Options table 
(F083202). Note: Additional options must have the same provider, policy number, and enrollment and eligibility rules as the benefit plan to which they 
are associated.

jdDateEffectiveRatesEFTJDEDATENONENONE

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 
effective date, a currency effective date, a tax rate effective date, or whatever is appropriate.

szEnrollmentStatusXDFScharNONENONE

A code that indicates the status of an employee's enrollment in a plan. It is a user defined code (08/ES), and you must use the following 
restrictions for the definitions:   o  All statuses indicating active participation in a plan must begin with the letter A.   o  All statuses indicating an 
ending status that does not result in a new enrollment (such as a termination) must have the letter X in the first position of Description 2 (data item 
DL02), General User Defined Codes form.   o  A status beginning with the letter X, when used as an ending status, represents a mistaken 
enrollment. No employee DBA instructions are written.   o  An asterisk (*) indicates all statuses not otherwise specified.

jdDateEligibleDELGJDEDATENONENONE

The date on which the employee is eligible to enroll in the benefit plan. This date is not necessarily the date that the employee begins 
participating in the plan. For example: The XYZ Company requires that employees work for the company for six months before they are eligible to 
participate in the 401(k) plan. Employees can enroll in 401(k) two times per year, on January 1 and July 1. Therefore, an employee who 
begins working for XYZ Company on 03/01/05 has an eligibility date of 01/01/06. The eligibility date is the date on which the employee becomes 
eligible, provided that eligibility continues. If the employee changes to a non-eligible status, the eligibility date on the new record is set to 
blank.

jdDateOfParticipationDPTCJDEDATENONENONE

The date on which the employee begins participating in the plan for the specified enrollment period. For example: The XYZ Company 
requires that employees work for the company for six months before they are eligible to participate in the 401(k) plan. Employees can enroll in 
401(k) two times per year, on January 1 and July 1. An employee who begins working for XYZ Company on 03/01/05 is eligible to participate in 
the plan on 01/01/06. However, if the employee does not enroll in the plan until 07/01/06, the employee's participation date is 07/01/06. The 
participation date is the first date on which the employee begins participating in the plan, provided that the employee continues to participate. 
When participation stops, the participation date on the new record is set to blank. If the employee has a break in eligibility, the participation 
date is the date that participation began for the latest enrollment period.

jdDateDbaBeginsDTDBJDEDATENONENONE

The beginning date on the employee's DBA instruction record (F06106) for this enrollment. In most cases, this is the same as the beginning 
effective date of the enrollment. However, it can be later than the beginning effective date if the enrollment is changed retroactively. Only 
active enrollment records have a value in this field since they are the only enrollment records that result in payroll deductions, benefits, or 
accruals. Active records have a beginning status that starts with A.

jdDateDbaEndsDTDEJDEDATENONENONE

The ending date on the employee's DBA instruction record (F06106) for this enrollment. In most cases, this is the same as the ending 
effective date of the enrollment. However, it can be later than the ending effective date if the enrollment is changed retroactively. Only active 
enrollment records have a value in this field since they are the only enrollment records that result in payroll deductions, benefits, or accruals. Active 
records have a beginning status that starts with A.

jdDateUserDefinedDUSRJDEDATENONENONE

A user defined date that you can use in enrollment for any date tracking need. For example, you can use this field to show the employee's 
hire date as follows: Empl No - 6001, Plan ID 401K     o Ineligible Status, Begin 04/13/97, End 12/31/97, User Date 04/13/98     o Elig/Not Particp 
Status, Begin 01/01/98, End 05/31/98, Eligible 01/01/98, User Date 04/13/98     o Active Status, Begin 06/01/98, End 08/31/99, Eligible 01/01/98, 
Particip 06/01/98, User Date 04/13/98     o Ineligible Status, Begin 09/01/99, End 05/31/99, User Date 04/13/98     o Active Status, Begin 
06/01/99, End 06/01/99, Eligible 06/01/99, User Date 04/13/98   For this example, you would change the column heading User Date to read Hire 
Date.

szEnrollmentStatusEndingXESTcharNONENONE

A code that indicates the ending status of an employee's enrollment in a plan. This status represents the reason for ending the old 
enrollment and is used as the beginning status of any resulting new enrollment. You can define this code using user defined code table 08/ES. See 
data item XDFS (Status - Enrollment) for restrictions on the allowed values. Note: An ending status that begins with the letter X represents a 
mistaken enrollment.

mnEmployeePayDedDBAPDBAMATH_NUMERICNONENONE

A code that defines the type of pay, deduction, benefit, or accrual. Pay types are numbered from 1 to 999. Deductions and benefits are 
numbered from 1000 to 9999.

mnEmployeeDBAOverrideAmtRTAMMATH_NUMERICNONENONE

A value that is a percentage, a monetary amount, or an hourly rate, depending on where it is used.  Valid values are: 1 For a deduction, 
benefit, or accrual, the meaning of this value depends on the method of calculation.  The method determines whether the deduction is a flat 
monetary amount, a percentage, or a multiplication rate.  Table method DBAs, depending on which table method they use, can either use this 
amount in the calculation or ignore it.  If there are exceptions to the table calculation, you can override the table code in the detail area, set up a 
flat monetary DBA amount, or override the amount with a one-time override for a timecard. 2 For a pay type, amounts entered in this field 
override the hourly rate. 

mnEmployerPaidBenefitDBAMATH80MATH_NUMERICNONENONE

Enter a valid value.

mnEmployerDBAOverrideAmtAMTSMATH_NUMERICNONENONE

The second amount or rate associated with a deduction, benefit, or accrual. Because many DBA types require multiple tiers, two levels of 
Amount (Rate) exist. The system uses the first level, Amount (Rate) 1, until the annual limit is reached. Then, the second level, Amount (Rate) 2, 
begins the next time the employee is paid. Amount (Rate) 2 continues until the second annual limit is reached. This field works in conjunction 
with the annual limit fields. The rate you enter in this field supersedes any other table rate for an employee, except for one-time overrides 
during time entry.

jdEnrollmentEffectiveDateEFTBJDEDATENONENONE

The date that an address, item, transaction, or table record becomes active.  The meaning of this field differs, depending on the program.  
For example, the effective date could represent the following:    o When a change of address becomes effective.   o When a lease becomes 
effective.   o When a price becomes effective.   o When the currency exchange rate becomes effective.   o When a tax rate becomes effective. 

jdEnrollmentEffEndDateEFTEJDEDATENONENONE

The date on which the item, transaction, or table becomes inactive, or through which you want transactions to appear. This field is used 
generically throughout the system. It could be a lease effective date, a price or cost effective date, a currency effective date, a tax rate effective 
date, or whatever is appropriate.

cHistoryFoundFlagEV01charNONENONE

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

cActiveEnrollmentFlagEV02charNONENONE

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

cFutureEnrollmentFlagEV03charNONENONE

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. 

cEnrollmentFoundFlagEV04charNONENONE

PeopleSoft event point processing flag 04.

cCheckForHistoryFlagEV01charNONENONE

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

mnEmployeePointDBAPDDPMATH_NUMERICNONENONE

The DBA defined in the Payroll Transactions Constants file (F069116) that is used to calculate the points amount that the employee 
contributes by enrolling in the plan in a flexible spending environment. DBAs used for points in a benefit plan or option must meet two requirements: 1. 
  The DBA must have blanks in the specification for Gross Effect and Net Effect (see data items PAYG and PAYN) so that the use of 
(non-dollar) points does not add or subtract dollars from employee pay. 2.   The DBA must have an M in the specification for Journal Entry (Y/N/M) 
(see data item NMTH) so that the use of (non-dollar) points does not affect the G/L system.

mnEmployeeOverridePointsRTAMMATH_NUMERICNONENONE

A value that is a percentage, a monetary amount, or an hourly rate, depending on where it is used.  Valid values are: 1 For a deduction, 
benefit, or accrual, the meaning of this value depends on the method of calculation.  The method determines whether the deduction is a flat 
monetary amount, a percentage, or a multiplication rate.  Table method DBAs, depending on which table method they use, can either use this 
amount in the calculation or ignore it.  If there are exceptions to the table calculation, you can override the table code in the detail area, set up a 
flat monetary DBA amount, or override the amount with a one-time override for a timecard. 2 For a pay type, amounts entered in this field 
override the hourly rate. 

mnEmployerPointDBAPDCPMATH_NUMERICNONENONE

The DBA defined in the Payroll Transactions Constants table (F069116) that will be used to calculate the points amount that the employer 
contributes to an employee enrolled in a flexible spending environment. DBAs used for points in a benefit plan or option must meet two 
requirements: 1.   The DBA must have blanks in the specification for gross effect and net effect (see data items PAYG and PAYN) so that the use of 
(non-dollar) points does not add or subtract dollars from employee pay. 2.   The DBA must have an M in the specification for Journal Entry 
(Y/N/M) (see data item NMTH) so that the use of (non-dollar) points does not affect the G/L system.

mnEmployerOverridePointsRTAMMATH_NUMERICNONENONE

A value that is a percentage, a monetary amount, or an hourly rate, depending on where it is used.  Valid values are: 1 For a deduction, 
benefit, or accrual, the meaning of this value depends on the method of calculation.  The method determines whether the deduction is a flat 
monetary amount, a percentage, or a multiplication rate.  Table method DBAs, depending on which table method they use, can either use this 
amount in the calculation or ignore it.  If there are exceptions to the table calculation, you can override the table code in the detail area, set up a 
flat monetary DBA amount, or override the amount with a one-time override for a timecard. 2 For a pay type, amounts entered in this field 
override the hourly rate. 

cAmountOrRateYnEAORcharNONENONE

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) 
when the employee determines the amount of a deduction or a benefit. Examples include 401(k) percentages, dependent care, and health 
care reimbursements.

Related Functions

None

Related Tables

None