Cumulative Map Operations - Usage and Examples
Important
Microsoft Azure BizTalk Services (MABS) is being retired, and replaced with Azure Logic Apps. If you currently use MABS, then Move from BizTalk Services to Logic Appsprovides some guidance on moving your integration solutions to Logic Apps.
If you're brand new to Logic Apps, then we suggest getting started here:
-
Create your first logic app, or quickly get started using a pre-built template
-
View all the available connectors you can use in your logic apps
Lists the Cumulative Map Operations in Microsoft Azure BizTalk Services.
Cumulative Map Operations
Map Operation |
Description |
Parameters |
Output |
---|---|---|---|
Cumulative Sum |
Returns the accumulated value of a record. |
Requires exactly one input parameter: Input: A link from a tree node or a List operation that contains a numeric value. When using a List, the Cumulative operation can operate on a column of the list. |
A numeric value that is the accumulated sum. When using a List, an arithmetic expression using the different columns in the List can also return a numeric value. The Lists are written as item.ColumnName. |
Cumulative Average |
Returns the accumulated average value of a record. |
Requires exactly one input parameter: Input: A link from a tree node or a List operation that contains a numeric value. When using a List operation, the Cumulative operation can operate on a column of the list. |
A numeric value that is the accumulated average. |
Cumulative Concatenate |
Concatenate strings from a record in the source schema to a single record in the target schema. |
Can have one and two input parameters: Input: A link from a tree node or a List operation that contains a string value. When using a List operation, the Cumulative operation can operate on a column of the list. Separator: Delimits the string values. |
A string value that has been accumulated and concatenated. |
Cumulative Maximum |
Returns the accumulated maximum value of a record. |
Requires exactly one input parameter: Input: A link from a tree node or a List operation that contains a numeric value. When using a List operation, the Cumulative operation can operate on a column of the list. |
A numeric value that is the maximum value. |
Cumulative Minimum |
Returns the accumulated minimum value of a record. |
Requires exactly one input parameter: Input: A link from a tree node or a List operation that contains a numeric value. When using a List operation, the Cumulative operation can operate on a column of the list. |
A numeric value that is the minimum value. |
Cumulative Count |
Returns the number of times a specified repeating structure or value occurs. |
Requires exactly one input parameter: Input: A link from a tree node or a List operation. When using a List operation, the Cumulative operation can operate on a column of the list. |
A numeric value is the total count a repeating value occurs. |
Error and Data Handling
BizTalk Services provides the ability to configure how an error is handled and how an empty or null node is handled. The error handling behavior of the following Cumulative Map Operations is configurable:
Cumulative Sum
Cumulative Minimum, Maximum and Average
Steps:
Open a BizTalk Service project or the BizTalk Service Artifacts project in Visual Studio.
Double-click a Transform (.trfm) to open the Transform Designer.
In the Transform toolbar, select Settings.
Error Handling tab
In the Error Handling tab, the following Cumulative Map Operations have three Behavior options:
Cumulative Sum:
Fail map: The entire Transform is aborted. Since Transforms are executed within a pipeline, an error occurs within the pipeline and the error is then sent back to the client that sent the message.
Output default value NaN: If the Map Operation fails, NaN (Not a Number) is returned as the output.
Output default value 0: If the Map Operation fails, zero (0) is returned as the output.
Cumulative Minimum, Maximum and Average:
Fail map: The entire Transform is aborted. Since Transforms are executed within a pipeline, an error occurs within the pipeline and the error is then sent back to the client that sent the message.
Output default value NaN: If the Map Operation fails, NaN (Not a Number) is returned as the output.
Output default value 0: If the Map Operation fails, zero (0) is returned as the output.
Null/Empty Data Handling tab
In the Null/Empty Data Handling tab, there are three options:
Consider empty nodes in cumulative operations: By default, this is not checked. When not checked, no empty nodes are included in the iteration. When checked, all nodes, including empty nodes, are included in the iteration.
EXAMPLE: There is a document with 10 <record> nodes. Three of these <record> nodes are empty. When Consider empty nodes in iterations is not checked, the Map Operation returns a value of seven. When Consider empty nodes in iterations is checked, the Map Operation returns a value of 10.
Consider empty nodes in iterations: By default, this is not checked. When not checked, no empty nodes are included in the iteration. When checked, all nodes, including empty nodes, are included in the iteration.
EXAMPLE: there is a document with 10 <record> nodes. Three of these <record> nodes are empty. When Consider empty nodes in iterations is not checked, the Map Operation iterates seven times for the non-empty nodes. As a result, seven <record> nodes are generated in the Target. When Consider empty nodes in iterations is checked, the Map Operation iterates 10 times for all nodes, including the empty nodes. As a result, 10 <record> nodes are generated in the Target.
Target Node Generation: If empty nodes are configured to be considered, you choose to generate an empty node in the output or to not generate an empty node in the output. Specifically:
Do not generate empty nodes: Default option.
Generate empty nodes
EXAMPLE: There is a document with 10 <record> nodes. Three of these <record> nodes are empty. Consider empty nodes in cumulative operations or Consider empty nodes in iterations are not checked, the Map Operation iterates seven times for the non-empty nodes. As a result, seven <record> nodes are generated in the Target. When Consider empty nodes in iterations is checked, the Map Operation iterates 10 times for all nodes, including the empty nodes. As a result, 10 <record> nodes are generated in the Target.
Additional Map Operations
String Map Operations - Usage and Examples
Loop Map Operations - Usage and Examples
Expressions in BizTalk Services - Usage and Examples
List Map Operations - Usage and Examples
Date / Time Map Operations - Usage and Examples
Miscellaneous Map Operations - Usage and Examples