0
我實現了一個批處理作業,該作業在同一個salesforce實例中進行web服務調用,然後應該發送帶有pdf附件的電子郵件,因爲您無法直接從批處理髮送pdf附件工作。我的Web服務調用看起來是這樣的:Salesforce:從Salesforce到Salesforce的SOAP登錄
public static void callOut(List ids){
InvoiceAttachmentConnector.InvoiceAttachmentService ws = new InvoiceAttachmentConnector.InvoiceAttachmentService();
ws.SessionHeader = new InvoiceAttachmentConnector.SessionHeader_element();
ws.SessionHeader.sessionId = UserInfo.getSessionId();
ws.handleInvoicePdfAttachment(ids);
}
但是在批作業UserInfo.getSessionId()返回null,因此我得到一個INVALID_SESSION_ID例外。
如何登錄獲取SessionId?到目前爲止,我沒有發現從salesforce登錄到salesforce的解決方案。如果你能幫助,我將不勝感激!謝謝!
我知道,這就是爲什麼我想找到另一種獲得會話ID的方法。必須有一種方法可以從apex代碼調用另一個salesforce webservice。如果你可以從apex調用一個sf web服務,那麼必須有登錄的可能性,並因此獲得一個會話id。 – Phil 2012-03-02 09:27:14
查看更新的答案。 – pbattisson 2012-03-02 12:30:58
上週我通過選項1瞭解了它。此鏈接http://developer.force.com/cookbook/recipe/calling-salesforce-web-services-using-apex幫助了我很多。我們需要使用批處理作業的原因是,我們希望將作業計劃爲自動將發票發送給客戶。 – Phil 2012-03-05 09:40:45