Fuego.Sql : BAMQuery

The BAMQuery component executes SELECT type queries on the Oracle BPM BAM (Business Activity Monitoring) database. This component is used for populating the graphic charts of Oracle BPM Dashboards.

The BAMQuery component is similar to the DynamicSQL component. However, unlike the DynamicSQL component, you do not specify the external resource configuration for the database. BAMQuery is constrained to execute SELECT type queries on the Oracle BPM BAM database.

Example 1: SQL Query to Obtain Data About Workload of Instances

// Define query statement
query as String
query = "select SUM(quantity) as quantity"
    + " from bam_Activities, bam_Processes, bam_Workload"
    + " where bam_Workload.snapshotTime in (select lastSnapshotTime"
    + " from bam_LastSnapshot)"
    + " and bam_Processes.processId like ?"
    + " and bam_Activities.processIn = bam_Processes.processIn"
    + " and bam_Activities.activityId not like ?"
    + " and bam_Activities.activityIn = bam_Workload.activityIn"


// Define query arguments
queryArgs as Any[]
queryArgs = ["Process%","%[MARK]"]

// Execute query
bamQuery as BAMQuery
bamQuery = BAMQuery()
iterator as Iterator(Any[String])
iterator = execute(BAMQuery, sql : query, inParameters : queryArgs)
return iterator
      

Example 2: SQL Query to Obtain Data About Process Performance

// Define query statement
query as String
query = "select SUM(taskTime) as taskTime"
    + " from bam_ProcessPerformance, bam_Processes"
    + " where bam_Processes.processId like ?"
    + " and bam_Processes.processIn = bam_ProcessPerformance.processIn"


// Define query arguments
queryArgs as Any[]
queryArgs = ["Process%"]

// Execute query
bamQuery as BAMQuery
bamQuery = BAMQuery()
iterator as Iterator(Any[String])
iterator = execute(BAMQuery, sql : query, inParameters : queryArgs)
return iterator
      
Related reference
Fuego.Sql : DynamicSQL