The following illustration shows the incoming purchase order and the resulting invoice flow through the supplier system.
Supplier system receives a purchase order and sends back an invoice
The supplier's XML Web service accepts the incoming purchase order. The XML Web service submits the PO to a BizTalk Messaging Services channel configured for PO processing. The SupplierReceivePO messaging port then activates a new instance of the XLANG schedule Supplier.skx, and delivers the document to the ReceivePOfromHub port on that XLANG schedule. The schedule contains some business logic to apply a simple approval process to the purchase order. For this scenario, the purchase order is automatically rejected if the total value is less than $300.00. If the PO.xml document is approved, it is sent to a component that transforms the purchase order into an invoice document. Then the invoice is sent to the SupplierSendInvoice channel for further processing. When the processing completes and the correlation information is written to a database, the invoice is sent back to the hub by means of an AIC that functions as a client to the hub's XML Web service.
Notes The transform component used in the supplier schedule simulates the function of a sales or accounting application that accepts purchase order documents and generates the corresponding invoice documents.
The transform component is written in C#, and is bound to the supplier XLANG schedule through the interop assembly for accessing managed code through COM.