This is an old revision of the document!
Table of Contents
New Developers Working Group
Save Grid Settings
This example added a workstation setting for the Monograph Parts Grid Preferences grid: https://bugs.launchpad.net/evergreen/+bug/1975852
Make the Save Grid Settings Option Visible
If the Save Grid Settings option doesn't appear at all, it likely needs to have a persistKey assigned.
<eg-grid #partsGrid idlClass="bmp" [dataSource]="gridDataSource" [sortable]="true" persistKey="catalog.record.parts" hideFields="label_sortkey,deleted,record" class="mt-3">
Determine the Setting Name
An easy way to determine what the missing setting should be called, check your browser console for the error that appears when you click on Save Grid Settings. It should say something like:
Error saving columns: No user or workstation setting type exists for: "eg.grid.catalog.record.parts".
Create Seed Data for New Installs
Update file: Open-ILS/src/sql/Pg/950.data.seed-values.sql
INSERT into config.workstation_setting_type (name, grp, datatype, label) VALUES ( 'eg.grid.catalog.record.parts', 'gui', 'object', oils_i18n_gettext( 'eg.grid.catalog.record.parts', 'Grid Config: catalog.record.parts', 'cwst', 'label' ) );
Create Upgrade Script for Existing Installs
New file: Open-ILS/src/sql/Pg/upgrade/XXXX.data.monograph_parts_grid.sql
Don't worry about trying to predict what the next sequential script number will be, just use "XXXX" and the core committer will update it at commit time.
BEGIN; -- SELECT evergreen.upgrade_deps_block_check('XXXX', :eg_version); INSERT into config.workstation_setting_type (name, grp, datatype, label) VALUES ( 'eg.grid.catalog.record.parts', 'gui', 'object', oils_i18n_gettext( 'eg.grid.catalog.record.parts', 'Grid Config: catalog.record.parts', 'cwst', 'label' ) ); COMMIT;