Skip to main content

Celonis Product Documentation

Process Explorer

You might be using a deprecated configuration

In July 2021, we implemented several improvements on the Process Explorer. For these improvements to work properly, a new configuration format is required.

Check that your configuration matches the schema below.

If you use an old format, make sure you migrate to the new schema as soon as possible, because it will be deprecated in Q1 2022.

Introduction to Process Explorer

Process Explorer focuses on showing the most frequent activities and connections. Any number of Event Logs can be visualized. There are multiple types of transitions between Event Logs that can be defined.

Single Process
41190288.png

Component YAML configuration

id: myProcess
type: process-explorer
settings:
  eventLogs:
    - eventLog: O2C_EVENTLOG

Knowledge Model YAML configuration

kind: BASE
metadata:
  key: MEL_DEMO
  displayName: Multi Event Log Explorer Demo
dataModelId: <-your-dm-id->
eventLogsMetadata:
  eventLogs:
    - id: O2C_EVENTLOG
          displayName: Order to Cash
      pql: '"_CEL_O2C_ACTIVITIES"."ACTIVITY_EN"'

Connect the KM

Do not forget to connect the Knowledge Model within the view (metadata.knowledgeModelKey)

Multiple Processes
41190298.png

Component YAML configuration

id: myProcess
type: process-explorer
settings:
  eventLogs:
    - eventLog: O2C_EVENTLOG
    - eventLog: P2P_EVENTLOG

Knowledge Model YAML configuration

kind: BASE
metadata:
  key: MEL_DEMO
  displayName: Multi Event Log Explorer Demo
dataModelId: <-your-dm-id->
eventLogsMetadata:
  eventLogs:
    - id: O2C_EVENTLOG
          displayName: Order to Cash
      pql: '"_CEL_O2C_ACTIVITIES"."ACTIVITY_EN"'
    - id: P2P_EVENTLOG
          displayName: Purchase to Pay
      pql: '"_MEL_EKPO_ACTIVITIES"."ACTIVITY_EN"'
Transitions

The connections between two processes are called Transitions. Based on the timestamps of both processes, there are different strategies that the user can choose from to let Celonis derive the transitions from the timestamps. Learn more about transitions here.

41190297.png

Component YAML configuration

id: myProcess
type: process-explorer
settings:
  eventLogs:
    - eventLog: O2C_EVENTLOG
    - eventLog: P2P_EVENTLOG 
# transitions:
#   - transition: XYZ

Note on Transitions

Transitions are automatically added based on the selected event logs above.

You can customize which transitions are added by explicitly using the Widget Configurations below.

Knowledge Model YAML configuration

kind: BASE
metadata:
  key: MEL_DEMO
  displayName: Multi Event Log Explorer Demo
dataModelId: <-your-dm-id->
eventLogsMetadata:
  eventLogs:
    - id: O2C_EVENTLOG
          displayName: Order to Cash
      pql: '"_CEL_O2C_ACTIVITIES"."ACTIVITY_EN"'
    - id: P2P_EVENTLOG
          displayName: Purchase to Pay
      pql: '"_MEL_EKPO_ACTIVITIES"."ACTIVITY_EN"'
  transitions:
    - id: P2P_transit_O2C
      displayName: "From P2P to O2C"
      firstEventLogId: P2P_EVENTLOG
      secondEventLogId: O2C_EVENTLOG
      type: NON_INTERLEAVED
Custom KPI Views
50745506.png
50745508.png

Component YAML configuration

id: myProcess
type: process-explorer
settings:
  eventLogs:
    - eventLog: O2C_EVENTLOG
    - eventLog: P2P_EVENTLOG

Component YAML configuration

kind: BASE
metadata:
  key: MEL_DEMO
  displayName: Multi Event Log Explorer Demo
dataModelId: <-your-dm-id->
kpis:
  - id: KPI_AUTOMATION_RATE_O2C
    displayName: ...
    pql: AVG(...)
  - id: KPI_AUTOMATION_RATE_P2P
    displayName: ...
    pql: AVG(...)
  - id: THROUGHPUT_TIME_O2C
    displayName: ...
    pql: AVG(
            TARGET(REMAP_TIMESTAMPS("_CEL_O2C_ACTIVITIES"."EVENTTIME", milliseconds ), "_CEL_O2C_ACTIVITIES"."ACTIVITY_EN")
            - SOURCE(REMAP_TIMESTAMPS("_CEL_O2C_ACTIVITIES"."EVENTTIME", milliseconds ), "_CEL_O2C_ACTIVITIES"."ACTIVITY_EN")
         )
  - id: THROUGHPUT_TIME_P2P
    displayName: ...
    pql: ...
  - id: TRANSIT_KPI_THROUGHPUT_O2C_P2P
        displayName: ...
    pql: AVG( ABS( 
           remap_timestamps("_CEL_O2C_ACTIVITIES"."EVENTTIME", milliseconds)
           - remap_timestamps(
              TRANSIT_COLUMN(
                TIMESTAMP_NONINTERLEAVED_MINER("_CEL_P2P_ACTIVITIES"."ACTIVITY_EN", "_CEL_O2C_ACTIVITIES"."ACTIVITY_EN"),
                "_CEL_P2P_ACTIVITIES"."EVENTTIME"
              ),
              milliseconds
             )
         ))
eventLogsMetadata:
  eventLogs:
    - id: O2C_EVENTLOG
          displayName: Order to Cash
      pql: '"_CEL_O2C_ACTIVITIES"."ACTIVITY_EN"'
          recordId: <RECORD_ID>
    - id: P2P_EVENTLOG
          displayName: Purchase to Pay
      pql: '"_MEL_EKPO_ACTIVITIES"."ACTIVITY_EN"'
          recordId: <RECORD_ID>
  transitions:
    - id: P2P_transit_O2C
      displayName: "From P2P to O2C"
      firstEventLogId: P2P_EVENTLOG
      secondEventLogId: O2C_EVENTLOG
      type: NON_INTERLEAVED
  kpiViews:
    - id: AUTOMATION
      displayName: Automation Rate View
      description: All KPIs about Automation
      icon: science
      eventLogKpis:
        - id: AUTOMATION_O2C
          displayName: AUTOMATION_O2C
          eventLogId: O2C_EVENTLOG
          nodeKpiIds:
            - KPI_AUTOMATION_RATE_O2C
                        - OTHER_KPI_O2C   # you can add multiple node kpis to appear on the same node.
          edgeKpiIds:
            - THROUGHPUT_TIME_O2C
        - id: AUTOMATION_P2P
          displayName: AUTOMATION_P2P
          eventLogId: P2P_EVENTLOG
          nodeKpiIds:
            - KPI_AUTOMATION_RATE_P2P
                        - OTHER_KPI_P2P   # you can add multiple node kpis to appear on the same node.
          edgeKpiIds:
            - THROUGHPUT_TIME_P2P
      transitionKpis:
        - id: TRANSIT_TPT_O2C_P2P
          displayName: Throughput Time between O2C and P2P
          transitionId: P2P_transit_O2C
          kpiId: TRANSIT_KPI_THROUGHPUT_O2C_P2P
Profile View
50727586.gif

To connect a Profile View with an Event Log you need to create a Profile View Board and set the knowledgeObjectId to be the same as the RecordID defined in the EventLog ObjectKnowledge Model. The Profile View Board the user configures will have two variables ${activityName} and ${eventLogFormula} which can be used to tailor the board based on the Activity and EventLog selected.

Profile Views

For deprecated configurations, profile views are not fully supported.

IMPORTANT: For the profile to open correctly, you must have the EventLogs defined as RECORD.ATTRIBUTE in the components settings. Having a deprecated configuration(ATTRIBUTE) means the Profile View of the EventLog will not be found.

Note

The Profile View board needs to be published to work, unpublished boards can not be used as Profile View.

Limitations:

  • Profile View always opens from the right, which currently can't be changed.

  • Profile View opens on top of the current Board so it can cover other components or the Explorer itself if the Explorer width fills all the board.

Tip

It's a good idea to preserve some empty space in the mainboard which would be covered when the profile view is open.

Widget Configurations

Property

Type

Description

eventLogs*

Array [

Object {

eventLog*: <Knowledge Model Event Log>

id: string OR number

scope: "HIDDEN" OR "IMMUTABLE" OR "DISABLED" OR "disabled" OR "hidden" OR "immutable"

order: string OR number

}

]

Define one or more knowledge model event logs.

transitions

Array [

Object {

transition*: <Knowledge Model Transition>

id: string OR number

scope: "HIDDEN" OR "IMMUTABLE" OR "DISABLED" OR "disabled" OR "hidden" OR "immutable"

order: string OR number

}

]

OR

false

Define transitions between connected event logs. This property comes from the knowledge model defined transitions.

Default: all transitions defined on the knowledge model will be displayed on the component.

Setting this property to false will hide all transitions.

Setting this property to a knowledge model transition array will show only the transitions specified in yaml (if they exist in the knowledge model).

showAllConnections

boolean

A flag indicating if the process explorer should show all possible connections for the first variant level(Connections Slider in Max value).

Default: false

Warning: Not advised to be used in Multi-event logs because it will decrease readability due to a number of edges.

storeState

boolean

A flag indicating if the process explorer should save the state of the sliders and collapsed eventLogs, so that if the browser is reloaded or the board is switched when returning, the prior state is kept.

Default: true.

Warning: Setting this property to false will permanently delete all prior saved states for this component. Switching it back to true will revert force the widget to start saving the sliders/collapsed states again.

Deprecated Configuration [EOL 28.02.2021]

Components that implement the following configuration will not be supported after 28.02.2022.

Property

Type

Description

eventLogs*

Array [ Knowledge Model Attribute ]

OR

Array [

Object {

attribute*: <Knowledge Model Attribute>

id: string OR number

scope: "HIDDEN" OR "IMMUTABLE" OR "DISABLED" OR "disabled"OR "hidden" OR "immutable"

order: string OR number

}

]

Define one or more event log attributes. An event log attribute has to reference a column from an activity table. Referencing attributes is done using RECORD.ATTRIBUTE, you could reference directly the ATTRIBUTE but this is deprecated and will limit you from using some features of the Process Explorer.

transitions

Object {

type: "interleaved" | "non-interleaved"

eventLog1: <Knowledge Model Attribute>

eventLog2: <Knowledge Model Attribute>

}

Define transitions between connected event logs. Only values defined in the eventLogs property are accepted.

showAllConnections

boolean

A flag indicating if the process explorer should show all possible connections for the first variant level(Connections Slider in Max value).

Default: false

Warning: Not advised to be used in Multi-event logs because it will decrease readability due to the number of edges.

storeState

boolean

A flag indicating if the process explorer should save the state of the sliders and collapsed eventLogs, so that if the browser is reloaded or the board is switched when returning, the prior state is kept.

Default: true.

Warning: Setting this property to false will permanently delete all prior saved states for this component. Switching it back to true will revert force the widget to start saving the sliders/collapsed states again.

( * ) Properties marked with an asterisk are required.