Uploaded image for project: 'Camunda Optimize'
  1. Camunda Optimize
  2. OPT-1641

Automatically import complex object variables for more expressive reports

XMLWordPrintable

    • 1
    • L

      • given:
        • As an Optimize user, I have several processes started in my runtime platform
        • the process instances contain complex variable in JSON format
        • I start Optimize and it imports the data including the data contained in the complex JSON variables
      • when:
        • I create a process/decision report grouped by variable or filtered by a variable
        • I choose a subvariable extracted from a complex variable
      • then:
        • the subvariable behaves exactly as a regular variable

      Questions:

      • What should we do in case the complex variable is there but not the field?
        • Leave it blank
      • How do we group variables that don't have the complex variable?
        • Same as other variables
      • How are we dealing with arrays in JSON variables?
        • Provide an index value (users.pets.cats.1.name = Fluffy)
      • How can I define the field by which I want to group/filter?
        • Select an extracted sub-variable
      • What should we do if the variable has a lot of nesting? (e.g. define max depth)
        • Flatten it into a single value

      Hint:
      Check the flattening implementation from SUPPORT-7449.

       

      Scope summary from kickoff:

      • We want to do 2 things to import complex variable:
        1. Import entire raw value as one variable
        2. Flatten raw variable into multiple variables, one  for each property
      • Example: 
        instance has variable "user":{"firstname": "John", "lastName": "Smith"}.
        After import, we would have 3 variables: 
        • 1 named "user" with value "{"firstname": "John", "lastName": "Smith"}"
        • 1 named "user.firstName" with value "John"
        • 1 named "user.lastName" with value "Smith"
      • Note that flattened vars values can have  other primitive types than String as well (eg "user.age" with value 25)

        This is the controller panel for Smart Panels app

              Unassigned Unassigned
              felix.mueller Felix Mueller
              Helene Waechtler Helene Waechtler
              Votes:
              7 Vote for this issue
              Watchers:
              7 Start watching this issue

                Created:
                Updated:
                Resolved: