Overview
In order to use Attendance/Absence Import, the user will need to have the default USPS_STANDARD or USPS_STANDARD_ATTENDANCE_IMPORT role. (can be added under ADMIN/ROLE)
**Archived Employee's with a Compensation that is not archived, will be imported**
Deferred Absence Posting
This feature allows for deferred posting of Attendance records for absences that affect Sick, Vacation and Personal leave balances. If district will be using Deferred Absence Posting, this will first need setup in SYSTEM/CONFIGURATION/Deferred Absence Posting Configuration option. Check and click on 'Save' to accept or 'Cancel' to exit without saving. By not doing anything with the deferred posting flag in SYSTEM/CONFIGURATION/Deferred Absence Posting Configuration , the attendance absence transactions will cause the benefit balances to be updated when the Attendance entry is entered.
When the deferred posting option has been set, AB entries for SI, VA and PL may be entered at any time without affecting the current benefit balance in Leaves. The transactions are flagged as being unposted as they are entered into Attendance. This allows Attendance entries that affect a future pay period to be entered without affecting the leave balances on a current payroll. These unposted transactions will appear in ATDSCN with a deferred status of D.
If the USPCON flag is set to "Y", internal processing in the payroll programs tracks the pending days as transactions are posting in ATDSCN. If it should become necessary to change the USPCON flag to "N" after ATDSCN transactions were posted special care needs to be taken. If any ATDSCN transactions entered, while the USPCON flag was set to "Y", are not flagged with a "P" status, meaning posted, these records must be deleted from ATDSCN before the USPCON flag is changed to "N", to reverse the internal processing that occured when the ATDSCN transactions were entered. Once all records without the status of "P" have been deleted, the USPCON flag can be changed.
Attendance/Absence Import
The Utilities/Attendance/Absence Import option allows data obtained from third party software to be imported into USPS. The information is imported into Attendance and may be used to automatically load information into Current or Future.
The import file supplied by the third party software must conform to a specific format. It must be a comma delimited or a comma separated values (CSV) file. There are certain fields that are required and the data must be in a certain format/order.
The Attendance/Absence Import option has the ability to import records into both Attendance and CURRENT/FUTURE. A specific Expenditure Account can be specified to be charged for the CURRENT/FUTURE record.
The header line on the csv file must be removed before importing the file.
- Attendance Import File- can import file supplied by a third party software. Must be a comma delimited or a comma separated values (CSV).
- Location Code - prompt is used to determine the job number to post the transaction to if a job number is not supplied. The location code may contain either a Building IRN or Building/Department code. If you are using the location code field, enter one of the following codes:
- Building IRN
- Building/Department Code
- None
- Post to Payroll Processing Options offers the following options:
- Post to Payroll Processing Future
- Post to Payroll Processing Current
- None - No Payroll Processing Current/Future posting will take place. The "Calc gross" parameter from the CSV file is ignored as well
- Combine Attendance Entries
- Check if AT entries charged to CURRENT/FUTURE will be combined for an employee. In order to combine entries in CURRENT/FUTURE, the EMPID, job number, pay type, unit, unit amount, tax option, retirement flag, expenditure account, leave projection flag, and the BRDDIS flag must match
Leave unchecked if AT entries will not be combined when posted to CURRENT/FUTURE
Allow Negative Leave Balance prompt offers the following options:
Check if AB entries for Sick, Vacation and Personal Leave will be allowed to go negative. It will appear as a WARNING on the report.
Leave uncheck if AB entries for Sick, Vacation and Personal Leave will NOT go negative. It will appear as a FATAL Error on the report
- **NOTE** Even if the Rule is set to False, still need to check this option to allow negative balances.
- Payroll Account to Charge prompt offers the following options:
- Defined Payroll Account for Position -Pay account defined in Payroll Account for the job will be use
- Sub for SSN -the regular employee's pay account(s) will be charged.
USPS Attendance/Absence Import SPECS
Attendance/Absence Specific Record Format
This record is used to import attendance and absence information into USPS.
Field Name | Spreadsheet Column | CSV Position | Description | Format | Max. Size |
---|---|---|---|---|---|
Record Indicator | A | 1 | Literal record indicator must contain "AA" to indicate Absence/Attendance | XXXX | 4 |
Employee ID | B | 2 | Employee Number | XXXXXXXXX | 9 |
Position Number | C | 3 | Required: Compensation number. Either the job number or a location code must be provided to permit posting into CURRENT or FUTURE. This job number would be matched directly to the COMPENSATION record for the employee. | 99 | 2 |
Location Code | D | 4 | Optional: Buidling IRN or Building/Department code. If a job number is not provided, the location code may be used to determine which job the record is to be posted to. | XXXXXX | 6 |
Date | E | 5 | Transaction posting date | YYYYMMDD | 8 |
Transaction Type | F | 6 | Valid values are: AB = absence AT = attendance | XX | 2 |
Transaction Category | G | 7 | Valid values for type AT: AT = Attendance SB = Substituting Valid values for type AB: CA = calamity DO = dock HO = holiday JD = jury duty MI = military OT = other PL = personal leave PR = professional leave SI = sick UN = unknown VA = vacation | XX | 2 |
Length/HoursLeng | H | 8 | Length of absence or attendance | (+/-)99999.999 | 10 |
Tracking Unit | I | 9 | Valid values for unit of attendance or absence: H = hourly D = daily | XX | 1 |
Unit amount | J | 10 | Optional: If supplied, this rate will be used for paying the job. If not supplied, the job will be paid using the unit amount from the Compensation record same location code. | (+/-)9999.999 | 9 |
Appointment type | K | 11 | Optional: Valid values for appointment type: Space = not defined 1 = Certified 2 = Classified | XX | 1 |
Sub for ID | L | 12 | Optional: Employee ID Number for absent employee. ID of employee whose position the sub is filling in for. May be used to determine pay account charging. | XXXXXXXXX | 9 |
Sub category | M | 13 | Optional: User defined. May be used to further define the transaction category. Multiple entries can be entered in the description field by comma's - Example: test, description. Import will allow quotes or no quotes to be used around fields-Example: "5/8/22, 5/10,22" | XX | 9 |
Budget account or XREF code | N | 14 | Optional: Budget account to charge during payroll. An XREF code may be used rather than the full budget account code. | Alphanumeric | 28 |
Budget code: | |||||
Fund | XXX | ||||
Function | XXXX | ||||
Object | XXX | ||||
Special Cost Center | XXXX | ||||
Subject | XXXXXX | ||||
Operational Unit | XXX | ||||
Instructional Level | XX | ||||
Job Assignment | XXX | ||||
XREF code | XXXXXX | ||||
Calculate gross | O | 15 | Optional: Valid values for gross flag are: Y = yes N = no space = user defined at run time The user will be asked at run time, "Post to Current, Future, or None?" If none, this flag is ignored and no transactions will be posted to Payroll Payments - Current or Future. If the user answers Current or Future, the space and "Y" will provide the same result. The transaction will be posted to Payroll Payments - Current or Future. If "N", the transaction will not be posted to Payroll Payments - Current or Future. | X | 1 |
Retire hours | P | 16 | Optional: Retirement hours will be imported to CURRENT or FUTURE, depending on what the user chooses. If retirement hours are not specified for a REG or OT pay type, the COMPENSATION Hours In Day fields (if populated) will be used to automatically calculate a value. Info
NOTE: If you provide no value for retire hours and the pay type is Miscellaneous, Dock, Shift Premium, Irregular, Retro, or Termination, then the retire hours will be set to 0 in future and current, and not defaulted to the values from the compensation. | (+/-)999.999 | 8 |
Pay Type | Q | 17 | Optional: REG (cannot be used if employee is in advance) MIS OT DCK SHP IRR (cannot be used if employee is in advance) BCK TRM POF NC1 NC2 NC3 | XXX | 3 |
Tax Option | R | 18 | Optional: 1, 2, 3 or space If left blank in csv file: • If POSITION Supplemental Type = SUP1, then 1 is automatically assigned (Apply Annuities to Regular) • If POSITION Supplemental Type = SUP3, then 3 is automatically assigned (Apply Annuities to Supplemental) • If POSITION Supplemental Type not SUP1 or SUP3, then 2 is automatically assigned (None) If not specified, it defaults to none. | X | 1 |
Retirement option | S | 19 | Optional: Y, N or space | X | 1 |
Pay Amount Description | T | 20 | Optional Multiple entries can be entered in the description field by comma's - Example: test, description. Import will allow quotes or no quotes to be used around fields-Example: "5/8/22, 5/10,22" | Alphanumeric | 25 |
Attendance posting Flag | U | 21 | Optional: Y, N or space Y or Space = Yes N = No | X | 1 |
Board Distribution Flag | V | 22 | Optional: Y, N or space Y or Space = Yes N = NO | X | 1 |
Leave Projection Flag | W | 23 | Optional: Y, N or space Y or Space = Yes N = No | X | 1 |
Effective Date | X | 24 | Optional: The effective date only applies to FUTURE entries. This date must be a vaild date in the format of YYYYMMDD and should be in the future. CURRENT entries will always contain zeroes since it is for the current payroll. | YYYYMMDD | 8 |
Label | Y | 25 | Required for Posting a Payroll Payment: Must match the label field on the compensation you want the payroll payment to be posted for. If the Label field is not added and employee has more than one compensation for that position, it will not know what compensation to choose. This field is optional if you are only posting attendance. The Transaction date has to be within the Contract Start and Stop date of the compensation being used. | Alphanumeric |
Example of USPIMPORT.CSV:
Opened in Notepad:
Important Attendance Import Misc Information:
If the unit amount is specified in the csv file for an "OT" (overtime) pay type, then the amount (rate) from the csv file will override the unit amount in Compensation. If no unit amount is specified in the csv file for an "OT" pay type, then the unit amount will be the Compensation rate * 1.5.
ATTERR
All errors will be displayed in the error report file (ATTERR.CSV) that is generated when running the Attendance Import. When a record is not valid it will be added to the error report as a CSV line with a ' I ' character at the end. Everything after this is the error message:
AA,XXXXXXXXX,01,,20160520,AB,VA,1,D,320.000,1 | "Error message here"
The following fatal errors may be encountered during the import and are displayed on the ATTERR report.
Fatal Messages
- Attendance for the day cannot total more than 1 day.
- If the tracking unit is "D" (daily) and the transaction length is greater than 1 or less than -1.
- Attendance for the day cannot total more than 24 hours
- If the tracking unit is "H" (hourly) and the transaction length is greater than 24 or less than -24.
- An Attendance entry cannot be posted to a position for which the job status is deceased.
- An ATTENDANCE entry cannot be posted to a position for which the Job Status is deceased in POSITIONS
- An Attendance entry cannot be posted to a position for which the job status is terminated.
- An ATTENDANCE entry cannot be posted to a position for which the Job Status is terminated in POSITIONS
- Appropriation account does not exist for budget account
- Budget account to be charged does not have a corresponding appropriation account. ATDSCN record and UPDCAL records are not written.
- Balance for Sick (Employee#: XXXXXXXXX) is negative. Negative leave balances are not allowed
- Check Leave balance for employee
- Check System/Rules:
- Rule to prevent Sick Leave Balance from going negative
- If district uses Advance Sick Leave, check the 'Allow Negative Leave Balances' in Attendance/Absence Import
- Board distribution flag must be Y, N or blank. If not specified the default is Y
- Can not determine compensation for posting transaction to payroll. More than 1 active non-contract compensation.
- Compensation is advanced. New earnings (REG) may not be added to the compensation.
- Date of transaction is not in YYYYMMDD format or is invalid based on the month and the number of days in the month (ie. 19990231 would be invalid since February does not have 31 days.)
- Correct date formatting on the csv file would be YYYYMMDD.
- Days worked = work days in contract.
- The days worked cannot equal work days in the contract
- Days worked exceeds work days in contract.
- The days worked cannot exceed the work days in the contract.
- District not set up to use XREF codes
- XREF code has been supplied in the CSV record but the district's USAS configuration information indicates the district does not utilize XREF codes. The record is not written to ATDSCN or UPDCAL.
- Invalid Activity Date.
- Date must be in YYYYMMDD format. Date on the csv file is blank.
- Invalid (insert budget account related item here)
- For example, invalid function per the current Blue Book standards. Budget account to be charged is invalid. Record is not written to ATDSCN or UPDCAL.
- Invalid Effective Date
- Effective Date must be in YYYYMMDD format.
- Invalid job number
- If posting to UPDCAL and the job number is zero or not found, or a job number was supplied in the CSV file, but there is no corresponding JOBSCN record on file for the Employee ID and job number.
- Invalid pay type
- Posting to UPDCAL and an invalid pay type (other than spaces) is found.
- Invalid special cost center
- Special cost center in budget account to be charged is not valid. Record not written to ATDSCN or UPDCAL.
- Invalid transaction category
- If an AT transaction type, the category must be either AT or SB. If an AB transaction type, the category must be one of the following: CA, DO, HO, JD, MI, OT, PL, PR, SI, UN, VA.
- Invalid transaction date
- Transaction date is prior to 1970/01/01. Date of transaction is not in YYYYMMDD format or is invalid based on the month and the number of days in the month (ie. 19990231 would be invalid since February does not have 31 days.)
- Invalid transaction type
- Transaction type must be either AB or AT.
- Invalid record indicator on record:
- The record number specified does not contain a record indicator of AA. Verify the information listed on the CSV file.
- Irregular pay type affects contract amount paid for advanced compensation, can not be used.
- No Active compensations found for posting transaction to payroll
- Employee's compensation is archived.
- No Employee found for Employee #: XXXXXXXX
- There was no match found in the employee master file for the Employee ID supplied in the CSV file.
- No position number provided or determined for payroll posting
- A position number is not defined on the csv file for the related record.
- The Appointment Type in the CSV file must match the Appointment Type on Position View. Employee #: XXXXXXXX
- The appointment type in the csv file must match the appointment type in POSITION screen.
- The value supplied in the CSV file for the calculate gross option was invalid. This field is optional. If supplied it must be either Y, N OR Space.
- This Position / Employee is not eligible for personal leave
- According to CORE/POSITION, the job/employee is not eligible for personal leave.
- This Position / Employee is not eligible for sick leave
- According to CORE/POSITION, the job/employee is not eligible for sick leave.
- This Position / Employee is not eligible for vacation leave
- According to CORE/POSITION, the job/employee is not eligible for vacation leave.
- Leave Projection flag must be Y, N or blank. If not specified the default is Y.
- Leaves records do not exist for Employee #: XXXXXXXXX
- There is no CORE/LEAVES record on file for the Employee ID. This record must be present to post an absence for sick, vacation, or personal leave.
- No acct code, but has BRDDIS/LEVPRO.
- Account code is needed if BRDDIS or LEVPRO flags are specified.
- Pays paid = number of pays.
- Pays paid cannot equal number of pays.
- Position number could not be determined for payroll posting.
- Position number must be specified for this type of transaction.
- String index out of range: XX
- Account code needs to equal 28 digits
- Too large. The unit amount on the csv file cannot be greater than 9999.999.
- Tracking unit not equal to benefit unit
- The tracking unit supplied in the CSV file (hours/days) does not match the tracking unit defined on the employee's USPSCN/BENSCN record.
- Transaction length cannot equal zero
- Unable to write ABSDET record
- An error occurred while trying to write the ABSDET record. This generally means there is already a record on file with the same key values.
- XREF code not found
- XREF code supplied on CSV record could not be found on the district's XREF file. Record not written to ATDSCN or UPDCAL.