Which would be inline with the Best practices?

Hi,
We have the need for a Tempo report which should report based on data from 3 different process models. The fields to be included in report have common names across these 3 process models. Eg. all 3 process models have these fields - processId/requestorName/approverName which will be displayed on the Report.

We have 2 ideas in mind to implement this:
1) Create process-backed records for each of these process models. Use these 3 records as datasources within the tempo report.
2) Store data from the 3 process models in the same data entity. Create an entity-backed record for this entity and use that as datasource for the tempo report.

Could you pls tell which one would work better (or not work at all). Which would be inline with the Best practices?...

OriginalPostID-105516

OriginalPostID-105516

  Discussion posts and replies are publicly visible

  • As a matter of fact, both approaches are equally valid. Here are the points you need to keep in mind.
    In a process approach, creating the report is extremely straight-forward where you create a process report based on 3 context. Get the data in your report and action on it. As long as the column names are same across the three models, your report will render uniformly. The one thing you need to remember here is data retention - where the reporting data should exist in Appian - so the duration of the report plays a vital role here.
    On the other hand, if its a report from DB, if you have one table, then its straight-forward using a query rule. If you have multiple tables, then you need to create a view that spans across the three tables and map it to a CDT and apply the same approach. The advantage here is that you can report on data from any length of time.
    In general, Appian in memory Analytics is extremely fast. Where possible, you may want to use this (i.e. for BAM data). But for long term reporting, or historic reporting, architect to read from DB. Monitor the table on a regular basis to identify options to optimize your call - i.e. by creating indices.
  • please define how can we write annotation for view in .xsd ...??