Work with Data Change Insights

As application users, you can subscribe to top N data change insights in an analytic application to auto-discover significant data changes of specific charts on a regular basis. As application designers, you can leverage APIs to allow for more settings and activities, such as setting data change types and saving a snapshot to capture any state of your application for data comparison.

Set Data Change Insights

At design time, you as an application designer can enable or disable Data Change Insights in Analytic Application Details under File.

You can also decide whether data change insights is enabled for a chart at runtime and whether to subscribe by default via the settings in Quick Menus of the Styling panel.

Subscribe to Data Change Insights

When data change insights is enabled, at runtime you can subscribe to data change insights: from Tools in the toolbar, select Subscribe Data Change Insights.

In the dialog you can set subscription details, including:
  • name

  • subscription recurrence: recurrence pattern (day, week or month), frequency, start date and end date

  • maximum insights count (by default 5, no more than 10)

  • sending notifications to email or mobile app, or both

  • skipping notifications when no insights found

  • script variables (if applicable)

  • distribution

    You can share application view with SAP Analytics Cloud recipients. By default the application name and current user are the email subject and recipient. Only one distributed view per subscription is allowed.

After subscription settings, a calendar task is created. Users will receive notifications within the configured period via:

  • email

  • SAP Analytics Cloud notifications

From Data Change Insight in the context menu, you can change the subscription mode for each chart to Subscribed, Subscribed: High Importance or Unsubscribed.
Note

Only subscribed charts will be involved in data change insights.

Note

Data change insights can only be triggered automatically, after the onInitialization event completion and before the PDF generation.

Script APIs
Sample Code
DataChangeInsightsStatus: {
    OK,
    Invalid,
    Error
}

DataChangeInsightType: {
    ValueChange,
    ValueChangeOverThreshold,
    ValueChangeOverReferenceLine,
    TopNMemberChange
}
 
DataChangeInsight: {
    content: String, // the NLG of insight with markup <keyword>value</keyword>
    type: DataChangeInsightType
}
 
DataChangeInsightsResult: {
    status: DataChangeInsightsStatus,
    statusMessage: String,
    insights: DataChangeInsight[]
}
// Save a snapshot
// One application can have only one snapshot per day, and the later one will override previous one within the same day.
// Work only when run by snapshot task of scheduling in manual mode.
DataChangeInsights.saveSnapshot(): Boolean
 
// Get a date list which represents there is an application snapshot saved at that date.
// maximumNumber is 10 in backend service configuration.
DataChangeInsights.listRecentSnapshotDates(maximumNumber?: Integer): Array<Date>
 
// Compare current application state with a previous snapshot.
DataChangeInsights.compareApplicationStateWithSnapshot(target: Date, options?: DataChangeInsightsComparisonOptions {
    top?: Integer, // limit number of returned DataChangeInsight
}): DataChangeInsightsResult
 
// Compare two snapshots by date.
DataChangeInsights.compareSnapshots(source: Date, target: Date, options?: DataChangeInsightsComparisonOptions {
    top?: Integer, // limit number of returned DataChangeInsight
}): DataChangeInsightsResult
 
// Similar to Scheduling.isRunBySchedulePublication().
DataChangeInsights.isRunBySnapshotGeneration(): Boolean

Supported Chart Types

Depending on the data change types, different chart types are supported:

Data Change Types Supported Chart Types
Value change Bar/column, combination column & line, combination stacked column & line, stacked bar/column, waterfall, line, stacked area, bubble, cluster bubble, scatterplot, heat map, radar, tree map, bullet, numeric point, pie, donut, marimekko
Value change over threshold Bar/column, combination column & line, combination stacked column & line, stacked bar/column, line, stacked area, bubble, cluster bubble, scatterplot, radar, bullet, numeric point, marimekko
Value change over reference line Bar/column, combination column & line, combination stacked column & line, stacked bar/column, line, stacked area, bubble, scatterplot, radar, marimekko
Top N change Bar/column, combination column & line, combination stacked column & line, stacked bar/column, waterfall, line, stacked area, bubble, cluster bubble, scatterplot, radar, bullet, numeric point, marimekko
Special Cases
  • On global level, no date changes insights will be generated and users will get a warning if:

    • The analytic application gets modified during subscription period (two snapshots from different document save versions)

    • The analytic application view is a different one

    • The model variables from the URL parameter are changed

  • On chart level, the comparison within a chart will be ignored if:

    • A chart's model variable is changed

    • A chart's filter is changed (except for dynamic datetime filter value, assuming dynamic datetime filter definition isn't changed)

    • A chart's calculated measure's referenced script variable is changed

Licensing

Data change insights is under the license of scheduling.