Hi,
In my system, one recipient has multiple source id which has different addresses attached to each source id.
I have a requirement of creating target mapping which should log the data into same Recipient delivery log (SourceID is already a existing column in Recipient delivery log) using sourceId as target dimension.
I have created the new target mapping without using linked data , reason if i use linked data to recipient any one address is picked and some time discarded by delivery because of no address populated against one of sourceId.
Other changes i have done is below:
Change in Recipient delivery log
<element integrity="normal" label="Source system" name="sourcesystem" noDbIndex="true" revIntegrity="normal"
revLabel="Recipient delivery logs" revLink="broadLog" target="av:sourcesystem"
type="link">
<join xpath-dst="@sourceId" xpath-src="@sourceId"/>
</element>
Now when i created new mapping and run campaign getting below failure message:
Configuration error: no link is defined to reach the targeting dimension 'ad:Source' from the custom delivery logs schema 'nms:broadLogRcp'.
------
XSV-350000 Unable to load document of identifier 'temp:forecastLog' and type 'xtk:schema'.
XSV-350000 Unable to load document of identifier 'temp:forecastLog' and type 'xtk:schema'.
------
error in delivery appears:
XSV-350122 An error occurred and the process has been stopped. SOP-330011 Error while executing the method 'PrepareMessage' of service 'nms:delivery'. SOP-330011 Error while executing the method 'PrepareMessageImpl' of service 'nms:delivery'. THEN 6 ELSE 0 END, CASE WHEN BL.iFailureReason = 127 THEN 8 WHEN BL.sTargetCode = E'__MAIN__' THEN 0 WHEN BL.sTargetCode = E'__BAT__' THEN 2 ELSE 4 END, GetDate(), GetDate(), BL.iMsgId, BL.sEventType,BL.iEventId,BL.sSegmentCode,
SQL log :
06/11/2017 13:46:47 delivery SQL: INSERT INTO wkf75845879_28_1_ALL(isourceID,iDeliveryId ) SELECT isourceID,75894670 FROM wkf75845879_27_1
06/11/2017 13:46:47 delivery SQL:... autovacuum_enabled=FALSE, toast.autovacuum_enabled=FALSE);
06/11/2017 13:46:47 delivery SQL: -- Log: Creating table 'wkf75845879_28_1_ALL' SELECT DropTableIfExists('wkf75845879_28_1_ALL'); CREATE UNLOGGED TABLE wkf75845879_28_1_ALL( iDeliveryId INTEGER NOT NULL Default 0, isourceID INTEGER Default 0, iTargetDataId SERIAL ) WITH (
WDB-200001 SQL statement 'INSERT INTO NmsBroadLogRcp (iBroadLogId, iDeliveryId, sAddress, iStatus, iFlags, tsEvent, tsLastModified, iMsgId, sEventType,iEventId,sSegmentCode,irecipientId,iSourceId,iStreetAddId,iCommonId,iSegmentId,iListId,iSourceId ) SELECT BL.iMessageId, 75894670, JuxtWords(BL.sLine1,E' ')||JuxtWords(BL.sLine2,E' ')||JuxtWords(BL.sLine3,E' ')||JuxtWords(BL.sLine4,E' ')||JuxtWords(BL.sLine5,E' ')||JuxtWords(BL.sLine6,E' ')||Coalesce(BL.sLine7,E''), CASE WHEN BL.iFailureReason
PGS-220000 PostgreSQL error: ERROR: column "iSourceId" specified more than once LINE 1: ...yId,iStreetAddressId,iCommonId,iSegmentId,iListId,iSourceId )... ^
can see in SQL sourceID is appearing twice in sql statement
can some one help.
thanks,
Kaushal
Views
Replies
Total Likes
Hello Kaushal,
I suggest you an alternative, that we choose to implement and it works fine, because mostly based on standard/factory Adobe Campaign default tables: using NmsSubscription, services can either your sources or other notions, and so you achieve your delivery targetting by using the standard subscription mechanism.
The only custom thing to do is to add an email address field to the NmsSubscription table and optin field to manage the delivery correctly, depending on your targeting.
Regards.
J-Serge
Views
Replies
Total Likes
Hi Kaushal,
Please may you do a test with the @addressSpecific element of nms:subscription, even if you let the optin at contact level (nms:recipient)?
So you test by creating a service for each av:sourcesystem or ad:source (you mention both schemas, so I wonder which is correct).
Regards.
J-Serge
Views
Replies
Total Likes
Hi Kaushal,
Did you try what Jean-Serge suggested?
Let us know,
Florent
Views
Replies
Total Likes