Files
Database/_UP/DB40to41.src
Peter Feij d5e63a370f FCLT#63646 Graphics 2022 optie voor labelrotatie
svn path=/Database/trunk/; revision=53401
2021-10-14 14:19:55 +00:00

265 lines
11 KiB
Plaintext

/*
* Update script van FACILITOR schema
* $Revision$
* $Id$
*/
#include "prologue.inc"
COMMIT;
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#63401
ALTER TABLE res_activiteit ADD res_activiteit_limiet NUMBER(3);
ALTER TABLE res_activiteit ADD res_activiteit_limiet_fe NUMBER(3);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#64834
ALTER TABLE mld_stdmelding ADD
mld_stdmelding_notes
NUMBER(1)
DEFAULT 3
NOT_NULL(mld_stdmelding_notes, mld_c_mld_stdmelding_notes);
ALTER TABLE mld_opdr_note ADD
mld_opdr_note_flag
NUMBER (2)
DEFAULT 4;
ALTER TABLE mld_opdr ADD
mld_opdr_actiecode
NUMBER(3)
DEFAULT 1
NOT NULL;
DEF_FAC_SRTNOT('ORDNOL', 2, 'lcl_noti_ORDNOL', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 10);
DEF_FAC_SRTNOT('ORDNOT', 1, 'lcl_noti_ORDNOT', 'mld/mld_melding.asp?mld_key=', '0', 'melding', 10);
-- in FAC_LCL:
--FAC_LCL('lcl_noti_ORDNOT', 'Er is een opmerking bij ##OPDRKEY## geplaatst door uitvoerende', 'New note from handler for ##OPDRKEY##')
--FAC_LCL('lcl_noti_ORDNOL', 'Er is een opmerking bij ##OPDRKEY## geplaatst door aanvrager', 'New note from requestor for ##OPDRKEY## ')
ALTER TABLE mld_melding_note ADD
mld_melding_note_parent_key
NUMBER (10)
DEFAULT NULL
REFERENCES mld_melding_note (mld_melding_note_key)
ON DELETE CASCADE;
ALTER TABLE mld_opdr_note ADD
mld_opdr_note_parent_key
NUMBER (10)
DEFAULT NULL
REFERENCES mld_opdr_note (mld_opdr_note_key)
ON DELETE CASCADE;
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#64017
_FAC_MODULE('WGT', 'lcl_module_WGT')
DEF_FAC_FUNCTIE3('WEB_WGTUSE', 'WGT', 3, 0, 0);
DEF_FAC_FUNCTIE3('WEB_WGTMAN', 'WGT', 3, 0, 2);
DEF_MENUITEM(0, 'lcl_menu_my_wgt_page', '', 'WGT', 'appl/fac/fac_widget_page.asp', 0, 0, 'WEB_WGTUSE', 'W', '1', '');
-- Variatie op MENU_INS_AFTER();
INSERT INTO fac_menu (fac_menuitems_key, fac_menu_volgnr)
SELECT i.fac_menuitems_key, m.fac_menu_volgnr + 2
FROM fac_menuitems i, fac_menu m
WHERE i.fac_menuitems_key =
(SELECT MAX (mmi.fac_menuitems_key)
FROM fac_menuitems mmi
WHERE mmi.fac_menuitems_label = 'lcl_menu_my_wgt_page')
AND ( m.fac_menuitems_key =
(SELECT MAX (ii.fac_menuitems_key)
FROM fac_menuitems ii
WHERE ii.fac_menuitems_label = 'lcl_menu_fe_myinfo') -- Originele fac_menuitems
OR ( m.fac_menu_altgroep = 0
AND ( (m.fac_menu_alturl LIKE '%appl/fac/fac_user_info.asp%') -- Handmatig ingevoegd met originele url
OR UPPER (m.fac_menu_altlabel) = 'MIJN GEGEVENS'))) -- Handmatig ingevoegd met originele label
;
DEF_MENUITEM(2, 'lcl_menu_wgt_pages', '', 'WGT', 'appl/mgt/fac_widget_page.asp', 0, 0, 'WEB_WGTMAN', 'R', '1', '');
-- Variatie op MENU_INS_AFTER();
INSERT INTO fac_menu (fac_menuitems_key, fac_menu_volgnr)
SELECT i.fac_menuitems_key, m.fac_menu_volgnr + 2
FROM fac_menuitems i, fac_menu m
WHERE i.fac_menuitems_key =
(SELECT MAX (mmi.fac_menuitems_key)
FROM fac_menuitems mmi
WHERE mmi.fac_menuitems_label = 'lcl_menu_wgt_pages')
AND ( m.fac_menuitems_key =
(SELECT MAX (ii.fac_menuitems_key)
FROM fac_menuitems ii
WHERE ii.fac_menuitems_label = 'lcl_menu_fac_widgets') -- Originele fac_menuitems
OR ( m.fac_menu_altgroep = 2
AND ( m.fac_menu_alturl LIKE '%appl/mgt/fac_widget.asp%' -- Handmatig ingevoegd met originele url
OR UPPER (m.fac_menu_altlabel) = 'WIDGETS'))) -- Handmatig ingevoegd met originele label
;
CREATE_TABLE(fac_widget_page, 0)
(
fac_widget_page_key
NUMBER(10)
CONSTRAINT fac_k_fac_widget_page_key PRIMARY KEY,
fac_widget_page_name
VARCHAR2(60),
fac_functie_key -- A la menuitem, indien autorisatie dan tonen
NUMBER(10)
CONSTRAINT fac_r_widget_page_functie_key REFERENCES fac_functie(fac_functie_key),
fac_widget_page_aanmaak
DATE
DEFAULT SYSDATE
);
ALTER TABLE fac_widget_page ADD (
prs_perslid_key
NUMBER(10)
CONSTRAINT fac_r_prs_perslid_key11 REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
);
CREATE SEQUENCE fac_s_fac_widget_page_key MINVALUE 100;
CREATE_TRIGGER(fac_t_fac_widget_page_B_I)
BEFORE INSERT ON fac_widget_page
FOR EACH ROW
BEGIN
UPDATE_PRIMARY_KEY(fac_widget_page_key, fac_s_fac_widget_page_key);
END;
/
CREATE_TABLE(fac_widget_onpage, 0) -- Koppeltabel voor fac_widget en fac_widget_page
(
fac_widget_onpage_key
NUMBER(10)
CONSTRAINT fac_k_fac_widget_onpage_key PRIMARY KEY,
fac_widget_page_key
NUMBER(10)
CONSTRAINT fac_r_fac_widget_page_key REFERENCES fac_widget_page(fac_widget_page_key) ON DELETE CASCADE,
fac_widget_key
NUMBER(10)
CONSTRAINT fac_r_fac_widget_key REFERENCES fac_widget(fac_widget_key) ON DELETE CASCADE,
fac_widget_onpage_order
NUMBER(5),
fac_widget_onpage_height -- Optioneel afwijkend van default
NUMBER(5),
fac_widget_onpage_width -- Optioneel afwijkend van default
NUMBER(5)
);
CREATE SEQUENCE fac_s_fac_widget_onpage_key MINVALUE 1;
CREATE_TRIGGER(fac_t_fac_widget_onpage_B_I)
BEFORE INSERT ON fac_widget_onpage
FOR EACH ROW
BEGIN
UPDATE_PRIMARY_KEY(fac_widget_onpage_key, fac_s_fac_widget_onpage_key);
END;
/
-- Moving widget page info from fac_widget to fac_widget_page
-- Insert in new table
-- Multiple-update-compatible
INSERT INTO fac_widget_page (fac_widget_page_name)
SELECT DISTINCT fac_widget_groep
FROM fac_widget
WHERE fac_widget_groep NOT IN (SELECT DISTINCT fac_widget_page_name
FROM fac_widget_page);
-- S(widgetportal) wordt een widget_page_key, ipv 1|0
UPDATE fac_setting
SET fac_setting_pvalue =
(SELECT fac_widget_page_key
FROM fac_widget_page
WHERE fac_widget_page_name = 'myfacilitor')
WHERE EXISTS
(SELECT fac_widget_page_key
FROM fac_widget_page
WHERE fac_widget_page_name = 'myfacilitor') -- Dubbelcheck, eigenlijk niet nodig want S(widgetportal) = 1 hier
AND fac_setting_name = 'widgetportal'
AND fac_setting_pvalue IS NOT NULL
AND fac_setting_pvalue <> '0';
ALTER TABLE fac_widget ADD fac_widget_naam VARCHAR2(60);
UPDATE fac_widget SET fac_widget_naam = SUBSTR (fac_widget_groep, 1, 56) || '-' || fac_widget_volgnr;
ALTER TABLE fac_widget MODIFY fac_widget_naam NOT NULL;
ALTER TABLE fac_widget MODIFY fac_widget_height NUMBER(5);
ALTER TABLE fac_widget MODIFY fac_widget_width NUMBER(5);
ALTER TABLE fac_widget ADD fac_widget_type VARCHAR2(1) DEFAULT ('U') NOT NULL;
ALTER TABLE fac_widget ADD fac_widget_typerefkey NUMBER(10);
ALTER TABLE fac_widget ADD fac_widget_content VARCHAR2(4000);
ALTER TABLE fac_widget ADD fac_widget_public NUMBER(1) DEFAULT 0 NOT NULL;
ALTER TABLE fac_widget
ADD CONSTRAINT fac_c_widgettype1 CHECK
( (fac_widget_type IN ('U', 'X', 'I') AND fac_widget_url IS NOT NULL)
OR (fac_widget_type IN ('M', 'R') AND fac_widget_typerefkey IS NOT NULL)
OR (fac_widget_type = 'H' AND fac_widget_content IS NOT NULL));
// UNDER CONSTRUCTION; conversie optimaliseren
-- Het vullen van de koppeltabel inclusief conversie van fac_widget.fac_widget_volgnr -> fac_widget_onpage.fac_widget_onpage_order
INSERT INTO fac_widget_onpage (fac_widget_page_key,
fac_widget_key,
fac_widget_onpage_order,
fac_widget_onpage_height,
fac_widget_onpage_width)
SELECT page.fac_widget_page_key,
widget.fac_widget_key,
widget.onpage_order,
widget.fac_widget_height,
widget.fac_widget_width
FROM ( SELECT fac_widget_page_key, fac_widget_page_name
FROM fac_widget_page) page,
( SELECT fac_widget_key,
fac_widget_groep,
fac_widget_height,
fac_widget_width,
ROW_NUMBER ()
OVER (PARTITION BY fac_widget_groep
ORDER BY fac_widget_volgnr) onpage_order
FROM fac_widget
ORDER BY fac_widget_groep, fac_widget_volgnr NULLS LAST) widget
WHERE widget.fac_widget_groep = page.fac_widget_page_name;
/////////////////////////////////////////////////////////////////////////////////////////// NYBU#62190
ALTER TABLE res_deel ADD res_deel_bulkreserveerbaar NUMBER(1) DEFAULT(NULL)
CONSTRAINT res_c_res_deel_bulkrsveerbaar CHECK(res_deel_bulkreserveerbaar IN (0,1));
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#63646
ALTER TABLE cad_thema ADD cad_thema_opmerking VARCHAR2(4000);
ALTER TABLE cad_thema ADD cad_thema_aanmaak DATE DEFAULT SYSDATE CONSTRAINT cad_c_cad_thema_aanmaak NOT NULL;
ALTER TABLE cad_label ADD cad_label_opmerking VARCHAR2(4000);
ALTER TABLE cad_label ADD cad_label_aanmaak DATE DEFAULT SYSDATE CONSTRAINT cad_c_cad_label_aanmaak NOT NULL;
ALTER TABLE cad_label ADD cad_label_rotation NUMBER(3);
ALTER TABLE ins_srtdeel ADD ins_srtdeel_acadlabelsize NUMBER(5);
ALTER TABLE ins_srtdeel ADD ins_srtdeel_acadlabelpos NUMBER(1);
UPDATE ins_srtdeel
SET ins_srtdeel_acadlabelsize = 0
WHERE ins_srtdeel.ins_srtdeel_key IN
(SELECT ins_srtdeel_key
FROM ins_disc_params d, ins_srtgroep g, ins_srtdeel s
WHERE g.ins_discipline_key = d.ins_discipline_key
AND s.ins_srtgroep_key = g.ins_srtgroep_key
AND BITAND (ins_disc_params_type, 16) = 16);
// fac_setting_type en fac_setting_default veranderen wel bij de recreate
UPDATE fac_setting
SET fac_setting_pvalue = fac_setting_pvalue / 1000000
WHERE fac_setting_name = 'fg_areathreshold' AND fac_setting_type = 'number';
/////////////////////////////////////////////////////////////////////////////////////////// MARX#68582
ALTER TABLE res_rsv_ruimte DROP CONSTRAINT res_c_alg_ruimte_or_opstel;
ALTER TABLE res_rsv_ruimte
ADD CONSTRAINT res_c_alg_ruimte_or_opstel
CHECK (res_ruimte_opstel_key IS NOT NULL OR alg_ruimte_key IS NOT NULL OR mld_opdr_key IS NOT NULL);
/////////////////////////////////////////////////////////////////////////////////////////// RWSN#66608
ALTER TABLE fac_imp_usrdata
ADD ( fac_usrdata_reftabel VARCHAR2(16)
, fac_usrdata_refcode VARCHAR2(40)
);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#*****
///////////////////////////////////////////////////////////////////////////////////////////
REGISTERONCE('$Id$')
#include "epilogue.inc"