-
Sub-task
-
Resolution: Fixed
-
L3 - Default
-
None
-
None
Acceptance Criteria
- A private REST API endpoint exists (see kick-off discussion outcome [1])
- The endpoint returns historic process instances in CSV where each property and variable has its own column
- Only return variables from process instance scope (product management requirement)
- Only number and text-based variables can be exported; no support for complex variable types (product management requirement)
- The result can be configured via the request payload (product management requirement):
- To be exported columns mapped to (1) historic process instance properties, (2) variable properties, and column order
- Process instances can be exported by IDs or historic process instance query
- Endpoint respects query max results limit
- Endpoint performs authorization checks
- Each result set of an entity type is queried by a dedicated SQL statement (see
CAM-14297) - The Jackson CSV library is used to write the CSV (see
CAM-14320andCAM-14296) - Sorting is not supported since the sorting capabilities of spreadsheet software is usually much more convenient and powerful
- CSV result
- The column header labels are selected based on the translation
- A null value is shown as <<NULL>>
- When a variable doesn't exist, the cell remains empty
- Dates are displayed as configured in the JacksonConfigurator [2]
- An unsupported type is shown as <<UNSUPPORTED TYPE>>
[1] https://jira.camunda.com/browse/CAM-13097?focusedCommentId=215344&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-215344
[2] https://github.com/camunda/camunda-bpm-platform/blob/master/engine-rest/engine-rest/src/main/java/org/camunda/bpm/engine/rest/mapper/JacksonConfigurator.java