# GM - Report Table

## **Documentation**

**GM - Report Table** component is used to display a Report table on any Lightning page (**Home**, **App**, **Record**). It supports **Tabular**, **Summarized** and **Matrix** Reports. The report filters can be configured through the App Builder and using the current object on a Record Page.

**Use case:** Display a summarized report of opportunities filtered by current account.

## **Specification**

<table data-full-width="true"><thead><tr><th width="246">Property</th><th width="119.33333333333331">Type</th><th>Description</th></tr></thead><tbody><tr><td>Report Developer Name *</td><td>String</td><td>The report developer name. This is a unique name across the org.</td></tr><tr><td>Details Row</td><td>Boolean</td><td><p>Check this option to show details row. </p><p></p><p>This option is useful for Summarized report only.</p></td></tr><tr><td>Subtotals</td><td>Boolean</td><td><p>Check this option to show Subtotals row. </p><p></p><p>This option is useful for Summarized report only.</p></td></tr><tr><td>Grand Total</td><td>Boolean</td><td><p>Check this option to show Grand Total header. </p><p></p><p>This option is useful for Summarized report only.</p></td></tr><tr><td>Filter</td><td>String</td><td><p>JSON Report Filters. </p><pre class="language-json"><code class="lang-json">{
    "$report_field": {
        "value": "$field_value"
    }
}
</code></pre><p>Where <strong>$report_field</strong> is the name of field to filter on an <strong>$field_value</strong> is the value of the filter. </p><p></p><p><strong>$recordId</strong> can be used to reference the current recordId. </p><p></p><p>Below is an example to filter an opportunity report based on the current account. </p><pre class="language-json"><code class="lang-json">{
    "ACCOUNT_ID": {
        "value": "$recordId"
    }
}
</code></pre><p></p><p><strong>$record</strong>.<strong>fieldApiName</strong> can be used to filter by any record field when the component is configured on a Lightning Record Page.</p></td></tr><tr><td>Hide Refresh</td><td>Boolean</td><td>Check this checkbox to hide the refresh button</td></tr><tr><td>Hide Expand</td><td>Boolean</td><td>Check this checkbox to hide the Expand button.</td></tr><tr><td>Hide Footer</td><td>Boolean</td><td>Check this checkbox to hide the footer. The user will not be able to toggle <strong>Details</strong> <strong>Row</strong>, <strong>Sub Totals</strong> and <strong>Grand Total</strong></td></tr><tr><td>Custom Label</td><td>Boolean</td><td>Set a specific label instead of the report label. When a custom label is defined, the user will no be able to navigate to the report.</td></tr><tr><td>Table Height</td><td>Integer</td><td>Set this property if you want to control the height. The user has to scroll vertically to see more records.</td></tr></tbody></table>

## **API Reference**

{% tabs fullWidth="true" %}
{% tab title="reportTableLWC.js-meta.xml" %}

```xml
<?xml version="1.0" encoding="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadata" fqn="reportTable">
    <apiVersion>55.0</apiVersion>
    <masterLabel>GM - Report Table</masterLabel>
    <isExposed>true</isExposed>
    <targets>
        <target>lightning__RecordPage</target>
        <target>lightning__AppPage</target>
        <target>lightning__HomePage</target>
    </targets>
    <targetConfigs>
        <targetConfig targets="lightning__RecordPage,lightning__AppPage,lightning__HomePage">
            <property
                name="developerName"
                type="String"
                label="Report Developer Name"
                description="Report Developer Name"
            />
            <property name="customLabel" type="String" label="Custom Label" description="Custom Report Label" />
            <property name="filter" type="String" label="Filter" description="JSON Report Filters" />
            <property name="detailsRow" type="Boolean" label="Details Row" description="Enable Details Row" />
            <property name="subtotals" type="Boolean" label="Subtotals" description="Enable Subtotals" />
            <property name="grandTotal" type="Boolean" label="Grand Total" description="Enable Grand Total" />
            <property name="showBorder" type="Boolean" label="Show Border" description="Show Border" />
            <property name="hideRefresh" type="Boolean" label="Hide Refresh" description="Hide the Refresh Button" />
            <property name="hideExpand" type="Boolean" label="Hide Expand" description="Hide the Expand Button" />
            <property name="hideFooter" type="Boolean" label="Hide Footer" description="Hide the Footer" />
            <property name="height" type="Integer" label="Table Height" description="Set the table height" />
        </targetConfig>
    </targetConfigs>
</LightningComponentBundle>
```

{% endtab %}
{% endtabs %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gridmate.io/package-reference/components-library/gm-report-table.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
