Billing analytics dashboard not updating after invoice approval workflow completes

Our billing analytics dashboard fails to refresh when invoices are approved through our workflow. The dashboard shows revenue and outstanding AR metrics that should update immediately after invoice approval, but there’s a 2-4 hour delay before new invoice data appears. We’ve set up SuiteFlow workflow triggers that should refresh the dashboard, but something isn’t working correctly. The dashboard uses real-time dataset mode, so it should pull current data. Here’s our workflow action that’s supposed to trigger the refresh:


Set Field: custrecord_dashboard_refresh = TRUE
Trigger: After Record Submit
Condition: Status = Approved

This is causing forecasting inaccuracies since our sales team relies on real-time AR visibility. We’re considering SuiteScript integration to force dashboard updates, but want to understand why the workflow trigger isn’t functioning first. Has anyone successfully automated dashboard refresh automation with SuiteFlow workflow triggers?

The real-time dataset mode is misleading - it doesn’t mean instant refresh, it means the dataset queries live data instead of a pre-built cache when it does refresh. But the refresh still happens on a schedule. Your workflow trigger approach won’t work because workflows can’t call dataset refresh APIs. You must use SuiteScript. Either a scheduled script that periodically refreshes, or a User Event script that refreshes on invoice approval. The scheduled approach is better for performance since it batches refreshes.

The 2-4 hour delay suggests your dataset is using the default cache settings. Go to your dataset configuration and check the Refresh Frequency setting. Even in real-time mode, datasets cache results for performance. Set it to refresh every 15 minutes if you need near-real-time updates. However, be aware this impacts system performance if you have large datasets or many concurrent users accessing the dashboard.

Check if your dashboard is using a dataset or a saved search as its data source. If it’s using saved searches directly, those don’t have explicit refresh triggers - they re-execute on each dashboard load but results might be cached at the portlet level. Switch to using a dataset with programmatic refresh control. Also verify your dashboard portlet settings - there’s a ‘Refresh Interval’ setting that defaults to 4 hours which matches your delay exactly.

Setting a field value doesn’t trigger dashboard refresh. Dashboards refresh based on their configured schedule or manual refresh, not field changes. You need to use a SuiteScript scheduled script that calls the dashboard refresh API, or configure your dashboard dataset to use a shorter cache interval. Real-time mode still has caching - it’s not truly instantaneous.