Report templates commands and guide
General
In Interaxo BIM Data there are a lot of possibilities to customize different type of reports to support each customer’s needs.
The report templates are created in word and saved as a word document (*.docx). Different commands are used to support different needs of ungrouped or grouped reports.
A grouped report is used to create different type of quantity or destination related reports. Ungrouped reports are mostly used for creating individual door cards, room programming reports etcetera. Images can be automatically uploaded an connected to instances in Revit (like door elevations, room drawings) or you can manually upload and connect any images that is needed to present the object and data in a report.
The format of the text and layout of tables are inherited by the formats and layouts that are used in the template. As an example, the font, text size, and colors of the texts are controlled by the format of the commands.
Layout of the tables as fillings, borders, inlines are controlled by the table layout and design in the template.
Example of a Quantity list:
Example of commands, formatting and layout used in the template document:
Note! In the report template, use tables that are locked in position to the page or margins and have fixed row heights, table width etcetera to avoid unexpected page breaks or crashed reports
Note! In report template when using tabels One command with parameter only in a cell to be able to do Change reports
Report Form
In the Create report form select the type of Report that should be created, Report (ungrouped or grouped reports with no changes highlighted) , Changelog or Report including changes.
A Name should be added, select customized template, and select Printing type. (Repeating for tables and multiple objects presented floating over pages or Page to present one object/page).
Templates upload
To upload a template go to select Report templates from the toolbar and in Templates view select Created and add a Name, select Type, (Report, Report including changes or Changelog), set if the report is grouped or not and Select and upload the template file.
Validations
When a template is created a couple of validations are run to help the users to figure out and understand if the template has some wrong written commands or if a grouped template is uploaded as a ungrouped report or if the template contains parameters that do not exist in the project etcetera etcetera.
Cover page
The report can begin with one or more Cover Pages.
Add an empty page as the first page in the report template and to define that the report will start from the next page a Page Break can be added. If there is a need for multiple cover pages, add repeating text without a page break and then the report will start on the first page after the page break.
On a Cover page it is possible to add texts and images or use commands to get information from the Company-, Project- pages or from the fields in the Create Report form.
Example of commands to use on cover pages:
Company information:
${companyinfo.company}
Project metadata:
${projectinfo.name of label}
${projectinfo.name of label}
${projectinfo.name of label}
Report form:
${reportinfo.createdBy}
${reportinfo.documentationDate}
${reportinfo.revision}
${reportinfo.revisionDate}
${reportinfo.status}
${reportinfo.description}
Header and footer
The design and layout of report header and footer can be defined in the template by adding tables, texts, images, available fields/ word macros and company and project metadata.
Example of commands to use in header and footer:
Company information:
${companyinfo.company}
Project metadata:
${projectinfo.name of label}
${projectinfo.name of label}
${projectinfo.name of label}
Report form:
${reportinfo.createdBy}
${reportinfo.documentationDate}
${reportinfo.revision}
${reportinfo.revisionDate}
${reportinfo.status}
${reportinfo.description}
If you need to have a parameter value in the header or footer add the command in a separate table and lock it in position in the body area on top of the header or footer layout
Ungrouped Instance/object report
Ungrouped reports are mostly used for creating individual door cards, room descriptions etc there each object should be presented individual on a page or in a one row in a table.
Example of a Door Card layout:
Example of template layout:
Example of commands to use in ungrouped object/instance report template:
${Parameter name}
Table report
If you want to create a table with each object /instance presented on a row, in the report add a table with the correct formatting for design and layout and then add the commands for writing ungrouped object parameter values in the cells.
Example of how to write commandos in a table in a template:
Keynote |
Manufacturer |
Assembly Code |
${Keynote} |
${Manufacturer} |
${Assembly Code} |
Example of an ungrouped table report of all doors in a project:
Example of template layout and formatting:
Images
Example of different image command for ungrouped and grouped reports,
${image:tagName}
Image will be set at original size in report:
${image unit="percent" width="100":tagName}
Image will be set at 3 cm width and 2 cm height in center of document.
${image alignment="center" unit="cm" width="3" height="2":tagName}
Width of image in report will be set at 3 cm and height of image will be changed from original value with same percentage as width because uniformity of image.
${image unit="cm" width="3":tagName}
Max width and max height in image command
${image alignment=”center” unit=”cm” maxWidth=”3” maxHeight=”2”:top_view}
In this case, if original width of image is greater than height, image in report will have width equal as value maxWidth and value for height will depend on percentage of changes width.
If original height of image is greater than width, image in report will have height equal as value maxHeight and value for width will depend on percentage of changes height.
Property unit can have values same as in classic image command (cm, percent, inc, point).
Properties of image command:
- tagName - For manually uploaded images name of the Tags can be defined on the Image/Tags tab, Images synced from Revit is automatically tagged by the default systems tags like top_view, fron_view, view_3d etc.
- alignment- center, left or right (in all examples above you can add alignment property, default value is left)
- unit- cm, point, inc or percent (default value is cm, unit property can not be used without width or height property)
- width and height- dimensions in measurement unit from unit property
Images in grouped reports
In grouped reports all the images on the grouped selection of objects/instances should have the same image attached otherwise an information/varning image will be printed instead.
Example of a grouped report with matching image on all grouped objects/instances.
Example of layout and used template commands
Grouped reports
A grouped reports are used to create different type of quantity or destination related reports, to present for example number of objects grouped by Article code or all rooms belonging to same department or a destination table that shows in which rooms a specific product is occurring in.
When a new grouped template is uploaded to the project the Grouped options needs to be set to yes.
Example of a Report template and the result:
The layout and formatting are controlled the same way as in an ungrouped report, “what you see is what you get”. But to be able to define in the template if a value should be grouped or not we use another command, @{Parameter name}.
You can also use a combination of grouped and ungrouped commands in the report to present the different values if other values are grouped. You can also group data in different levels. For example First level is grouped on Room name and number and next level is by object name, to get a room list with number of different objects in each room.
Example of commands to use on grouped templates:
- @{Parameter name} - data will be grouped by parameter with Parameter name from this command.
- ${Parameter name} - parameter with Parameter name from this command will not affect on grouping. With this command in report will be displayed all values of Parameter name for certain group. That values for the grouped instances will be comma separated.
- $_T{Parameter name} - parameter with Parameter name from this command will not affect on grouping. With this command in report will be displayed all values of Parameter name for certain group. These values will be displayed in a table that has as many rows as the parameters.
- @{Quantity} - Number of instances for certain group.
This is examples of the grouped commands in one template:
and an example of a report generated from that template:
Sorting in grouped reports:
With the sorting commands it is possible to control the sorting in your tables, ascending or descending in one or more levels.
@{sortDirection="ASC" sortOrder="1":Parameter Name}
Data is sorted and grouped by Parameter Name from this command.
Properties of sort command:
- sortDirection - have just one of two values: ASC or DESC and that is direction of sorting (ascending or descending).
- sortOrder - must be number and it is priority(order) of sorting because we can sorting data by multiple parameters. 1 is greatest priority.
We can use multiple sorting commands in one template and we will get data sorted by all of that parameters.
Level Name |
Global Category |
Global Name |
Type Comments |
Keynote |
QTY |
@{sortDirection="ASC"sortOrder="1":Level Name} |
@{Global Category} |
@{sortDirection="ASC"sortOrder="2":Global Name} |
@{Type Comments} |
@{Keynote} |
@{Quantity} |
Example of a table grouped on some instance/object parameters to get a quantity list, sorted by Levlel and Name.
Report grouped in two levels
In some cases, you will need to group the data in two levels for example create a Quantity list with destinations or a Room specification with number of objects per room.
Example of commands:
Article |
Total no of articles |
|
@{groupLevel=”1”:Global Name} |
@{groupLevel=”1”:Quantity} |
|
Room number |
Room name |
Qty |
@{groupLevel=”2”:Room Number (in room)} |
@{groupLevel=”2”:Room Name (in room)} |
@{groupLevel=”2”:Quantity} |
Example of a product description grouped in first level on the object and in second level on the Room name and number.
Example of a Door card grouped in two levels to get number of left or right hinged doors of each door type:
Room reports with materials and objects (ungrouped)
First table in the template can have classic commands with parameters names related to room (Room Name, Room Number, Area, Images etc) and that table can have rows and columns.
Materials
In attachment I put template, report and image as example of data for materials connected to room with Room Name: Dragana Room 2 and Room Number: 2.
For this we use new command :
${type=”materials” subtype=”Floor”:Material Code}
In property type we write materials or objects. If in property type is written materials, in property subtype we write type of material (Floor, Wall, etc). After : we write parameter name.
Objects
In attachment I put template, report and image as example of data for objects connected to room with Room Name: Dragana Room 2 and Room Number: 1.
For this we use new command :
${type=”objects” subtype=”Furniture”:Object Code}
In property type we write materials or objects. If in property type is written objects, in property subtype we write type of object (Furniture, Medical Equipment, etc). After : we write parameter name.
For quantity of objects we always use command with qty after :, as it is in template from attachment.
Group reports for Room and Requirement
Example of commands for group Room and Requirement reports:
- @{Parameter Name} - Data will be grouped by parameter with Parameter name from this command. For example, if we put command @{Room Name} on one report page we will get common information about all rooms with same name.
- ${Parameter Name} - With this command in report will be displayed all values of Parameter name for certain group. That values will be comma separated. For example, if we put ${Room Number} (after @{Room Name} ) we will get numbers of all rooms with same Room Name.
- @{type=”materials” subtype=”Floor”:Material Code}/@{type=”objects” subtype=”Furniture”:Object Code} - We use these commands to display materials/objects for certain group. For example, if we put command like these (after @{Room Name} ) on one page we will get all materials/objects which is connected with all rooms with same Room Name. In case if you have several rooms with the same name and one of them has some different number of objects or materials we will get separate page for that room and their information.
Changelog
The changelog is used to compare changes made on the instances between two snapshots and all values on the parameters that are part of the selected bookmark are compared.
Sorting will be as in grid. All changed objects regardless of filtering or selections are presented in the report.
Not applicable for Materials & Objects on Rooms.
When uploading a new changelog file the type should be set to Changelog:
When a changelog is created there need to be at least two snapshots saved between which all changes in the project could be tracked.
Sorting data in Changelog reports as it is on Data grid.
1. In Create report form select Changelog: |
2. Select a Parameter list (Grid list from the Data Grid view) that have all parameters included that should be compared between the selected snapshots |
3. Add a Name, select Snapshot from and to, select Template to use, Printing type (Page-one object/page, Repeating- Floating document when one object is printed the next will start). |
1.
2.
3.
4.
Example of formatting and commands:
${Global BIMEYE ID} |
${Global Name} |
${new}
${changed}
${deleted}
${space}
${line}
Example of result:
Report Including changes
If you upload a common report as a Report including changes, then you can use that to present the changes made between two snapshots.
Not applicable for reports grouped in two levels or Materials & Objects on Rooms.
Note! In report template when using tabels One command with parameter only in a cell to be able to do Change reports
Table of content
If you add one at least one command on each page set to Heading you will get a table of content in the end of your report.
Other
How to create template commands
On way of creating commands for the templates is to export the parameters from the Parameter grid to excel and then use formulas in Excel to merge cell values to a command.
Other example of templates
Comments
0 comments
Article is closed for comments.