Grouped by version; fixes are listed with the release they belong to.
First release: stored SuiteQL reports refreshed on a schedule, the authoring wizard, the catalogue as cards or a table, widget layouts with charts, stat tiles and totals, categories, configuration, and export and import between accounts.
Fixes
- 0.1.1A long query could not be saved. The SQL, column, layout and parameter fields were capped at 4,000 characters; they now hold up to a million.
- 0.1.5Some reports failed on refresh with "Invalid or unsupported search", or refreshed to zero rows, although they previewed fine. The refresh used NetSuite's paged query, which rewrites a statement before running it and rejects or empties some queries the ordinary query accepts. The refresh now runs the ordinary query first and only pages past 5,000 rows.
- 0.1.5Rows showed above the table header when scrolling the catalogue. The header pins flush to the top now.
- 0.1.11A report failed with "Only a single statement is allowed" although its query was valid. The stored SQL had been HTML-escaped by the field type change in 0.1.1, so ">" was stored as ">" and the entity's semicolon was read as a second statement. Stored SQL is now decoded before it is checked or run, and shows clean in the wizard.
Authoring
- 0.1.2Audience pickers. Roles, employees, departments and subsidiaries are searchable lists with removable chips. Internal ids no longer have to be looked up and typed.
- 0.1.2Link record types are a dropdown, fed by a Record Types tab under Manage, where a custom record can be given its own URL template so its links resolve.
- 0.1.2New category from the wizard, for admins, without leaving the Details step.
- 0.1.2Edit Layout and Edit Report switch between the two editors with one click each way.
- 0.1.2Dragging a widget while scrolling. A widget being dragged now follows the pointer when the mouse wheel scrolls the page; it used to stay behind.
Catalogue
- 0.1.2Uncategorized appears in the sidebar when any report has no category, so those reports are reachable.
- 0.1.2The icon picker in Categories no longer squeezes into its table cell.
- 0.1.12Audience shown and edited in place. Every card and table row shows who can see the report (Public, or counts of roles, employees, departments and subsidiaries). Clicking it opens an editor, so an audience can be changed without opening the wizard.
- 0.1.12Select several reports. A Select button turns on selection mode: click or Ctrl+click toggles, Shift+click selects a range, and a header checkbox selects every report you may edit. A bar above the list refreshes them all, sets one audience on all of them, or deletes them (with a confirmation that Shift+click skips). Reports you cannot edit are greyed out. This exists so a large batch of newly imported reports can be published in one go.
- 0.1.12Deleting a report removes its dashboard portlets too. They used to be left behind, pointing at a report that no longer existed.
Wording
- 0.1.2Em-dashes removed throughout the app.
Refresh
- 0.1.3Partial refresh. For a large report where little changes between runs, the refresh can fetch only rows added or changed since the last run and merge them into the existing result. Set it on the Details step by naming a unique identifier column and a last-modified column. The report page gains a Full Refresh button. Rows deleted at the source are not removed until a full refresh, and the wizard says so.
- 0.1.3The refresh mode travels with a report through export and import.
- 0.1.6Traceable runs. A refresh failure used to show only in the app. Every step now writes an audit line titled "AR refresh <id>: <step>", from the definition loaded to the file stored, with row counts and timings, so a failed run can be followed in the execution log.
Navigation
- 0.1.4A menu tab. "HiScale Advanced Reports" appears in the NetSuite menu bar and opens the app, so it is reachable without a bookmark.
Dashboards
- 0.1.7Report widgets on NetSuite dashboards. Any widget a layout can show (table, bar, horizontal bar, line, pie, donut, stat tile, text note) can be a dashboard portlet. Define it under Manage, Portlets: pick the report and the widget, and configure it with the same side panel as the layout editor, with a live preview. Top N, sorting and filters are the widget's own settings, so "top 5 customers by invoiced" needs nothing extra.
- 0.1.8Choose the widget inside the portlet. A portlet added to a dashboard with nothing pinned on it lists every widget the user may see and remembers the choice, so nobody has to edit a script deployment. A Change link switches later.
- 0.1.8Each portlet remembers its own choice. Two portlets on one dashboard used to share the last choice; each now has its own.
- 0.1.9One dashboard entry per widget. Saving a portlet definition creates a portlet deployment named "Advanced Report - <name>", so Set Up on a dashboard lists each widget by its own name and it loads at once. Renaming or deleting the definition follows through.
- 0.1.9Same audience as the report. A portlet deployment is audienced exactly like its report: All Roles when public, otherwise the report's roles, employees, departments and subsidiaries plus the owner. It re-syncs whenever the report's audience changes, so a dashboard can never show a report to someone the report itself would refuse.
- 0.1.9Portlets travel with their reports in export and import, and their dashboard entries are recreated on import.
Import and export
- 0.1.9Two tabs, a filter, and ids. Export and Import are separate tabs. The export list filters by name or category, and ids show beside names, including in the overwrite picker, so two reports with the same name can be told apart.
Tables
- 0.1.10Headers stay put. A table taller than the screen now scrolls inside its box with the header pinned, instead of the whole page scrolling the header away.
- 0.1.10No blank space under a short page. A table showing 24 rows at 100 per page was as tall as 100 rows. The box is now sized to the rows actually shown.
- 0.1.10Row numbers, as an option per table widget, for referring to a line in a discussion.
- 0.1.10A second horizontal scrollbar above wide tables, in step with the one at the bottom, for readers who do not know Shift plus mouse wheel. Both scrollbars are slimmer and rounded.