-- -- $Id$ -- -- Aanpassingen om DB44c (prod) naar de DB44d te brengen -- Merk op dat de recreate er nog bij komt die de DB-version bijwerkt -- -- MOET OOK ZIJN/WORDEN OPGENOMEN IN DB43TO44d.src !!! DEFINE thisfile = 'DB44cto44d_2.sql' DEFINE dbuser = '*' SET ECHO ON SET DEFINE ON COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT; COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT; WHENEVER SQLERROR CONTINUE; SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL; SPOOL &fcltlogfile WHENEVER SQLERROR EXIT; SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL; WHENEVER SQLERROR CONTINUE; PROMPT &fcltcusterr SET DEFINE OFF ------ payload begin ------ -- /////////////////////////////////////////////////////////////////////////////////////////// FCLT#77314 -- Strip de timestamp (ook maar voor verwijderde records) UPDATE res_rsv_ruimte SET res_rsv_ruimte_externnr = SUBSTR (res_rsv_ruimte_externnr, 1, LENGTH (res_rsv_ruimte_externnr) - 14) WHERE res_rsv_ruimte_externnr IS NOT NULL AND res_rsv_ruimte_externnr NOT LIKE '##iCalUId##%' AND REGEXP_LIKE (res_rsv_ruimte_externnr, '\|\d{13}$'); -- Verwijder de dubbelen op een nette manier die niet de Outlook koppeling aftrapt UPDATE res_rsv_ruimte SET res_rsv_ruimte_externnr = NULL , res_rsv_ruimte_verwijder = SYSDATE WHERE res_rsv_ruimte_externnr IS NOT NULL AND res_rsv_ruimte_verwijder IS NULL AND res_rsv_ruimte_key NOT IN ( SELECT MIN (res_rsv_ruimte_key) FROM res_rsv_ruimte WHERE res_rsv_ruimte_externnr IS NOT NULL AND res_rsv_ruimte_verwijder IS NULL GROUP BY res_rsv_ruimte_externnr) AND res_ruimte_opstel_key IN ( SELECT res_ruimte_opstel_key FROM res_ruimte_opstelling ro, res_ruimte rr WHERE ro.res_ruimte_key = rr.res_ruimte_key AND rr.res_ruimte_extern_id IS NOT NULL); -- Voeg de nieuwe unieke index toe CREATE UNIQUE INDEX res_i_res_rsv_ruimte18 ON res_rsv_ruimte (CASE WHEN res_rsv_ruimte_verwijder IS NULL THEN res_rsv_ruimte_externnr ELSE NULL END); ------ payload end ------ SET DEFINE OFF BEGIN adm.systrackscriptId ('$Id$', 1); END; / COMMIT; SET ECHO OFF SPOOL OFF SET DEFINE ON PROMPT Logfile of this upgrade is: &fcltlogfile