Attendance/Absence Import

 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.

There is no limit to the number of records on the CSV import.

The header line on the csv file must be removed before importing the file.

Attendances and Absences can be imported with double quotes around all the fields.

Attendances and Absences can be imported with no quotes (including double quotes only when a comma is embedded in the description field). Example: "5/8/22, 5/10,22"



  • 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 (from Position). 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 Employer Distribution 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. 
      • If the pay account to charge prompt is set to 'Sub for SSN', the attend option will allow for specific object codes to be entered when charging substitutes pay. Enter the appropriate object code in the Certified object, and/or Classified object, fields. The object codes are only available when the sub for SSN option is used.   
        • Enter Certified Object
        • Enter Classified Object

The Compensation associated with the ID entered in the Sub for SSN field must have remaining pays to be paid - meaning the Pays In Contract can not equal the Pays Paid. 

USPS Attendance/Absence Import SPECS

Attendance/Absence Specific Record Format

 This record is used to import attendance and absence information into USPS.

Field NameSpreadsheet ColumnCSV Position  DescriptionFormatMax. Size 
Record IndicatorA1Literal record indicator must contain "AA" to indicate Absence/AttendanceXXXX
Employee IDB2Employee NumberXXXXXXXXX
Position NumberC

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

Location Code

D4

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
Date

E

5Transaction posting dateYYYYMMDD
Transaction TypeF6

Valid values are: AB = absence AT = attendance

XX
Transaction CategoryG7

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
Length/HoursLengH8

Length of absence or attendance

(+/-)99999.999

10 
Tracking UnitI9Valid values for unit of attendance or absence: H = hourly D = dailyXX
Unit amountJ10Optional: 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

Appointment type

K11

Optional: Valid values for appointment type: Space = not defined 1 = Certified 2 = Classified

XX
Sub for IDL12

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

Sub category

M13

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

Budget account or XREF code

N14

Optional: Budget account to charge during payroll. An XREF code may be used rather than the full budget account code.

Alphanumeric28 


Budget code:






FundXXX



FunctionXXXX



ObjectXXX



Special Cost CenterXXXX



SubjectXXXXXX 



Operational UnitXXX 



Instructional LevelXX 



Job Assignment XXX 



 XREF codeXXXXXX 

Calculate gross15 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
Retire hours16 

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

  • If 0 is entered - will result in 0 in retire hours of future pay and hours worked of current pay
  • If no value is entered - will pull retire hours from retire hours on the assigned compensation (assigned from compensation label in import file).  If no retire hours are on compensation, then the hours in day will be used.  (with exception of the pay types listed in the NOTE below)
  • If negative value is entered - will pull retire hours from retire hours on the assigned compensation (assigned from compensation label in import file).  If no retire hours are on compensation, then the hours in day will be used. 
  • If positive value is entered - value will show in retire hours of future and hours worked of current

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
Pay Type17 

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 
Tax Option18 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
Retirement option19 

Optional: Y, N or space
Y or Space = Yes
N = No

Pay Amount Description20 

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 21 Optional: Y, N or space

Y or Space = Yes

N = No

 X
Board Distribution Flag22 Optional: Y, N or space

Y or Space = Yes

N = NO

Leave Projection Flag23 Optional: Y, N or space

Y or Space = Yes

N = No

Effective Date24 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 
LabelY25Required 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:

Overtime

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 AND on the Attendance/Absence Import screen.   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"

Corrections can be made to the ATTERR.CSV file, saved and then the ATTERR.CSV file can be uploaded in Attendance Import to load the remaining records that initially showed as errors.

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
  • Cannot 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 = workdays in contract.
    • The days worked cannot equal workdays in the contract
  • Days worked exceeds workdays in contract.
    • The days worked cannot exceed the workdays 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, cannot 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.