Developer forum

Forum » Integration » EcomProvider fails whole job when one row fails

EcomProvider fails whole job when one row fails

Marie Louise Veigert
Reply

Hi,

DW version 9.17.6
I have a update job with XMLProvider as source and EcomProvider as destination.
The job is updating Groups on products.

I have the following setup on the destination:

It should keep succesfull rows, but the result is that it seems like it doesnt keep the successfull ones.

The error in the log:

2024-10-31 00:45:41.114 2024-10-31 00:45:40.983: Error: Failed at importing EcomProducts rows with missing Groups Stack: at Dynamicweb.DataIntegration.Providers.EcomProvider.EcomDestinationWriter.FailOnMissingGroups() at Dynamicweb.DataIntegration.Providers.EcomProvider.EcomProvider.RunJob(Job job). System.Exception: Failed at importing EcomProducts rows with missing Groups at Dynamicweb.DataIntegration.Providers.EcomProvider.EcomDestinationWriter.FailOnMissingGroups() at Dynamicweb.DataIntegration.Providers.EcomProvider.EcomProvider.RunJob(Job job)  
2024-10-31 00:45:41.114 2024-10-31 00:45:40.983: Job Failed with the following message:  
2024-10-31 00:45:41.114 2024-10-31 00:45:40.983: Failed at importing EcomProducts rows with missing Groups:  
2024-10-31 00:45:41.114 2024-10-31 00:45:40.983: Failed row: [ProductID: "268630"], [ProductLanguageID: "DAN"], [ProductVariantID: ""], ....  
2024-10-31 00:45:41.114 2024-10-31 00:45:41.114: Job failed.  
2024-10-31 00:45:41.114 2024-10-31 00:45:41.114: Custom Code running - Update groups on products (UPDATE)


The interesting thing is though:
The products get updated in the PIM groups for some reason. 

I have checked the source XML and an example:
<column columnName="ItemCategoryCode"><![CDATA[O-R_FEP-V,E_O-RINGE]]></column>

The product is in the first group, but not the second one. Even though both groups exists in DW.

Any ideas? Or any workarounds for this issue?

BR
Marie Louise


Replies

 
Dmitriy Benyuk Dynamicweb Employee
Dmitriy Benyuk
Reply

Hi Marie,
the job fails as it can not find the existing DW groups. So it tries to find the existing DW group by Group Id first, then by Group Name and if it doesn't find it then the exception occurs.
If the checkbox "Create missing groups" is ON then the error will not be thrown and the new group with that Name will be created and relation established.
Can you check you have such group names in the DW db: "E_DIVERSE_TILBEH?R", "O-R_FEP-V", "E_O-RINGE" or set the "Create missing groups" to ON?
BR, Dmitrij

 
Marie Louise Veigert
Reply

Hi Dmitrij

'E_O-Ringe' exists. But for some reason it skips it because another product tried to be updated with a group which are not there. This group is 'E_Diverse'

So if I check "Create missing groups" will the 'E_O-Ringe' be created twice then?

 

BR Marie Louise

 
Dmitriy Benyuk Dynamicweb Employee
Dmitriy Benyuk
Reply

Hi Marie,

It looks like I took a wrong names (from Groups column) but you have ItemCategoryCode mapped to Groups so in the job log lines it has those values in the ItemCategoryCode column:
"MAALE_-,E_DIVERSE_TILBEH?R"

Can you check you have such groups "MAALE_-" and "E_DIVERSE_TILBEH?R" ?

If "Create missing groups" is checked and it can not find such a group then the new group will be created. So if "MAALE_-" exists but "E_DIVERSE_TILBEH?R" doesn't then only "E_DIVERSE_TILBEH?R" will be created.
The failed row log message includes whole source row fields
BR, Dmitrij

 
Marie Louise Veigert
Reply

Hi Dmitriy,

It doesnt exists. Its correct.

But the client doesnt want it to just be created, because it needs to be in the correct place in the group tree.

So we are thinking about if there could be extended to have a group where all failed will be placed instead and the client can "clean up". I don't know if thats possible?

BR, Marie Louise

 

You must be logged in to post in the forum