0

我正在尝试访问 MULESOFT 流中的父“记录 ID”(自动生成的 ID)并将其存储到 SalesForce 的子表中,并将该记录 ID 存储在一个变量中,并通过 DataWeave 转换将其传递给子表。我正在为这项任务使用一个流程。谁能告诉我如何获得父表记录 ID?谢谢。

这是我的流程配置。文件

<flow name="shoppingcartpocmcpostsfuserFlow">
        <http:listener config-ref="HTTP_Listener_Configuration" path="/customeruser" allowedMethods="POST" doc:name="HTTP"/>
        <object-to-byte-array-transformer doc:name="Object to Byte Array"/>
        <dw:transform-message doc:name="Transform Message" metadata:id="4851f81e-2a1b-4e5e-a34f-cc328e6dd23d">
            <dw:input-payload mimeType="application/json"/>
            <dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
[{
    Name: payload.ShoppingCartUser.ShoppingCartUserName,
    FirstName__c: payload.ShoppingCartUser.FirstName,
    LastName__c: payload.ShoppingCartUser.LastName,
    EmailID__c: payload.ShoppingCartUser.EmailID,
    PhoneNumber__c: payload.ShoppingCartUser.PhoneNumber,
    CompanyName__c: payload.ShoppingCartUser.Company,
    CustomerType__c: payload.ShoppingCartUser.Customer_Type
}]]]></dw:set-payload>
        </dw:transform-message>
        <sfdc:create config-ref="Salesforce__Basic_Authentication" type="MS_ShoppingCartUser__c" doc:name="Salesforce Connector for User Details">
            <sfdc:objects ref="#[payload]"/>
        </sfdc:create>
        <object-to-string-transformer doc:name="Object to String"/>
        <set-variable variableName="id" value="#[flowVars.id]" doc:name="Variable"/>
        <dw:transform-message doc:name="Transform Message for User Address" metadata:id="4851f81e-2a1b-4e5e-a34f-cc328e6dd23d">
            <dw:input-payload mimeType="application/json"/>
            <dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
[{
    AddressLine1__c: payload.ShoppingCartUser.AddressLine_1,
    AddressLine2__c: payload.ShoppingCartUser.AddressLine_2,
    CountyName__c: payload.ShoppingCartUser.County,
    City__c: payload.ShoppingCartUser.City,
    Country__c: payload.ShoppingCartUser.Country,
    State__c: payload.ShoppingCartUser.State,
    ZipCode__c: payload.ShoppingCartUser.Zipcode,
    EmailID__c: id
}]]]></dw:set-payload>
        </dw:transform-message>
        <sfdc:create config-ref="Salesforce__Basic_Authentication" type="MS_ShoppingCart__c" doc:name="Salesforce Connector for User Address">
            <sfdc:objects ref="#[payload]"/>
        </sfdc:create>
        <object-to-string-transformer doc:name="Object to String"/>
    </flow>
4

1 回答 1

0

sfdc:create操作将返回“结果” https://docs.mulesoft.com/connectors/salesforce/salesforce-connector-reference-96#Result

它有一个“Id”字段。您可以使用“payload.Id”访问该 ID

请注意,在您的示例中,您需要删除对象到字符串才能访问它。它还将覆盖您的有效负载。因此,如果您在第二次转换中需要相同的有效负载值,则需要使用丰富器。

于 2019-04-23T12:22:46.700 回答