Reporting Table Item macro allows one to specify details about single column of reporting table: header, body cell and footer details:

  • One may either specify a plain text of the header, like "Column 1" or specify a formula, like "'Pages (' & JSONARRAYLENGTH(AllItems) & ')'". Note, that AllItems is a special variable, which is a set of all the query results, formed as an array of JSON objects.
  • Body parameters are specified for a single column cell and these parameters are repeated for each report line. There is a special variable CurrentItem, which corresponds to appropriate JSON object on each report line. So, this is a most tricky part of this plug-in: here you specify what will be the main contents of the reporting table by referencing current line JSON object fields and applying any functions to it. Note, that for the formulas to be processed the Body content type parameter value should be set to anything other than Text only. Examples:
    • "UPPER(CurrentItem.title)" - shows the page title in the uppercase.
    • "CurrentItem" - shows whole JSON object JSON, which is convenient when configuring reports.
  • One may either specify a plain text of the footer, like "Column 1" or specify a formula, like "'Count: ' & JSONARRAYLENGTH(AllItems)". Note, that AllItems is a special variable, which is a set of all the query results, formed as an array of JSON objects.

Reporting Table Item macro has the following parameters:

Parameter Description
[Enum] Header content type (default='Text only')

Specifies, how the Header content parameter text should be processed - whether it is a plain text or a single formula or a mix of formulas and text. This parameter may have one of the following values:

  • Text only
    • Means, that the specified text will be shown as is. In this case no formulas are searched for in it.
    • Example: "Column A".
  • Single expression
    • Means, that the specified text is a formula, which should be calculated and its result will be shown.
    • Example header content: "'Pages (' & JSONARRAYLENGTH(AllItems) & ')'".
  • Text and expressions in square braces
    • Means, that there are the formulas in the text, enclosed in square brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example header content: "Pages ( [JSONARRAYLENGTH(AllItems)] )".
  • Text and expressions in curly braces
    • Means, that there are the formulas in the text, enclosed in curly brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example header content: "Pages ( {JSONARRAYLENGTH(AllItems)} )".
[String] Header content (default=''(Empty value))

Specifies the header content text. This value is processed according to Header content type parameter value (see examples above).

[Enum] Header output type (default='Plain text')

The way how the header content will be pre-processed before writing to the page. It may have one of the following values:

  • Plain text
    • Means, that the text will be shown as is.
    • (Technical) In this case the text is escaped before being shown, so '<' becomes '&lt;' and so on.
  • HTML
    • Means, that the text will not be escaped so you may specify or even calculate a correct HTML code to add any formatting or an image to your text.
    • In this case some additional checks are performed.
[Enum] Body content type (default='Single expression')

Specifies, how the Body content parameter text should be processed - whether it is a plain text or a single formula or a mix of formulas and text. This parameter may have one of the following values:

  • Text only
    • Means, that the specified text will be shown as is. In this case no formulas are searched for in it.
    • Example: "Text".
  • Single expression
    • Means, that the specified text is a formula, which should be calculated and its result will be shown.
    • Example body content: "'Child pages: ' & JSONARRAYLENGTH(CurrentItem.children.page.results)".
  • Text and expressions in square braces
    • Means, that there are the formulas in the text, enclosed in square brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example body content: "Child pages: [JSONARRAYLENGTH(CurrentItem.children.page.results)]".
  • Text and expressions in curly braces
    • Means, that there are the formulas in the text, enclosed in curly brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example body content: "Child pages: {JSONARRAYLENGTH(CurrentItem.children.page.results)}".
[String] Body content (default=''(Empty value))  Specifies the cell body content text. This value is processed according to Body content type parameter value (see examples above).
[Enum] Body output type (default='Plain text')  Specifies the way how the body content will be pre-processed before writing to the page. It may have one of the following values:
  • Plain text
    • Means, that the text will be shown as is.
    • (Technical) In this case the text is escaped before being shown, so '<' becomes '&lt;' and so on.
  • HTML
    • Means, that the text will not be escaped so you may specify or even calculate a correct HTML code to add any formatting or an image to your text.
    • In this case some additional checks are performed.
[Enum] Footer content type (default='Text only')

Specifies, how the Footer content parameter text should be processed - whether it is a plain text or a single formula or a mix of formulas and text. This parameter may have one of the following values:

  • Text only
    • Means, that the specified text will be shown as is. In this case no formulas are searched for in it.
    • Example: "Column A".
  • Single expression
    • Means, that the specified text is a formula, which should be calculated and its result will be shown.
    • Example header content: "'Total: ' & JSONARRAYLENGTH(AllItems)".
  • Text and expressions in square braces
    • Means, that there are the formulas in the text, enclosed in square brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example header content: "Total: ( [JSONARRAYLENGTH(AllItems)]".
  • Text and expressions in curly braces
    • Means, that there are the formulas in the text, enclosed in curly brackets. All these formulas will be calculated and replaced with the calculation results.
    • Example header content: "Total: {JSONARRAYLENGTH(AllItems)}".
[String] Footer content (default=''(Empty value)) Specifies the footer content text. This value is processed according to Footer content type parameter value (see examples above).
[Enum] Footer output type (default='Plain text')

The way how the footer content will be pre-processed before writing to the page. It may have one of the following values:

  • Plain text
    • Means, that the text will be shown as is.
    • (Technical) In this case the text is escaped before being shown, so '<' becomes '&lt;' and so on.
  • HTML
    • Means, that the text will not be escaped so you may specify or even calculate a correct HTML code to add any formatting or an image to your text.
    • In this case some additional checks are performed.