Need guidance on dynamic motor amps report based on HOA value (Ignition Reporting)

Hello everyone,

I’m currently working on a Development Practice Test and need guidance on implementing a specific Ignition Report requirement. I’ve gone through the Reporting module documentation, but I’m struggling with the dynamic behavior expected in this task.

Requirement Details

I need to create a report that analyzes motor “amps” historical tag data with the following conditions:

The end date/time of the report should always be the current time.

The start date/time should be user-selectable.

The report should display a dynamic number of time series charts.

Only motors that are currently running should be included.

A motor is considered running if its HOA tag value = 1.

This HOA condition should be evaluated at the time the report is executed.

Each included motor should display its amps historical tag trend.

Current Setup

Motors are configured as UDTs

Each motor has:

amps tag (historical enabled)

HOA tag (0/1)

Motors are located under a common tag folder

Using the Ignition Reporting module

Tag history provider is already configured and working

Challenges / Questions

I’m looking for best practices or examples for the following:

Filtering motors dynamically

How can I filter motors based on the current value of the HOA tag when the report runs?

Should this be done using:

A Named Query?

A scripting data source?

A parameterized Tag History query?

Dynamic number of charts

What is the recommended way to generate a variable number of time series plots based on how many motors meet the HOA = 1 condition?

Is this typically handled using:

Data keys + Table Groups?

One chart per motor using dynamic sub-reports?

Or a single chart with multiple dynamic pens?

Evaluating “current” HOA value

Since the amps data is historical but the HOA condition is real-time, what is the correct approach to:

Read the current HOA value

Then use that result to decide which tag history paths to include in the report?

Start date selection

Is it best practice to expose the start date as a report parameter, while keeping the end date bound to now()?

Goal

My goal is to build this report in a clean, scalable way that aligns with Ignition best practices and would be acceptable in a real-world project or certification-style assessment.

Any examples, screenshots, documentation references, or explanations would be greatly appreciated.

Thanks in advance for your help!

What have you tried so far? This is obviously AI generated, we aren't here to do your entire job for you. If you have a specific point you are stuck on when you have tried to do this, maybe show us that?

3 Likes