Grid

«Grid»  – is a component for simplifying export tables from printing program to the form.

The component supports of processing as "flat" tables as "multi-level" tables (i.e. «Grid» assigned to context table, which contain nested sub-tables in the their rows, that describe sub-levels). If the multi-level table is processed, an automatic cell merge (rowspan) being performed for the columns assigned to the high-levels:



Properties tab: 






Grid using the example



Item «Value»

In the item You have to assign «Grid» to the table nested in context (Context binding). To do it, You should press the button and then (in the popup search-help) You have to choose required context node (or whole context).



Item «Area in the template»

Grid formatting is described by the markup of related area in the Excel template .

The area must be marked up according the rules described below.

  • The area has at least 1 horizontal cell and two vertical ones (there also may be a more cells in any of the directions). The area is divided into two sub-areas, which in the figure marked with white numbers in red circles, and boundaries between them are marked with a red dashed line:

  • Subareaoccupies top row of markup area. The subarea specifies formatting of the grid header (the row, that displays the column names)
  • Subareaoccupies the second row and all below rows (if exist) of markup area. The subarea specifies formatting of data rows of the grid.




What if I want to colorize columns in a different colors (or use a different formatting of them)?

It is possible to control the color and other cell formatting options (text: font/size/color etc.) for each column of the grid.
To do this, you need to add more columns to the markup area.
The approach is: from left to right, each column of the markup area applies to the formatting of corresponding grid column. Herewith, rightmost column (of the markup area) describes as appropriate grid column as all following columns too, if they exist.

In the example at below figure, we want that first grid column (Flight Date) would be blue colored, and all the following columns would be gray colored. For this purpose, it is enough to describe the first two columns in the markupHerewith, formatting of rightmost column (in the markup) will be distributed to all the remaining columns of the grid (in runtime):





How to make "zebra"- layout (colorize rows)?

If subareacontains more than one row, it means that the formatting of rows of grid will alternate:




 

Item «Output direction»

The item defines the grid positioning relative to the previous component 

(to change output direction you have to press the button / ). This option described in detail in «Pattern» component.


 

Item «Layout options»

The item contains grid layout options.

  • Orientation 

        The option has two states
    •  - grid is displayed in the normal state - with horizontal arrangement of rows

    •  - grid rotated 90 degrees counterclockwise - the rows arrangement becomes vertical. In this case, the marking up will be different:

  • Header 

        If this option is enabled, the row that displays the column names appears in the grid. Herewith, it is possible to choose the text displayed in the column header: Technical name, Description, or both together.

  • Columns 

        This option is used to specify a set of columns of the grid, displayed in the form 
        By clicking the button  the popup-screen will be displayed. You have to transfer chosen columns from right-hand frame of screen (all available columns) to the left-hand frame (columns to output) and then arrange columns in required order.



  • Column properties 

        Clicking this button opens the settings window, which contain columns list, which have been chosen (at the previous stage) to display. Now only one option is available:

    • AutoFit for merged cells. 

Click to icon  for the required column, a popup screen whith AutoFit option will appear:


Premise: When the cell is not merged, we can adjust the row height or column width to the fit the cell contents by using the AutoFit feature in the Excel template. But this function does not work for merged cells. 

This option runs OLE/VBScript post-processing procedure to forcibly adapt merged cell size to content.


Note: I strongly recommend you to use post-processing only when it is really needed, because it has a few negative factors:
  • It won't be performed in background mode of printing program run 
  • It won't be performing if MS Excel application is not installed on frontend computer
  • It reduce performance 



  • Allow formulas

    • If this option is enabled, all values, which beginning with '=' , will be interpreted as formula ( See more details here .
    • If this option is disabled, values will be inserted to the cell regular way.