The USPIMPORT/ ATTEND option allows data obtained from third party software to be imported into USPS. The information is imported into ATDSCN and may be used to automatically load information into UPDCAL_CUR or UPDCAL_FUT
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 record layout instructions for the CSV file are located in the USPIMPORT section of the USPS SYSMAN--USPIMPORT - Import File Specifications. If there are further questions regarding the USPIMPORT program please contact your ITC*
The ATTEND option has the ability to import records into both ATDSCN and UPDCAL_CUR/UPDCAL_FUT. A specific budget account can be specified to be charged for the UPDCAL_CUR/UPDCAL_FUT record.
An error text file is created only if errors are detected. The error file may contain fatal errors (that prevent a record from being added to ATDSCN and UPDCAL), warnings and informational messages.
The same validations of data performed by ATDSCN when adding records are carried out during the import process. For example, an absence for personal leave to be posted for an employee not eligible for personal leave would appear as a fatal error on the error text file.
It may be possible for your ITC to assist in correcting errors that appear by editing a rejected file. Contact the ITC for assistance.
accessing the program
The program may be executed by typing:
at the $ prompt or in the menu system type:
- In the CSV import file field enter the name of the CSV import file. The file name including extension must be provided (filename.ext).
- The Error output file field contains the name of the error report file. The default name is ATTERR.TXT. The error report is only generated if there are errors during the import process.
- The 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. I - Building IRN or B - Building/Department code. Leave this field blank if location field is not used.
- The Post to UPDCAL Current, Future, None prompt offers the following options:
- C - Post applicable transactions into UPDCAL_CUR.
- F - Post applicable transactions into UPDCAL_FUT.
- N - No UPDCAL posting will take place. The "Calc gross" parameter from the CSV file is ignored as well.
- The Combine AT Entries prompt offers the following options:
- Y - AT entries charged to UPDCAL will be combined for an employee. In order to combine entries in UPDCAL the EMPID, job number, pay type, unit, unit amount, tax option, retirement flag, budget account, leave projection flag, and the BRDDIS flag must match.
N - AT entries will not be combined when posted to UPDCAL .
- The Allow negative leave balances prompt offers the following options:
Y- AB entries for Sick, Vacation and Personal Leave will be allowed to go negative. It will appear as a WARNING on the report.
N - AB entries for Sick, Vacation and Personal Leave will NOT go negative. It will appear as a FATAL Error on the report.
- The Pay account to charge prompt offers the following options:
- D - Pay account defined in PAYSCN for the job will be used
- A - Using the "Sub for SSN", the regular employee's pay account(s) will be charged.
- If the pay account to charge prompt is set to "A" 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.
IMPORTANT USPIMPORT MISC INFORMATION-
- The criteria for collapsing of UPDCAL entries is that all the following must be the same: Employee id, job number, pay type, unit, unit amount, tax option, retirement flag, budget account, leave projection flag and BRDDIS flag.
- Dock pay types need to have both the hours and amounts as positive numbers. All programs and reports look at the pay type of "DCK" and converts the amount to a negative amount. This is done automatically.
- AB DO entries will always create a DCK pay type in UPDCAL if the user chooses to post to UPDCAL and as long as there are no FATAL errors.
- To post to UPDCAL, the Calculate Gross option must be Y or blank and on the USPIMPORT input screen the user must select to Post to UPDCAL Current or Future.
- Retire hours are automatically converted from daily to hourly for pay types "REG" or "OT", if there is an hours per day value in JOBSCN. If there is no hours per day value in JOBSCN, it will give a FATAL error saying that the units could not be calculated. Therefore the retire hours could not be calculated either.
- For the Overtime (OT) pay type, the retire hours will be automatically populated. If the entry in the csv file is in an hourly format, then the units will be moved to the retire hours. If the entry in the csv file is in a daily format, then the units will be calculated based on the hours per day for that job and the units on the csv file. The result will be in hours and placed in the retire hours on UPDCAL.
- Retirement hours will automatically be calculated (if no retirement hours are specified on the CSV file) for only REG and OT pay types. If retirement hours are entered
on the spreadsheet for other pay types, UPDCAL will update with retire hours specified, otherwise retire hours will be zero.
- Retire hours should never be entered or allowed when posting an NC1, NC2 or NC3 in UPDCAL. If the user enters retire hours for any of these NC* pay types, an error message will appear
and the user must blank out or move zeroes to the retire hours field.
A job number must be supplied or determined by the program to post to UPDCAL. All attendance and absence records must have a job number when posting to UPDCAL. A FATAL error stating "FATAL: No job number provided or determined for UPDCAL posting." In this case no ATDSCN or UPDCAL updating occurred. If USPIMPORT is not posting to UPDCAL,a job number is not required.
All valid attendance (AT) records will post to UPDCAL_CUR or UPDCAL_FUT if the input parameter in USPIMPORT is set to update UPDCAL and the flag for UPDCAL in the import record is set to Y or blank.
If the attendance record in the csv file has a pay type and is to be updated in UPDCAL, the pay type in the csv file will be in UPDCAL.
If the attendance record in the csv file does NOT have a pay type (pay type field is blank), and is to be updated in UPDCAL, then the "REG" pay type will be used in UPDCAL.
Valid dock absences (AB DO) will post to UPDCAL_CUR or UPDCAL_FUT if the input parameter in USPIMPORT is set to update UPDCAL and the flag for UPDCAL in the import record is set to Y or blank.
No absences other than dock will post to UPDCAL. These records will print an informational message on the report, stating that AB transactions with this category do not post to UPDCAL from USPIMPORT.
If the absence dock record is to post to UPDCAL, but a pay type was not given, an information message will print on the report stating that the dock pay type was assumed for AB DO entry.
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 JOBSCN. If no unit amount is specified in the csv file for an "OT" pay type,
then the unit amount will be the job's rate * 1.5.
If a tracking unit is not specified on the csv file and the transaction length is greater than 1, then USPIMPORT will move "H" for hourly for the tracking unit and an informational message will print stating that the Tracking Unit is assuming Hourly.
If a tracking unit is not specified on the csv file and the transaction length is equal to or greater than 1, then USPIMPORT will move "D" for daily for the tracking unit and an informational message will print stating that the Tracking Unit is assuming Daily.
If the transaction category is SB for Substitute, then the sub for ssn field must have a valid employee id. If not, it will move spaces to the sub for ssn field and an informational error will print, stating that an invalid sub for ID found.
If the sub for ssn field is not space and the transaction category is not SB, an informational message will print stating that the sub for id is ignored and spaces will be moved to the sub for ssn field.
The effective date only applies to UPDCAL_FUT entries. This date must be a valid date in the format of YYYYMMDD and should be in the future. UPDCAL_CUR entries will always contain zeroes since it is for the current payroll.
USPIMPORT -ATTERR.TXT Report Information
All errors encountered during the error checking process will be reported and printed on the ATTERR.TXT error report.
An AF (Attendance update failed) or UF (UPDCAL update failed) message will be found just before any FATAL error message. An "AF" indicates if the Attendance update failed and the"UF" indicates if the UPDCAL update failed.
- A record number will print on the error report of the line number of the offending record in the csv file.
- A rejection file is created and will contain those records from the csv file that could not be updated. This rejected csv file is created to allow the user to correct any errors and then process as the input file to USPIMPORT, if they choose.
- The unit amount, retire hours, pay type, tax option, retirement option, description, attendance posting flag, board distribution flag and leave project flag are all located on the .REJECT csv file. If the attendance record was updated, but the UPDCAL record could not be updated (this should rarely happen),then the attendance posting flag in the rejected csv file will contain a "N", so it will not post again to ATDSCN when using the reject file as the import file.
- If there are no fatal error on the report the following message will be displayed-No FATAL errors reported for this import!
The following fatal, warning, and informational messages may be encountered during the import and are displayed on the error report.
- Appointment type must equal type in USPSCN/JOBSCN
- The appointment type in the csv file must match the appointment type in JOBSCN.
- 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.
- Benefit record not found for SSN
- There is no USPSCN/BENSCN record on file for the SSN. This record must be present to post an absence for sick, vacation, or personal leave.
- 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 Board Distribution Flag.
- Board distribution flag must be Y, N or blank. If not specified, the default is Y.
- Invalid calculate gross option
- 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.
- 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 SSN and job number.
- Invalid Leave Projection Flag.
- Leave projection flag must be Y, N or blank. If not specified, the default is Y.
- Invalid length for transaction
- Transaction length cannot equal zero.
- Invalid object code. Only 100 level object codes permitted
- Object code in budget account to be charged is not valid for USPS payroll posting. Record is not written to ATDSCN or UPDCAL.
- 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 SSN/Employee ID
- There was no match found in the employee master file for the SSN/Employee ID supplied in the CSV file.
- 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.
- Invalid Unit Amount
- Too large. The unit amount on the csv file cannot be greater than 9999.999.
- Job not eligible for personal leave
- According to USPSCN/JOBSCN, the job/employee is not eligible for personal leave.
- Job not eligible for sick leave
- According to USPSCN/JOBSCN, the job/employee is not eligible for sick leave.
- Job not eligible for vacation leave
- According to USPSCN/JOBSCN, the job/employee is not eligible for vacation leave.
- Job status is deceased
- An ATDSCN entry cannot be posted to a job for which the job status is deceased.
- Job status is terminated
- An ATDSCN entry cannot be posted to a job for which the job status is terminated in JOBSCN.
- Length exceeds one day (or 24 hours)
- If the tracking unit is "H" (hourly) and the transaction length is greater than 24 or less than -24. If the tracking unit is "D" (daily) and the transaction length is greater than 1 or less than -1.
- No acct code, but has BRDDIS/LEVPRO.
- Account code is needed if BRDDIS or LEVPRO flags are specified.
- No job number provided or determined for UPDCAL posting.
- Job number must be specified for this type of transaction.
- Pays paid = number of pays.
- Pays paid cannot equal number of pays.
- 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.
- 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.
- Acct code invalid for pay type xx for UPDCAL. Moving space.
- Informational error. This pay type does not allow account codes to be used in the import file, so the account code from the import file is ignored. The system will use the pay account code from the employee's PAYSCN.
- BRDDIS flag invalid for pay type xx for UPDCAL. Moving space.
- The pay type specified does not use the BRDDIS flag.
- Error calculating hourly (daily) units for UPDCAL
- Record was written to ATDSCN, but an UPDCAL record could not be written. The transaction length (from CSV) or hours per day (from JOBSCN) are invalid.
- Job number could not be determined to allow UPDCAL posting
- The ATDSCN record was posted but an UPDCAL transaction could not be posted since a job number could not be determined.
- LEVPRO flag invalid for pay type xx for UPDCAL. Moving space.
- The pay type specified does not use the LEVPRO flag.
No pay type provided, assuming MIS pay type.
No pay type provided and if there is at least one of the following values on the csv record- account code, retirement code, tax option, BRDDIS or LEVPRO flag, then the pay type of MIS will be loaded.
- No pay type provided, assuming REG pay type.
- No pay type provided and if all values on the csv record -account code, retirement code, tax option, BRDDIS, and LEVPRO are blank, then the pay type of REG will be loaded.
- No unit amount for job, record not posted to UPDCAL
- Record was written to ATDSCN but an UPDCAL record could not be written. There is no unit amount defined for the job in JOBSCN.
- No UPDCAL record posted, unable to charge pay account(s)
- Record was written to ATDSCN, but an UPDCAL record could not be written. There are either no pay accounts on file for the job or they do not total 100%.
- Record not posted to UPDCAL due to invalid job number
- An invalid job number was supplied for the job. An UPDCAL record could not be posted.
- Rate from import does not match JOBSCN rate, using Import rate
- The rate supplied in CSV file differs from the one on the job record. The CSV rate will be used for UPDCAL record.
- Retire hours supplied from import is too large, using JOBSCN hours
- CSV retirement hours must be between -999.99 and 999.99. Using value from JOBSCN retire hours/hours per day.
- Retire hours from import contains invalid data, using JOBSCN hours
- CSV retirement hours contains alpha data and cannot be translated to a numeric value. Using value from JOBSCN retire hours/hours per day.
- Unable to calculate number of units for UPDCAL
- Record was written to ATDSCN but an UPDCAL record could not be written. The number of units could not be determined based on the employee's pay unit (JOBSCN, daily/hourly), tracking unit (from CSV), and transaction length (from CSV).
- Unable to calculate retirement hours for UPDCAL
- Record was written to ATDSCN, but an UPDCAL record could not be written. Most likely cause is units are invalid.
- Units could not be calculated, no hours per day
- The hours per day field in JOBSCN is zero.
- AB transactions do not post to UPDCAL from USPIMPORT.
- No benefit entries will post to UPDCAL.
- Dock pay type assumed for AB DO entry.
- DCK pay type is assumed if not specified in the csv file for an AB DO entry.
- Invalid sub for SSN
- The sub for SSN from the CSV record contained a value that could not be found on the employee master file
- Retire hours invalid for pay type xx for UPDCAL. Moving zeroes.
- The pay type specified does not qualify for retirement hours.
- Sub for SSN ignored, non SB category
- A sub for SSN was supplied in the CSV record, but the transaction category is not equal to SB (substituting).
- Tracking unit assumed hours (days)
- A tracking unit was not supplied in the CSV record. Based on the transaction length, hours or days is assumed. If greater than 1, hours is assumed, otherwise it is days.