Genpact Cora Knowledge Center

Support

Sample Archiving Policies

V9.9.2 and later

Overview

Below are three examples for archiving policies. The examples are based on the Cora Case Manager or Cora OpsManager solution, but you can use them as a starting point for any other solution.

IMPORTANT
Archiving is irreversible. After archiving, the data is deleted from the Cora Orchestration operational database, and is no longer accessible for standard workflow execution.

We recommend to test or check any archive policy on a non-prod environment and make sure that it is not deleting any required operational data. Checking archive policies on non-prod environment ensures that you can review the archived data and validate its removal from the operational database.

For example:

Archiving workflow with Email Listener activity potentially removes from the operational database ALL the records, including email attachments, related to the workflow instances. 

If the email attachments are not being duplicated to the case instance, then you might need to exclude the attachments tables from the archive policy and set moveFilesToFilesArchiveStorage=false.

Example 1 – Archive closed cases

Archiving cases closed over six months, where status code <> 40 (closed as Spam), adding the field “Originated Email” to the index, including child processes.

{
  "collector": {
    "workflowSpaceId": "65de30ee-449f-48fd-b592-6b9eba513f57",
    "variables": [
      {
        "name": "ICMGCaseStatusCode",
        "parameterName": "",
        "dbType": "Int32",
        "value": "40",
        "comparisonOperator": "neq",
        "logicalOperator": "none"
      }
    ],
    "olderThan": {
      "amount": 6,
      "timeUnit": "m"
    },
    "archiveWhenOpenChildrenExists": true,
    "archiveAsStandAlone": true,
    "childWorkflowSpaceIdsToExclude": []
  },
  "archive": {
    "defaultArchiveGroup": "all",
    "tables": [
      {
        "schema": "dbo",
        "name": "UWF65DE30EE449F48FDB5926B9EBA513F57",
        "alias": "Variables",
        "masterInstanceColumnName": "fldIWfId",
        "columns": [
          {
            "name": "ICMLOriginatedEmail",
            "alias": "Originated Email"
          }
        ],
        "indexColumns": [
          {
            "name": "ICMLOriginatedEmail",
            "indexColumnName": "Originated Email"
          }
        ],
        "action": "Archive"
      }
    ],
    "simulationMode": false,
    "moveFilesToFilesArchiveStorage": true
  }
}

Example 2 – Archive cases closed as spam

Archiving any closed cases, where status code = 40 (closed as Spam), without adding an index, including child processes.

{
  "collector": {
    "workflowSpaceId": "65de30ee-449f-48fd-b592-6b9eba513f57",
    "variables": [
      {
        "name": "ICMGCaseStatusCode",
        "parameterName": "",
        "dbType": "Int32",
        "value": "40",
        "comparisonOperator": "eq",
        "logicalOperator": "none"
      }
    ],
    "olderThan": {
      "amount": 0,
      "timeUnit": "m"
    },
    "archiveWhenOpenChildrenExists": true,
    "archiveAsStandAlone": true,
    "childWorkflowSpaceIdsToExclude": []
  },
  "archive": {
    "defaultArchiveGroup": "all",
    "tables": [],
    "simulationMode": false,
    "moveFilesToFilesArchiveStorage": true
  }
}

Example 3 – Archive email listener processes

Archiving email listener processes closed over 365 days.

{
  "collector": {
    "workflowSpaceId": "1525a9c4-11f1-441f-be7c-ba469e9ea0e3",
    "variables": [],
    "olderThan": {
      "amount": 365,
      "timeUnit": "d"
    },
    "archiveWhenOpenChildrenExists": true,
    "archiveAsStandAlone": true,
    "childWorkflowSpaceIdsToExclude": []
  },
  "archive": {
    "defaultArchiveGroup": "all",
    "tables": [
      {
        "schema": "dbo",
        "name": "tblEmailListenerMessages",
        "alias": "Email Listener Messages",
        "masterInstanceColumnName": "fldIWfId",
        "columns": [
          {
            "name": "fldSubject",
            "alias": "Subject"
          }
        ],
        "indexColumns": [
          {
            "name": "fldSubject",
            "indexColumnName": "EmailSubject"
          },
          {
            "name": "fldFrom",
            "indexColumnName": "EmailFrom"
          }
        ],
        "action": "Archive"
      }
    ],
    "simulationMode": false,
    "moveFilesToFilesArchiveStorage": true
  }
}