Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer peopleโ€™s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer peopleโ€™s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The NetSuite Pro

The NetSuite Pro Logo The NetSuite Pro Logo

The NetSuite Pro Navigation

  • Home
  • About Us
  • Tutorials
    • NetSuite Scripting
    • NetSuite Customization
    • NetSuite Integration
    • NetSuite Advanced PDF Templates
    • NetSuite Reporting & Analytics Guide
    • Real-World NetSuite Examples
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask A Question
  • Home
  • About Us
  • Tutorials
    • NetSuite Scripting
    • NetSuite Customization
    • NetSuite Integration
    • NetSuite Advanced PDF Templates
    • NetSuite Reporting & Analytics Guide
    • Real-World NetSuite Examples
  • Blog
  • Contact Us
Home/ NetSuite Customization Guide: Fields, Forms, Workflows & Scripts/Custom Record Dashboards & Portlets (Visual Analytics in NetSuite)

Custom Record Dashboards & Portlets (Visual Analytics in NetSuite)

๐Ÿงฉ Custom Record Dashboards & Portlets (Visual Analytics in NetSuite)

Introduction

Your data is only as powerful as your ability to visualize it.
Whether youโ€™re tracking integration logs, approvals, or audit trails, NetSuite allows you to build real-time dashboards that summarize critical metrics using Custom Records, SuiteAnalytics, and Portlets.

This guide will walk you through creating interactive dashboards for custom data โ€” no external BI tools required.


๐Ÿ’ก Why Custom Dashboards Matter

BenefitDescription
Central VisibilityCombine KPIs, charts, and logs on one page.
Better Decision-MakingManagers see real-time metrics without reports.
Reduced Email ReportsReplaces manual Excel summaries.
Customizable by RoleDifferent roles see tailored insights.

๐Ÿงฑ Step 1: Identify Your Data Source

The first step is defining what you want to visualize.

ExampleRecord TypePurpose
Integration Logcustomrecord_integration_logTrack API performance
Error Logcustomrecord_error_logMonitor script failures
Audit Logcustomrecord_gl_audit_logTrack GL adjustments
Approval Recordscustomrecord_approval_flowReview pending approvals

๐Ÿ’ก Each record should have fields like status, timestamp, owner, and duration โ€” perfect for visual dashboards.


โš™๏ธ Step 2: Create a SuiteAnalytics Dataset

Example: Integration Log Dataset

  1. Navigate to Analytics โ†’ Workbooks โ†’ New Dataset.
  2. Choose Record Type = Custom Record โ†’ Integration Log.
  3. Add key fields:
    • custrecord_integration_source
    • custrecord_status
    • custrecord_duration
    • custrecord_timestamp
  4. Save dataset as Integration Performance Dataset.

๐Ÿง  Step 3: Create a SuiteAnalytics Workbook

Now create visual charts & summaries:

  1. Open the dataset โ†’ Click Create Workbook.
  2. Add Pivot Table:
    • Rows โ†’ Integration Source
    • Columns โ†’ Status
    • Values โ†’ Count of Records
  3. Add Chart View:
    • Type: Bar or Line
    • X-Axis: Integration Source
    • Y-Axis: Average Duration (ms)
    • Color by Status
  4. Add Filter: Date = This Week

โœ… Save as Integration Dashboard Workbook.


๐Ÿงฉ Step 4: Publish to Home Dashboard

  1. Go to your Home Dashboard.
  2. Click Personalize โ†’ Analytics Portlet.
  3. Choose your Workbook under โ€œSaved Workbooksโ€.
  4. Adjust size and layout โ€” add next to KPIs or reminders.

๐Ÿ’ก You can have multiple portlets:

  • Integration Performance (Workbook)
  • Error Log Summary (Saved Search)
  • Approval Pending List (Reminders)

๐Ÿงฐ Step 5: Build a Custom SuiteScript Portlet (Optional Advanced Method)

You can create a fully dynamic, styled dashboard portlet using SuiteScript 2.1.

/**
 * @NApiVersion 2.1
 * @NScriptType Portlet
 */
define(['N/search'], (search) => {
  const render = (params) => {
    const portlet = params.portlet;
    portlet.title = 'Integration Summary (Live)';

    const results = search.create({
      type: 'customrecord_integration_log',
      filters: [['custrecord_timestamp', 'within', 'thisweek']],
      columns: ['custrecord_integration_source', 'custrecord_status']
    }).run().getRange({ start: 0, end: 100 });

    let success = 0, failed = 0;
    results.forEach(r => {
      if (r.getValue('custrecord_status') === 'Success') success++;
      else failed++;
    });

    portlet.html = `
      <div style="font-family:Arial; text-align:center;">
        <h3>Weekly Integration Status</h3>
        <p>โœ… Success: <b>${success}</b></p>
        <p>โŒ Failed: <b>${failed}</b></p>
      </div>`;
  };

  return { render };
});

โœ… Adds a real-time visual summary of your integration results right on the dashboard.


๐Ÿ“Š Step 6: Combine Dashboards for Multiple Departments

DepartmentDashboard Widgets
FinanceGL Adjustments, Audit Logs, Reconciliation KPIs
OperationsIntegration Summary, Fulfillment Errors
IT / AdminScript Execution Logs, Error Counts
SalesApprovals Pending, Customer Credit Holds

๐Ÿ’ก Each roleโ€™s dashboard can be customized with saved searches, workbooks, and custom portlets.


๐Ÿงฎ Step 7: Add KPIs and KPI Scorecards

For quick metrics:

  1. Navigate to Customization โ†’ Centers and Tabs โ†’ KPI Scorecards
  2. Create new Scorecard:
    • Metric: Failed Integrations (count)
    • Metric: Average Response Time (ms)
    • Metric: Total Approvals Pending
  3. Add Formula: Failed Integrations / Total Integrations * 100 โ†’ Failure Rate %

โœ… Great for management dashboards.


โšก Step 8: Refresh & Auto-Update

Use SuiteAnalytics refresh scheduling:

  • Go to Workbook โ†’ Schedule Refresh โ†’ Daily or Hourly
  • Optionally, send the Workbook snapshot via Email

โœ… Ensures your visual dashboards are always up-to-date.


๐Ÿง  Step 9: Combine Logs into One Dashboard

Create a master portlet combining multiple data sources (Integration Log + Error Log + Audit Records).

Use SuiteScript or HTML tables:

<table style="width:100%; border-collapse:collapse;">
<tr><th>Source</th><th>Success</th><th>Failed</th><th>Last Updated</th></tr>
<tr><td>Boomi</td><td>120</td><td>3</td><td>Today</td></tr>
<tr><td>Shopify</td><td>250</td><td>1</td><td>Today</td></tr>
</table>

โœ… Displays live integration KPIs directly on your NetSuite homepage.


๐Ÿงฐ Step 10: Real-World Example โ€” Integration Health Dashboard

Goal: Show daily integration status for multiple sources (Boomi, Salesforce, 3PL).

Components:

  • Workbook โ†’ Chart of Success vs Failure
  • Saved Search โ†’ Failed Integrations (List)
  • Custom Portlet โ†’ Average Duration (ms)
  • KPI Scorecard โ†’ Failure Rate %

Result:
Managers and Admins can instantly identify integration issues โ€” no more log diving or email reports.


๐Ÿงฉ Best Practices

CategoryBest Practice
PerformanceLimit each search to 1,000 records per portlet
SecurityRestrict dashboard visibility by role
VisualsUse clear colors: Green = Success, Red = Failed
StorageArchive logs older than 90 days
MaintenanceRefresh Workbooks weekly to clean cached data

๐Ÿ“š Related Tutorials

  • ๐Ÿ‘‰ Integration Logging & Monitoring Dashboard
  • ๐Ÿ‘‰ Dynamic SuiteScript Configuration Framework
  • ๐Ÿ‘‰ Performance Optimization for Map/Reduce Scripts

โ“ FAQ

Q1. Can I share dashboards across roles?
Yes โ€” use Publish Workbook to All Roles or assign via Center Tab Customization.

Q2. Can portlets pull data from external APIs?
Yes โ€” use N/https in Portlet scripts to fetch live data.

Q3. Can I filter dashboards by user?
Yes โ€” filter by current user ID or role in Saved Search / SuiteAnalytics.

Q4. Whatโ€™s the difference between SuiteAnalytics and Portlets?
Workbooks are visual reports; Portlets allow custom HTML or live script-based UI widgets.


๐Ÿงญ Summary

Custom Record Dashboards transform NetSuite from a data system into a real-time intelligence hub.
By combining SuiteAnalytics Workbooks, Saved Searches, and Portlets, you can visualize KPIs, monitor system performance, and empower every department with actionable insights โ€” all inside your NetSuite dashboard.

This approach turns your ERP into a centralized, data-driven command center for integration, finance, and operations visibility.

Share
  • Facebook

Leave a ReplyCancel reply

Sidebar

Ask A Question

Stats

  • Questions 6
  • Answers 6
  • Best Answers 0
  • Users 2
  • Popular
  • Answers
  • Rocky

    Issue in running a client script in NetSuite SuiteScript 2.0 ...

    • 1 Answer
  • admin

    How can I send an email with an attachment in ...

    • 1 Answer
  • admin

    How do I avoid SSS_USAGE_LIMIT_EXCEEDED in a Map/Reduce script?

    • 1 Answer
  • admin
    admin added an answer The issue is usually caused by following Wrong script file… September 14, 2025 at 10:33 pm
  • admin
    admin added an answer Steps to send an Invoice PDF by email: define(['N/email', 'N/render',… August 28, 2025 at 3:05 am
  • admin
    admin added an answer This error means your script hit NetSuiteโ€™s governance usage limit… August 28, 2025 at 3:02 am

Top Members

Rocky

Rocky

  • 1 Question
  • 22 Points
Begginer
admin

admin

  • 5 Questions
  • 2 Points

Trending Tags

clientscript netsuite scripting suitescript

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help

Footer

© 2025 The NetSuite Pro. All Rights Reserved