Standard logging and error handling
The import process attempts to import each staged transaction one at a time. Any staged transaction that fails to validate as described in the above sections is considered invalid. Invalid transactions are not imported into Expense Management. Any errors that are generated are updated in the Import process log.
This a sample from an import log file:
10/10 12:51:33 I -- Started Import for User
10/10 12:51:37 E Table Type: User. employee_number = icost1 has invalid cost_center_code = BadCost. Transaction not imported
10/10 12:51:37 E Table Type: User Membership. data_key|group_name = imember2|ValidAdminGroup is invalid. You may not add data (users, corporate data, business rules) to groups of type Role or Admin. You attempted to add record null to group ValidAdminGroup. Transaction not imported.
10/10 12:51:37 I -- Completed Import for User
10/10 12:51:37 I 39 rows read from table: alex_user
10/10 12:51:37 I 13 rows read from table: alex_ts_user_attributes
10/10 12:51:37 I 3 rows read from table: alex_pr_user_preference
10/10 12:51:37 I 9 rows read from table: alex_er_user_preference
10/10 12:51:37 I 36 rows read from table: alex_user_group
10/10 12:51:37 I 44 Total Transactions
10/10 12:51:37 I 22 Error Transactions
10/10 12:51:37 I 18 Insert Transactions
10/10 12:51:37 I 3 Update Transactions
10/10 12:51:37 I 1 No-op Transactions
This sample log is generated by the user import module. This lists the data errors generated during import, a summary of rows read from the import tables, and transaction counts. A transaction includes all related rows corresponding to a single business object (for example, a user).
You can determine from the tables listed above that the user transaction involves these tables:
- alex_user
- alex_ts_user_attributes
- alex_pr_user_preference
- alex_er_user_preference
- alex_user_group
A user transaction may include a row from alex_user, a row each from alex_ts_user_attributes, alex_pr_user_preference and alex_er_user_preference, and one or more rows from alex_user_group.
If any row in a transaction is found to be in error, the entire transaction is rejected. An invalid user preference or group membership invalidates the entire user transaction even if the data in alex_user itself is good. In addition to the details of the errors, the log provides a count of the transactions in error.
Valid transactions result in an Insert, Update or No-op transaction. An Insert transaction indicates that the business object being imported did not exist in Infor Expense Management prior to the import. An Update transaction indicates that the business object did exist prior to the import, but one or more of the updateable fields were modified as a result of the import. When the imported business object matches an existing Infor Expense Management business object exactly, including all updateable fields, a No-op transaction is recorded because the Import process does not perform any database insert/update in this case.