次の例は、Retrieve Multiple 操作を使用して、データを受け入れ、結果を JSON 形式で出力する Microsoft Dynamics 365 for Finance and Operations 用 Anypoint Connector (Microsoft Dynamics 365 for Operations Connector) の操作方法を示しています。
この例では、フローで次の操作を使用します。
-
HTTP Listener
HTTP 要求からデータを受け取ります。 -
Microsoft Dynamics 365 for Operations Retrieve multiple
接続し、顧客のエンティティをすべて取得するクエリを実行します。 -
Transform Message
Retrieve Multiple 操作の結果を JSON 形式で出力します。
次のスクリーンショットは、この例の Studio アプリケーションフローを示しています。
プロパティファイルを使用して、フローで使用する次の属性を定義します。
-
username="${operations.username}" -
password="${operations.password}" -
resource="${operations.resource}" -
clientId="${operations.client_id}" -
clientSecret="${operations.client_secret}" -
tokenRequestEndpoint="${operations.request_endpoint}"
次の XML コードを Anypoint Studio に貼り付けて、フローを試してください。
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns:ee="http://www.mulesoft.org/schema/mule/ee/core"
xmlns:dynamics365ForOperations="http://www.mulesoft.org/schema/mule/dynamics365ForOperations"
xmlns:http="http://www.mulesoft.org/schema/mule/http"
xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:doc="http://www.mulesoft.org/schema/mule/documentation"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/ee/core
http://www.mulesoft.org/schema/mule/ee/core/current/mule-ee.xsd
http://www.mulesoft.org/schema/mule/core
http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/http
http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd
http://www.mulesoft.org/schema/mule/dynamics365ForOperations
http://www.mulesoft.org/schema/mule/dynamics365ForOperations/current/mule-dynamics365ForOperations.xsd">
<http:listener-config name="HTTP_Listener_config" doc:name="HTTP Listener config">
<http:listener-connection
host="localhost"
port="8081" />
</http:listener-config>
<dynamics365ForOperations:dynamics-365-for-operations-config
name="Dynamics_365_For_Operations_Dynamics_365_for_operations"
doc:name="Dynamics 365 For Operations Dynamics 365 for operations">
<dynamics365ForOperations:oauth2-user-password-connection
username="USERNAME"
password="PASSWORD"
resource="https://muledev.sandbox.operations.dynamics.com"
clientId="CLIENT_ID"
clientSecret="CLIENT_SECRET"
tokenRequestEndpoint="https://login.windows.net/TOKEN/oauth2/token" />
</dynamics365ForOperations:dynamics-365-for-operations-config>
<dynamics365ForOperations:dynamics-365-for-operations-config
name="Dynamics_365_For_Operations_Dynamics_365_for_operations1"
doc:name="Dynamics 365 For Operations Dynamics 365 for operations">
<dynamics365ForOperations:oauth2-user-password-connection
username="${operations.username}"
password="${operations.password}"
resource="${operations.resource}"
clientId="${operations.client_id}"
clientSecret="${operations.client_secret}"
tokenRequestEndpoint="${operations.request_endpoint}" />
</dynamics365ForOperations:dynamics-365-for-operations-config>
<flow name="dynamics-op-testFlow">
<http:listener doc:name="Listener" config-ref="HTTP_Listener_config" path="/retrieve" />
<dynamics365ForOperations:retrieve-multiple doc:name="Retrieve multiple"
config-ref="Dynamics_365_For_Operations_Dynamics_365_for_operations1">
<dynamics365ForOperations:data-query-url ><![CDATA[https://muledev.sandbox.operations.dynamics.com/data/Customers]]></dynamics365ForOperations:data-query-url>
</dynamics365ForOperations:retrieve-multiple>
<ee:transform doc:name="Transform Message">
<ee:message >
<ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
payload]]></ee:set-payload>
</ee:message>
</ee:transform>
</flow>
</mule>