Files
Database/_UP/DB50to51.src
Jos Groot Lipman e1a52a698e Merge 2025.2 DB51a patches
svn path=/Database/trunk/; revision=69611
2025-07-01 10:25:23 +00:00

415 lines
18 KiB
Plaintext

/*
* Update script van FACILITOR schema
* $Revision$
* $Id$
*/
#include "prologue.inc"
COMMIT;
SET DEFINE OFF
/////////////////////////////////////////////////////////////////////////////////////////// WRTH#87857
UPDATE fac_import_app SET fac_import_app_csv = 1 WHERE fac_import_app_code = 'CNT';
/////////////////////////////////////////////////////////////////////////////////////////// PCHX#86497
ALTER TABLE cnt_disc_params /* Kostensoort verplicht {0=niet verplicht (default), 1=verplicht} */
ADD cnt_disc_params_ksverplicht
NUMBER(1)
DEFAULT 0
NOT NULL;
/////////////////////////////////////////////////////////////////////////////////////////// SCHG#88197
ALTER TABLE fac_imp_cnt
DROP COLUMN scope;
ALTER TABLE fac_imp_cnt
DROP COLUMN gebouwcode;
ALTER TABLE fac_imp_cnt
ADD ( locatiecode VARCHAR2 (10)
, terreincode VARCHAR2 (12)
, gebouwcode VARCHAR2 (12)
, verdiepingcode NUMBER (3)
, ruimtecode VARCHAR2 (20)
);
/////////////////////////////////////////////////////////////////////////////////////////// BAMG#85636
CREATE TABLE cnt_verlengschema
(
cnt_verlengschema_key
NUMBER(10)
PRIMARY KEY,
cnt_contract_key
NUMBER(10)
CONSTRAINT cnt_r_cnt_contract_key2 REFERENCES cnt_contract(cnt_contract_key),
cnt_verlengschema_volgnr
NUMBER(2),
cnt_verlengschema_verlengtermijn
NUMBER(10)
CONSTRAINT cnt_r_cnt_termijn_key6 REFERENCES cnt_termijn(cnt_termijn_key)
);
CREATE SEQUENCE cnt_s_cnt_verlengschema_key MINVALUE 1;
CREATE INDEX cnt_i_cnt_verlengschema ON cnt_verlengschema(cnt_contract_key);
/////////////////////////////////////////////////////////////////////////////////////////// YASK#88648
UPDATE fac_message
SET fac_message_text = 'Het veld ''Code'' is niet uniek.'
WHERE fac_message_code = 'PRS_U_PRS_AFDELING_UPPER';
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#84467
ALTER TABLE mld_kenmerk ADD mld_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = 0;
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 1
WHERE mld_kenmerk_volgnummer <= 800
AND mld_kenmerk_niveau IN ('T', 'D', 'S', 'A');
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 2
WHERE mld_kenmerk_volgnummer <= 900 -- ja ook die <=800
AND mld_kenmerk_niveau IN ('T', 'D', 'S', 'A');
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 4 -- anders ziet BO de normale km niet
WHERE mld_kenmerk_volgnummer <= 800 OR mld_kenmerk_volgnummer >= 900
AND mld_kenmerk_niveau IN ('T', 'D', 'S', 'A');
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 1
WHERE mld_kenmerk_volgnummer <= 100
AND mld_kenmerk_niveau IN ('O', 'P');
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 2
WHERE mld_kenmerk_volgnummer <= 900
AND mld_kenmerk_volgnummer >= 100
AND mld_kenmerk_niveau IN ('O', 'P');
UPDATE mld_kenmerk k
SET mld_kenmerk_rolcode = mld_kenmerk_rolcode + 4
WHERE mld_kenmerk_volgnummer >= 900
AND mld_kenmerk_niveau IN ('O', 'P');
ALTER TABLE bes_kenmerk ADD bes_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE bes_kenmerk k
SET bes_kenmerk_rolcode = 0;
UPDATE bes_kenmerk k
SET bes_kenmerk_rolcode = bes_kenmerk_rolcode + 1
WHERE bes_kenmerk_volgnummer <= 100
AND bes_kenmerk_type IN ('B', 'I');
UPDATE bes_kenmerk k
SET bes_kenmerk_rolcode = bes_kenmerk_rolcode + 4
WHERE bes_kenmerk_volgnummer >= 900
AND bes_kenmerk_type IN ('B', 'I');
ALTER TABLE cnt_kenmerk ADD cnt_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE cnt_kenmerk k
SET cnt_kenmerk_rolcode = 0;
UPDATE cnt_kenmerk k
SET cnt_kenmerk_rolcode = 1
WHERE cnt_kenmerk_volgnummer <= 100;
UPDATE cnt_kenmerk k
SET cnt_kenmerk_rolcode = cnt_kenmerk_rolcode + 2
WHERE cnt_kenmerk_volgnummer >= 100;
ALTER TABLE ins_kenmerk ADD ins_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE ins_kenmerk k
SET ins_kenmerk_rolcode = 0;
UPDATE ins_kenmerk k
SET ins_kenmerk_rolcode = 1
WHERE ins_kenmerk_volgnummer <= 100
AND ins_kenmerk_niveau IN ('D', 'G', 'S');
UPDATE ins_kenmerk k
SET ins_kenmerk_rolcode = ins_kenmerk_rolcode + 2
WHERE ins_kenmerk_volgnummer >= 100
AND ins_kenmerk_volgnummer <= 900
AND ins_kenmerk_niveau IN ('D', 'G', 'S');
UPDATE ins_kenmerk k
SET ins_kenmerk_rolcode = ins_kenmerk_rolcode + 4
WHERE ins_kenmerk_volgnummer >= 900
AND ins_kenmerk_niveau IN ('D', 'G', 'S');
UPDATE ins_kenmerk k
SET ins_kenmerk_rolcode = 1
WHERE ins_kenmerk_volgnummer <= 100
AND ins_kenmerk_niveau IN ('T', 'C', 'E');
ALTER TABLE res_kenmerk ADD res_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE res_kenmerk k
SET res_kenmerk_rolcode = 0;
UPDATE res_kenmerk k
SET res_kenmerk_rolcode = 1
WHERE res_kenmerk_volgnummer <= 800;
UPDATE res_kenmerk k
SET res_kenmerk_rolcode = res_kenmerk_rolcode + 2
WHERE res_kenmerk_volgnummer <= 900;
UPDATE res_kenmerk k
SET res_kenmerk_rolcode = res_kenmerk_rolcode + 4
WHERE res_kenmerk_volgnummer <= 800
OR res_kenmerk_volgnummer >= 900;
// Deze varianten hebben kenmerk_volgnr ipv kenmerk_volgnummer
// (en tegelijkertijd geen verwijzing naar een kenmerksoort)
ALTER TABLE alg_kenmerk ADD alg_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE alg_kenmerk k
SET alg_kenmerk_rolcode = 0;
UPDATE alg_kenmerk k
SET alg_kenmerk_rolcode = 1
WHERE alg_kenmerk_volgnr <= 100;
UPDATE alg_kenmerk k
SET alg_kenmerk_rolcode = alg_kenmerk_rolcode + 2
WHERE alg_kenmerk_volgnr >= 100;
ALTER TABLE bez_kenmerk ADD bez_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE bez_kenmerk k
SET bez_kenmerk_rolcode = 0;
UPDATE bez_kenmerk k
SET bez_kenmerk_rolcode = 3
WHERE bez_kenmerk_volgnr <= 900;
UPDATE bez_kenmerk k
SET bez_kenmerk_rolcode = bez_kenmerk_rolcode + 4
WHERE bez_kenmerk_volgnr >= 900;
ALTER TABLE fin_kenmerk ADD fin_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE fin_kenmerk k
SET fin_kenmerk_rolcode = 1;
ALTER TABLE faq_kenmerk ADD faq_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE faq_kenmerk k
SET faq_kenmerk_rolcode = 1;
ALTER TABLE prs_kenmerk ADD prs_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL;
UPDATE prs_kenmerk k
SET prs_kenmerk_rolcode = 0;
UPDATE prs_kenmerk k
SET prs_kenmerk_rolcode = 1
WHERE prs_kenmerk_volgnr <= 100;
UPDATE prs_kenmerk k
SET prs_kenmerk_rolcode = prs_kenmerk_rolcode + 2
WHERE prs_kenmerk_volgnr >= 100;
UPDATE prs_kenmerk k
SET prs_kenmerk_rolcode = prs_kenmerk_rolcode + 4 -- Wijzigbaar met PROFIL
WHERE prs_kenmerk_niveau <> 'C' AND prs_kenmerk_volgnr >= 800;
UPDATE prs_kenmerk k
SET prs_kenmerk_rolcode = prs_kenmerk_rolcode + 4 -- Wijzigbaar met EXTREL
WHERE prs_kenmerk_niveau = 'C' AND BITAND (prs_kenmerk_rolcode, 4) = 0;
UPDATE prs_kenmerk k
SET prs_kenmerk_toonbaar = COALESCE (prs_kenmerk_toonbaar, 0) + 2 -- Zichtbaar in profiel
WHERE prs_kenmerk_volgnr > 800
AND prs_kenmerk_volgnr <= 900
AND BITAND (COALESCE (prs_kenmerk_toonbaar, 0), 2) = 0;
ALTER TABLE fac_imp_flex ADD kenmerk_rolcode VARCHAR2(255);
/*
UPDATE ins_kenmerk k
SET ins_kenmerk_omschrijving = (SELECT ins_srtkenmerk_omschrijving FROM ins_srtkenmerk sk WHERE sk.ins_srtkenmerk_key = k.ins_srtkenmerk_key)
WHERE ins_kenmerk_omschrijving IS NULL;
UPDATE mld_kenmerk k
SET mld_kenmerk_omschrijving = (SELECT mld_srtkenmerk_omschrijving FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key)
WHERE mld_kenmerk_omschrijving IS NULL;
UPDATE res_kenmerk k
SET res_kenmerk_omschrijving = (SELECT res_srtkenmerk_omschrijving FROM res_srtkenmerk sk WHERE sk.res_srtkenmerk_key = k.res_srtkenmerk_key)
WHERE res_kenmerk_omschrijving IS NULL;
UPDATE bes_kenmerk k
SET bes_kenmerk_omschrijving = (SELECT bes_srtkenmerk_omschrijving FROM bes_srtkenmerk sk WHERE sk.bes_srtkenmerk_key = k.bes_srtkenmerk_key)
WHERE bes_kenmerk_omschrijving IS NULL;
UPDATE cnt_kenmerk k
SET cnt_kenmerk_omschrijving = (SELECT cnt_srtkenmerk_omschrijving FROM cnt_srtkenmerk sk WHERE sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
WHERE cnt_kenmerk_omschrijving IS NULL;
*/
/////////////////////////////////////////////////////////////////////////////////////////// AAIT#87224
ALTER TABLE prs_bedrijf MODIFY prs_bedrijf_opmerking VARCHAR2(4000);
ALTER TABLE fac_imp_ext_bedrijf MODIFY prs_bedrijf_opmerking VARCHAR2(4000);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#88353
UPDATE prs_bedrijf SET prs_bedrijf_intern = NULL WHERE prs_bedrijf_intern = 0;
ALTER TABLE prs_bedrijf
ADD CONSTRAINT prs_c_prs_bedrijf_intern CHECK(prs_bedrijf_intern IS NULL OR prs_bedrijf_intern IN (1,2));
/////////////////////////////////////////////////////////////////////////////////////////// LOGC#89125
ALTER TABLE mld_melding_tag ADD mld_melding_tag_datum_acc DATE;
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#85585
ALTER TABLE fac_email_setting
ADD (mld_stdmelding_key NUMBER (10) REFERENCES mld_stdmelding (mld_stdmelding_key) ON DELETE CASCADE);
ALTER TABLE fac_email_setting
MODIFY fac_email_setting_attachpath VARCHAR2 (255) DEFAULT '*flexfilespath';
ALTER TABLE fac_email_setting
ADD fac_email_setting_text VARCHAR2 (320);
INSERT INTO fac_setting (fac_setting_module
, fac_setting_flags
, fac_functie_key
, fac_setting_name
, fac_setting_type
, fac_setting_description)
SELECT 'FAC'
, 1
, fac_functie_key
, 'm2m_enabled'
, 'number'
, 'Is Facilitor Mail2Melding configured {0=disabled | 1=enabled}'
FROM fac_functie
WHERE fac_functie_code = 'WEB_FACFAC';
-- Zet nieuwe setting m2m_enabled voor omgeving waar m2m in gebruik is
DECLARE
m2m NUMBER;
BEGIN
SELECT COUNT (*) INTO m2m FROM fac_email_setting;
IF m2m > 0
THEN
UPDATE fac_setting
SET fac_setting_pvalue = '1'
WHERE fac_setting_name = 'm2m_enabled';
END IF;
END;
/
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#88913
DEF_FAC_SRTNOT('ORDSND', 0, 'lcl_noti_ORDSND', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
-- CNTNEW/ORDNEW/BES2NE aanmaken bij kanalen die nog naar geen enkele notificatie luisteren
INSERT INTO prs_bedrijfadres_srtnoti (prs_bedrijfadres_key, fac_srtnotificatie_key)
SELECT prs_bedrijfadres_key, fac_srtnotificatie_key
FROM fac_srtnotificatie, prs_bedrijfadres ba
WHERE fac_srtnotificatie_code = 'CNTNEW'
AND prs_bedrijfadres_type = 'C'
AND NOT EXISTS
(SELECT 1
FROM prs_bedrijfadres_srtnoti ba_srt
WHERE ba_srt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key);
INSERT INTO prs_bedrijfadres_srtnoti (prs_bedrijfadres_key, fac_srtnotificatie_key)
SELECT prs_bedrijfadres_key, fac_srtnotificatie_key
FROM fac_srtnotificatie, prs_bedrijfadres ba
WHERE fac_srtnotificatie_code IN ('ORDNEW', 'ORDSND')
AND prs_bedrijfadres_type = 'O'
AND NOT EXISTS
(SELECT 1
FROM prs_bedrijfadres_srtnoti ba_srt
WHERE ba_srt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key);
INSERT INTO prs_bedrijfadres_srtnoti (prs_bedrijfadres_key, fac_srtnotificatie_key)
SELECT prs_bedrijfadres_key, fac_srtnotificatie_key
FROM fac_srtnotificatie, prs_bedrijfadres ba
WHERE fac_srtnotificatie_code = 'BES2NE'
AND prs_bedrijfadres_type = 'B'
AND NOT EXISTS
(SELECT 1
FROM prs_bedrijfadres_srtnoti ba_srt
WHERE ba_srt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key);
-- RESNEW luisterde al nooit automatisch
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#87091
ALTER TABLE fac_nieuws ADD
mld_melding_key
NUMBER(10) CONSTRAINT mld_r_mld_melding_key8 REFERENCES mld_melding(mld_melding_key) ON DELETE SET NULL;
UPDATE fac_setting
SET fac_setting_pvalue = fac_setting_pvalue || ',fa-megaphone'
WHERE fac_setting_pvalue IS NOT NULL
AND fac_setting_name = 'buttons_in_hamburger';
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#89182
INSERT INTO fac_locale (fac_locale_lang,
fac_locale_kolomkeyval,
fac_locale_kolomnaam,
fac_locale_tekst)
SELECT 'EN',
fac_usrrap_key,
'FAC_USRRAP_OMSCHRIJVING',
'UDR: Key management'
FROM fac_usrrap
WHERE fac_usrrap_view_name = 'ins_v_rap_sle_toegang'
AND fac_usrrap_omschrijving = 'SLE: Sleuteloverzicht'
AND fac_usrrap_info = 'Overzicht van sleutels en bezitters';
INSERT INTO fac_locale (fac_locale_lang,
fac_locale_kolomkeyval,
fac_locale_kolomnaam,
fac_locale_tekst)
SELECT 'EN',
fac_usrrap_key,
'FAC_USRRAP_INFO',
'Basic report for key management'
FROM fac_usrrap
WHERE fac_usrrap_view_name = 'ins_v_rap_sle_toegang'
AND fac_usrrap_omschrijving = 'SLE: Sleuteloverzicht'
AND fac_usrrap_info = 'Overzicht van sleutels en bezitters';
UPDATE fac_usrrap
SET fac_usrrap_omschrijving = 'UDR: Sleuteloverzicht',
fac_usrrap_info = 'Basisrapport voor sleutels',
fac_usrrap_groep = 'BASIS'
WHERE fac_usrrap_view_name = 'ins_v_rap_sle_toegang'
AND fac_usrrap_omschrijving = 'SLE: Sleuteloverzicht'
AND fac_usrrap_info = 'Overzicht van sleutels en bezitters'
AND fac_usrrap_groep IS NULL;
/////////////////////////////////////////////////////////////////////////////////////////// FZKH#88777
ALTER TABLE fac_activiteit DROP CONSTRAINT fac_c_fac_activiteit_eenheid;
ALTER TABLE fac_activiteit
ADD CONSTRAINT fac_c_fac_activiteit_eenheid CHECK (fac_activiteit_eenheid IN (1,2,3,4,5) OR fac_activiteit_eenheid IS NULL);
DEF_MENUITEM(1, 'lcl_menu_fac_jobs_templates_fo', '', 'MLD', 'appl/fac/job_search.asp?urole=fo&template=1', 0, 0, 'WEB_MLDFOF', 'W', '1', '');
DEF_MENUITEM(2, 'lcl_menu_fac_jobs_templates', '', 'MLD', 'appl/fac/job_search.asp?template=1', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
MENU_INS_AFTER('lcl_menu_fac_jobs_templates', 'lcl_menu_mld_workflows', 1);
/////////////////////////////////////////////////////////////////////////////////////////// FZKH#87243
UPDATE mld_kenmerk k1
SET k1.mld_kenmerk_inlijst = k1.mld_kenmerk_inlijst + 2
WHERE k1.mld_kenmerk_key IN
(SELECT k2.mld_kenmerk_key
FROM mld_kenmerk k2, mld_srtkenmerk sk, fac_kenmerkdomein kd
WHERE k2.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND sk.fac_kenmerkdomein_key = kd.fac_kenmerkdomein_key
AND k2.mld_kenmerk_verwijder IS NULL
AND sk.mld_srtkenmerk_verwijder IS NULL
AND kd.fac_kenmerkdomein_verwijder IS NULL
AND k2.mld_kenmerk_show_expr IS NULL
AND k2.mld_kenmerk_toonbaar IS NULL
AND k2.mld_kenmerk_niveau IN ('A',
'T',
'D',
'S')
AND sk.mld_srtkenmerk_kenmerktype IN ('r', 'R')
AND NOT EXISTS
(SELECT ''
FROM fac_usrtab u1
WHERE u1.fac_usrtab_parentkey IS NOT NULL
AND u1.fac_usrtab_key = kd.fac_usrtab_key)
AND NOT EXISTS
(SELECT ''
FROM fac_usrtab u1, fac_usrtab u2
WHERE u2.fac_usrtab_parentkey =
u1.fac_usrtab_key
AND u1.fac_usrtab_key = kd.fac_usrtab_key));
/////////////////////////////////////////////////////////////////////////////////////////// ALLR#80285
ALTER TABLE res_ruimte
ADD res_ruimte_limiet NUMBER (3);
/////////////////////////////////////////////////////////////////////////////////////////// BLCC#88329
ALTER TABLE cnt_disc_params
ADD cnt_disc_params_approve_new NUMBER(1) DEFAULT 0 NOT NULL;
/////////////////////////////////////////////////////////////////////////////////////////// VLKC#89252
INSERT INTO fac_setting (fac_setting_module,
fac_setting_name,
fac_setting_type,
fac_setting_description,
fac_setting_default,
fac_setting_pvalue)
VALUES('MLD',
'mld_pessismistisch_hergoedkeuren',
'number',
'Hergoedkeuren als de opdrachtkosten boven de bestellimiet, of boven de goedkeuringsvrijstelling komen {1=ja | 0=alleen als beiden waar zijn}',
'0',
(SELECT fac_setting_pvalue FROM fac_setting WHERE fac_setting_name = 'fac_reserved_number2'));
UPDATE fac_setting
SET fac_setting_pvalue = ''
WHERE fac_setting_name = 'fac_reserved_number2';
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000
REGISTERONCE('$Id$')
#include "epilogue.inc"