GA TRS Report
Overview
This is the Teacher Retirement System (TRS) report. It is submitted at the end of each month throughout the year.
The submission file contains comma seperated list of values.
The ‘GA TRS’ menu option allows one to create the Georgia TRS report.
Report Frequency
Monthly
Selection Criteria
The people considered for this report are entered into the HR Employee Master (and sent to the PY Employee Master). These employees have the valid TRS Employee and Employer CDHs falling within the Reporting month.
BusinessPLUS Setup
Contract Type is calculated based on the number of months worked.
Common Code PYPR CYCLE## where ## is the cycle number is taken. Associated Value 2 is the beginning sequence and Associated Value 3 is the ending sequence. Associated Value is the sequence increment. Number of Periods per Year is calculated by taking the difference of the ending sequence divided by the increment and the starting sequence divided by the increment + 1. The employee's pay cycle (py_emp_pay_cycle in hr_pe_mstr) is mapped to the list generated in the earlier logic to get the maximum number of periods per year. Periods worked is calculated as (py_emp_misc_val04 from hr_pe_mstr) / periods per year, multiplied by 12 and rounded the nearest integer. This integer is the contract type.
TRS Eligibility date is the Hire date unless the employee is transferring from PSE, then the start date of the TRS CDH.
TRS Termination date is the Last Worked date unless the employee is transferring to PSE, then the end date of the TRS CDH
Bi-weekly is calculated as the number of periods per year/12.
The TRS Job Classification is stored in Misc2 of the BusinessPLUS HR Job Table (hr_jobtble).
Payment Reason is Crosswalked from HR Status (hr_empmstr.hr_status) using code ID GATRSPAYRES.
Service Credit Eligibility is calculated from the Timecard entries using TRS Hourbase to get the number of days that the employee received pay. This value is compared with the default on the PM calendar. If more than 1/2 then Y else N.
Contract Pay,Summer Employment Pay and Prorated Summer Pay are the sum of the CDHs that hit the TRS pay base for the given month from the History table and Timecard entries.If the contract type is "12" then the dollars are normal contract pay. If the contract type is less than 12 and there is an active record (active would be having a calc begin and end date that covers the current month) in the pay assignments, then it is summer pay. If there are no pay assignments that have calc dates that cover the current month then the dollars are prorated summer pay.
Employee and Employer Contributions are calculated from the history records and Timecard entries based on the corresponding CDHs entered from the ‘Additional Setup’ screen.
Setup
Before a report can be generated, the reporting interface must be accessed and necessary data set up completed. This configuration information is used by the Load and Submission processes.
The following options need to be configured under the ‘Setup’ menu:
Site Profile
Crosswalk
Code Value
Additional Setup
Site Profile
Click Site Profile to define the entities and their details. At least one Site Profile record is required. All of the Georgia regulatory reports utilize this same table so data will rarely need to be changed once it has been entered.
Crosswalk
Click the Crosswalk link to view or update the list of crosswalk mappings.
To add ‘Crosswalk’ details, enter a Source Value and Reporting Value in the fields of this window for code items.
There are two crosswalk codes required for GA TRS. The codes describe the Payment Reason and the Termination Reason.
Code Item | Description |
---|---|
GATRSPAYRES | Pay Reason Length: Numeric: Yes Values:
|
GATRSTRMRES | Termination Reason Length: Numeric: Yes Values:
|
Additional Setup
Click Additional Setup to define the entity’s additional details. This information is used by the Load process.
Field | Description |
---|---|
Entity ID * | Enter ‘Entity ID’ defined in ‘Site Profile’ screen. |
Retro Hours | CDHs set up to signify Retro |
TRS Hour Base | Retirement Hour Base |
TRS Pay Base | Retirement Pay Base |
Employee Contribution CDHs Pre-Tax | CDHs that are part of the EECON amount pre-tax |
Employee Contribution CDHs Post-Tax | CDHs that are part of the EECON amount post-tax |
Employee Contribution Supplement CDHs | CDHs that are part of the supplement EECON amount |
Employer Contribution DOE CDHs | CDHs that are part of ERCON (funded by DOE) |
Employer Contribution CDHs | CDHs set up to signify ERCON amount |
IRS Limit | Dollar amount that signifies the IRS Limit |
Employer Paid EE CDHs | CDHs set up to signify EECON amount paid by Employer |
PSERS Employee Contributions | CDHs set up to signify PSERS amount |
Percent of EECON to total earnable compensation |
|
Percent of ERCON to total earnable compensation |
|
Include the Employee ID as local ID? |
|
Save (Button) | Saves all the changes made in the screen to the database
|
Instance
Click Instance to configure the report instances for each report to be created.
Report instances need to be configured for the extract process. Below describes the field and description of a Report Instance.
Field | Description |
---|---|
Name * | User defined name of the report instance. |
Year* | Calendar Year for which submission will happen. |
Month* | Month for which submission will happen. |
Columns marked with * are required fields.
Load
Click on Load to extract and load the TRS employee records into the maintenance table.
See the Submission File Layout, at the end of the document, for the source of the reported data.
To load data for an instance of a report enter data in the fields of the window as described below in the Report Data Extraction Details table
Report Data Extraction Details
Field/Button | Description |
---|---|
Report Instance* | Click for the list of report instances. Select the report instance to load data. |
Notes | Enter a note related to report instance or load that needs to be performed. |
Check Status* | Enter if Load should run for Paid, Unpaid or both types of records. |
Entity ID* | Click to select a specific entity for which the load will be performed. Select ‘ALL’ to extract records of all entities. |
Purge Existing Data | If all the existing data for the selected ‘Report Instance’ in the maintenance table needs to be deleted, this checkbox should be checked. This action will also remove new maintenance records added previously using the maintenance screen for the ‘Report Instance’. |
Load (Button) | Click to load maintenance records into maintenance table. |
After clicking ‘Load’, the information window appears to indicate that ‘Load Process’ began. Click the ‘OK’ button to proceed further. NOTE: To confirm that the load process has successfully completed you must look for the “Package Complete” message on the last page of the error log messages on the Maintenance screen.
The selected report instance details appear as described below in the Report Instance table.
Field | Description |
---|---|
Report Definition Details | Details of the selected Report Instance. |
Last Load for the Selected Report Definition | The date (Last Load) and user (Created By) who performed last load and the note(Notes) that was entered for the loading the selected ‘Report Instance’. If the report is loaded for the first time for the selected ‘Report Instance’, this information is blank. |
Maintenance
Click the Maintenance option to make necessary changes to the extracted employee data and to view the errors generated during the Load or Submission process.
The following actions are available:
Data Changes (to data extracted from BusinessPLUS into the maintenance table)
Adding new records
Deleting records
Select Report or Specific Records
Field | Description |
---|---|
Report Instance | Click to select a specific instance. |
Filter by Criteria | Filter the maintenance records based on certain fields Example: ‘Employee ID’ or ‘Employee Last Name’. Clear the fields to view all the results. |
Employee ID | ID of the employee. |
Employee Last Name | Last name of the employee. |
| Select the ‘Apply’ button to filter on values entered in either the Employee ID or Employee Last Name. |
Total record Count | Total number of maintenance records displayed in the grid is displayed. |
Possible Error & Warning Messages
The grid in the bottom of the page displays all the error messages logged during load extract/submission package execution. The load and submission errors include invalid/missing mandatory field values. These values can be corrected by selecting the record from the error log grid and checking on ‘Filter Selected Record’ checkbox. On clicking on this option, only the invalid record is filtered in the maintenance grid, which can then be corrected and saved. On click of ‘View All Records’, all the maintenance records are displayed on the maintenance grid.
Error Log Viewer is the list of possible error/warning messages displayed on the ‘Error Log’ section in the ‘Maintenance’ window and how to resolve the errors. The Error/Warning Messages are described below in the Error Log Viewer table.
Error Log Viewer
Error / Warning Message | Resolution |
---|---|
<Emp ID> : Started a new TRS contribution this month |
|
<Emp ID> Ended a new TRS contribution this month |
|
CDH - <cdh> of Type - <cdh_type> is invalid. | Invalid CDH number entered |
CDH - <cdh> of Type - <cdh_type> does not exist in the CDH Master table within the date range" | The CDH does not fall within reporting month |
CDH <cdh> of Type - <cdh_type> does not exist in the CDH Detail table within the date range | The CDH does not fall within reporting month |
<Emp ID>: has an HR Termination Code <termination_code>that is not cross walked to a TRS Termination Reason | No crosswalk value defined for the employee termination reason/term code |
<Emp ID>:: has an HR status <hr_status> that is not cross walked to a TRS Pay Reason. | No crosswalk value defined for Pay reason for the employees hrstatus |
The report instances dropdown list is loaded only with report instances for which ‘load’ has happened.
Inserting and deleting records are not allowed if there are unsaved changes in the grid.
If there are unsaved changes in the grid, sorting and filtering of the grid are disabled.
If there are unsaved changes in the grid, a prompt to save the existing changes will be shown, if trying to navigate to another screen.
Submission
After verifying the maintenance data, click Submission to create the file to be submitted to the reporting agency.
To create a report file for submission to the state, data is entered in the fields of this window as described below in the Enter Submission Details table.
Field | Button | Description |
---|---|
Report Instance* | Click for the list of report instances. Choose the report instance which is to be submitted. |
Notes | Any notes entered for the submission job. |
Entity ID* | Click for the list of entity. Specific entity for which submission is required. If the maintenance records for all the entities are to be submitted then ‘ALL’ option should be selected. |
Filename* | User defined filename for the submission file. NOTE: The path where the file is saved is already configured in the application and should not be entered here. |
Report Definition Details | Details for the selected ‘Report Instance’. |
Last Submission for the Selected Report Definition | The date(Last Submission) and user(Created By) who performed last submission and the note(Notes) that was entered for submitting the selected ‘Report Instance’ If the report is submitted for the first time for the selected ‘Report Instance’, this information is blank. |
Double Arrow (Button) | To regenerate the filename as specified by the state. |
Generate Report (Button) | Create report file with data from maintenance table for submission to the state. |
View Report (Button) | View the submission file report for the previous submission of the report instance. |
Columns marked with * are required fields. The user must enter data in these fields to proceed.
The report instance will appear in the ‘Report Instance’ dropdown list only if the ‘Load’ has been performed on the report instance.
During the submission file creation, if the mandatory fields are empty or have an invalid value, an error is logged which can be viewed and corrected from the ‘Maintenance’ screen.
Submission File Layout
The following table shows the field numbers, field names, and source within BusinessPLUS.
Header Records
# | Type | Field | Source Table | Source Column | Description | Business Logic |
---|---|---|---|---|---|---|
1* | A | Record Type |
|
| Field designating this as a header, detail or footer record | Literal Value “A01” |
2* | A | Format Style |
|
| Field designating the report format style being submitted (i.e. fixed length fields vs. tab delimited fields) | Literal Value "C" - comma delimited |
3* | A | Format Version |
|
| Identifies the version of the file format that the employer is currently using | Literal Value "001" |
4* | A | Report Type |
|
| Identifies the type of report submitted | Literal Value "TRS" |
5* | A | Employer Code | Rr_site_profile | Emplr_code | A unique system number identifying employer | Defined on the site profile screen |
6* | A | Report Month | Rr_run_def_mstr | month | YYYYMM - The month and year of the report | The period for which the employer is submitting the contribution report |
7* | A | File Creation Date |
|
| YYYYMMDD - The date on which this file was created by the employer |
|
Employee Detail Records
# | Type | Field | Source Table | Source Column | Description | Business Logic |
---|---|---|---|---|---|---|
1* | A | Record Type |
|
| Field designating this as a header, detail or footer record | Literal Value "D" |
2* | A | Transaction Type |
|
| C = Regular | Dependent on CDH in setup table and timecard date |
3* | AN | Posting Month |
|
| YYYYMM - The month and year the contributions are reported for | The month from timecard date |
4* | AN | SSN | hr_pe_mstr | hr_pe_ssn | Social Security Number |
|
5* | AN | Employer Code | Rr_site_profile | Emplr_code | A unique system number identifying employer |
|
6* | A | Plan | Employee Profile |
| Represents the plan the member is currently contributing in | Literal value “TRS” |
7* | AN | Contract Type |
|
| Represents the contract member is employed under - ‘08’, ‘09’, ‘10’, ‘11’, ‘12’ | Number of Months Worked calculated from the employee pay cycle and periods |
8* | Date | TRS Eligibility Date |
|
| Represents the first day for which TRS expects to receive contributions for the member. This may be the employment date, re-hire date, or date member moved into a TRSGA covered position | Hire date unless the employee is transferring from PSE, then the start date of the TRS CDH. |
9* | AN | Job Classification | hr_jobtble | misc2 |
|
|
10* | YN | Bi-Weekly Flag |
|
| Identifies members who are paid on a bi-weekly basis | Based on the number of periods |
11* | AN | Payment Reason |
|
| Explains the type of reported compensation | Crosswalk from HR Status (hr_empmstr.hr_status) using code ID GATRSPAYRES. |
12* | YN | Service Credit Eligibility |
|
| Certifies if compensation reported is for a member who worked in a TRSGA covered position for greater than ½ the number of working days in the posting month. Y = eligible credit and N = not | The number of days that the employee received pay (calculated from Timecard entries for hourcodes based on TRS Hourbase) compared to the default on the PM calendar (calendar bar). If more than 1/2 then Y else N |
13* | Numeric | Contract Pay |
|
| Represents member’s contract salary | Sum of the amounts from CDHs that hit the TRS Paybase from Timecard and History. If the contract type is "12" then the dollars are normal contract pay. If the contract type is less than 12 and there is an active record (active would be having a calc begin and end date that covers the current month) in the pay assignments, then it is summer pay. If there are no pay assignments that have calc dates that cover the current month then the dollars are prorated summer pay. |
14* | Numeric | Prorated Summer Pay |
|
| Represents member’s accrued pro-rated summer pay |
|
15* | Numeric | Summer Employment Pay |
|
| Represents salary received for work in a TRSGA covered position performed during summer months |
|
16* | Numeric | Salary that exceeds the IRS limit |
|
| Salary that exceeds IRS limit | Compared to IRS Limit from Additional Setup screen |
17* | Numeric | TRS Earnable Compensation |
|
| Represents the sum of contract pay, prorated summer pay and summer employment pay less the salary that exceeds the IRS limit | Calculated from previous values |
18* | Numeric | Pre-Tax EECON |
|
| Represents the pre-tax portion of the employee contributions based on the member's TRS earnable compensation for the posting month | Computed Total of CDHs with EECON pre tax |
19* | Numeric | Post-Tax EECON |
|
| Represents the pre-tax portion of the employee contributions based on the member's TRS earnable compensation for the posting month | Computed Total of CDHs with EECON post tax |
20* | Y/N | Employer Paid EECON |
|
| Indicates if the employer on behalf of the member funds the full employee contributions | If EECON is from a contribution the "Y" else "N". |
21 | Numeric | Employer Paid EECON Supplement |
|
| Represents the portion of the pre-tax employee contribution that is funded by the employer due to a difference in contribution rates (currently used for Fulton County) | Total of EECON paid by Employer (from EECON supplement array) |
22* | Y/N | DOE Paid ERCON flag |
|
| Indicates if the employer contributions will be funded by the Department of Education on behalf of the employer | Marked "Y" if TRS Job Classification is "06" |
23 | Numeric | ERCON Total |
|
| Represents the employer contributions based on the member's TRS Earnable compensation for this month | Total of EECON from ERCON array |
24* | Date | Termination Date |
|
| YYYYMMDD - Represents date member terminated employment with current employer | Last Worked date unless the employee is transferring to PSE, then the end date of the TRS CDH |
25* | AN | Termination Reason |
|
| Represents reason why member has terminated current employment | Crosswalk in setup screen to map Termination Code to one of the TRS pre-defined reasons |
26* | Date | Date of Birth | hr_pe_mstr | py_emp_birth_dt | Represents the member’s Date of Birth. Used to identify member |
|
27* | A | Gender | hr_pe_mstr | py_emp_sex | Represents the member’s gender |
|
28 | A | Prefix | hr_pe_mstr | py_emp_salute | Employee's Prefix |
|
29* | A | First Name | hr_pe_mstr | py_emp_f_name | Employee's First Name |
|
30 | A | Middle Name | hr_pe_mstr | py_emp_m_name | Employee's Middle Name |
|
31* | A | Last Name | hr_pe_mstr | py_emp_l_name | Employee's Last Name |
|
32 | A | Suffix | hr_pe_mstr | py_emp_suffix | Employee's Suffix |
|
33* | A | Primary Address | hr_pe_mstr | py_emp_street_1 | Employee's Primary Address Line |
|
34 | A | Secondary Address | hr_pe_mstr | py_emp_street_2 | Employee's Secondary Address Line |
|
35* | A | City | hr_pe_mstr | py_emp_city | Employee's Residence City |
|
36* | A | State | hr_pe_mstr | py_emp_state | Employee's Residence State |
|
37* | AN | Zip Code | hr_pe_mstr | py_emp_zip+py_emp_zip_ext | Employee's Residence Zip Code |
|
38* | A | International Address Flag |
|
| Y/N | "N" for all as we don’t support international addresses |
39 | A | International Address |
|
| International Address | Blank |
40 | AN | Locator Code |
|
| Represents the school system’s distribution location or drop box |
|
41 | AN | Local Employee Number | hr_pe_mstr | hr_pe_id | Employee ID |
|
42 | Numeric | DOE Paid ERCON Salary |
|
| Represents the portion of TRS earnable compensation on which DOE will fund the employer contributions. When applicable, usually DOE will fund ERCON on the entire salary in which case this field is optional | The sum of the DOE ERCON pay base specified on site profile |
Footer Records
# | Type | Field | Source Table | Source Column | Description | Business Logic |
1* | A | Record Type |
|
| Field to designate header, footer or detail | Literal value "F" |
2* | AN | Employer Code | Rr_site_profile | Emplr_code | Employer code - must match header record |
|
3* | AN | Report Month |
|
| The Month and Year of the Report | YYYYMM |
4* | AN | Record Count |
|
| Total number of contribution records | Computed at run time |
5* | N | Total TRS Earnable Compensation |
|
| Net Total of all member salaries reported | Computed at run time |
6* | N | Total EECON |
|
| Net total of all employee contributions reported | The total of ‘pre-tax EECON’, ‘post-tax EECON’ and ‘Employer Paid EECON Supplement’ reported in the detail file |
7* | N | Total ERCON |
|
| Net total of all employer contributions reported | The total of ‘ERCON’ reported in the detail file |
8* | AN | Total Count of members for whom DOE will fund the employer contributions |
|
| Indicates count of members for whom DOE will fund the employer contributions | The record count of transactions in the detail where DOE Paid ERCON Flag is ‘Y’ |
9* | N | Total salary of members for whom DOE funds the employer contributions |
|
| Total salary of members for whom DOE funds the employer contributions | Sum of TRS Earnable Compensation amounts on all transactions in the detail where DOE Paid ERCON Flag is ‘Y’. |
Columns marked with * are required fields.
Data Types
A/N - Alpha Numeric, left justified, and blank.
N - Numeric, right justified, zero filled, unsigned without decimal point, cents, and dollars.
Submission Report
The submission file report can be obtained on clicking Generate Report or View Report buttons on the ‘submission’ window.
About
The About screen displays system level information about the report such as the version, report name and database details.