Drawing Commands

If the current report is being generated as part of an inserted user report there are some commands that are only relevant to the drawing of the report in the design.

Draw Line

This command will draw a horizontal line in the report, between the two edges of the report box outline. If you are not drawing the report, nothing will be reported. The line style used to draw the line can be changed by using Properties on the Inserted Report in the design.

Draw Symbol

Use this command to include a picture of a drill symbol into a Drill Table in a user report inserted into the design.

The symbol will be inserted into, and replace the text of, the current column. Therefore you will need to add a Text command before it to start a new column and ensure the symbol does not overwrite the previous column. If the report is to be written to a file as well as inserted into a design the text command should have its column width set to match any header that is put out.

The whole row the drill symbol is inserted into will be drawn using the height of the symbol.

Is Drawing Report

This tests whether the current report is being generated as part of an inserted user report, and therefore being drawn in the design. Use this to report different information if you are inserting the report into a design rather than running it to a file. For example you might want to draw a horizontal line in one case, but draw two blank lines if reporting to a file.

Draw Column Line

This is an option found in the New Column section when editing any type of command that reports a value. Use it to draw a vertical line at the end of the column.

This option has no effect if you are not drawing the report.

Aligning Drawn Columns

The size for a “space” character depends on the type of font used when drawing a report. Therefore it is not possible to always align the column start positions using a specified Column Width value. To get around this when drawing the report, the column width is generated from the longest field written to the same column.

So when reporting fields for each component, where the first column is the component name, the width of the first column will be set large enough to fit the longest component name being reported.

This is fine for fields within a “List Of” command, but how to we align a “header” to this table. This is done by separating the contents of the header into a Text command for each column, and giving each one the same Column Width value as the corresponding fields in the table. It does not matter what these column widths are, as long as they match the corresponding columns in the fields of the table. The column widths are only used to identify that two consecutive sections of the report are actually part of the same table.

So by ensuring the same number of columns and the same corresponding column width values, you can make different lists and text headers be drawn into a single table in the design. If you want two lists with the same column information to be drawn into two separate tables with column widths generated from just their own columns, report a Blank Line between the lists.

Not Insertable

If you do not want a particular user report to ever be inserted into a design, add the Not Insertable command at the start of the format script. The interactive Insert User Report option will not list it. Note: If an already inserted report is changed to be not insertable it will still run (you need to delete it from the design).

Passing Attribute Values To Drawn Reports

An inserted report is represented in the design by a documentation symbol. In a reports script, you can extract attribute values from the documentation symbol that represents the user report being generated. This is done by adding a List Of Doc Symbols command to the report and within it using the Is This User Report command to identify the user report documentation symbol. Then the Attribute command can be used to report a specific attribute value, or you can save it to a Variable for use later in the report.

Using this method you could, for example, pass a parameter to a user report that lists components to tell it to only report components matching a certain criteria. The same report can then be used in the one design in several places to report different lists of components.

Inserting A Table Into A Design

You can use an inserted report to display the contents of an external file in your design. To do this see the List Of Ascii File Lines command for more details and an example.

Commands | Command Types | Insert User Report | Report Maker