Validations for TE Preprocessor Input File

When you import TE Expenses/Advances, Costpoint checks the input file for any invalid or unsupported values.

Validations performed

After completed records are available, the validation process begins. All valid vouchers created from this application are assigned a voucher type of TE (Expense voucher) or TA (Advance voucher).

If there is an error on any line of a voucher (header, detail, or vendor labor), all lines of the voucher and all vouchers with the same Expense Report ID or Advance ID are rejected and written to the error file. For uploads from ASCII files (delimited), records failing validation are written to an error file and a printed error report.

Records are read from a delimited file and are loaded into worktables. Screen defaults are applied as well as some simple conversions for numbers and dates.

The following validations are performed on the data in the worktables.

Processing Details

  1. The application checks the voucher temporary tables to ensure that all rows are imported. If rows have not been imported, Costpoint displays a message on the screen and you can continue or cancel the process. If you continue, the temporary tables are cleared.
  2. Records from the input file are read and inserted into the temporary tables.
  3. Defaults are applied to fields that are blank in the input file and have a "default provided" status.
  4. Validations are performed.
  5. After the validations are completed, expenses or advances with errors are written to the error file. If there is an error on one line of an expense report (header or detail), all lines of the expense report or advance are rejected and written to the error file. These rows are then deleted from the temporary tables. Temporary tables have only valid rows in them.
  6. Field processing and calculations are performed.
  7. The error report prints. If there are errors, Costpoint displays a message. If there are no errors, the error report indicates that no records were found.
  8. An error file is also created (to send to Time & Expense).

Import Details

  1. If the application uses the voucher numbers from the Input File, Costpoint checks the Voucher Header and Voucher Header History again to ensure that the vouchers being imported do not already exist. If duplicates do exist, Costpoint displays a message and does not perform the import.
  2. If the application assigns voucher numbers, all vouchers in the temporary tables are assigned new and unique voucher numbers.
  3. The Voucher Key, Voucher Line Key, Voucher Line Account Key, and Voucher Line Vendor Key are set.
  4. The application inserts rows from the temporary tables into the Voucher Header, Voucher Line, and Voucher Line Account tables.

Input File Layout

The user names the Input File.

The Input File must be a fixed-format file. Every position must be filled with either an appropriate character or space. It is not necessary to zero-fill numbers; you can use spaces to maintain the proper format.

  • Numeric fields must be right-justified.
  • Character fields must be left-justified.

You need not fill the Notes fields with spaces, but every record must end with a carriage return and line feed.

A record in the Input File must be in one of two formats: Header or Detail. Each voucher Header record must have at least one matching voucher Detail record in the Input File.

The application replaces any missing data for Account, Organization, and Project with suspense values.

The application then performs the validations from the table below on the fields in the input file.

Field Validation Message
Record Type Must be H, D, or V. Invalid. Must be H, D or V.
Expense ID/Advance ID Every line must have an Expense ID/Advance ID (Header and Detail). Must be in input file.
Expense Report Date Every line must have a date. Must be in input file.
Date must be valid. Not a valid date.
Vendor Every line must have a Vendor. Must be in input file.
Must be a valid vendor in VEND table. Not found in Vendor table.
Payroll vendor flag cannot be set. Flagged as a PR Vendor.
Cannot be an inactive vendor. Inactive in the Manage Vendors screen.
Warn user if vendor has give warning status. WARNING: Vendor on warning status.
Warn user if vendor on hold status.  WARNING: Vendor on hold.
Place Expense Voucher(s) on Hold Flag Must be Y, N, or blank. Not Y, N or blank.
VAT Tax Date Date must be valid. Not a valid date.
VAT Tax ID Must exist for the vendor Does not exist for this vendor.
Notes N/A N/A
Expense Report Line Number Every line must have an Expense Line Number (Detail and Labor). Must be in input file.
Must be numeric. Not numeric.
Expense Date Every record must have an Expense Date.  Must be in input file.
Date must be valid.  Not a valid date.
Account Every record must have an Account. No default could be provided.
Must be in ACCT table. Not found in Acct table.

Alternate message displayed depending on suspense replacement option:

Not in Acct table, replaced.

Not in Acct table, replaced A/O.

Not in Acct table, replaced P/A/O.

Must be active. Not active.

Not active, replaced.

Not active, replaced A/O.

Not active, replaced P/A/O.

Must be a detail account. Not a detail account.

Not a detail account, replaced.

Not a detail account, replaced A/O.

Not a detail account, replaced P/A/O.

Account requires a project. Project is required for this account.

Project is required, replaced.

Project is required, replaced A/O.

Project is required, replaced P/A/O.

Account cannot have project. A Project cannot be used with this account.

Project cannot be used, replaced.

Project cannot be used, replaced A/O.

Project cannot be used, replaced P/A/O.

Not valid for AP. Not found in Acct Entry Groups table.

Cannot be used for APV, replaced.

Cannot be used for APV, replaced A/O.

Cannot be used for APV, replaced P/A/O.

Organization Every record must have an Organization. No default could be provided.
Must be in ORG table. Not found in Org table.

Alternate message displayed depending on suspense replacement option.

Not found in Org table, replaced.

Not found in Org table, replaced A/O.

Not found in Org table, replaced P/A/O.

Must be active. Not active.

Not active, replaced.

Not active, replaced A/O.

Not active, replaced P/A/O.

Project Must be in PROJ table. Not found in Proj Master table.

Alternate message displayed depending on suspense replacement option:

Not in Proj Master, replaced.

Not in Proj Master, replaced P/A/O.

Must be active. Not active.

Not active, replaced.

Not active, replaced P/A/O.

Must allow charging. Does not allow charges.

Does not allow charges, replaced.

Does not allow charges, replaced P/A/O.

Account/Organization Acct/Org exists on ORG_ACCT table. See AOPUTLAM. Use standard class AO validation. Either value could be replaced with suspense and revalidated.
Must be active.
Within the Period of Performance.
Project/Organization/Account Standard Class POA validation including Project Period of Performance. See AOPUTLAM. Use standard class POA validation. Any of the three values could be replaced with suspense and revalidated.
Project/Account Standard Class PAG validation. See AOPUTLAM. Use standard POA validation. Either value could be replaced with suspense and revalidated.
Project/Organization Standard Class Proj/Org validation. See AOPUTLAM. Use standard POA validation. Either value could be replaced with suspense and revalidated.
Reference Number 1 Must be in REF_STRUC table. Not found in Reference Structure table.

Alternate message displayed depending on suspense replacement option.

Not in Reference Structure, replaced.

Available for data entry. May not be used in data entry.

Cannot be used in data entry, replaced.

Valid reference 1. This entry is not valid as a reference 1.

Invalid as a reference 1, replaced.

Reference Number 2 Must be in REF_STRUC table. Not found in Reference Structure table.

Alternate message displayed depending on suspense replacement option:

Not in Reference Structure, replaced.

Available for data entry. May not be used in data entry.

Cannot be used in data entry, replaced.

Valid reference 2. This entry is not valid as a reference 2.

Invalid as a reference 2, replaced.

Transactional Currency Code Every record must have a Transactional Currency Code. Must be in input file.
If you do not have a license for Costpoint Multicurrency, this value must be the same as the functional currency. Must equal functional currency.  MU license not active.
Must be valid for the vendor.  Not valid for Vendor.
Trans. Currency Code / Rate Group / Expense Date Rate must exist in the RT_BY_DT table for the combination. Rate cannot be retrieved.
Expense Amount Every record must have an Expense Line Amount. Must be in input file.
Must be numeric. Not numeric.
Taxable Code Must be S, U, or N. Not S, U or N.
Tax Code Required if Taxable Code is S or U. Required because Taxable Code is S or U.
Not allowed if Taxable Code is N. Must be blank because Taxable Code is N.
Must be in SALES_TAX table. Not found in Tax Code table.
Sales Tax Amount Cannot be entered if Taxable Code is not S. Not allowed if Taxable Code is not S.
Required if Taxable Code is S. Must be in input file.
Must be numeric. Not numeric.
Use Tax Amount Cannot be entered if Taxable Code is not U. Not allowed if Taxable Code is not U.
Required if Taxable Code is U. Must be in input file.
Must be numeric. Not numeric.
1099 Flag Check for Y, N, or blank. Must be Y, N or blank.
Warn if flag is N and vendor is set up to print 1099s. WARNING: Vendor is set up to print 1099s.
Warn if flag is Y and vendor is not set up to print 1099s. WARNING: Vendor is not set up for 1099s.
1099 Miscellaneous Type Code Required if 1099 Flag is Y. Required when the 1099 Flag = Y.
Must not exist when 1099 Flag is not Y. Cannot be entered unless 1099 Flag = Y.
Must exist in S_AP_1099_TYPE table. Does not exist in the system table.
Expense Line Description N/A N/A
Pay Currency Code If you do not have a license for Multicurrency, this value must be the same as the functional currency. Must equal functional currency. MU license not active.
Must be valid for the pay vendor. Not valid for Pay Vendor.
Pay Amount Must be numeric. Not numeric.
Pay Exchange Rate Date Date must be valid. Not a valid date.
Warn if Pay Amount also entered. WARNING: Pay Amount will be used.
Pay Amount/ Pay Exchange Rate Date Value must be in file if Pay Currency is different from the Transactional Currency. Either Pay Amount or an Exchange Rate Date must be entered.
Warn if Pay Currency Code is same as Transactional. WARNING: Pay Amount and Rate Date ignored.
Pay Currency Code / Rate Group / Pay Exchange Rate Date Rate must exist in the RT_BY_DT table for the combination. Rate cannot be retrieved.
Pay Vendor Make sure vendor settings allow a different pay vendor. Different pay vendor is not allowed.
If the pay vendor is different from the vendor's pay vendor and the vendor does not allow edits to the pay vendor. Edits to pay vendor on vchr are not allowed.
Must exist on VEND table. Not found in Vendor table.
Must be active. Inactive in the Manage Vendors Screen.
Warn if pay vendor has no default address code and the input file code is not entered. WARNING: No default Pay Addr Code found.
Warn if pay vendor is on hold. WARNING: Pay Vendor on hold.
Pay When Paid Flag Must be Y, N, or blank. Not Y, N, or blank.
If flag is Y, vendor must be set up as a pay-when-paid vendor. Vendor is not a pay when paid vendor.
Recovery Amount Cannot be entered if Taxable Code is N. Not allowed if Taxable Code is not S or U.
If a Recovery Amount is entered, the Tax Code must allow recovery. Tax Code does not allow recovery.
Must be numeric. Not numeric.
Recovery Percentage Cannot be entered if Taxable Code is N. Not allowed if Taxable Code is not S or U.
If a Recovery Amount is entered, the Tax Code must allow recovery. Tax Code does not allow recovery.
Must be between 0 and 100. Must be between 0 and 100.
Must be numeric. Not numeric
Warn that Recovery Amount will be used if both are entered. WARNING: Percentage not used when amount entered.
Notes N/A N/A
TE Internal Advance ID Every line must have an Internal Advance ID (Header and Detail). Must be in input file.
Must be unique. Duplicate Advance record in input file.
Advance Due Date Date must be valid. Not a valid date.