Properties can be set on tables, cells, rows and block containers. These are categorized as:
- Cell properties
- Row properties
- Table properties
- Block Container properties
The property panel is by default displayed to the right of the layout area. If there is a need for more space there is also possible to display the property panel in a dialog that open up after RMB on a item and choosing "Properties". In order to enable this, the "Show properties in dialog" option has to be selected in the options dialog. The property dialog can be moved outside of the Report Designer tool, and opened and closed when needed.
Properties that control the appearance of a table-cell and it's data are known as cell properties. They include border properties, background colors, padding and other features. To have access to these properties simply right mouse click on a cell and select properties from the pop up menu. Listed below are some of the properties controlling the appearance of the table-cell.
|Border color||Controls the border color of the table-cell. By default it is set to none. One can explicitly set the color for top, bottom, left and right borders.|
|Border Style||Allows you to set an explicit border style as solid or set the border to be None.|
|Border width||When an explicit border has been set, this property allows you to control the width of the specified border. The size can be specified in pt, cm, mm or in inches.|
|Padding||Use padding to leave extra room between adjacent table cells both horizontally and vertically. By expanding this property one can set padding on either the top, bottom, left or right sides of the cell. We can further use this property to leave gaps between table-rows, by setting padding on top/bottom borders of all the cells in a row. Best practice is to limit the use of padding for leaving room between rows and add empty rows instead to achieve the same output.|
|Background color||Provides a color palate from which you can select a color to fill the background of the cell.|
|Foreground color||Controls the display color of fonts. Select a suitable shade from the list of colors or use the color palate to create your own shade.|
|Arabic shaping Type||Controls character shaping related to Arabic layouts.|
|Digit Type||Controls how numbers are represented in the output. Provides support for Arabic layouts|
|Vertical Text alignment||Controls the vertical text placement of the cell data. Supports top, bottom and center alignment.|
Properties listed below control how the text placed inside the table-cell is displayed on the report output.
If the text being written is too large to fit in the cell, use Line wrapping to write the extra text to the next line.
Selecting the checkbox will ensure the data is written into multiple lines if text is too lengthy to fit in the cell. Deselect it if you prefer not to have the text written into multiple lines.
If the text placed in the cell is too lengthy and needs to be truncated/clipped at the right edge of the cell then this is the property to be used. Note that for Data clipping to work Line wrapping must be disabled. Therefore, make sure that you deselect the Line wrapping property before enabling this.
Selecting Yes for this property enables Data clipping. This means, if the text placed in the table-cell is too lengthy, the extra text will be be truncated/clipped at the edge of the cell and won't be shown. Selecting No from property values will let the text be written outside the cell and overflow to the text in the adjoining cell.
However, Data clipping when applied on a number field will have a different output than for strings. Consider a number that is too lengthy to fit in a given table-cell. If we enable Data clipping on this table-cell the number will be shown as a string of hash marks ‘####’ instead of a clipped/truncated number. Reason for this behavior is that if a number is shown with parts of it clipped this would give out misleading information when the the report data is interpreted. Therefore, clipping a number field will have the output shown as a string of hash marks instead.
Clip/Wrap text without white spaces if necessary¶
Use this property together with Line wrapping and/or Data Clipping. For instance if you wish to enable Line wrapping on text that does not contain any white spaces then make sure this option is selected using the Explicit checkbox in order for Line wrapping to take effect. Similarly to clip/truncate text that does not contain white spaces ensure this property is explicitly set.
Remove extra spaces¶
Treats consecutive white spaces found in the text. That is if the text placed in the table-cell contains two or more consecutive white spaces they will be replaced by one single space when this property is set to true. To enable this property select the Explicit button with checkbox
Determines the direction in which text is written on to the output. The default behavior is to write text from left to right but for languages such as Arabic, Farsi, Urdu and other bidirectional languages the text is written from right to left. Using this property one can control the direction of the text.
Select property value Left-to-Right to output text starting from left corner of the cell and continue to write towards the right edge of the cell. This is also the default text direction for the tool. Select property value Right-to-Left to output text for bidirectional languages that are written from right to left. The text in this case will be written starting from right edge of the cell and continue to write towards the left edge of the cell.
Setting the Text Direction under cell properties determines the direction of only the selected cell and it's text. In order to set the Text direction for the entire layout follow the instructions below.
Go to Edit menu and select Options.
In the IFS Report Designer Options dialog select Enable bidirectional printing and Persian Calendar support checkbox.
Press Ok to continue.
Go to Edit menu once more and select the newly enabled menu option Bidirectional printing.
In the Bidirectional Printing Dialog select the desired text direction under the Print Options. The value selected will be used as the text direction for the entire layout.
Press Ok to continue.
The value in a table cell can extends to two or more lines when the Line-Wrapped Property is enabled in the respective table cell. In a situation like that, the spaces or the gap between two lines within a table cell can be increased/decreased as required by changing the "Line spacing" property for table cells in the Report Designer tool. By default the the Line Spacing property value in a cell is set to 1.2 which is the default value set when rendering the report. This value can be changed for each cell as required and can have a value with maximum of three decimals e.g.: 2.231. Unlike in other properties the "Line spacing" property does not contain a corresponding Unit element like "pt", "mm", "cm" or "in", it's just only the the numeric value. The behavior of this property is exactly the same for Block Containers.
In the following example image, both Table cells contains the same text with Line wrapping enabled and the first table cell has the default Line spacing of 1.2 and the second table cell's Line spacing has increased to 3.2.
These are very similar to cell properties, in which they control the appearance and the behavior of a given row object. To access row properties right-mouse click on the row (select a row by double clicking on one of it's cells) and select properties from the pop-up menu.
|Page Break after||Use this property to insert a page break, after the row has been printed. The text placed below the selected row will then be printed on the next page. Use break after on a row when you need to print the text which follows on a brand new page. Select Yes from the property values to break the page, after the selected row. However, this may result in a blank page being added to the end of the report if there is no data to be displayed after the break has been printed. This can be avoided by selecting the option Yes - except last page in which case the page break will only be inserted if it is not the last page. Selecting None will not insert any breaks.|
|Page Break before||This too performs a similar functionality as Page Break after. The only difference being that when break before has been set on a row, the page would break before the row is printed. This way the text on this row and below would be printed on a brand new page. Simply selecting Yes may result in a blank page printed at the beginning of the report. This could occur if there is no data to be printed before the selected row. By using Yes-except first page option this can be avoided. The break will only be inserted if there is data to be printed before the selected row. Selecting None will not insert any breaks|
|Height||Controls the height of the selected row object. Using this property you can set the row height in pt, cm, mm or inches .|
|Keep together with next object||The keep-with-next property determines whether this row should remain on the same page along with the following row. This can be used to keep certain data together as one segment.|
|Keep together with prev. object||This determines whether or not the selected row should remain on the same page as it’s preceding row.|
|Bg color||Controls the background color of the selected row.|
Many of the table properties such as background color, border style, border width, padding works just the same way they did in cells. Other properties such as break after, break before, keep with next and keep with previous also performs the same functionality as mentioned above in row properties. For instance the break after property applied on a table will insert a page break, after all the data inside the selected table has been printed. Keep with next property applied on a table will keep the table on the same page as the following table. Following are few other additional properties unique to table objects.
|Leave out table footer at page break||Prevents the table footer being re-printed for every new page.|
|Leave out table header at page break||Prevents the table header being re-printed for every new page.|
|Position Offset - horizontal||Controls the X coordinate of the upper left hand corner of the table. It is possible to change the location of the table by changing the value of position X.|
|Position Offset - vertical||Controls the Y coordinate of the upper left hand corner of the table.|
|Distribute columns evenly||It hides empty columns in a table and distribute the rest of the columns evenly over the table width. See below for more details.|
Distribute columns evenly¶
In some situations it would be preferable if empty columns in reports where hidden and the rest of the columns evenly distributed over the table width. Especially in Headers/Footers where Addresses and contact data is displayed. When the property 'Distribute columns evenly' is enabled empty columns will be hidden, and the rest of the columns evenly distributed.
Block Container Properties¶
Most of the cell and row properties discussed above are also applied to block containers. In addition following are few additional properties applicable to block containers.
|Width||Controls the width of the block container.|
|Height||Controls the height of the block container.|