我有流量,我使用salesforce连接器创建一个作业和许多批次在同一个工作。每个批次在salesforce中插入1000条记录。
我想知道salesforce批次信息是仅在salesforce中完成批处理后返回流程,还是在salesforce中创建批处理后很快返回批处理信息。
完成我的设计需要以上信息。
提前谢谢。
答案 0 :(得分:1)
连接器中的批处理作业几乎会立即以其初始状态返回BatchInfo。完成的批次永远不会与Mule通信。但检查批次是否完成等的一种方法是使用sfdc:batch-info
查询批次的状态并进行检查。例如:
<until-successful objectStore-ref="tempStore"
maxRetries="60" secondsBetweenRetries="60"
failureExpression="payload.state == 'Queued' || payload.state == 'InProgress'"
doc:name="Until Successful">
<sfdc:batch-info doc:name="Check Batch" config-ref="Salesforce">
<sfdc:batch-info apexProcessingTime="#[payload.apexProcessingTime]"
apiActiveProcessingTime="#[payload.apiActiveProcessingTime]"
createdDate="#[payload.createdDate]" id="#[payload.id]" jobId="#[payload.jobId]"
numberRecordsFailed="#[payload.numberRecordsFailed]"
numberRecordsProcessed="#[payload.numberRecordsProcessed]" state="#[payload.state]"
stateMessage="#[payload.stateMessage]" systemModstamp="#[payload.systemModstamp]"
totalProcessingTime="#[payload.totalProcessingTime]" />
</sfdc:batch-info>
</until-successful>