Composer can display repeating data (aka child object data or detail data) in a variety of ways. You can also group detail data and apply conditional logic to hide tables or sections that do not contain data.

Repeating Rows in a Table

Using {{TableStart}} and {{TableEnd}} tags (TS/TE tags), you can set up a table with a row that will dynamically repeat for each child record returned in the query. Once a query has been added to your Composer Solution, Template Builder will give you the syntax needed to add to your table. As an example, imagine you have a query to pull Quote Line Items and you want to display those in a pricing table. Your Word template would look like this:

ProductQuantityList PriceTotal Price
{{TableStart:QLI}}{{PRODUCT_NAME}}{{QUANTITY}}{{UNIT_PRICE}}{{TOTAL_PRICE}}{{TableEND:QLI}}

{{TableStart}} initiates the set of repeating data. This field is placed in the first cell in the table. {{TableEnd}} closes the set of repeating data. This field is placed at the end of the first row of data in the table. The TS/TE tags must reference the alias of the query as shown in the Template Builder.

For more information, see Using Detail Data in Word.

Groups of Repeating Data Tables

Conga Composer includes two special tags to enable grouping related data into tables:

  • TableGroup
  • TableGroupStart

TableGroup

Using TableGroup, you can group repeating data on a specific field in your dataset. Examples:

  • Group Quote Line Items by Product Category
  • Group Opportunities by Owner
  • Group Revenue by Customer

This tag is placed in the first row of the table and can show or hide the value being grouped upon. For more information, see Organize Repeating Data Tables into Groups.

TableGroupStart

Similarly to TableGroup, you can use TableGroupStart to group on a value in a dataset. The difference is that TableGroupStart allows you to place merge fields, static text, or tables between the TableGroupStart and TableGroupEnd tags.

For more information, see Grouping Repeating Data with TableGroupStart.

Hiding Tables with No Information

You can hide a table using TableHide or hide a table row using Row Burner. For example, you might have a pricing table to display One-Time products, but you only want the table to show if there are One-Time products included in your Quote. Or you might have a table row to show the Quote overall discount percentage, but you only want that row to show if the discount is greater than zero.

For more information, reference these topics: