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 Name | Data Item | Data Type | Req/Opt | I/O/Both |
mnAddressNumber | AN8 | MATH_NUMERIC | NONE | NONE |
A number that identifies an entry in the Address Book system, such as employee, applicant, participant, customer, supplier, tenant, or
location.
|
szPlanId | PLAN | char | NONE | NONE |
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.
|
szPlanAdditionalOption | AOPT | char | NONE | NONE |
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.
|
jdDateEffectiveRates | EFT | JDEDATE | NONE | 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
effective date, a currency effective date, a tax rate effective date, or whatever is appropriate.
|
szEnrollmentStatus | XDFS | char | NONE | NONE |
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.
|
jdDateEligible | DELG | JDEDATE | NONE | NONE |
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. |
jdDateOfParticipation | DPTC | JDEDATE | NONE | NONE |
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. |
jdDateDbaBegins | DTDB | JDEDATE | NONE | NONE |
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. |
jdDateDbaEnds | DTDE | JDEDATE | NONE | NONE |
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. |
jdDateUserDefined | DUSR | JDEDATE | NONE | NONE |
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. |
szEnrollmentStatusEnding | XEST | char | NONE | NONE |
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. |
mnEmployeePayDedDBA | PDBA | MATH_NUMERIC | NONE | NONE |
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. |
mnEmployeeDBAOverrideAmt | RTAM | MATH_NUMERIC | NONE | NONE |
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.
|
mnEmployerPaidBenefitDBA | MATH80 | MATH_NUMERIC | NONE | NONE |
Enter a valid value.
|
mnEmployerDBAOverrideAmt | AMTS | MATH_NUMERIC | NONE | NONE |
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. |
jdEnrollmentEffectiveDate | EFTB | JDEDATE | NONE | NONE |
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.
|
jdEnrollmentEffEndDate | EFTE | JDEDATE | NONE | NONE |
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.
|
cHistoryFoundFlag | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event.
|
cActiveEnrollmentFlag | EV02 | char | NONE | NONE |
An option that specifies the type of processing for an event.
|
cFutureEnrollmentFlag | EV03 | char | NONE | NONE |
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.
|
cEnrollmentFoundFlag | EV04 | char | NONE | NONE |
PeopleSoft event point processing flag 04.
|
cCheckForHistoryFlag | EV01 | char | NONE | NONE |
An option that specifies the type of processing for an event.
|
mnEmployeePointDBA | PDDP | MATH_NUMERIC | NONE | NONE |
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. |
mnEmployeeOverridePoints | RTAM | MATH_NUMERIC | NONE | NONE |
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.
|
mnEmployerPointDBA | PDCP | MATH_NUMERIC | NONE | NONE |
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. |
mnEmployerOverridePoints | RTAM | MATH_NUMERIC | NONE | NONE |
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.
|
cAmountOrRateYn | EAOR | char | NONE | 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)
when the employee determines the amount of a deduction or a benefit. Examples include 401(k) percentages, dependent care, and health
care reimbursements. |