2017-03-08 54 views
0

我試圖對salesforce執行刪除操作,但得到錯誤消息「java.lang.ArrayStoreException」是什麼意思。如何在Mule中對Salesforce執行刪除操作?

任何人都可以解釋如何執行刪除操作?我的代碼是

<flow name="z_testFlow2" processingStrategy="synchronous"> 
    <poll doc:name="Poll"> 
     <fixed-frequency-scheduler frequency="10" startDelay="5" timeUnit="SECONDS"/> 
     <echo-component doc:name="Echo"/> 
    </poll> 
    <dw:transform-message doc:name="Transform Message"> 
<dw:set-payload><![CDATA[%dw 1.0 %output application/java 
--- 
[{ 
Name:"Thir9" 
}]]]></dw:set-payload> 
    </dw:transform-message> 
    <sfdc:delete config-ref="Salesforce__Basic_Authentication" doc:name="Salesforce"/> 
     <logger message="hi.......... #[payload]" level="INFO" doc:name="Logger"/> 
    </flow> 
+0

你應該把元素的ID是刪除 – Abhay

回答

0

選擇在銷售力連接器選項「操作」和寫SQL查詢刪除操作

1

刪除操作預計含有的ID字符串數組(例如[「1」, 「2」, 「3」, 「4」])

一些考慮:

1)默認的輸入將被從有效載荷採取(#[有效載荷]),在這種情況下,必須將ID列表先前設置爲有效負載

<dw:transform-message doc:name="Transform Message"> 
    <dw:set-payload> 
    <![CDATA[ 
    %dw 1.0 
    %output application/java 
    --- 
    ["1","2","3","4","5","6"] 
    ]]> 
</dw:set-payload> 
</dw:transform-message> 

<sfdc:delete config-ref="Salesforce__Basic_Authentication" doc:name="Salesforce" /> 

2)您可以更改默認表達式,從不同的地方獲取id(例如,從flowVar)

<sfdc:delete config-ref="Salesforce__Basic_Authentication" doc:name="Salesforce" > 
    <sfdc:ids ref="#[flowVars.myListOfIds]"/> 
</sfdc:delete> 

3)可以指定-manually的ID被刪除

<sfdc:delete config-ref="Salesforce__Basic_Authentication" doc:name="Salesforce" > 
    <sfdc:ids> 
     <sfdc:id>123</sfdc:id> 
     <sfdc:id>666</sfdc:id> 
    </sfdc:ids> 
</sfdc:delete> 
1

步驟1:使用SELECT查詢來查找記錄。例如:SELECT Id FROM employee

第2步:設置有效載荷,並把這樣的ID:#[[payload.Id]]

第3步:然後使用刪除操作下面的表達式:#[payload]

相關問題