Skip to content

Browser extension to instantly view all deployed scripts and workflows on any NetSuite record. Sort, filter, and jump to source code in one click.

License

Notifications You must be signed in to change notification settings

alien4u/ns-record-scripts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚠️ Disclaimer: This is a personal project shared under the MIT License. It is not intended to replace, compete with, or serve as an alternative to any other similar plugin, extension, or tool, commercial or otherwise. Use it as you see fit, at your own risk.

In response to Oracle's security notification regarding Chrome extensions, I've made this extension fully open source so that anyone can audit the code, verify its behavior, and confirm that it does not collect, transmit, or store any sensitive data. Transparency is the best security policy.


NetSuite Record Scripts

Instantly view all deployed scripts and workflows on any NetSuite record. Sort, filter, and jump to source code in one click.

Version License Manifest

Store Availability

Store Version Link
Chrome Web Store v2.0.5 (v2.0.6 Possibly Under Review) Install
Edge Add-ons v1.0.3 (v2.0.6 Possibly Under Review) Install
Firefox Add-ons v2.0.6 Install

Overview

NetSuite Record Scripts is a browser extension for NetSuite administrators, developers, and power users. It lets you see all deployed scripts and workflows on any record you're viewing in NetSuite. No more digging through script deployments or the workflow manager.

Open any record, click the icon, and get a clean, organized breakdown of everything running on that page.

Features

  • 🔍 Auto-detect record type · Reads the record type from the page and retrieves all relevant SuiteScript deployments and workflows. Works on standard records, custom records, and custom transactions.

  • 🧠 Dual API support · Uses SuiteScript 2.x (N/query, N/search, N/currentRecord) as the primary engine, with automatic SuiteScript 1.0 fallback for pages where 2.x modules aren't available.

  • On-demand execution · Scripts only run when you click the extension icon, not on every page load. Zero impact on your daily NetSuite browsing and no wasted governance.

  • 🔘 Smart icon · The extension icon is only active on NetSuite pages. It grays out automatically on non-NetSuite sites.

  • ↕️ Sort · Sort scripts alphabetically (A→Z or Z→A) within their type groups.

  • 🔀 Drag-and-drop group ordering · Arrange script type groups in your preferred priority. Your order is saved automatically.

  • 🌙 Dark / Light mode

  • 🧩 Compact mode · Condensed view with smaller font and spacing.

  • 🛠️ Deployed-only filter · Show only deployed scripts and released workflows.

  • 🔄 Refresh · Force a fresh data fetch at any time.

Script Details

Field Description
Script Name Clickable link to the script record
Script Type User Event, Client, Mass Update, Workflow Action, etc.
Deployed ✔ / Not Deployed
Status Released, Testing, etc.
Info (hover) Script file name, API version, description

Workflow Details

Field Description
Workflow Name Clickable link to the workflow definition
Released ✔, Testing, Not Initiating, Suspended
Info (hover) Description

One-Click Access

  • Open script records directly in NetSuite
  • Edit the script record
  • Open the source file
  • Open workflow definitions in view or edit mode

How It Works

  1. Navigate to any record page in NetSuite.
  2. Click the extension icon (it lights up on NetSuite pages).
  3. View grouped sections for Script Deployments and Workflows.
  4. Click any name to open the script record. Use the pencil icon for edit mode, or the code icon for the source file.
  5. Hover the info icon for API version, description, and file name.

All data is retrieved live from the page context via NetSuite's native APIs. No external data collection, no login prompts, no storage of sensitive info.

Architecture

[User clicks icon]
        │
        ▼
    popup.html / popup.js
        │
        ├── INJECT_AND_GET_DATA → background.js
        │                              │
        │                   chrome.scripting.executeScript
        │                       (injects content.js)
        │                              │
        │                        content.js
        │                 (injects nsmain.js via <script>)
        │                              │
        │                         nsmain.js
        │                  (runs in page MAIN world)
        │                  ├── Try SS 2.x (N/query, N/search)
        │                  └── Fallback: SS 1.0 (nlapiSearchRecord)
        │                              │
        │                  window.postMessage(SCRIPTS_DATA)
        │                              │
        │                        content.js stores it
        │                              │
        ├── Poll GET_SCRIPTS_DATA ────►│
        │                              │
        ◄── Response ──────────────────┘
        │
        ├── Apply sort / filter
        └── Render

Installation

From Source (Developer Mode)

  1. Clone this repository
  2. Open your browser's extension management page:
    • Chrome: chrome://extensions
    • Edge: edge://extensions
    • Firefox: about:debugging#/runtime/this-firefox
  3. Enable Developer Mode
  4. Click Load unpacked and select the project folder

Firefox users: Before loading, rename manifest_firefox.json to manifest.json (replacing the original). The Firefox manifest includes the required background.scripts fallback and browser_specific_settings for Firefox compatibility.

Permissions

Permission Purpose
host_permissions: *.netsuite.com Inject scripts and interact with NetSuite pages
activeTab Interact with the current record page when activated
storage Persist preferences (theme, filter, sort, group order)
scripting Inject data-fetching script into NetSuite on demand
tabs Detect NetSuite pages for contextual icon activation

Browser Compatibility

Chrome, Edge, Firefox (MV3, 121+), and Safari (via Web Extension wrapper).

The default manifest.json targets Chrome and Edge. A manifest_firefox.json is included for Firefox, which adds the background.scripts fallback and browser_specific_settings required by Firefox's extension platform.

License

MIT

Powered by Alien Technology LLC

About

Browser extension to instantly view all deployed scripts and workflows on any NetSuite record. Sort, filter, and jump to source code in one click.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published