Difference between revisions of "Post Processing SQL Scripts"

From IMSMA Wiki
Jump to: navigation, search
 
(7 intermediate revisions by the same user not shown)
Line 20: Line 20:
 
'' Example of retrieving information from a linked table''
 
'' Example of retrieving information from a linked table''
 
</div>
 
</div>
{{Note | It is only the Country Structure of Locations that is flattened, other Country structure references (both system and CDFs) have to retrieved by SQL views.}}
+
{{Note | It is only the Country Structure of Locations that is flattened, other Country structure references (both system and CDFs) have to be retrieved by SQL views.}}
 
[[Image:SAG CS flattening1.png|300px|center]]
 
[[Image:SAG CS flattening1.png|300px|center]]
 
<div align="center">
 
<div align="center">
Line 30: Line 30:
 
</div>
 
</div>
  
For more on column names in the Staging area, see [[Name Rules Staging Area]]. Contact your [[Management Consulting Team | GICHD IM advisor]] for help in developing SQL statements according to specific requirements.
+
For more on column names in the Staging area, see [[Name Rules Staging Area]].  
 +
 
 +
=== How to apply the Post Processing SQL script ===__NOEDITSECTION__
 +
After you have developed and '''tested''' the script with a SQL tool (e.g. PGadminIII or Navicat):
 +
<ol start="1">
 +
<li> Save the script as a text file with file extension .sql e.g. MySQLscript.sql in the folder ''C:\IMSMAETLTool\sqlscripts''
 +
<li> Start the [[Using Staging Area Generator | Staging Area Generator]] <br/>
 +
[[Image:PostProcess sqlfile.png|375px|center]]
 +
<li> Type in the full name of the SQL script
 +
<li> Start the database generation.
 +
<li> Your script will automatically be applied in the end of the database generation.
 +
</ol>
 +
 
 +
{{Note| The Post Processing SQL scripts including SQL views needs to be re-applied '''every''' time a staging area database is updated i.e. re-created. <br/>
 +
I you would like to test a SQL script without running the Staging Area Generator (of course only works if there is an '''existing''' staging database):
 +
# Open a command window
 +
# Go to ''C:/IMSMAETLTool''
 +
# Run the following in the command window: pgsql\bin\psql -U imsma -d staging -h localhost -L sql.log -f sqlscripts\filename.sql }}
 +
 
 +
[[Image:PostProc SAG error.png|600px|center]]
 +
<div align="center">
 +
'' SAG cannot find the script file ''
 +
</div>
 +
# The post processing SQL file must be stored in C:\IMSMAETLTool\sqlscripts
 +
# The full name of the file must be specified e.g. Albania_stat.sql
 +
# The SAG must be started via a shortcut. You find which values to use for the shortcut '''[[Windows 8 and Windows 10#Shortcuts |here]]'''.
 +
Contact your [[Information Management Team | GICHD IM advisor]] for help in developing SQL statements according to specific requirements.
 
{{NavBox Business Intelligence}}
 
{{NavBox Business Intelligence}}
[[Category:VIE]]
+
[[Category:NAA]]

Latest revision as of 20:27, 20 February 2020

By using this optional step it is possible to change the Staging area after the generation. This can be valuable in several use cases, for example:

  • If the Staging area should only contain a subset of the IMSMANG database e.g. only Land with status Closed
  • If sensitive data (e.g. victim names and addresses) should not be included in the Staging area
  • If data has to be processed for reporting purposes e.g. complex calculations of square meters
  • If it would facilitate reporting to concatenate fields e.g. victim family and given names
  • If it would facilitate to add fields from other items e.g. Accident date to Victim table
  • If additional database SQL views are necessary, also for reporting and analysis purposes

If you would like to use Ordnance data, link items and/or use multi-select fields then you need to create SQL views.

SAG Ordnance.png

Example with Ordnance and different formats of date

SAG concat.png

Example of fields being concatenated

SAG Link.png

Example of retrieving information from a linked table

Note.jpg It is only the Country Structure of Locations that is flattened, other Country structure references (both system and CDFs) have to be retrieved by SQL views.
SAG CS flattening1.png

Country structure reference to where the Victim is currently living is not automatically flattened into the the Victim by the Staging Area Generator

SAG CS flattening2.png

The flattening with be done with SQL script as part of the post-processing

For more on column names in the Staging area, see Name Rules Staging Area.

How to apply the Post Processing SQL script

After you have developed and tested the script with a SQL tool (e.g. PGadminIII or Navicat):

  1. Save the script as a text file with file extension .sql e.g. MySQLscript.sql in the folder C:\IMSMAETLTool\sqlscripts
  2. Start the Staging Area Generator
    PostProcess sqlfile.png
  3. Type in the full name of the SQL script
  4. Start the database generation.
  5. Your script will automatically be applied in the end of the database generation.
Note.jpg The Post Processing SQL scripts including SQL views needs to be re-applied every time a staging area database is updated i.e. re-created.

I you would like to test a SQL script without running the Staging Area Generator (of course only works if there is an existing staging database):

  1. Open a command window
  2. Go to C:/IMSMAETLTool
  3. Run the following in the command window: pgsql\bin\psql -U imsma -d staging -h localhost -L sql.log -f sqlscripts\filename.sql
PostProc SAG error.png

SAG cannot find the script file

  1. The post processing SQL file must be stored in C:\IMSMAETLTool\sqlscripts
  2. The full name of the file must be specified e.g. Albania_stat.sql
  3. The SAG must be started via a shortcut. You find which values to use for the shortcut here.

Contact your GICHD IM advisor for help in developing SQL statements according to specific requirements.