A MergeBlock is a reporting structure to repeat content based on data rows associated with this repeating block. Typically, a merge block contains a list of elements such as order items in an invoice. A block can be a table row, a paragraphs or multiple lines.

In version X16, we are going to introduce data shaping to filter and sort data rows in a MergeBlock. The out-of-the-box available UI (ribbon and dialog boxes) will reflect these new improvements. The Insert Merge Block dialog box, that inserts a new merge block based on the connected data from the TXTextControl.DocumentServer.DataSources.DataSourceManager , has a new button to specify data shaping settings:

Data Shaping in TX Text Control X16

A typical merge block listing orders looks like shown in the following screenshot:

Merge Block

After merging, the table gets expanded with all block data rows:

Merge Block

Sorting

In the new Filter and Sort dialog box, this list gets sorted ascending by price. It is also possible to set multiple sorting conditions:

Data Shaping in TX Text Control X16

The following screenshot shows the same list, but sorted by price ascending:

Merge Block

Filter

Next, all entries where UnitPrice is over $800.00 are filtered out. In the dialog, the positive entries are selected: All rows with UnitPrice are less than 800:

Data Shaping in TX Text Control X16

Merge Block

All of these settings can be set programmatically using new properties of the MergeBlockInfo class: SortingInstructions and Filters. Additionally, the BlockMergingCondition specifies a condition the parent data row of this merge block has to satisfy, so that this merge block is merged at all.

This enables very flexible data structures and data shaping options in TX Text Control based reporting applications. Stay tuned for more exciting new features coming in version X16.

Let us know what you think about this - we would love to get your feedback on these features.