If the import file format is correct and the minimum required fields have been mapped, the file will be queued for processing by the import process, at which point the following validation occurs:
matching manual items to job orders and timesheets
general validation.
If an item fails either of these validations, the row will fail to be imported and an exception error message or messages will be written to an exception report. However, this will not prevent manual item rows in the same import file from being imported if they pass validation.
Job Order and Timesheet Matching
Timesheet Import will attempt to match each item in the import file to a unique job order that exists in the system. This is done in one of the following ways depending on which import file fields have been mapped:
by attempting to match using the Timesheet ID fields
by attempting to match Job ID fields
by attempting to match on Client fields
by attempting to match on Candidate fields.
Step 1 - Requirement to match import data to timesheets / job orders
Matching by Timesheet ID Fields
If any of the following Timesheet ID fields are mapped, they will be used to match rows in the import file to an interpreted timesheet in the database based on the applicable item date:
Timesheet ID
The table below lists the exception conditions that may apply when attempting to match manual timesheet data to an existing timesheet using the abovementioned field. In each case, the table shows the error message that will be written to the exception report.
Condition | Error Message |
The supplied Timesheet ID does not exist. | The provided Timesheet ID does not match the ID of an existing timesheet. |
Where Timesheet ID has been supplied and is valid, however the target interpreted timesheet is not of type ‘Not Reviewed’. | Target Interpreted Timesheet’s status does not support importing manual items. Status must be ‘Not Reviewed’. |
Matching by Job ID Fields
If any of the following Job ID fields are mapped, they will be used to match rows in the import file to a job order in the database based on the applicable item date:
Job Order ID
Job Alt No
Purchase Order No.
If two or more of the Job ID fields are mapped, only the first field will be used as shown in the order above. For example, if the Job Order ID field and the Job Alt No fields are provided, only the Job Order ID field will be used for matching purposes.
The table below lists the exception conditions that may apply when attempting to match timesheet data to an existing job order using the abovementioned fields. In each case, the table shows the error message that will be written to the exception report.
Condition | Exception Report Message |
A row in the import file could not be matched to an existing, valid job order by any of the job ID fields. | Job Order cannot be found. |
A valid job has not been found for the provided Purchase Order Number. | Job Order Cannot Be Found for the Submitted Purchase Order Number. |
A row in the import file specifies a purchase order number but there are multiple job orders with the same purchase order number and item date and therefore the row cannot be matched to a single job order. | Multiple matching job orders identified for specified date. |
The Job Order has been identified by one of the Job Identifiers, but the interpreter manual item item date for this line does not fall between the job's start and end dates. | Specified Date Does Not Exist on the Job Order. |
The Job has been determined from the provided information, and a Candidate has been identified from the provided information, but this candidate is not the candidate on this order. | Specified Candidate Does Not Exist on the Job Order |
Matching by Client Fields
If none of the Job ID fields are mapped but any of the following Client fields are mapped, the system will use these Client fields to match rows in the import file to job orders in the database:
Cost Centre No
Cost Centre Code
Cost Centre Name
Client No
Client Alternate No.
If two or more of the Client fields are mapped, only the first field will be used as shown in the order above. For example, if the Cost Centre Code field and the Client No fields are provided, only the Cost Centre Code field will be used for matching purposes.
The client ID will be determined from the client fields, as above. The candidate ID will be determined from these candidate fields: Candidate ID or Candidate Alt No or Candidate Full Name or (Candidate Firstname + Candidate Surname).
The Client fields listed above are used to identify the client who owns a job order. Once the client is identified, Manual Item Import will try to match a timesheet item to a job order by attempting to find a job order in which the specified candidate is placed for that client for the corresponding item date. However, if the candidate has been placed in multiple jobs for the same client for an overlapping period, the system may not be able to uniquely identify the relevant job order and the corresponding timesheet manual item will fail to import. Therefore, it is recommended that, if possible, Job ID fields are included in the import file if there is a possibility that payees may have multiple placements with the same client for the same period.
The table below lists the exception conditions that may apply when attempting to match manual item data to an existing job order using the abovementioned fields. In each case, the table shows the error message that will be written to the exception report.
Condition | Exception Report Message |
A job must be able to be identified based on the combination of client and candidate identifiers. | Job Order Cannot Be Found. |
No matching candidate is found for the Candidate identifier. | Candidate Cannot be Found |
The candidate can be determined from the identifiers, but is not placed on a valid order for this client. | Candidate Not Placed on Valid Order for This Client and Date. |
Only one order can be identified – the resulting job number must be unique. | Multiple matching job orders identified for specified Candidate, Client and Date |
Matching by Candidate Fields
If neither the Job ID nor Client fields are mapped, the system will attempt to match rows in the import file to job orders in the database using the following Candidate fields:
Candidate ID
Candidate Alt No
Candidate Full Name
Candidate Firstname and Candidate Surname.
If two or more of the Candidate fields are mapped, only the first field will be used as shown in the order above. For example, if the Candidate Alt No field and the Candidate Full Name fields are provided, only the Candidate Alt No field will be used for matching purposes.
The Candidate fields listed above are used to identify the candidate linked to the payee who is placed in a job order. Once the candidate is identified, Manual Item Import will try to match a row item to a job order by attempting to find a job order in which the specified candidate is placed for the corresponding item date. However, if the candidate has been placed in multiple jobs for the same or different clients for an overlapping period, the system may not be able to uniquely identify the relevant job order and the corresponding timesheet will fail to import. Therefore, it is recommended that, if possible, Job ID fields are included in the import file if there is a possibility that payees may have multiple placements with the same period.
The table below lists the exception conditions that may apply when attempting to match timesheet data to an existing job order using the abovementioned fields. In each case, the table shows the error message that will be written to the exception report.
Condition | Exception Report Message |
No matching candidate is found for the Candidate identifier. | Candidate Cannot Be Found. |
The candidate can be determined from the identifiers, but is not placed on a valid order for this date. | Candidate Not Placed on Valid Order For This Date. |
The candidate can be identified, but is placed on more than one valid order on this date. | Candidate Placed on Multiple Orders for this Date. |
More than one candidate can be found which matches both the candidate information used (i.e. candidate no, candidate alt no, etc.) and the date. | Multiple Candidates Identified. |
Step 2 - Requirement to Match a Manual Item to an Interpreted Timesheet
Where a Job Order has been successfully identified, and where the Timesheet ID has not been provided in the import, the system will attempt to match the manual item to an interpreted timesheet in the ‘Not Reviewed’ state.
The table below lists the exception conditions that may apply when attempting to match the import data to a timesheet within the identified Job Order.
Condition | Error Message |
No matching interpreted timesheet in the ‘Not Reviewed’ state is found that matches the Manual Item Date. | An Interpreted Timesheet with the state of ‘Not Reviewed’ cannot be matched to the manual item date. |
Multiple ‘Not Reviewed’ timesheets match to the Manual Item Date (for example where one is target and one is adjustment to target timesheet). | Multiple Interpreted Timesheets match to the manual item date. |
General Validation
If an item in the import file can be matched to a unique timesheet in the database, Interpreter Manual Item Import will then perform general validations to ensure that the data provided in the item is correct.
The table below lists the conditions that may cause an item in the import file to fail the general validation. Except where stated otherwise, the entire timesheet to which an item in the import file corresponds will fail to import and an exception will be generated in the exception report.
Condition | Error Message |
A job order number has been provided in the import file but the corresponding job order does not exist in the system. | Job Order cannot be found. |
The Job ID field has been mapped but a job order number has not been specified for the item. | The job order number is mandatory. |
The Manual Item Date for an item falls outside of the date range of the timesheet. | The manual item date must fall within the timesheet header date range. |
The import code/item name of a Pay Code item within the import file does not match the import code/item name of any existing Pay Code item within the system for the Timesheet’s Country. | A Pay Code Import Code / Name does not exist in the system. |
The import code/item name of a Bill Code item within the import file does not match the import code/item name of any existing Bill Code item within the system for the Timesheet’s Country. | A Bill Code Import Code / Name does not exist in the system. |
A pay code name in the import file is not unique. | There are multiple pay codes with this name in the system. |
A bill code name in the import file is not unique. | There are multiple bill codes with this name in the system. |
The values for Timesheet Week Start Date and Timesheet Week End Date do not match an existing interpreted timesheet | Timesheet Week Start Date and Timesheet Week End Date values to not match an exiting interpreted timesheet. |
The Pay Code Name / Pay Code Import Code field is used in the field mappings but no item code is supplied in the import file. | Item code not supplied. |
The Bill Code Name / Bill Code Import Code field is used in the field mappings but no item code is supplied in the import file. | Item code not supplied. |
The Pay Code Name / Pay Code Import Code provided is not a Reimbursement Item, however values have been provided for other reimbursement fields. | Pay Code provided is not of type Reimbursement, however values have been provided for reimbursement fields. |
The Pay Code provided is a Reimbursement Item, values and mapping has been provided for Reimbursement Net and Reimbursement GST/VAT however value has also been provided for Pay Rate. | A Pay Rate and Reimbursement Net value has been provided for a Reimbursement Pay Code. Only the Reimbursement Net value is required. |
Pay Code provided is not a Reimbursement item, and Pay Rate value is null | Pay Rate value cannot be null. Zero is accepted. |
Bill Rate is null | Bill Rate value cannot be null. Zero is accepted. |
Pay Quantity is null | Pay Quantity cannot be null. Zero is accepted |
Bill Quantity is null or zero | Bill Quantity cannot be null or zero. |
The Enforce Project Codes option has been enabled on the job order to which an interpreted timesheet belongs, but the manual item does not have a project code. | Manual Item Project Code required. |
The Enforce Project Code Selection option has been enabled on the job order to which an interpreted timesheet belongs, but the project code provided for the manual item does not match any of the project codes defined as valid for the job order. | Manual Item with date <date><time> has a Project Code that does not exist in the available pick list. |