Files
Database/_UP/DB49to50.src
Maykel Geerdink 818faabb2e VGLD#85984: Automatische afsluitdatum instellen in contracten mogelijk?
svn path=/Database/trunk/; revision=67607
2025-01-15 14:39:43 +00:00

240 lines
11 KiB
Plaintext

/*
* Update script van FACILITOR schema
* $Revision$
* $Id$
*/
#include "prologue.inc"
COMMIT;
SET DEFINE OFF
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#85890
RENAME fac_v_orderqueue to fac_v_orderqueue_OLD;
// Tijdelijke dummy die niets oplevert
CREATE OR REPLACE VIEW fac_v_orderqueue
AS
SELECT -1 prs_bedrijf_key,
-1 alg_locatie_key,
'dontcare' xmlnode,
-1 key,
-1 reference,
'' sender,
SYSDATE teverzenden_datum
FROM DUAL
WHERE 0 = 1;
CREATE TABLE prs_bedrijfadres_srtnoti
(
prs_bedrijfadres_srtnoti_key
NUMBER(10)
PRIMARY KEY,
prs_bedrijfadres_key
NUMBER(10)
CONSTRAINT prs_r_bedrijfadres_key2
REFERENCES prs_bedrijfadres(prs_bedrijfadres_key) ON DELETE CASCADE,
fac_srtnotificatie_key
NUMBER(10)
REFERENCES fac_srtnotificatie(fac_srtnotificatie_key) ON DELETE CASCADE,
prs_bedrijfadres_method -- optionele overrule method (anders GET/POST afhankelijk van of er een body is)
VARCHAR2(16),
prs_bedrijfadres_url -- optionele overrule endpoint
VARCHAR2(512),
prs_bedrijfadres_srtnoti_aanmaak
DATE
DEFAULT SYSDATE NOT NULL
);
CREATE SEQUENCE prs_s_prs_bedrijfadres_srtnoti_key MINVALUE 1;
ALTER TABLE fac_notificatie
ADD fac_notificatie_naam VARCHAR(80); // puur informatief voor logging/support, bijvoorbeeld opdrachtnummer
ALTER TABLE fac_notificatie
ADD fac_notificatie_failmessage VARCHAR(4000); // de laatste
ALTER TABLE fac_notificatie
ADD fac_notificatie_faildatum DATE; // de laatste
ALTER TABLE prs_bedrijfadres
ADD ins_discipline_key NUMBER(10)
REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE; // Scherpere bedrijfadres bepaling, vooral reserveringen?
ALTER TABLE prs_bedrijfadres
MODIFY prs_bedrijfadres_type VARCHAR2(3); // Ook ruimte voor BOG voor BestelOpdrachten Generiek
ALTER TABLE fac_version
ADD fac_version_tasker_date DATE;
CREATE_TABLE(fac_cust, 0)
(
fac_cust_key NUMBER(10)
CONSTRAINT fac_k_fac_cust_key PRIMARY KEY,
fac_cust_customerid VARCHAR(4) NOT NULL,
fac_cust_schema VARCHAR(30) DEFAULT '00' NOT NULL, // kopie fac_version_schema van de gebruiker
fac_cust_enabled NUMBER(1) DEFAULT 1 NOT NULL, // future use, disable during upgrades?
fac_cust_aanmaak DATE DEFAULT SYSDATE NOT NULL,
CONSTRAINT fac_u_fac_cust UNIQUE(fac_cust_customerid)
);
CREATE_TABLE(fac_task, 0)
(
fac_task_key NUMBER(10)
CONSTRAINT fac_k_fac_task_key PRIMARY KEY,
fac_cust_key NUMBER(10) REFERENCES fac_cust(fac_cust_key) ON DELETE CASCADE,
fac_task_code VARCHAR(32) NOT NULL,
fac_task_nextrun DATE,
fac_task_lastrun DATE,
CONSTRAINT fac_u_fac_task UNIQUE(fac_cust_key, fac_task_code)
);
CREATE SEQUENCE fac_s_fac_cust_key MINVALUE 1;
CREATE SEQUENCE fac_s_fac_task_key MINVALUE 1;
DEF_FAC_SRTNOT('RESSND', 1, 'lcl_noti_RESSND', 'res/res_reservering.asp?rsv_ruimte_key=', '0', 'reservering', 60);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#80469
/////////////////////////////////////////////////////////////////////////////////////////// YAXX#84687
ALTER TABLE prs_bedrijf
ADD prs_bedrijf_mld_limiet NUMBER(8,2);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#85970
CREATE_TABLE(mld_melding_tag,0) /* generiekere opzet voor mld_releases of mld_releasekalender */
(
mld_melding_tag_key
NUMBER(10)
CONSTRAINT mld_k_melding_tag_key PRIMARY KEY,
ins_srtdiscipline_key
NUMBER(10) NOT NULL
CONSTRAINT mld_r_ins_srtdiscipline_key4 REFERENCES ins_srtdiscipline(ins_srtdiscipline_key) ON DELETE CASCADE,
mld_melding_tag_naam
VARCHAR2(30)
NOT NULL,
mld_melding_tag_oms /* korte omschrijving */
VARCHAR2(1000),
mld_stdmeldinggroep_key /* optional reference to mld_stdmeldinggroep */
NUMBER(10)
CONSTRAINT mld_r_mld_stdmeldinggroep_key2 REFERENCES mld_stdmeldinggroep(mld_stdmeldinggroep_key),
mld_melding_tag_datum_van /* lijkt logisch, maar definieren waarom */
DATE,
mld_melding_tag_datum_tot /* de releasedatum */
DATE NOT NULL,
prs_perslid_key /* aanmaker of verantwoordelijke */
NUMBER(10)
CONSTRAINT mld_r_prs_perslid_key15 REFERENCES prs_perslid(prs_perslid_key),
mld_melding_tag_aanmaak
DATE DEFAULT SYSDATE NOT NULL,
mld_melding_tag_verwijder
DATE
);
CREATE UNIQUE INDEX mld_i_mld_melding_tag1 ON mld_melding_tag(ins_srtdiscipline_key, UPPER(mld_melding_tag_naam), mld_melding_tag_verwijder);
CREATE SEQUENCE mld_s_mld_melding_tag_key MINVALUE 1;
ALTER TABLE mld_stdmelding ADD
mld_stdmelding_taggable
NUMBER(1)
DEFAULT 0
NOT NULL;
ALTER TABLE mld_melding ADD
mld_melding_tag_key
NUMBER(10)
CONSTRAINT mld_r_mld_melding_tag REFERENCES mld_melding_tag(mld_melding_tag_key);
DEF_FAC_FUNCTIE3('WEB_MLDTAG', 'MLD', 3, 1, 1);
DEF_MENUITEM(1, 'lcl_menu_mld_melding_tag' , '', 'MLD', 'appl/mgt/mld_melding_tag.asp', 0, 0, 'WEB_MLDTAG', 'R', '1', '');
MENU_INS_AFTER('lcl_menu_mld_melding_tag', 'lcl_menu_mld_mi', 5);
/////////////////////////////////////////////////////////////////////////////////////////// VNOG#83559
ALTER TABLE fac_imp_ins
ADD (
ins_srtdeel_omschr_parent VARCHAR2 (100),
ins_deel_omschr_parent VARCHAR2 (60)
);
/////////////////////////////////////////////////////////////////////////////////////////// AAXX#83884
UPDATE mld_typeopdr_srtdiscipline mts
SET mts.ins_srtdiscipline_key =
(SELECT md.ins_srtdiscipline_key
FROM mld_discipline md
WHERE md.ins_discipline_key = mts.ins_discipline_key)
WHERE EXISTS
(SELECT 1
FROM mld_discipline md
WHERE md.ins_discipline_key = mts.ins_discipline_key);
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#83805
DELETE FROM fac_menu
WHERE fac_menuitems_key IN (SELECT fac_menuitems_key
FROM fac_menuitems
WHERE fac_menuitems_label = 'lcl_menu_fac_aut_groep'
);
DELETE FROM fac_menuitems
WHERE fac_menuitems_label = 'lcl_menu_fac_aut_groep';
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#86343
// Sinds HSLE#36898 (2016.3) al niet meer in gebruik.
ALTER PACKAGE fac COMPILE; // anders (nog) invalid en lukt het volgende niet niet
ALTER PACKAGE fac COMPILE BODY;
UPDATE prs_perslid
SET prs_perslid_options = NULL
WHERE prs_perslid_options IS NOT NULL;
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000
DEF_FAC_MESSAGE ('INS_M205', 'Parent object bestaat niet.','Parent object does noet exist.');
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#85815
ALTER TABLE mld_typeopdr
ADD mld_typeopdr_code VARCHAR2(60)
CONSTRAINT mld_u_mld_typeopdr_code UNIQUE;
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#86003
ALTER TABLE fac_imp_cnt
ADD ( mantel_nr_versie VARCHAR2(10)
, soortcontact VARCHAR2(1)
, kostensoort VARCHAR2(60)
, scope VARCHAR2(1)
);
ALTER TABLE fac_imp_cnt
MODIFY ( bedrijf_naam VARCHAR2(200)
, contact_naam VARCHAR2(200)
);
/////////////////////////////////////////////////////////////////////////////////////////// DHLD#86034
ALTER TABLE prs_perslid
MODIFY ( prs_perslid_oslogin VARCHAR2(256)
, prs_perslid_oslogin2 VARCHAR2(256)
);
ALTER TABLE fac_imp_perslid
MODIFY prs_perslid_oslogin VARCHAR2(256);
/////////////////////////////////////////////////////////////////////////////////////////// YASK#86818
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MIN_A' , 'Nieuwe min.waarde van dit kenmerksoort voldoet niet aan alle afdelingen.' ,'New min.value of this property-type does not satisfy all departments.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MIN_B' , 'Nieuwe min.waarde van dit kenmerksoort voldoet niet aan alle bedrijven.' ,'New min.value of this property-type does not satisfy all companies.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MIN_C' , 'Nieuwe min.waarde van dit kenmerksoort voldoet niet aan alle contactpersonen.' ,'New min.value of this property-type does not satisfy all contact persons');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MIN_P' , 'Nieuwe min.waarde van dit kenmerksoort voldoet niet aan alle personen.' ,'New min.value of this property-type does not satisfy all persons.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_A' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle afdelingen.' ,'New max.value of this property-type does not satisfy all departments.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_B' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle bedrijven.' ,'New max.value of this property-type does not satisfy all companies.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_C' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle contactpersonen.' ,'New max.value of this property-type does not satisfy all contact persons.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_MAX_P' , 'Nieuwe max.waarde van dit kenmerksoort voldoet niet aan alle personen.' ,'New max.value of this property-type does not satisfy all persons.');
DEF_FAC_MESSAGE ('PRS_C_PRS_KENMERK_LENGTE', 'De lengte moet tussen 1 en 50 liggen.','Length must be between 1 and 50.');
/////////////////////////////////////////////////////////////////////////////////////////// VGLD#85984
ALTER TABLE cnt_contract
ADD cnt_contract_inactiveren /* Automatisch sluiten na einddatum (0=nee, 1=ja) */
NUMBER(1)
DEFAULT 0
CONSTRAINT cnt_r_cnt_contract_inactiveren CHECK(cnt_contract_inactiveren IN (0,1));
/////////////////////////////////////////////////////////////////////////////////////////// FCLT#00000
REGISTERONCE('$Id$')
#define POST_RECREATE "DB49to50_post.src"
#include "epilogue.inc"