A search request is performed on D365 BC to look for any unprocessed warehouse shipping records. If a sales order or transfer order record is found, it is parsed based on location code and the matching Outbound Route will be searched for. If there is a match, the D365 BC Warehouse Shipping Order JSON is translated to EDI 940 and sent to the trading partner.
This section explains the required configuration settings for the integration between D365 BC to retrieve the warehouse shipping records and transform the same to EDI X12 940 format for the trading partner's integration.
How to Configure
Configure the Process Scheduler: LaunchWarehouseShippingOrderPS is scheduled to run every hour; adjust if necessary. See Creating and Defining Process Schedules to learn more.
Configure the D365 BC application as follows:
- If the sales/transfer order is to be converted to EDI 940 and then sent to the third-party logistic partner from all the available sales/transfer orders in D365BC, then the custom field SalesOrder/CIC_940_Status or TransferOrder/CIC_940_Status should be configured with a value of Pending.
- Any second custom filter (ex: SOWHFilter = true) used to fetch sales/transfer orders to process as EDI 940 to third-party logistic partners must be decided by the customer.
Configure the Outbound Route.
- The warehouse location is noted in the warehouse shipping sales order source payload (and if the record is a transfer order) then transfer to code is used to identify the trading partner to whom the 940 should be sent to.
- If the record is a sales order, then warehouse location is used in the look-up against the table
D365_BC_Partnersto find the partner ID. If the trading partner name doesn't match the tpname during Project creation (via Wizard), the Outbound Route must be updated to reflect the matching name defined in _TP_940v4010SOOR. This object is found in the package
- If the record is a transfer order, then partner id is used in the look-up against the table
D365_BC_Partnersto find warehouse location. If trading partner name doesn't match the tpname during Project creation (via Wizard), the Outbound Route must be updated to reflect the matching name in the route _TP_940v4010TOOR. This object is found in the package
Configure the Enveloper. The X12 940 envelope details and the trading partner endpoint to which the X12 940 is to be sent should be configured in _TP_940v4010ENV - located in the trading partner project under the package
com.cleo._customer_.d365bc._tp_.outbound.n940.v4010. By default, the customer name and the trading partner name entered in the wizard-input.properties file (initial project creation) are added to the sender and receiver id, respectively. If there are any changes to the enveloping details, the _TP_940v4010ENV must be updated accordingly.
How to Run the Flow
- Before proceeding, ensure that the following Projects have been deployed. If any of these Projects are already deployed and remain unmodified, there is no need to redeploy them. Similarly, if any of these Projects were not checked out to your Workspace, they can be skipped from the deployment process.
- Run the flow either manually or automatically:
- Manually launch LaunchWarehouseShippingOrderBPS.bps.
- Automatically run LaunchWarehouseShippingOrderPS to execute the above Business Process based on the interval specified.
- Monitor the flow using the following:
- Log Entries (Studio Auditor)
- Message Tiles (Cockpit)
- Jobs (Cockpit)
- Dashboard > Charts (Cockpit)
- In case of errors
- A ticket is generated; information will also be visible in the Message and Job views in CIC Cockpit.
- For Outbound EDI validation use cases
- See Validation Rules in the Transformation Settings object for Outbound EDI validation rules.
How to Customize
- Change the intervals at which Item Fulfillment records are retrieved from the D365 BC. The LaunchWarehouseShippingOrderPS scheduler residing in
com.cleo._customer_.d365bc._tp_.outbound.n940.v4010package is configured to retrieve sales/transfer orders composite every hour by default. Change the schedule to run more frequently or less frequently.
- Add more details to the X12 940 from the D365 BC sales/transfer orders. The values being mapped are documented in the Integration Design Spec template -located in Project
com.cleo._customer_.edid365bcin the docs folder.
Note: If additional fields are required, you must update the ruleset _TP_940v4010RS - in
Contact Cleo support if you need assistance.