Dynamic Reporting

Dynamic Reporting (powered by GHX ResiliencyAI) cross-joins data attributes across multiple datasets to create a true custom report. These reports use grouping and sorting to create more granular aggregated reports. All dynamic reports can be filtered, saved, and scheduled using SCA reporting features.

What makes Dynamic Reporting different than the current SCA Reporting Library?

  • The ability to join fields across existing reports to create a custom report.

  • Enhanced report-level Filtering options that allow for both And/Or operators.

  • Sort and Group features to better structure the report and create column aggregations.

If you prefer to watch a video, refer to the Videos topic to view videos about Dynamic Reporting and other GHX ResiliencyAI features.

Available Dynamic Reporting videos include an Introduction to Dynamic Reporting, which describes what it is, who it's for, and how to access and navigate the feature at a high-level.

We also have the How to Create a Custom Report With Dynamic Reporting video, which teaches you how to create a custom report to:

  • Consolidate critical GHX transaction data

  • Monitor PO status

  • Analyze trading partner performance

  • Identify opportunities for improved supply chain efficiency

How to Access Dynamic Reporting

Select Dynamic Reports > Explorer from the left-side navigation menu.

Explorer

This is the main Dynamic Reporting page where you can select your dataset or datasets that you want to work with then choose the columns you want on your report.

You will be able to choose from the following datasets:

  • Purchase Order Details

  • POA Details

  • ASN Details

  • Invoice Details

  • Transaction History

  • Exception Details

  • Perfect Order Exception Details

You can select one or multiple columns across each dataset to have on a single report. By default the main dataset select includes the default fields for that report.

Report Pick List

MAIN: This is your base dataset or your starting point.

JOIN: These are the data sets that you want to join to your main dataset.

Tip: To maximize your dataset it is generally a best practice to use PO Details as your main table. This is because most PO lines have a PO. If you start with an invoice as your main then join PO data then you are only getting PO data that has an Invoice.

Use the Pick List

After the MAIN is selected, you can pick from the remaining datasets to add attributes. Each attribute is tied to a business transaction line ID that GHX uses to track the line across each of the core 4 docs to identify updates and exceptions.

Once the desired attributes have been selected, select Run to view your report or move to the Sort or Groupsection.

Sort

Dynamic Reporting lets users have better control of how to sort reports by allowing them to sort by multiple columns and using a separate interface to manage the sorted columns.

The UI shows the order of the sorted columns and provides the option to change the order. There is also an indicator to allow for sorting by ascending or descending.

Group

The Group feature provides the ability to choose specific attributes as your grouped columns allowing for aggregations to the data. This expands the report from line-level data to aggregations like counts and sums.

Example:

Aggregation Options

Option Definition
COUNT Column values are counted when aggregating.
SUM Column values are summed when aggregating (quantitative only).
MIN Minimum value is picked when aggregating (quantitative, ordinal only).
MAX Maximum value is picked when aggregating (quantitative, ordinal only).

Tip: When using grouping, pay attention to the columns you want to group by and remove any unneeded columns from the report where the aggregations may not make sense.

Column Filtering

Dynamic Reporting Column Filters

  • Each column header provides an advanced, column-level filter.
  • The filter options for each column corresponds to the column type (Text, Number, Date).
  • User-selected filter values are saved with the report and are restored upon reloading the report.
  • Reports with column-level filters and no joining, grouping, or advanced filtering are expected to yield rows exactly like native reports.

Column Filtering with Grouping

  • Adding grouping columns to the report changes the behavior of column-level filters.
  • Column-level filters are applied post-aggregation, so non-grouped columns (i.e., aggregated columns) will provide filter options corresponding to the columns' chosen aggregation type.
    • For example, the column "Facility Name" is textual, so text-based filter options are provided. However, if the report is grouped by column "IDN Name", then "Facility Name" defaults to a COUNT aggregation. COUNT is numeric, so the text-based filter options for "Facility Name" are replaced with numerical filter options.

  • When columns are selected for grouping, any existing column-level filters will persist (even if the filter is no longer valid). If a column does not have an existing filter applied, it will automatically change its filter options to align with the column's chosen aggregation.
  • When the "Run" button is pressed, the report engine will validate each column-level filter. If one or more filters are no longer valid after grouping (e.g., a text-based filter is applied to an aggregated COUNT column), then a warning dialog appears to notify the user of the invalid filters.
    • From the dialog, the user has the option to Cancel the query or Remove the invalid filters and continue the query.

Advanced Filtering

Advanced Filtering provides a SQL-like interface for defining column and filter values. This open text filter allows for more flexibility from full report filtering than column. For example, you can use both ‘And’ and ‘Or’ logic to further filter down a dataset. You can also use simple arithmetic and equality functions like (less than/greater than).

Example Operators:

  • Logical

    • OR ("or”)

    • AND ("and”)

  • Equality

    • Equal ("="),

    • Not Equal ("!=),

    • Greater Than (">"),

    • Greater than or Equal (">="),

    • Less Than ("<"),

    • Less Than or Equal ("<="),

    • IN ("in"),

  • Arithmetic

    • ADD ("+"),

    • SUBTRACT ("-"),

    • MULTIPLY ("*"),

    • DIVIDE ("/"),

Advanced Filtering Example

Tip: When adding columns to the advanced filter, you can hover over the field in the pick list to view the full attribute name. Then add that name to the advanced filter with the operator and values to complete your filter.

Export and Save Reports

Select the Menu button next to Run to display additional actions. From here, users can Export or Save the report they have created.

Export

If the user selects Export, a window appears asking for the following inputs:

  • Report Name

    • Free text field to name report

  • Export File Type

    • CSV

    • Tab

    • Pipe

    • Excel

The file will auto download on the browser if it is within our size thresholds of being under 50,000 records. If the report is over 50,000 records, then users will see the pop-up below and will be prompted to save/schedule the report.

Save

If the user selects Save, a window appears asking for the following inputs:

  • Report Name

    • Free text field to name report

  • Description

    • Free text field to enter a report description

The saved report will appear on the My Reports screen where it can be scheduled.

Schedule a Report

Refer to Schedule Reports to add your Dynamic Report to a schedule.