--- title: "Configuring Periodic Reports" slug: "configuring-periodic-reports" updated: 2026-08-26T08:24:23Z published: 2026-08-26T08:24:23Z canonical: "learn.servitly.com/configuring-periodic-reports" stale: true --- > ## Documentation Index > Fetch the complete documentation index at: https://learn.servitly.com/llms.txt > Use this file to discover all available pages before exploring further. # Configuring Periodic Reports Reports let you deliver periodic insights to your users without asking them to log into the DPS. A report is generated automatically according to a schedule and sent as a PDF attached to an email. Different types of reports are available: - **General reports**: Built on a general template and generated in the context of a business entity (customer, partner, or organization). Use it for aggregated content, such as a monthly summary of all the products of a customer. - **Thing Definition reports**: Built on a thing definition template and generated in the context of a single thing. Use it for product-level content, such as the performance of a specific machine over the last quarter. The configuration steps are the same for all types; the difference lies, other than the target audience (customer, partner, or organization), in the template used and in the context in which the report is generated. ## Configuring a General report 1. Enter the *Interfaces / Reports* page and select the *General* tab. 2. Select the type of user the report is addressed to: customer, partner, or organization users. 3. Press the *Add Report* button and provide the report name. 4. Complete the report definition: 1. *Description*: A descriptive text of the report content and purpose. 2. *File Name*: The name of the PDF file attached to the email. 3. *Title*: The title shown on the report cover. 4. *Recurrence*: Weekly, Monthly, Quarterly, or Half-yearly, together with the day on which the report must be generated. 5. *Report Date Range*: The period of data to load, consistent with the selected recurrence (e.g., Last Month). 6. *Template*: the general template defining the report content. 7. *Subject and Body*: The subject and the HTML body of the email delivering the report. 5. Save the report. 6. If the report is relevant only to part of your audience, restrict the recipients by selecting the *Target User Types*. When no user type is selected, all the users of the business entity can receive the report. 7. Preview the report, and when the content is correct, press the *Activate* button. Report generation occurs after midnight of the scheduled day, taking into account the time zone of the users associated with the target business entity. For the detailed description of every field of a report definition, refer to the [Reports](/docs/reports) article. ## Configuring a Thing Definition report 1. Enter the *Interfaces / Reports* page and select the *Thing Definitions* tab. 2. Select the target Thing Definition. 3. Press the *Add Report* button and provide the report name. 4. Complete the report definition with the same information described for the general report. In this case, the Template must be a thing definition template belonging to the selected Thing Definition. 5. Save the report. 6. Preview the report, and when the content is correct, press the Activate button. A thing definition report is generated for each thing of that Thing Definition, taking into account the time zone of the thing. Reports follow the Thing Definition inheritance model: a report defined on a super Thing Definition is available to all the derived ones, with no duplicated configuration. Define the report once at the highest level that makes sense, and override it locally only where a specific Thing Definition requires different content or scheduling. For the detailed description of every field of a report definition, refer to the [Reports](/docs/reports) article. ## Defining the report template The content of the report is defined through a standard template. To create the template, enter the *Interfaces / Templates* page and add a General template for a general report or a Thing Definition template for a thing definition report. For more details, refer to the [Template Definition](/v1/docs/template-definition) article. A report is static content: page controls and filtering buttons (period fields, search fields, and buttons) are not usable, so build the template with widgets only. ### Context Period While designing the template, you can reference the `context_period` variable instead of setting a loading period on each widget. When the report is generated, this variable provides the `startTimestamp` and `endTimestamp` corresponding to the report date range, so the same template automatically follows the configured recurrence. ```xml
               
``` If you are developing a custom widget, you can leverage the [appUtils.getContextPeriod()](/v1/docs/app-utils) method to access the context period programmatically. ### Page Orientation You can change the page orientation by adding the `landscape-page` CSS class on the template rows (the default orientation is portrait). ```xml
 
 
``` Every time the orientation changes, a page break is automatically inserted. ### Page Break In case you need an explicit page break, you can add this to the template. ```xml
 
``` ## Previewing the report Before activating a report, check how the generated PDF looks: 1. Select the report definition you want to preview. 2. Select a [User View](/v1/docs/user-view) in the Console top bar to define the context used to generate the report (e.g., a customer). For a thing definition report, select the location and the thing as well. 3. Press the *Preview* button. A new browser tab opens with the report cover and the template rendered with the selected context. Use the print function of your browser to check the final layout, page orientation, and breaks included. ## Letting DPS users receive the report An active report is sent only to the users who have opted in. In the DPS, each user can enable the reception of periodic reports from the Reports tab of their [profile](/v1/docs/dps-user-profile#notifications) page. The tab is visible only when at least one active report exists for that user. ## Related - [Reports](/reports.md) - [Template Definition](/template-definition.md) - [Templates](/templates.md)