我们无法将数据从旅程构建器中传入的 Salesforce 对象提取到我们创建的自定义活动。我们已经遵循了文档 -> https://developer.salesforce.com/docs/atlas.en-us.noversion.mc-apis.meta/mc-apis/how-data-binding-works.htm(在"事件上下文"部分下(中指示的语法。
我们主要将Postmonger用于我们的自定义活动,并且在inArguments
下的config.json
中,我们输入如下内容以从Salesforce对象获取数据:
"fieldKey": "{{Event." + [ eventDefinitionKey ] + ".Task:Field_Name__c}}"
我们从通过触发Postmonger公开的requestedTriggerEventDefinition
加载的数据中获得eventDefinitionKey
。
上面生成的 inArguments 将是这样的:
"fieldKey": "{{Event.SalesforceObjacf28b016bf83c75b4926e0ec292eda5.Task:SMS_Content__c}}"
根据前面提到的文档,该语法应该足够了,但我们无法在自定义活动中检索它。
需要注意的另一件事是,如果条目对象是数据扩展插件,我们可以使用相同的语法获取信息,如下所示:
"fieldKey": "Event.DEAudience-e56d43c3-e2cf-60f1-fecd-ecf4d358d7b4.Field_Name"
上述使用数据扩展的语法是可以的,但带有Salesforce对象的语法则不行。
我们在这里做错了什么或完全不可能?
注意:通过在服务云中创建任务来触发旅程
我们在eventDefinitionKey和字段名称周围也放置了"
,它适用于Salesforce数据源。
像这样:
"fieldKey": '{{Event."SalesforceObjacf28b016bf83c75b4926e0ec292eda5"."Task:SMS_Content__c"}}'
请注意切换到单引号以及我们如何用双引号显式包装这些内部属性
更新 Oct 2020
请在此处查看此帖子,它允许您查看整个数据扩展的完整合并字段(无论它是什么类型(