Skip to content

Commit f53b2da

Browse files
author
ecfan
committed
Draft updates
1 parent 1ffb75f commit f53b2da

File tree

3 files changed

+227
-44
lines changed

3 files changed

+227
-44
lines changed

articles/logic-apps/monitor-track-b2b-transactions-standard.md

Lines changed: 0 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -134,25 +134,7 @@ For tracking to work correctly, make sure that all the following conditions are
134134

135135
:::image type="content" source="media/monitor-track-b2b-transactions/example-x12-message-details.png" alt-text="Screenshot shows Premium integration account with B2B tracking selected, and a table with details about collected X12 messages.":::
136136

137-
## Message properties
138137

139-
The following tables list the properties available for each message type that B2B currently supports:
140-
141-
### AS2 message properties
142-
143-
| Column name | Expanded name |
144-
|-------------|---------------|
145-
| **AgreementName**| Agreement name |
146-
| **SenderParternerName** | Sender partner |
147-
| **ReceiverPartnerName** | Receiver partner |
148-
| **MessageStatus** | Message status |
149-
| **MessageDirection** | Message direction (**`send`** or **`receive`**) |
150-
| **MessageTime** | Message time |
151-
| **MessageClientTrackingId** | Message client tracking ID |
152-
| **MessageId** | Message ID from the message header |
153-
| **IsMdnExpected** | Is a Message Disposition Notification (MDN) expected (**`true`** or **`false`**) |
154-
| **AckStatus** | Acknowledgment status |
155-
| **CorrelationMessageId** | An ID that correlates the message with an MDN |
156138

157139
For more information about the JSON schema for these properties, see [Table schemas for tracking B2B transactions](tracking-table-schemas-standard.md).
158140

articles/logic-apps/tracking-schemas-consumption.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -321,13 +321,13 @@ The following table describes the attributes in a tracking schema for an X12 int
321321
| **`isaSegment`** | No | String | The ISA segment for the X12 message |
322322
| **`isMessageFailed`** | Yes | Boolean | Whether the X12 message failed |
323323
| **`isTechnicalAcknowledgmentExpected`** | Yes | Boolean | Whether the technical acknowledgment is configured in the X12 agreement |
324-
| *`isa09`** | No | String | X12 document interchange date |
325-
| *`isa10`** | No | String | X12 document interchange time |
326-
| *`isa11`** | No | String | X12 interchange control standards identifier |
327-
| *`isa12`** | No | String | X12 interchange control version number |
328-
| *`isa14`** | No | String | X12 acknowledgment is requested |
329-
| *`isa15`** | No | String | Indicator for test or production |
330-
| *`isa16`** | No | String | Element separator |
324+
| **`isa09`** | No | String | X12 document interchange date |
325+
| **`isa10`** | No | String | X12 document interchange time |
326+
| **`isa11`** | No | String | X12 interchange control standards identifier |
327+
| **`isa12`** | No | String | X12 interchange control version number |
328+
| **`isa14`** | No | String | X12 acknowledgment is requested |
329+
| **`isa15`** | No | String | Indicator for test or production |
330+
| **`isa16`** | No | String | Element separator |
331331

332332
<a name="x12-interchange-acknowledgment"></a>
333333

@@ -437,7 +437,7 @@ The following table describes the attributes in a tracking schema for an X12 fun
437437
| **`isFunctionalAcknowledgmentExpected`** | Yes | Boolean | Whether the functional acknowledgment is configured in the X12 agreement |
438438
| **`isMessageFailed`** | Yes | Boolean | Whether the X12 message failed |
439439
| **`isTechnicalAcknowledgmentExpected`** | Yes | Boolean | Whether the technical acknowledgment is configured in the X12 agreement |
440-
| **`gs01`** | No | String | Functional identifier code |
440+
| **`gs01`** | No | String | Functional group identifier code |
441441
| **`gs02`** | No | String | Application sender code |
442442
| **`gs03`** | No | String | Application receiver code |
443443
| **`gs04`** | No | String | Functional group date |
@@ -494,7 +494,7 @@ The following table describes the attributes in a tracking schema for an X12 fun
494494
| **`direction`** | Yes | Enum | Message flow direction, which is either **`send`** or **`receive`** |
495495
| **`functionalGroupControlNumber`** | No | String | Functional group control number for the technical acknowledgment. This value populates for the sender when a technical acknowledgment is received from partners. |
496496
| **`gsSegment`** | No | String | Same as **`functionalGrouControlNumber`**, but populates only in specific cases |
497-
| **`interchangeControlNumber`** | No | String | Interchange control number, which populates for the sender when a technical acknowledgment is received from partners |
497+
| **`interchangeControlNumber`** | No | String | Interchange control number. This value populates for the sender when a technical acknowledgment is received from partners. |
498498
| **`isaSegment`** | No | String | Same as **interchangeControlNumber**, but populates only in specific cases |
499499
| **`isFunctionalAcknowledgmentExpected`** | Yes | Boolean | Whether the functional acknowledgment is configured in the X12 agreement |
500500
| **`isMessageFailed`** | Yes | Boolean | Whether the X12 message failed |

articles/logic-apps/tracking-schemas-standard.md

Lines changed: 218 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@ ms.date: 03/07/2025
1414

1515
Azure Logic Apps includes built-in tracking that you can enable for parts of your Standard workflow. To help you monitor the successful delivery or receipt, errors, and properties for business-to-business (B2B) messages, this guide helps you better understand the tables that store B2B tracking data for your transactions.
1616

17-
> [!NOTE]
18-
> ### WorkflowRunOperationInfo type Uses a specific JSON schema
19-
2017
<a name="as2-table"></a>
2118

2219
## AS2 tracking table - AS2TrackRecords
@@ -29,14 +26,14 @@ The Azure Database Explorer table named **AS2TrackRecords** stores all AS2 track
2926
IntegrationAccountResourceGroup: string, // Resource group for the integration account.
3027
IntegrationAccountName: string, // Name for the integration account.
3128
IntegrationAccountId: string, // ID for the integration account.
32-
WorkflowRunOperationInfo: dynamic, // Operation information for the workflow run.
29+
WorkflowRunOperationInfo: dynamic, // Operation information for the workflow run. This dynamic type uses a specific JSON schema.
3330
ClientRequestId: string, // Client request ID.
3431
EventTime: datetime, // Time of the event.
3532
Error: dynamic, // Error, if any.
3633
RecordType: string, // Type of tracking record.
3734
Direction: string, // Message flow direction, which is either 'send' or 'receive'.
3835
IsMessageFailed: bool, // Whether the AS2 message failed.
39-
MessageProperties: dynamic, // Message properties.
36+
MessageProperties: dynamic, // Message properties. This dynamic type uses different schema based on the tracking record type.
4037
AdditionalProperties: dynamic, // Additional properties.
4138
TrackingId: string, // Custom tracking ID, if any.
4239
AgreementName: string, // Name for the AS2 agreement that resolves the messages.
@@ -51,9 +48,22 @@ The Azure Database Explorer table named **AS2TrackRecords** stores all AS2 track
5148
)
5249
```
5350

54-
### AS2 tracking record - MessageProperties type
51+
> [!NOTE]
52+
>
53+
> The **WorkflowRunOperationInfo** table column has a **dynamic** type structure,
54+
> which uses a specific JSON schema. The **MessageProperties** table column also
55+
> has a **dynamic** type structure, but uses different JSON schema, based on the
56+
> tracking record type. For more information, see the following sections:
57+
>
58+
> - [WorkflowRunOperationInfo schema](#workflow-run-operation-schema)
59+
> - [AS2 tracking record - MessageProperties schemas](#as2-message-properties)
60+
> - [X12 tracking record - MessageProperties schemas](#x12-message-properties)
61+
62+
<a name="as2-message-properties"></a>
63+
64+
### AS2 tracking record - MessageProperties schemas
5565

56-
The **MessageProperties** column has a **dynamic** type structure, which uses a different JSON schema based on the tracking record type.
66+
The **MessageProperties** table column has a **dynamic** type structure that uses different JSON schema, based on the tracking record type.
5767

5868
#### AS2 message - MessageProperties schema
5969

@@ -167,9 +177,11 @@ The Azure Database Explorer table named **EdiTrackRecords** stores all X12 track
167177
)
168178
```
169179

170-
### X12 tracking record - MessageProperties type
180+
<a name="x12-message-properties"></a>
181+
182+
### X12 tracking record - MessageProperties schemas
171183

172-
The **MessageProperties** column has a **dynamic** type structure, which uses the following corresponding JSON schema, based on the tracking record type.
184+
The **MessageProperties** table column has a **dynamic** type structure that uses different JSON schema, based on the tracking record type.
173185

174186
#### X12 transaction set - MessageProperties schema
175187

@@ -229,8 +241,8 @@ The **MessageProperties** column has a **dynamic** type structure, which uses th
229241
| **respondingFunctionalGroupId** | String | Control number for the responding functional group |
230242
| **respondingTransactionSetId** | String | ID for the responding functional group that maps to AK101 in the acknowledgment |
231243
| **statusCode** | Boolean | Acknowledgment status code for the transaction set |
232-
| **processingStatus** | Enum | Processing status for the acknowledgment with these permitted values: **`Received`**, **`Generated`**, and **`Sent`** |
233-
| **correlationMessageId** | String | Message correlation ID, which combines these values: {**AgreementName**}{**FunctionalGroupControlNumber**}{**TransactionSetControlNumber**} |
244+
| **processingStatus** | Enum | Acknowledgment processing status with these permitted values: **`Received`**, **`Generated`**, and **`Sent`** |
245+
| **correlationMessageId** | String | Message correlation ID, which combines these values: {**AgreementName**}{**InterchangeORFunctionalGroupControlNumber**}{**TransactionSetControlNumber**} |
234246
| **isMessageFailed** | String | Whether the X12 message failed |
235247

236248
#### X12 interchange - MessageProperties schema
@@ -254,15 +266,204 @@ The **MessageProperties** column has a **dynamic** type structure, which uses th
254266
| Property | Type | Description |
255267
|----------|------|-------------|
256268
| **direction** | Enum | Message flow direction (**`send`** or **`receive`**) |
257-
| **interchangeControlNumber** | String | Interchange control number |
258-
| **transactionSetControlNumber** | String | Control number for the transaction set |
259-
| **correlationMessageId** | String | Message correlation ID, which combines these values: {**AgreementName**}{**FunctionalGroupControlNumber**}{**TransactionSetControlNumber**} |
260-
| **messageType** | String | Transaction set or document type |
269+
| **interchangeControlNumber** | String | Control number for the interchange |
270+
| **isTechnicalAcknowledgmentExpected** | Boolean | Whether the technical acknowledgment is configured in the X12 agreement |
271+
| **isMessageFailed** | Boolean | Whether the X12 message failed |
272+
| **isa09** | String | X12 document interchange date |
273+
| **isa10** | String | X12 document interchange time |
274+
| **isa11** | String | X12 interchange control standards identifier |
275+
| **isa12** | String | X12 interchange control version number |
276+
| **isa14** | String | X12 acknowledgment is requested |
277+
| **isa15** | String | Indicator for test or production |
278+
| **isa16** | String | Element separator |
279+
280+
#### X12 interchange acknowledgment - MessageProperties schema
281+
282+
```json
283+
{
284+
"direction": "",
285+
"interchangeControlNumber": "",
286+
"respondingInterchangeControlNumber": "",
287+
"isMessageFailed": "",
288+
"statusCode": "",
289+
"processingStatus": "",
290+
"ta102": "",
291+
"ta103": "",
292+
"ta105": ""
293+
}
294+
```
295+
296+
| Property | Type | Description |
297+
|----------|------|-------------|
298+
| **direction** | Enum | Message flow direction (**`send`** or **`receive`**) |
299+
| **interchangeControlNumber** | String | Interchange control number for the technical acknowledgment that is received from partners |
261300
| **isMessageFailed** | Boolean | Whether the X12 message failed |
301+
| **statusCode** | Boolean | Interchange acknowledgment status code with these permitted values: **`Accepted`**, **`Rejected`**, and **`AcceptedWithErrors`** |
302+
| **processingStatus** | Enum | Acknowledgment processing status with these permitted values: **`Received`**, **`Generated`**, and **`Sent`** |
303+
| **ta102** | String | Interchange date |
304+
| **ta103** | String | Interchange time |
305+
| **ta103** | String | Interchange note code |
306+
307+
#### X12 functional group - MessageProperties schema
308+
309+
```json
310+
{
311+
"direction": "",
312+
"interchangeControlNumber": "",
313+
"functionalGroupControlNumber": "",
314+
"isTechnicalAcknowledgmentExpected": "",
315+
"isFunctionalAcknowledgmentExpected": "",
316+
"isMessageFailed": "",
317+
"gs01": "",
318+
"gs02": "",
319+
"gs03": "",
320+
"gs04": "",
321+
"gs05": "",
322+
"gs07": "",
323+
"gs08": ""
324+
}
325+
```
326+
327+
| Property | Type | Description |
328+
|----------|------|-------------|
329+
| **direction** | Enum | Message flow direction (**`send`** or **`receive`**) |
330+
| **interchangeControlNumber** | String | Control number for the interchange |
331+
| **functionalGroupControlNumber** | String | Control number for the functional group |
262332
| **isTechnicalAcknowledgmentExpected** | Boolean | Whether the technical acknowledgment is configured in the X12 agreement |
263333
| **isFunctionalAcknowledgmentExpected** | Boolean | Whether the functional acknowledgment is configured in the X12 agreement |
264-
| **needAk2LoopForValidMessages** | Boolean | Whether the AK2 loop is required for a valid message |
265-
| **segmentsCount** | Integer | Number of segments in the X12 transaction set |
334+
| **isMessageFailed** | Boolean | Whether the X12 message failed |
335+
| **gs01** | String | Functional group identifier code |
336+
| **gs02** | String | Application sender code |
337+
| **gs03** | String | Application receiver code |
338+
| **gs04** | String | Functional group date |
339+
| **gs05** | String | Functional group time |
340+
| **gs07** | String | Responsible agency code |
341+
| **gs08** | String | Identifier code for the version, release, or industry |
342+
343+
#### X12 functional group acknowledgment - MessageProperties schema
344+
345+
```json
346+
{
347+
"direction": "",
348+
"interchangeControlNumber": "",
349+
"functionalGroupControlNumber": "",
350+
"respondingFunctionalGroupControlNumber": "",
351+
"respondingFunctionalGroupId": "",
352+
"isMessageFailed": "",
353+
"statusCode": "",
354+
"processingStatus": "",
355+
"ak903": "",
356+
"ak904": "",
357+
}
358+
```
359+
360+
| Property | Type | Description |
361+
|----------|------|-------------|
362+
| **direction** | Enum | Message flow direction (**`send`** or **`receive`**) |
363+
| **interchangeControlNumber** | String | Control number for the interchange. This value populates for the sender when a technical acknowledgment is received from partners. |
364+
| **functionalGroupControlNumber** | String | Control number for the functional group |
365+
| **respondingFunctionalGroupControlNumber** | String | Control number for the original functional group |
366+
| **respondingFunctionalGroupId** | String | Maps to AK101 in the acknowledgment functional group ID |
367+
| **statusCode** | Enum | Acknowledgment status code with these permitted values: **`Accepted`**, **`Rejected`**, and **`AcceptedWithErrors`** |
368+
| **processingStatus** | String | Acknowledgment processing status with these permitted values: **`Received`**, **`Generated`**, and **`Sent`** |
369+
| **ak903** | String | Number of received transaction sets |
370+
| **ak903** | String | Number of accepted transaction sets in the identified functional group |
371+
372+
## WorkflowRunOperationInfo schema
373+
374+
The **WorkflowRunOperationInfo** table column in the **AS2TrackRecords** table and **EdiTrackRecords** table captures information about the Standard logic app workflow run. This column has a **dynamic** type structure that uses the following JSON schema:
375+
376+
```json
377+
{
378+
"title": "WorkflowRunOperationInfo",
379+
"type": "object",
380+
"properties": {
381+
"Workflow": {
382+
"type": "object",
383+
"properties": {
384+
"SystemId": {
385+
"type": "string",
386+
"description": "The workflow system ID."
387+
},
388+
"SubscriptionId": {
389+
"type": "string",
390+
"description": "The subscription ID of the workflow."
391+
},
392+
"ResourceGroup": {
393+
"type": "string",
394+
"description": "The resource group name of the workflow."
395+
},
396+
"LogicAppName": {
397+
"type": "string",
398+
"description": "The logic app name of the workflow."
399+
},
400+
"Name": {
401+
"type": "string",
402+
"description": "The name of the workflow."
403+
},
404+
"Version": {
405+
"type": "string",
406+
"description": "The version of the workflow."
407+
}
408+
}
409+
},
410+
"RunInstance": {
411+
"type": "object",
412+
"properties": {
413+
"RunId": {
414+
"type": "string",
415+
"description": "The logic app run id."
416+
},
417+
"TrackingId": {
418+
"type": "string",
419+
"description": "The tracking id of the run."
420+
},
421+
"ClientTrackingId": {
422+
"type": "string",
423+
"description": "The client tracking id of the run."
424+
}
425+
}
426+
},
427+
"Operation": {
428+
"type": "object",
429+
"properties": {
430+
"OperationName": {
431+
"type": "string",
432+
"description": "The logic app operation name."
433+
},
434+
"RepeatItemScopeName": {
435+
"type": "string",
436+
"description": "The repeat item scope name."
437+
},
438+
"RepeatItemIndex": {
439+
"type": "integer",
440+
"description": "The repeat item index."
441+
},
442+
"RepeatItemBatchIndex": {
443+
"type": "integer",
444+
"description": "The index of the repeat item batch."
445+
},
446+
"TrackingId": {
447+
"type": "string",
448+
"description": "The tracking id of the logic app operation."
449+
},
450+
"CorrelationId": {
451+
"type": "string",
452+
"description": "The correlation id of the logic app operation."
453+
},
454+
"ClientRequestId": {
455+
"type": "string",
456+
"description": "The client request id of the logic app operation."
457+
},
458+
"OperationTrackingId": {
459+
"type": "string",
460+
"description": "The operation tracking id of the logic app operation."
461+
}
462+
}
463+
}
464+
}
465+
}
466+
```
266467

267468
## Related content
268469

0 commit comments

Comments
 (0)