Message de-batching is very common in integration scenarios. In BizTalk, de-batching can happen either in receive pipeline or in an orchestration. If anything were to go wrong with individual transactions, functional support team should be able to trace back to the original batch and find out the root cause.
An enterprise-grade end to end monitoring tools like Atomic Scope must provide various capabilities in handling de-batching scenarios. First of all they should allow users to track the activities of the batch message and then allow archival of the batch message. They should add the ability to link all the de-batched messages to their parent batch, finally allowing de-batched messages to progress with their individual activities.
In this blog, I am explaining how Atomic Scope allows users to achieve the objectives mentioned above. We released de-batching capability in version 2.0 of the product. Refer the article whats new in version 2.0 to know all new features in Atomic Scope.
EDI de-batching scenario
For EDI messages de-batching takes place in disassemble stage of the receive pipeline. Consider a scenario in which you receive an EDI batch containing two distinct types of transactions Invoice and Orders. To facilitate this scenario we need to define three different transactions in AtomicScope Portal.
Step 1: Create EdiBatch Transaction
EdiBatch transaction represents the journey of the received batch. Since de-batching happens in the receive pipeline, it contains only one stage called EdiBatchReceive. The stage EdiBatchReceive corresponds to pre- disassembly stage in receive pipeline. we need to track a search property BatchId before the disassembly stage. This can be configured in Atomic Scope portal as shown below.
To know how to configure a search property please visit documentation. Pipeline component configuration corresponding to EDIBatch stage is as shown below.
Step 2: Create EDInvoice transaction
This transaction represents the journey of invoice message. The transaction needs to be mapped with correct message type as shown below to resolve transaction dynamically. Checkout our documentation to know furthermore on dynamic transaction resolution
The first stage of the transaction EDIInvoice must be marked as a de-batching stage. This ensures that a new activity is created for individual transactions such as EDIOrder or EDIInvoice when a message enters this stage.
Pipeline component configuration corresponding to ReceiveEDI stage is as shown below.
Step 3: Create EDIOrder transaction
The order is another message which will be part of the EDI batch. Hence we need to create a new transaction for EDIOrder in atomic scope portal. Follow the steps in above section to configure EDIOrder transaction.
Since the same pipeline is receiving both order and invoice in a batch, the receive pipeline configuration will remain unchanged from step 2.
Note: All transaction names and stage names are completely configurable and users have full flexibility to define them based on their needs.
Tracking UI provides clear visibility on de-batching scenarios to the functional support team with following capabilities.
- Distinguishes the de-batched messages: An icon on the leftmost column of the grid indicates each transaction as a detached message.
- Correlate de-batched messages: You will be able to view all the transactions belonging to a single batch using the context menu on the rightmost side of the grid.
- Download the batch message: You will also be able to download the batch message from the context menu as shown below
When users click on individual transactions, they will be able to view end to end flows as below.
Atomic Scope solves few important problems which integration support teams faced traditionally. First They struggled to correlate all the transactions in a batch message. Second It was difficult to track back the issues occurring in individual transactions.
Atomic Scope also supports orchestration based de-batching scenarios. (refer documentation here). If you want to try out the product please contact us at firstname.lastname@example.org. We can provide you a demo of all Atomic Scope features and also can help you with a trial key.