Updated for version: 0.2412.10

Report storage

Reports generated in Convier can be stored in a database (“internal”), or in an existing system, like Microsoft Dynamics (“external”). Storage and retriveal of externally stored reports are configured using data sources, analytics and actions.

Internal report storage

Internal storage is enabled by setting the following environment variables:

  • REPORT_STORAGE_JDBC_CONNECTION_STRING
  • REPORT_STORAGE_JDBC_USERNAME (Optional)
  • REPORT_STORAGE_JDBC_PASSWORD (Optional)

To verify that internal report storage is enabled, check the service log for the following message INFO - Internal report storage: enabled.

If enabled, the required table and columns needed are automatically created. A row is added to the table each time a user clicks “Save” on the report, so there can be multiple versions of the same task/case/report. Each row consists of the following data:

column type example
project_id ID of proejct aml
inserted Epoch ms 1735813124631
user_id ID of user saving the report user@acme.com
object_id ID of task/case/report EDD-1234-001
content Report JSON [{"sectionId": "Intro", "content": {...}}, ...]
loaded_data Report data JSON (if enabled) {"timestamp": ..., "object": {...}, "connected": {...}}
loaded_data_simplified Properties and data model {"object_types": ..., "field_types": {...}, "data": {...}}
section_texts Report section texts {"Intro": "Lorem ipsum...", ...}

Snowflake

To store reports in a snowflake database, add the following to the environment variables of the Convier docker container:

REPORT_STORAGE_JDBC_CONNECTION_STRING=jdbc:snowflake:; # to identify sql driver
REPORT_STORAGE_JDBC_SCHEMA=<schema>;
REPORT_STORAGE_JDBC_PROPERTIES=account:<account-id>,db:<database>,schema:<schema>,warehouse:<warehouse>;
REPORT_STORAGE_JDBC_AUTH_TYPE=client_credentials; # or: delegated
REPORT_STORAGE_JDBC_AUTH_SCOPE=api://<snowflake oauth app id>/.default;