Presentation is loading. Please wait.

Presentation is loading. Please wait.

Why Did We Do That? Converting STVSBGI to CEEB Codes 10 Years Later

Similar presentations


Presentation on theme: "Why Did We Do That? Converting STVSBGI to CEEB Codes 10 Years Later"— Presentation transcript:

1 Why Did We Do That? Converting STVSBGI to CEEB Codes 10 Years Later
LINDA KUCINSKI Senior Systems Analyst, Lawrence Technological University SESSION ID: EL256306

2 Introduction Do you ever wish you had made a different choice of codes for a validation table? See how Lawrence Technological University converted the STVSBGI table from a combination of CEEB and third party system codes to all CEEB codes. The challenge was ensuring current data remained unchanged and new data used only the new codes, even when codes pointed to different schools in our validation table and the CEEB standards. This process used only SQL and Excel, and could apply to most validation tables.

3 Agenda 1 2 3 4 Who said keeping the legacy codes would be easier?
Why can’t you change a validation code? 3 You did WHAT? And when? 4 How do we fix it?

4 Who said keeping the legacy codes would make it easier?
Implementation decisions

5 Implementation decisions
More than 700 validation tables to evaluate and set up Implementations take 18 months or more

6 Implementation decisions
Meeting attendance drops over time unless you bribe them with food

7 Implementation decisions
And discussions regarding codes move from heated to apathetic

8 Why can’t you change a validation code?
Sometimes codes need changing for valid reasons

9 Codes need changing for valid reasons
Non-valid reasons I don’t like that code We don’t use that anymore It’s just a name change

10 Codes need changing for valid reasons
Valid reason: College name change Ideally, add new code with new name and start using it Less ideally, add new code with old name, convert all existing data, change the old code’s name to the new name

11 You did WHAT? And when? Mistakes happen

12 Mistakes happen (really, they do)
Some are quick and obvious and require immediate fixing I thought I was in the test database I meant to type ‘truncate sptiden’ But I was in production and my fingers automatically typed ‘spriden’

13 Mistakes happen Some occur over months and require complicated methods to fix I was told to reconcile our school codes with the 3rd party’s list So I changed all of our STVSBGI codes to match theirs It took me 6 months but it’s done

14 Mistakes happen (they really, really do)

15 How do we fix it? Scope Goals Problem Solution

16 Scope Use ALL_TABLES and ALL_TAB_COLUMNS to create a MASTER_SBGI_TABLE
Include all columns that have ‘SBGI’ in the column name

17 Scope create table lkucinski.MASTER_SBGI_TABLE as
select atc.owner, atc.table_name, atc.column_name, 'Y' use_ind, 0 record_count from all_tab_columns atc, all_tables t where substr(atc.column_name,5,40) like '%SBGI%' and atc.owner = t.owner and atc.table_name = t.table_name order by atc.owner, atc.table_name, atc.column_name;

18 Scope Use MASTER_SBGI_TABLE to create an update_master_sbgi_table.sql script to determine which columns have values in them select 'UPDATE MASTER_SBGI_TABLE'||' SET RECORD_COUNT = '|| '(SELECT COUNT(*) FROM '||MST.OWNER||'.'||MST.TABLE_NAME|| ' WHERE '||MST.COLUMN_NAME||' IS NOT NULL)'|| ' WHERE OWNER = '''||MST.OWNER||''' AND TABLE_NAME = '''||MST.TABLE_NAME|| ''' AND COLUMN_NAME = '''||MST.COLUMN_NAME|| ''';' from master_sbgi_table mst; UPDATE MASTER_SBGI_TABLE SET RECORD_COUNT = (SELECT COUNT(*) FROM ALUMNI.APRADEG WHERE APRADEG_SBGI_CODE IS NOT NULL) WHERE OWNER = 'ALUMNI' AND TABLE_NAME = 'APRADEG' AND COLUMN_NAME = 'APRADEG_SBGI_CODE';

19 Scope Make adjustments for personal schemas, working tables, other exceptions update master_sbgi_table set use_ind = 'N' where owner in ('ALUMNI', 'ARCHIVER', 'LKUCINSKI', 'STUDEV‘); update master_sbgi_table set use_ind = '0' where use_ind = 'Y' and record_count = 0; insert into master_sbgi_table values ('SATURN','STVSBGI','STVSBGI_CODE','V',null);

20 Scope

21 Goals Keep current names and addresses for historical accuracy with existing data Load and start using the standard CEEB codes for all future data Know which is which

22 Problems Codes overlap
CEEB code points to one school, same code in STVSBGI points to another Identify old codes so they won’t be used again Can’t label as OLD or DO NOT USE because of official reporting Can’t add a letter (6 char limit) or change a letter (code overlap can occur)

23 Solution Delete all unused STVSBGI codes
Map all STVSBGI codes from numeric codes to comparable alpha codes ( > ABCDEF) Insert alpha codes into STVSBGI and SOBSBGI with same name and address as original

24 Solution Use MASTER_SBGI_TABLE to create scripts to convert SBGI code column values to alpha equivalent Copy data tables that will be affected to another schema Update data tables with new values update saturn.sorhsch set sorhsch_sbgi_code = translate(sorhsch_sbgi_code,’ ’,'ABCDEFGHIJ')

25 Solution Delete all numeric codes from STVSBGI and SOBSBGI
Insert new CEEB records into STVSBGI and SOBSBGI Any new code that has to be added will start with a letter followed by numbers

26 Solution STVSBGI code Source Action ABCDEF Original validation code
Do not use 123456 New CEEB code Use M123 New college code (no CEEB) M12345 New high school code (no CEEB)

27 Summary Even the best implementation decisions can come back to haunt you 10 years later Sometimes codes need changing for valid reasons Mistakes do happen; lock it down when you can but encourage quick admission and notification when you can’t Practice finding columns that point to validation table values (or GDPR- related columns like SSN) Go slow, create backups, test, test, and test again

28 Questions SESSION ID: EL256306


Download ppt "Why Did We Do That? Converting STVSBGI to CEEB Codes 10 Years Later"

Similar presentations


Ads by Google