Generate Report (Column Charts) from Expression Rule

I want to generate a Column Chart from Expression rule which contains query aggregation on two columns , How can I generate a Column Chart for this.

Below is the code of my Expression Rule

index(
  a!queryEntity(
    entity: cons!MBUA_DSE_TESTSITEDATA,
    query: a!query(
      aggregation: a!queryAggregation(
        {
          a!queryAggregationColumn(field: "site", isGrouping: true()),
          a!queryAggregationColumn(field: "worktype", isGrouping: true()),

        }
      ),
      pagingInfo: a!pagingInfo(startIndex: 1, batchSize: 50)
    ),
    fetchTotalCount: false
  ),
  "data",
  null()
)

Below is the code on Interface having Column Chart:

a!localVariables(
  local!myData: rule!MBUA_readChartView(),
  {
    a!columnChartField(
      label: "Column Chart",
      categories: { "Category 1", "Category 2" },
      series: a!forEach(
        items: local!myData,
        expression: a!chartSeries(label: "Chart", data: fv!item.worktype)
      ),
      stacking: "NONE",
      showLegend: true,
      showTooltips: true,
      labelPosition: "ABOVE",
      colorScheme: "RAINFOREST",
      height: "MEDIUM",
      xAxisStyle: "STANDARD",
      yAxisStyle: "STANDARD"
    )
  }
)

I am getting No Data available on the chart when I am using "worktype" column , however for "site" column I am getting data

  Discussion posts and replies are publicly visible

Parents Reply
  • Hey Stefan,
    I achieved this my requirement using another approach but your approach also seems very nice .
    If I am not wrong , You want me to create a view which will contain a column having concatenated values of 'work type' and 'site' and then I will use that view to query our data.

    Approach which I have followed :

    I have looped on the distinct 'work type' to count the no of sites on distinct( 'work type' + 'site' ) and then getting the output in a Map and used that Map for items of chart,

Children