svn path=/Database/trunk/; revision=10148

This commit is contained in:
Peter Feij
2009-11-05 17:24:22 +00:00
parent 04fc25937d
commit 7cc0f95124

View File

@@ -10,7 +10,6 @@
#include "modules.h"
#include "comsql.h"
#ifndef MS_SQL
SET TERMOUT ON
SET FEEDBACK OFF
SET ECHO OFF
@@ -18,21 +17,13 @@ SET PAGESIZE 0
SPOOL OFF
SET HEADING OFF
SET DEFINE OFF
CLEAR SCREEN
PROMPT ***********************************************************************
PROMPT
PROMPT RECREATE SCRIPT van Facilitor
#ifdef MS_SQL
PROMPT versie voor MS SQL Server
#else
PROMPT versie voor Oracle
#endif
PROMPT $Revision: 4 $
PROMPT $Modtime: 12-05-06 10:32 $
PROMPT
PROMPT Re-creeert alle algemene views, triggers etc van een Faciltor schema
PROMPT $Revision: 5 $
PROMPT $Modtime: 5-11-09 19:20 $
PROMPT
PROMPT Re-creeert alle algemene views, triggers etc van een Faciltor schema
PROMPT
PROMPT Het wordt aangeraden om deze upgrade te draaien op een moment dat er
PROMPT geen gebruikers bezig zijn met de applicatie.
@@ -50,75 +41,17 @@ SET SERVEROUTPUT ON;
SPOOL xrecreate.LST
#endif
/////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////////////GENERIC PART
/////////////////////////////////////////////////////////////////////////////////////////////////
#undef CREATE_VIEW
#ifdef MS_SQL
#define CREATE_VIEW(view_name, level) \
IF EXISTS (SELECT TABLE_NAME \
FROM INFORMATION_SCHEMA.VIEWS \
WHERE TABLE_NAME = #@view_name~ \
AND TABLE_SCHEMA = 'dbo')~ \
DROP VIEW dbo.view_name;~ \
GO~CREATE VIEW dbo.view_name
#else
#define CREATE_VIEW(view_name, level) \
CREATE OR REPLACE FORCE VIEW view_name
#endif
/* TABLES
For SQLS we need to include the tables to get the _TYPE definitions for the packages
The (1=0) construcion prevents CREATE TABLES from executing
What remains are the #define's
*/
#ifdef MS_SQL
//#undef _GO
//#define _GO /* niets */
//#undef CREATE_TABLE
//#define CREATE_TABLE(table_name, level) ;~CREATE TABLE table_name
{ -- dit stuk moet je verwijderen (alles tussen de haakjes)
#include "fac_tab.src"
#include "alg_tab.src"
#include "ins_tab.src"
#include "prs_tab.src"
#include "mld_tab.src"
#include "mrk_tab.src"
#ifndef MS_SQL
#include "cad_tab.src"
#endif
#include "res_tab.src"
#include "bez_tab.src"
#include "web_tab.src"
#include "cnt_tab.src"
#include "bes_tab.src"
#include "pra_tab.src"
#include "sch_tab.src"
#include "fin_tab.src"
#include "prj_tab.src"
}
#undef _GO
#define _GO ~GO
#endif
// Recreation all views
#include "fac_vie.src"
#include "alg_vie.src"
#include "ins_vie.src"
#include "prs_vie1.src"
#include "prs_pac.src"
#include "prs_vie2.src"
#include "prs_vie.src"
#include "mld_vie.src"
#ifndef MS_SQL
#include "cad_vie1.src"
#endif
#include "cad_vie.src"
#include "res_vie.src"
#include "bez_vie.src"
#include "web_vie.src"
@@ -130,54 +63,13 @@ CREATE OR REPLACE FORCE VIEW view_name
#include "fin_vie.src"
#include "prj_vie.src"
COMMIT;
// Recreation all packages
#ifdef MS_SQL
[skip]
create procedure drop_procfuns as
begin
DECLARE query CURSOR FOR
select distinct u.name+'.'+o.name, o.xtype
from sysobjects o, sysusers u
where o.uid = u.uid and (o.type = 'FN' or o.type = 'P')
and upper(o.name) not in ('TRUNC_DATE', 'INITCAP','LPAD','RPAD','CHAR_TO_DATE','DATE_TO_CHAR','NUMBER_TO_CHAR','CHAR_TO_NUMBER')
declare @nm varchar(500);
declare @tp varchar(500);
declare @sql varchar(500);
OPEN query;
FETCH NEXT FROM query INTO @nm,@tp;
WHILE (@@FETCH_STATUS <> -1 ) BEGIN
if (@tp='FN') set @sql = 'function' else set @sql = 'procedure'
set @sql = 'drop ' + @sql + ' ' + @nm;
exec(@sql);
FETCH NEXT FROM query INTO @nm,@tp;
END;
CLOSE query;
DEALLOCATE query;
end
go
-- Noot: er komen errors op web.CHAR_TO_DATE en DATE_TO_CHAR. Negeren
exec drop_procfuns
go
--drop procedure drop_procfuns
go
[/skip]
#endif
// prs_pac is al een keer eerder geweest. Vanwege drop_procfuns nog een keer
#include "prs_pac.src"
#include "cnt_pac.src"
#include "mld_pac.src"
#include "fac_pac.src"
#include "ins_pac.src"
#ifndef MS_SQL
#include "prs_pac.src"
#include "cad_pac.src"
#endif
#include "res_pac.src"
#include "bez_pac.src"
#include "web_pac.src"
@@ -187,14 +79,8 @@ go
#include "sch_pac.src"
#include "fin_pac.src"
#include "prj_pac.src"
COMMIT;
// Views that uses packages
#include "mld_vie2.src"
// Recreation all triggers
#include "fac_tri.src"
#include "alg_tri.src"
#include "ins_tri.src"