on 07-23-2018 5:07 PM - last edited on 02-04-2024 6:28 AM by postmig_api_4
Hello Experts,I am getting an error in datahub when creating Employee as a target type using DEBMAS,ADR3MAS and ADRMAS.I have created the different Raw,Canonical and Target type for Employee. I am differentiating B2Bcustomer and Employee on the basis of tag "KTOKD" present in DEBMAS.The impex is generated of Employee but only the values of ADR3MAS are stored and not the DEBMAS.I want both the DEBMAS and ADR3MAS data to get stored in Employee . In log it is giving the error "Could not transform by expression resolve('CanonicalParty').externalPartyId". While running the IDOC(DEBMAS,ADR3MAS and ADRMAS) from Rest Client I am getting this error. [ERROR] [c.h.d.s.p.i.DefaultCanonicalToTargetItemConverterService] Failed to create a target item from CanonicalItem{id='20', integrationKey='0020433012_KNA1|0000233254_KNVK|HAS_CONTACT_PERSON', status=SUCCESS, dataPool='DataHubPoolEntity{id=9301, name=SAPCUSTOMER_INBOUND_POOL}', batchId=0000000766743767|ZTE6100|ADR3MAS03, traceId=75f534ba-06e3-332c-a6b4-44a848a090dd, uuid=946eaf37-68cc-4a76-aeb2-7b16b0532a03, documentId=0020433012_KNA1, fields='{relationshipType=HAS_CONTACT_PERSON, relatedPartyId=0000233254_KNVK, partyId=0020433012_KNA1}'} Could anyone please guide me for this error.
The error indicates that no CanonicalParty item found with value of its integration key equal to '0020433012_KNA1|0000233254_KNVK|HAS_CONTACT_PERSON'. It's hard to say why, especially because I don't know the business case. Possible reasons are:
CanonicalParty indeed was not loaded and does not exist
CanonicalParty has a different integration key (the context item has a complex integration key consisting of three attributes marked as primary key). Same is expected from CanonicalParty - conceptually same fields in the same order.
Select all integration keys from CanonicalParty and see 1) if the way they look makes sense 2) the values and order matches the key value in the exception.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thankyou for your response Slava. The business case is we have to create Employee on the basis of different "KTOKD" tag which is present in DEBMAS .Actually we don't want to create the Canonical Party for "Employee" type. I have created different flow for Employee Type based on different "KTOKD", but I don't have any idea that why it is calling Canonical Party.I have tried removing the dependency of "sapcustomer-raw" but its giving the same error.
Please find the code snippet.-- For KTOKD "Z010" and "Z013" we have created different channels, service activator,mapping services link textlink text
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
If you don't need to publish CanonicalParty and don't have it, try to override the target attribute that has resolve('CanonicalParty').externalPartyId
expression. Details are here. https://help.hybris.com/6.7.0/hcd/d20e0c9523754493b38e19d3be28ec64.html
Instead of override='true' just specify disabled='true'. That way the target item will not have the attribute and will not run the expression that is failing.
User | Count |
---|---|
5 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 | |
1 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.