Reporting Actions
Identity Automation Consulting Services will sometimes use Jaspersoft, a third-party reporting software, to create templates for Connect Action Sets to use that will export data as a branded PDF file for direct customer consumption. These are the actions used to access an existing template and convey data.
Once created, a .jrxml template file can be called within a Connect Action Set to output parameters, fields, and records in a customizable pdf or html format. Identity Automation provides this as a service to customers, but for those who want to use their own templates, the actions to use to call this file format are listed below.
Load a Jaspersoft .jrxml report definition.
Property | Value | Description |
---|---|---|
reportDef* | expression, variable | report definition |
parameters | expression, variable | Record or ECMAScript object containing report parameters |
data* | expression, variable | collection of records to be reported on |
format* | choice (pdf, html), text, expression, variable | collection of records to be reported on |
path* | text, expression, variable | path of report output file (relative to dss server managed file store) |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Note
Any image files referenced by the report definition need to be uploaded to the RapidIdentity Connect server in the same directory as the report definition. Generation of an HTML report also generates a directory named <path>_files
that contains image files referenced by the html report.
Load a Jaspersoft .jrxml report definition.
Property | Value | Description |
---|---|---|
path* | text, expression, variable | the path of the Jaspersoft JRXML report definition file (relative to dss server managed file store) |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
report = loadREportDefinition('report.jrxml') data = createArray() insertArrayItem(data, 0, {"employeeID": net.idauto.common.util.UUIDs.randomUUIDString(), "givenName": "John", "sn": "Doe", "mail": "jdoeexample.com", "sAMAccountName": "jdoe"}) insertArrayItem(data, 1, {"employeeID": net.idauto.common.util.UUIDs.randomUUIDString(), "givenName": "Homer", "sn": "Simpson", "mail": "hsimpson@example.com", "sAMAccountName": "hsimpson"}) insertArrayItem(data, 2, {"employeeID": net.idauto.common.util.UUIDs.randomUUIDString(), "givenName": "Bruce", "sn": "Wayne", "mail": "bwayne@example.com", "sAMAccountName": "bwayne"}) insertArrayItem(data, 3, {"employeeID": net.idauto.common.util.UUIDs.randomUUIDString(), "givenName": "John", "sn": "Wick", "mail": "jwick@example.com", "sAMAccountName": "jwick"}) insertArrayItem(data, 4, {"employeeID": net.idauto.common.util.UUIDs.randomUUIDString(), "givenName": "Lisa", "sn": "Simpson", "mail": "lsimpson@example.com", "sAMAccountName": "lsimpson"}) generated = generateReport(report, {"title": "The Report Title", "subtitle": "The Report Sub-Title"}, data, "pdf", "report.pdf")