Why Data Importer jobs end as Completed when the objects are not updated?

Document ID : KB000033154
Last Modified Date : 14/02/2018
Show Technical Document Details

Question

Why does Data Importer not generate an error message when I try to link an Asset (or other jobs) to a Legal Document even when the job does not complete successfully? The status of the Data Importer is "Completed" but the job does not link the Legal Document to the Asset. The log file of the job shows the below errors. 

Multiple records found for Legal Asset - 8E66DDF4A3DBD74AA93CBCAD5D37B618, 7766558899 
Need more lookup values to locate the record in this object 
Results: Total Records=1; Records Processed = 1 (Inserted = 0 / Updated = 1); Processed Successfully = 1; Errors = 0; Secondary Errors = 0; Warnings = 0; Filtered = 0 
Updating schedule status to 'Completed' for the scheduleid '<job_id>' 
Processing completed for import job ID '<job_id>' 

 

Scenario 1

Map settings:

Legal Document.Document Identifier – (Document Identifier of the Legal Document) – Primary lookup checked 
Legal Document.Legal Asset.Asset.Serial Number – (Serial Number of the asset) – Secondary lookup checked. 
Legal Document.Description – (description of that Legal doc)

Error on Secondary Lookup Object Errors—Unchecked. 

 

Answer for Scenario 1:

Primary object is Legal document

Secondary object is Asset (Legal Asset.Asset.Serial Number) 

 

Here the status of the Data Importer job "Completed" means updating the Primary Object is completed without having any issues (in this case description of that Legal Document). If there are any issues in updating the Primary Object, then the system will give you the status of "Failed" instead of "Completed". 

The above log file does not provide the failure count (Secondary Errors = 0) of the linking between Legal Document and Asset because "Error on Secondary Lookup Object Errors" option is unchecked. 

If you can check this option and if you run the job, then the Data Importer will give you the Secondary Errors count as 1 "(Secondary Errors = 1)" and still the job status of the data importer will be "Completed". 

In this case you need to open the log file first then verify if there are any errors (ie "Multiple records found for Legal Asset - <UUID>") and then verify the Secondary Errors count. 

In this scenario though you have the secondary errors (linking) updating the Primary Object (description of that Legal Document) will be completed. 

This is the expected behavior.

 

Scenario 2

Trying to update the asset (Asset alias and Location name). 

In the system provided Location is not available. 
Error on Secondary Lookup Object Errors – Checked. 
Create Secondary Lookup Object – UnChecked. 

Map settings

Asset.Asset Name-- Asset Name-- Primary lookup checked 
Asset.Asset Alias-- Asset Alias 
Asset.Location.Location Name-- Location Name-- Secondary lookup checked. 

 

Answer for Scenario 2:

If you run the Job then the Job it will be failed with status "Completed with errors". 

If you open the log file you can see below below errors: 

 
No records found for Location – <location name> 
Exception thrown! No records found for Location - <location name> and your configuration setting does not allow secondary objects to be created 
Exception thrown! No records found for Location - <location name> and your configuration setting does not allow secondary objects to be created 
Exception thrown! Return without creating object for Asset - Line: "testhardwareassett","testuser10" assetname = testhardwareassett, owner = testuser10 
The import operation failed because the maximum number of errors was reached. Fix the errors and run the data import again. 
Results: Total Records=1; Records Processed = 1 (Inserted = 0 / Updated = 0); Processed Successfully = 0; Errors = 1; Secondary Errors = 0; Warnings = 0; Filtered = 0 
Updating schedule status to 'CompletedWithErrors' for the scheduleid '<job_id>' 
 

In this scenario as the secondary object (Location Name) is failed hence updating the Primary Object (Asset Alias) also will get failed as you have checked the "Error on Secondary Lookup Object Errors". 

If you uncheck that option then the system will process updating the primary object(Asset Alias)value. 

This is the expected behaviour.