在 Jitterbit 中,我创建了一个使用 SOQL Parent to Child 查询从 Salesforce 检索数据的操作。这实际上是一个左外连接,并且在测试中返回预期的数据。然后,我将该数据集转换为插入到 SQL 服务器表中。然而,在转换中,当子对象没有返回数据时,它有效地消除了记录。Transform 源不会将返回的字段显示为单个字段集,而是将子对象(具有自己的字段)显示为父对象的子集。只有在父子节点中有可用数据时,它才会完成转换。无论孩子的内容如何(因此表现得像预期的外部连接),我如何才能让转换在每个父源记录上执行。
为了清楚起见,SOQL 在 Salesforce 工作台中按预期执行,所以这是我试图改变的转换中的行为?注意我尝试在转换的目标端使用 Jitterbit 脚本 IfEmpty 语句,但没有成功。
SOQL 代码如下
SELECT
Id,
Current_Age__c,
IsDeleted,
PEPi_ID__c,
Student_Number__c,
CreatedDate,
LastModifiedDate,
Emergency_Contact_Name__c,
Emergency_Contact_Home_Phone__c,
Emergency_Contact_Mobile_Phone__c,
Emergency_Contact_Email_Address__c,
( SELECT Property_Building_Name__c,
Flat_Unit_No__c,
hed__MailingStreet__c,
hed__MailingStreet2__c,
hed__MailingCity__c,
hed__MailingState__c,
hed__MailingPostalCode__c,
hed__MailingCountry__c
FROM hed__Addresses__r WHERE hed__Address_Type__c LIKE 'EMERGENCY%')
FROM Contact WHERE IsDeleted = false