2017-10-13 63 views
0

sharepointからsalesforceにファイルをアップロードする作業フローがあります。それはうまく動作します。セールスフォースにアップロードするファイルのサイズは10,000,000文字を超えていますか?

最近、salesforceのエンドで最大バッチ制限が存在するという問題が特定されました。つまり、1つのバッチには最大10,000,000文字が含まれています。 10,000,000以上の文字を含む大きなファイル。 Salesforceにアップロードできず、エラーが発生しました。

私は、Salesforceに10,000,000を超える文字を1つのバッチでアップロードする方法はありません。同期アップの問題が発生するため、ファイルの半分を1バッチで、もう半分を別のバッチで送信することはできません。

コード:

<enricher target="#[flowVars['jobInfo_upload']]" doc:name="Enricher jobId insert"> 
        <sfdc:create-job config-ref="SFA_NOL_SHAREPOINT" type="ContentVersion" concurrencyMode="Parallel" contentType="XML" operation="insert" doc:name="Create Job"/> 
       </enricher> 
       <expression-component doc:name="Expression to save jobid"><![CDATA[sessionVars.jobInfo_upload = flowVars.jobInfo_upload.id]]></expression-component> 
       <dw:transform-message metadata:id="1dec8ccb-75ec-4be9-933e-06eb92354eba" doc:name="Transform Message"> 
        <dw:set-payload><![CDATA[%dw 1.0 
%output application/java 
--- 
[{ 
    Title: flowVars.filename, 
    PathOnClient: flowVars.path, 
    TagCsv: "Sharepoint Version: " ++ flowVars.MajorVersion ++ "." ++ flowVars.MinorVersion, 
    VersionData: payload, 
    FirstPublishLocationId: flowVars.FirstPublishLocationId 
}]]]></dw:set-payload> 
       </dw:transform-message> 
       <sfdc:create-batch config-ref="SFA_NOL_SHAREPOINT" doc:name="Insert"> 
        <sfdc:job-info ref="#[flowVars.jobInfo_upload]"/> 
        <sfdc:objects ref="#[payload]"/> 
       </sfdc:create-batch> 

エラー:

09:51:01.348  10/13/2017  Worker-0  [apl-sfa-sharepoint-interface].batch-upload-simpleBatchFlow.stage1.17  ERROR 

******************************************************************************** 
Message    : Failed to invoke createBatch. Message payload is of type: ArrayList 
Type     : org.mule.api.MessagingException 
Code     : MULE_ERROR-29999 
JavaDoc    : http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/MessagingException.html 
Payload    : [{Title=Customer Presentation Deck_Template (October 2017).pptx, PathOnClient=/Users/dangnguyen/sharepoint/ Deck_Template.pptx, TagCsv=Sharepoint Version: 1.0, VersionData=UEsDBBQABgAIAAAAIQD9wUeU7QUAADV9AAATAAgCW0NvbnRlbnRfVHlwZXNdLnhtbCCiBAIooAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADMnU1v20YQhu8F+h8EXQuLH5IoKrCdQ... 
******************************************************************************** 
Exception stack is: 
1. ClientInputError : Failed to read request. Exceeded max size limit of 10000000 (com.sforce.async.AsyncApiException) 
    com.sforce.async.BulkConnection:180 (null) 
2. ClientInputError : Failed to read request. Exceeded max size limit of 10000000 (org.mule.modules.salesforce.exception.SalesforceException) 

答えて

0

バルクAPI自体の制限があります。データ・ロード用

https://www.salesforce.com/us/developer/docs/api_asynch/Content/asynch_api_concepts_limits.htm

バッチは大きくない10以下MBできる単一のCSVファイルまたはXMLファイルからなることができます。

バッチには最大10,000個のレコードを入れることができます。

バッチは、バッチ内のすべてのデータに対して最大10,000,000文字を含むことができます。

フィールドには、最大32,000文字を使用できます。

レコードには、最大5,000個のフィールドを含めることができます。

レコードには、すべてのフィールドに最大400,000文字を含めることができます。

バッチには内容が含まれている必要があります。そうでないとエラーが発生します。

したがって、入力ファイルをこれらの制限よりも小さいファイルに分割する必要があります。

+0

こんにちは、私はファイルを2つの部分に分割してsalesforceで更新すると、salesforceの2つの要求になるでしょうか? salesforceはそれを2つの異なるファイルとして扱います – Thiru