TMACUL

http://www.servicedeskusers.com/Migrating_Schema_Changes_Between_Systems

Blog Post created by TMACUL Champion on Jan 1, 2016

Overview

This article provides instructions for easily moving schema changes from one environment to another.

Procedures

Step 1. Make Schema Changes

From your source environment make the desired schema changes via the Schema Designer. Be sure to follow the proper protocol for publishing your schema changes.

Create configuration files using File - Save and Publish in Schema Designer's menu.

Step 2. Extract WSP Tables

pdm_extract wsptbl > wsptbl.txt pdm_extract -f "SELECT column_name,dbms_name,description,display_name,is_cluster,is_descending,is_indexed,is_local,is_not_null,is_order_by,is_required,is_skey,is_unique,is_write_new,is_wsp,last_mod_dt,on_ci_set,on_new_default,schema_name,status,string_len,table_name,type,xrel_table FROM wspcol" > wspcol.txt

Step 3. Copy Files

Copy the following files from the source to the destination environment:

  • $NX_ROOT/site/mods/majic/wsp.mods
  • $NX_ROOT/site/mods/wsp.altercol
  • $NX_ROOT/site/mods/wsp.altertbl
  • $NX_ROOT/site/mods/wsp_index.sch
  • $NX_ROOT/site/mods/wsp_schema.sch
  • wsptbl.txt (extract from previous step)
  • wspcol.txt (extract from previous step)

Step 4. Load Extracts

style="color:rgb(0, 0, 0);font-family:'Times New Roman';font-size:medium"

  • Start the Service Desk service

Optional Steps

If you want to save SCH and MOD changes in your own file with better name, follow these steps:

  1. Copy content of wsp.mods file to some *.mod in $NX_ROOT/site/mods/majic
  2. Copy content of wsp_schema.sch file to some *.sch in $NX_ROOT/site/mods
  3. Copy content of wsp_index.sch file to some *.sch in $NX_ROOT/site/mods
  4. Delete wsp.mods, wsp_index.sch and wsp_schema files

Because content of wsptbl and wspcol tables on destination server is pointless from now, we can purify these tables using this two commands:

pdm_load -rf wsptbl.txt pdm_load -rf wspcol.txt

Outcomes