687 lines
34 KiB
Plaintext
687 lines
34 KiB
Plaintext
/* DB17TO18.SRC
|
|
* Update script van Facilitor schema
|
|
* $Revision$
|
|
* $Id$
|
|
*/
|
|
#include "prologue.inc"
|
|
|
|
COMMIT;
|
|
/////////////////////////////////////////////////////////////////////////////////////////// UWVA#25509
|
|
/* Dit doen we eerst, voordat er door DDL zaken invaligd kunenn worden */
|
|
UPDATE bes_bestelling b
|
|
SET bes_bestelling_status = 1
|
|
WHERE b.bes_bestelling_status <> 1 /* bestelling niet afgewezen */
|
|
AND EXISTS
|
|
(SELECT *
|
|
FROM bes_bestelling_item bi,
|
|
bes_bestelopdr_item boi,
|
|
bes_bestelopdr bo
|
|
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
|
|
AND bi.bes_bestelopdr_item_key =
|
|
boi.bes_bestelopdr_item_key
|
|
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
|
|
AND bo.bes_bestelopdr_status = 1); /* opdracht wel afgewezen */
|
|
|
|
UPDATE bes_bestelling b
|
|
SET bes_bestelling_status = 6
|
|
WHERE b.bes_bestelling_status <> 6 /* bestelling niet geleverd */
|
|
AND EXISTS
|
|
(SELECT *
|
|
FROM bes_bestelling_item bi,
|
|
bes_bestelopdr_item boi,
|
|
bes_bestelopdr bo
|
|
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
|
|
AND bi.bes_bestelopdr_item_key =
|
|
boi.bes_bestelopdr_item_key
|
|
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
|
|
AND bo.bes_bestelopdr_status = 6); /* opdracht wel geleverd */
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// PNBR#24995
|
|
ALTER TABLE mld_stdmelding ADD mld_stdmelding_directklaar NUMBER(1);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// UWVA#25063
|
|
ALTER TABLE res_artikel ADD res_artikel_minimum NUMBER(3);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25320
|
|
// allerallerlaatste keer
|
|
UPDATE fac_setting SET fac_setting_name = LOWER(fac_setting_name);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25499
|
|
UPDATE fac_menuitems SET fac_menuitems_url='appl/ins/ins_srtdeel_search.asp'
|
|
WHERE fac_menuitems_url='appl/ins/ins_srtdeel_search';
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25818
|
|
DELETE
|
|
FROM fac_locale_xref
|
|
WHERE fac_locale_xref_filepath LIKE '/%'; // Canonieke naam is zonder / vooraan
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// AAEN#25223
|
|
ALTER TABLE prs_perslid ADD prs_perslid_apikey VARCHAR2(128);
|
|
|
|
-- Er is nu een bescheiden compatibiliteitsprobleem indien er meerder users waren
|
|
-- met verschillende API-keys. Hoe moeten we dat oplossen? Dat kan niet.
|
|
-- Signaleer als dat zo is
|
|
SELECT 'OR'||'A-xx persoon heeft minstens 2 APIs, dit moet voor de upgrade worden opgelost; perslid_key='||prs_perslid_key,
|
|
MAX (fac_api_apikey) api,
|
|
COUNT ( * )
|
|
FROM fac_api a
|
|
GROUP BY prs_perslid_key
|
|
HAVING COUNT ( * ) > 1;
|
|
|
|
UPDATE prs_perslid p
|
|
SET prs_perslid_apikey =
|
|
(SELECT MAX (fac_api_apikey)
|
|
FROM fac_api a
|
|
WHERE a.prs_perslid_key = p.prs_perslid_key)
|
|
WHERE prs_perslid_apikey IS NULL;
|
|
|
|
-- plus definities uit fac_ini TODO: als die definitiever zijn die hier opnemen
|
|
-- Ik ruim ze uit eerdere runs nog even op (@development)
|
|
alter table fac_api modify fac_api_apikey null;
|
|
DELETE FROM fac_api WHERE fac_api_name IN (SELECT fac_module_name FROM fac_module);
|
|
-- ALG
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('ALG', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Regios", "node": "regio", "view": "alg_v_api_regios","filter":{"regioomschrijving":"regioomschrijving"},"limit":75},'
|
|
||'{"req": "Districten", "node": "district", "view": "alg_v_api_districten","filter":{"regioomschrijving":"regioomschrijving","districtomschrijving":"districtomschrijving"},"limit":75},'
|
|
||'{"req": "Locaties", "node": "locatie", "view": "alg_v_api_locaties","filter":{"regioomschrijving":"regioomschrijving","districtomschrijving":"districtomschrijving","locatiecode":"locatiecode","locatieomschrijving":"locatieomschrijving"},"limit":150},'
|
|
||'{"req": "Gebouwen", "node": "gebouw", "view": "alg_v_api_gebouwen","filter":{"locatiecode":"locatiecode","gebouwcode":"gebouwcode","gebouwnaam":"gebouwnaam","soortgebouw":"soortgebouw"},"limit":75},'
|
|
||'{"req": "Verdiepingen", "node": "verdieping", "view": "alg_v_api_verdiepingen","filter":{"locatiecode":"locatiecode","gebouwcode":"gebouwcode","verdiepingcode":"verdiepingcode"},"limit":75},'
|
|
||'{"req": "Ruimten", "node": "ruimte", "view": "alg_v_api_ruimten","filter":{"locatiecode":"locatiecode","gebouwcode":"gebouwcode","verdiepingcode":"verdiepingcode","ruimtecode":"ruimtecode","soortruimte":"soortruimte"},"limit":150}]'
|
|
);
|
|
|
|
-- BES
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('BES', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Bestellingen", "node": "bestelling", "view": "bes_v_api_bestellingen","filter":{},"limit":75},'
|
|
||'{"req": "Bestelopdrachten", "node": "bestelopdracht", "view": "bes_v_api_bestelopdrachten","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- BEZ
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('BEZ', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Afspraken", "node": "afspraak", "view": "bez_v_api_afspraken","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- CNT
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('CNT', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Contracten", "node": "contract", "view": "cnt_v_api_contracten","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- FIN
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('FIN', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Facturen", "node": "factuur", "view": "fin_v_api_facturen","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- INS
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('INS', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Delen", "node": "deel", "view": "ins_v_api_delen","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- MLD
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('MLD', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Meldingen", "node": "melding", "view": "mld_v_api_meldingen","filter":{},"limit":75},'
|
|
||'{"req": "Opdrachten", "node": "opdracht", "view": "mld_v_api_opdrachten","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- PRS
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('PRS', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Afdelingen", "node": "afdeling", "view": "prs_v_api_afdelingen","filter":{},"limit":75},'
|
|
||'{"req": "Personen", "node": "persoon", "view": "prs_v_api_personen","filter":{},"limit":75}]'
|
|
);
|
|
|
|
-- RES
|
|
INSERT INTO fac_api (fac_api_name, fac_api_filepath, fac_api_loglevel, fac_api_viewmapping_json) VALUES
|
|
('RES', 'appl/api/api_soap.asp', 0,
|
|
'[{"req": "Reserveringen", "node": "reservering", "view": "res_v_api_reserveringen","filter":{"locatiecode":"locatiecode","gebouwcode":"gebouwcode","verdiepingcode":"verdiepingcode","ruimtecode":"ruimtecode", "catalogus": "catalogus", "begindatumtijd": {"colName": "van", "operand":"GT","datatype":"date"}, "einddatumtijd": {"colName": "tot", "operand":"LT", "datatype":"date"}},"limit":75},'
|
|
||'{"req": "Voorzieningen", "node": "voorziening", "view": "res_v_api_voorzieningen","filter":{"locatiecode":"locatiecode","gebouwcode":"gebouwcode","verdiepingcode":"verdiepingcode", "catalogus": "catalogus"},"limit":75}]'
|
|
);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25100
|
|
DEF_MENUITEM(0, 'lcl_menu_fe_marktplaats' , '', 'MRK', 'appl/mrk/mrk_search.asp?urole=fe', 0, 0, 'WEB_MRKUSE', 'R', '0');
|
|
DEF_MENUITEM(1, 'lcl_menu_mrk_bo_overview' , '', 'MRK', 'appl/mrk/mrk_search.asp?urole=bo', 0, 0, 'WEB_MRKBOF', 'R', '0');
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// AAIT#25547
|
|
_FAC_MODULE('FAQ','Kennisbank')
|
|
UPDATE fac_functie SET fac_functie_module='FAQ' WHERE fac_functie_module='FAC' AND fac_functie_code LIKE 'WEB_FAQ%';
|
|
UPDATE fac_menuitems SET fac_menuitems_module='FAQ' WHERE fac_menuitems_module='FAC' AND fac_menuitems_label LIKE 'lcl_menu_faq_%';
|
|
UPDATE fac_menuitems SET fac_functie_key=(SELECT fac_functie_key FROM fac_functie WHERE fac_functie_code = 'WEB_FAQFOF') WHERE fac_menuitems_label='lcl_menu_faq_kennisbank_fo';
|
|
|
|
DEF_FAC_FUNCTIE2('WEB_FAQMGT', 'Modulebeheer:Kennisbank', 'FAQ', 0, 0, 2, 'Modulebeheer');
|
|
DEF_FAC_FUNCTIE2('WEB_FAQMSU', 'Supergebruiker:Kennisbank', 'FAQ', 0, 0, 2, 'Supergebruiker');
|
|
// Geef PRS rechten op deze nieuwe functie
|
|
INSERT INTO fac_groeprechten (fac_groep_key,
|
|
fac_gebruiker_prs_level_write,
|
|
fac_gebruiker_prs_level_read,
|
|
fac_gebruiker_alg_level_write,
|
|
fac_gebruiker_alg_level_read,
|
|
fac_functie_key)
|
|
SELECT g.fac_groep_key,
|
|
g.fac_gebruiker_prs_level_write,
|
|
g.fac_gebruiker_prs_level_read,
|
|
g.fac_gebruiker_alg_level_write,
|
|
g.fac_gebruiker_alg_level_read,
|
|
f.fac_functie_key
|
|
FROM fac_groeprechten g, fac_functie f
|
|
WHERE g.fac_functie_key = (SELECT fac_functie_key
|
|
FROM fac_functie
|
|
WHERE fac_functie_code = 'WEB_PRSSYS')
|
|
AND f.fac_functie_code = 'WEB_FAQMGT'
|
|
AND (g.fac_groep_key, f.fac_functie_key) NOT IN
|
|
(SELECT fac_groep_key, fac_functie_key FROM fac_groeprechten);
|
|
|
|
DEF_MENUITEM(2, 'lcl_menu_faq_kenmerk' , '', 'FAQ', 'appl/facmgtVB/faq_kenmerkgrid.asp', 0, 0, 'WEB_FAQMGT', 'W', '1');
|
|
DEF_MENUITEM(2, 'lcl_menu_faq_kenmerkdomeinen' , '', 'FAQ', 'appl/fac/fac_kenmerkdomein_search.asp?fkdmodule=FAQ', 0, 0, 'WEB_PRSSYS', 'W', '1');
|
|
DEF_MENUITEM(2, 'lcl_menu_faq_setting' , '', 'FAQ', 'appl/fac/fac_setting_search.asp?module=FAQ', 0, 0, 'WEB_PRSSYS', 'W', '0');
|
|
MENU_INSKOP_AFTER('lcl_facmgt_faq', 'lcl_menu_bez_kenmerkdomeinen', 2, 4) ;
|
|
MENU_INS_AFTERKOP('lcl_menu_faq_kenmerk', 'lcl_facmgt_faq', 2) ;
|
|
MENU_INS_AFTER('lcl_menu_faq_kenmerkdomeinen', 'lcl_menu_faq_kenmerk', 2) ;
|
|
|
|
CREATE SEQUENCE faq_s_faq_kenmerk_key MINVALUE 1;
|
|
CREATE SEQUENCE faq_s_faq_kenmerkwaarde_key MINVALUE 1;
|
|
CREATE_TABLE(faq_kenmerk,0)
|
|
(
|
|
faq_kenmerk_key NUMBER(10)
|
|
CONSTRAINT faq_k_faq_kenmerk_key PRIMARY KEY,
|
|
faq_kenmerk_volgnr NUMBER(3),
|
|
faq_kenmerk_omschrijving VARCHAR2(50),
|
|
faq_kenmerk_upper VARCHAR2(50),
|
|
faq_kenmerk_hint VARCHAR2(255),
|
|
faq_kenmerk_default VARCHAR2(4000),
|
|
faq_kenmerk_dimensie VARCHAR2(10),
|
|
faq_kenmerk_kenmerktype VARCHAR2(1)
|
|
CONSTRAINT faq_c_faq_kenmerk_type1
|
|
CHECK(faq_kenmerk_kenmerktype IN ('C','N','D','R','X','L','Q','F','M','E','S', 'l')),
|
|
faq_kenmerk_systeem NUMBER(1),
|
|
faq_kenmerk_toonbaar NUMBER(1),
|
|
faq_kenmerk_uniek NUMBER(1),
|
|
faq_kenmerk_regexp VARCHAR2(255),
|
|
faq_kenmerk_verplicht NUMBER(1),
|
|
faq_kenmerk_lengte NUMBER(4),
|
|
faq_kenmerk_dec NUMBER(2),
|
|
faq_kenmerk_nmin NUMBER(10),
|
|
faq_kenmerk_nmax NUMBER(10),
|
|
fac_kenmerkdomein_key NUMBER(10)
|
|
CONSTRAINT faq_r_kenmerkdomein_key1 REFERENCES fac_kenmerkdomein(fac_kenmerkdomein_key),
|
|
faq_kenmerk_aanmaak DATE
|
|
DEFAULT SYSDATE
|
|
NOT_NULL(faq_kenmerk_aanmaak, faq_c_faq_kenmerk_aanmaak),
|
|
faq_kenmerk_verwijder DATE
|
|
DEFAULT NULLDATUM
|
|
);
|
|
|
|
CREATE_TABLE(faq_kenmerkwaarde,0)
|
|
(
|
|
faq_kenmerkwaarde_key NUMBER(10)
|
|
CONSTRAINT faq_k_faq_kenmerkwaarde_key PRIMARY KEY,
|
|
fac_faq_key NUMBER(10)
|
|
CONSTRAINT faq_r_faq_key REFERENCES fac_faq(fac_faq_key),
|
|
faq_kenmerk_key NUMBER(10),
|
|
faq_kenmerkwaarde_waarde VARCHAR2(4000),
|
|
faq_kenmerkwaarde_aanmaak DATE
|
|
DEFAULT SYSDATE
|
|
NOT_NULL(faq_kenmerkwaarde_aanmaak, faq_c_faq_kenmerkwaarde_aanm),
|
|
faq_kenmerkwaarde_verwijder DATE
|
|
DEFAULT NULLDATUM,
|
|
CONSTRAINT faq_u_faq_kenmerkwaarde_key UNIQUE(fac_faq_key, faq_kenmerk_key, faq_kenmerkwaarde_verwijder)
|
|
);
|
|
|
|
ALTER TABLE fac_faq ADD fac_faq_hint VARCHAR2(1000);
|
|
|
|
CREATE_TABLE(fac_imp_faq, 0) (
|
|
fac_faq_question VARCHAR2 (4000),
|
|
fac_faq_answer VARCHAR2 (4000),
|
|
fac_faq_level VARCHAR2 (30),
|
|
ins_discipline_key NUMBER(10),
|
|
mld_stdmelding_key NUMBER(10),
|
|
fac_faq_source VARCHAR2 (60),
|
|
fac_faq_url VARCHAR2 (250),
|
|
fac_faq_datum DATE,
|
|
fac_faq_lang VARCHAR2 (3),
|
|
fac_faq_hint VARCHAR2 (1000)
|
|
);
|
|
|
|
INSERT INTO fac_import_app
|
|
(fac_import_app_code, fac_import_app_oms, fac_functie_key)
|
|
SELECT 'FAQ', 'FIP: Kennisbank', fac_functie_key
|
|
FROM fac_functie
|
|
WHERE fac_functie_code = 'WEB_PRSSYS';
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25688
|
|
DROP INDEX bez_i_bez_afspraak_bez1;
|
|
DROP INDEX bez_i_bez_afspraak_bez2;
|
|
CREATE INDEX bez_i_bez_afspraak_bez5 ON bez_afspraak(bez_afspraak_contact_key, bez_afspraak_datum);
|
|
CREATE INDEX bez_i_bez_afspraak_bez6 ON bez_afspraak(bez_afspraak_host_key, bez_afspraak_datum);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25689
|
|
ALTER TABLE fac_locale DROP CONSTRAINT fac_u_fac_locale;
|
|
ALTER TABLE fac_locale ADD CONSTRAINT fac_u_fac_locale
|
|
UNIQUE(fac_locale_dialect_key, fac_locale_lang, fac_localeitems_key, fac_locale_kolomnaam, fac_locale_kolomkeyval);
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25479
|
|
CREATE INDEX fin_i_fin_factuurregel1 ON fin_factuurregel(fin_factuur_key);
|
|
CREATE INDEX fin_i_fin_factuurnote1 ON fin_factuur_note(fin_factuur_key);
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25754
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde6 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde7 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde8 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde9 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde10 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde11 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde12 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde13 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde14 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde15 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde16 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde17 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde18 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde19 VARCHAR2 (255);
|
|
ALTER TABLE fac_imp_ins ADD ins_kenmerkwaarde20 VARCHAR2 (255);
|
|
/////////////////////////////////////////////////////////////////////////////////////////// UWVA#25755
|
|
ALTER TABLE mld_melding ADD mld_melding_accepttijd NUMBER(4,2);
|
|
-- Het blijkt dat fac geinvalideerd is geraakt door iets van bovenstaande. Helpt dit?
|
|
ALTER PACKAGE fac COMPILE;
|
|
-- Dilemma, definitiekwestie.
|
|
-- Het onbekende verleden bevriezen met de kennis van nu, of leeg laten?
|
|
-- De eerste optie doet recht aan de definitie van nu, en bevriest voor later.
|
|
ALTER TRIGGER mld_t_mld_melding_b_iu DISABLE;
|
|
UPDATE mld_melding m
|
|
SET mld_melding_accepttijd = (SELECT mld_stdmelding_urgentie
|
|
FROM mld_stdmelding s
|
|
WHERE s.mld_stdmelding_key=m.mld_stdmelding_key)
|
|
WHERE mld_melding_accepttijd IS NULL;
|
|
ALTER TRIGGER mld_t_mld_melding_B_IU ENABLE;
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25791
|
|
DEF_MENUITEM(1, 'lcl_menu_prs_browser' , '', 'ALG', 'appl/prs/prs_afdn_search.asp', 0, 0, 'WEB_PRSUSE', 'R', '1');
|
|
MENU_INS_AFTER( 'lcl_menu_prs_browser', 'lcl_menu_prs_bedrijf_intern', 2);
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25849
|
|
ALTER TABLE prs_perslid ADD prs_perslid_options VARCHAR2(4000);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// UWVA#24389
|
|
DECLARE
|
|
CURSOR c1 IS
|
|
SELECT bes_srtdeel_nr,
|
|
bes_srtgroep_key,
|
|
prs_bedrijf_key,
|
|
bes_srtdeel_verwijder,
|
|
COUNT ( * )
|
|
FROM bes_srtdeel
|
|
GROUP BY bes_srtdeel_nr,
|
|
bes_srtgroep_key,
|
|
prs_bedrijf_key,
|
|
bes_srtdeel_verwijder
|
|
HAVING COUNT ( * ) > 1;
|
|
r1 c1%ROWTYPE;
|
|
|
|
CURSOR c2( srtdeel_nr VARCHAR2
|
|
, srtgroep_key NUMBER
|
|
, bedrijf_key NUMBER
|
|
, vdatum DATE
|
|
) IS
|
|
SELECT S.bes_srtdeel_verwijder + NUMTODSINTERVAL(rownum-1,'SECOND') d1
|
|
FROM bes_srtdeel S
|
|
WHERE S.bes_srtdeel_nr = srtdeel_nr
|
|
AND S.bes_srtgroep_key = srtgroep_key
|
|
AND S.prs_bedrijf_key = bedrijf_key
|
|
AND S.bes_srtdeel_verwijder = vdatum
|
|
FOR UPDATE;
|
|
r2 c2%ROWTYPE;
|
|
|
|
CURSOR c3( srtdeel_nr VARCHAR2
|
|
, srtgroep_key NUMBER
|
|
, bedrijf_key NUMBER
|
|
) IS
|
|
SELECT S.bes_srtdeel_key
|
|
, (SELECT NVL(MAX(1),0)
|
|
FROM bes_bestelling_item B
|
|
WHERE B.bes_srtdeel_key = S.bes_srtdeel_key
|
|
) besteld
|
|
FROM bes_srtdeel S
|
|
WHERE S.bes_srtdeel_nr = srtdeel_nr
|
|
AND S.bes_srtgroep_key = srtgroep_key
|
|
AND S.prs_bedrijf_key = bedrijf_key
|
|
AND S.bes_srtdeel_verwijder IS NULL
|
|
ORDER BY besteld DESC, S.bes_srtdeel_aanmaak DESC;
|
|
r3 c3%ROWTYPE;
|
|
|
|
vdate1 date;
|
|
vdate2 date;
|
|
aantal number;
|
|
prfkey number;
|
|
|
|
BEGIN
|
|
|
|
/* Lege artikelnr met default vullen */
|
|
DBMS_OUTPUT.put_line ('Artikelnr vullen:');
|
|
UPDATE bes_srtdeel
|
|
SET bes_srtdeel_nr = 'Artikel '||bes_srtdeel_key
|
|
WHERE bes_srtdeel_nr IS NULL;
|
|
|
|
/* Niet verwijderde artikelen naar 1 artikelnummer verplaatsen */
|
|
OPEN c1;
|
|
LOOP
|
|
FETCH c1 INTO r1;
|
|
EXIT WHEN c1%NOTFOUND;
|
|
|
|
IF r1.bes_srtdeel_verwijder IS NULL
|
|
THEN
|
|
DBMS_OUTPUT.put_line ('>Artikelnr: ' || r1.bes_srtdeel_nr);
|
|
aantal := 0;
|
|
FOR r3 in c3( r1.bes_srtdeel_nr
|
|
, r1.bes_srtgroep_key
|
|
, r1.prs_bedrijf_key
|
|
)
|
|
LOOP
|
|
IF aantal = 0
|
|
THEN
|
|
prfkey := r3.bes_srtdeel_key;
|
|
DBMS_OUTPUT.put_line (aantal||'# '||r3.bes_srtdeel_key);
|
|
ELSE
|
|
/* Omhangen van artikel in bestel-item */
|
|
DBMS_OUTPUT.put_line (aantal||'# '||r3.bes_srtdeel_key ||'-->'||prfkey);
|
|
UPDATE bes_bestelling_item
|
|
SET bes_srtdeel_key = prfkey
|
|
WHERE bes_srtdeel_key = r3.bes_srtdeel_key;
|
|
/* Verwijder het niet meer gebruikte artikel */
|
|
DBMS_OUTPUT.put_line ('Verwijder: '||r3.bes_srtdeel_key);
|
|
UPDATE bes_srtdeel
|
|
SET bes_srtdeel_verwijder = sysdate
|
|
WHERE bes_srtdeel_key = r3.bes_srtdeel_key;
|
|
END IF;
|
|
aantal := aantal + 1;
|
|
END LOOP;
|
|
END IF;
|
|
END LOOP;
|
|
CLOSE c1;
|
|
|
|
/* verwijderdatum artikelen uniek maken */
|
|
OPEN c1;
|
|
LOOP
|
|
FETCH c1 INTO r1;
|
|
EXIT WHEN c1%NOTFOUND;
|
|
|
|
IF r1.bes_srtdeel_verwijder IS NOT NULL
|
|
THEN
|
|
FOR r2 IN c2( r1.bes_srtdeel_nr
|
|
, r1.bes_srtgroep_key
|
|
, r1.prs_bedrijf_key
|
|
, r1.bes_srtdeel_verwijder
|
|
)
|
|
LOOP
|
|
vdate1 := r2.d1;
|
|
vdate2 := r1.bes_srtdeel_verwijder;
|
|
DBMS_OUTPUT.put_line ('>Wijzig verwijderdatum: ' ||to_char(vdate2, 'dd-mm-yyyy hh24:mi:ss')
|
|
||'-->' ||to_char(vdate1, 'dd-mm-yyyy hh24:mi:ss'));
|
|
UPDATE bes_srtdeel
|
|
SET bes_srtdeel_verwijder = vdate1
|
|
WHERE CURRENT OF c2;
|
|
END LOOP;
|
|
END IF;
|
|
|
|
END LOOP;
|
|
CLOSE c1;
|
|
END;
|
|
/
|
|
|
|
ALTER TABLE bes_srtdeel MODIFY bes_srtdeel_nr NOT_NULL(bes_srtdeel_nr, bes_c_bes_srtdeel_nr);
|
|
CREATE UNIQUE INDEX bes_i_bes_srtdeel2 ON bes_srtdeel(bes_srtdeel_nr, prs_bedrijf_key, bes_srtgroep_key, bes_srtdeel_verwijder);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25766
|
|
CREATE_TABLE(fac_imp_inspectie, 0) (
|
|
ins_discipline_omschrijving VARCHAR2 (30),
|
|
ins_srtgroep_omschrijving VARCHAR2 (60),
|
|
ins_srtdeel_code VARCHAR2 (10),
|
|
ins_srtcontrole_omschrijving VARCHAR2 (60),
|
|
ins_srtcontrole_info VARCHAR2 (320),
|
|
ins_srtcontrole_periode VARCHAR2 (4)
|
|
);
|
|
INSERT INTO fac_import_app
|
|
(fac_import_app_code, fac_import_app_oms, fac_functie_key)
|
|
SELECT 'INSPECTIE', 'FIP: 9-Aanvullen van inspectiedefinities', fac_functie_key
|
|
FROM fac_functie
|
|
WHERE fac_functie_code = 'WEB_PRSSYS';
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25873
|
|
ALTER TABLE fac_usrgraph ADD fac_usrgraph_options VARCHAR2(4000);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// UWVA#24148
|
|
CREATE_TABLE(mld_behandelgroep,0)
|
|
(
|
|
mld_behandelgroep_key
|
|
NUMBER(10)
|
|
CONSTRAINT mld_k_behandelgroep_key PRIMARY KEY,
|
|
mld_behandelgroep_naam
|
|
VARCHAR2(30)
|
|
NOT_NULL(mld_behandelgroep_naam, mld_c_behandelgroep_naam),
|
|
mld_behandelgroep_oms
|
|
VARCHAR2(1000),
|
|
CONSTRAINT mld_u_behandelgroep_naam UNIQUE (mld_behandelgroep_naam)
|
|
);
|
|
|
|
ALTER TABLE mld_disc_params
|
|
ADD mld_behandelgroep_key
|
|
NUMBER(10) CONSTRAINT mld_r_behandelgroep_key1 REFERENCES mld_behandelgroep(mld_behandelgroep_key);
|
|
CREATE SEQUENCE mld_s_mld_behandelgroep_key MINVALUE 1;
|
|
|
|
DEF_MENUITEM(2, 'lcl_menu_mld_behandelgroep' , '', 'MLD', 'appl/facmgtVB/mld_behandelgroepgrid.asp', 0, 0, 'WEB_MLDMGT', 'W', '1');
|
|
MENU_INS_AFTER( 'lcl_menu_mld_behandelgroep', 'lcl_menu_mld_stdmeldinggroep', 2);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25900
|
|
CREATE INDEX mld_i_mld_melding_object2 ON mld_melding_object(ins_deel_key, mld_melding_key);
|
|
|
|
///////////////////////////////////////////////////////////////////////////////////////////
|
|
UPDATE fac_import_app SET fac_import_app_oms = 'FIP: 6-Aanvullen objecten'
|
|
WHERE fac_import_app_code = 'INS';
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// AANX#25939
|
|
ALTER TABLE mld_typeopdr ADD mld_typeopdr_contract NUMBER(1) DEFAULT (2)
|
|
CONSTRAINT mld_c_mld_typeopdr_contract CHECK(mld_typeopdr_contract IN (0,2,3));
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// NYBU#25763
|
|
ALTER TABLE res_ruimte ADD res_ruimte_prijs_dag NUMBER(7,2);
|
|
ALTER TABLE res_ruimte ADD res_ruimte_prijsfactor_intern NUMBER(5,3);
|
|
|
|
ALTER TABLE res_rsv_ruimte ADD res_rsv_ruimte_korting NUMBER(9,2)
|
|
CONSTRAINT res_c_res_rsv_ruimte_korting CHECK(res_rsv_ruimte_korting >= 0);
|
|
|
|
ALTER TABLE prs_kostenplaats ADD prs_kostenplaats_extern NUMBER(1) DEFAULT 0;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#26014
|
|
CREATE INDEX bes_i_bes_bestelling13 ON bes_bestelling (bes_bestelling_retourvan_key);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// SUTF#26060
|
|
CREATE_TABLE(prs_kostenplaatsdisc, 0) (
|
|
prs_kostenplaatsdisc_key
|
|
NUMBER(10) PRIMARY KEY,
|
|
prs_kostenplaats_key
|
|
NUMBER(10)
|
|
CONSTRAINT prs_r_prs_kostenplaats_key4 REFERENCES prs_kostenplaats(prs_kostenplaats_key) ON DELETE CASCADE,
|
|
ins_discipline_key
|
|
NUMBER(10)
|
|
REFERENCES ins_tab_discipline(ins_discipline_key) ON DELETE CASCADE,
|
|
prs_kostenplaatsdisc_limiet
|
|
NUMBER(8)
|
|
NOT NULL
|
|
);
|
|
CREATE SEQUENCE prs_s_prs_kostenplaatsdisc_key MINVALUE 1;
|
|
|
|
CREATE_TRIGGER(prs_t_prs_kostenpltsdisc_B_IU)
|
|
BEFORE INSERT OR UPDATE ON prs_kostenplaatsdisc
|
|
FOR EACH ROW
|
|
BEGIN
|
|
UPDATE_PRIMARY_KEY(prs_kostenplaatsdisc_key, prs_s_prs_kostenplaatsdisc_key);
|
|
END;
|
|
/
|
|
|
|
CREATE UNIQUE INDEX prs_i_prs_kostenplaatsdisc1 ON prs_kostenplaatsdisc (prs_kostenplaats_key, ins_discipline_key);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#26123
|
|
UPDATE fac_functie SET fac_functie_groep = 0
|
|
WHERE fac_functie_code IN ('WEB_CADALG', 'WEB_CADPRS', 'WEB_CADOBJ', 'WEB_CADMLD', 'WEB_CADCNT', 'WEB_CADSCH', 'WEB_CADSLE');
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// AAES#25942
|
|
ALTER TABLE fac_imp_onrgoed2 ADD prs_afdeling_naam VARCHAR2(60 CHAR);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD prs_ruimteafdeling_bezetting NUMBER(8,5);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD alg_kenmerkwaarde1 VARCHAR2(255);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD alg_kenmerkwaarde2 VARCHAR2(255);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD alg_kenmerkwaarde3 VARCHAR2(255);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD alg_kenmerkwaarde4 VARCHAR2(255);
|
|
ALTER TABLE fac_imp_onrgoed2 ADD alg_kenmerkwaarde5 VARCHAR2(255);
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#26109
|
|
INSERT INTO fac_menuitems (fac_menuitems_groep, fac_menuitems_label, fac_menuitems_oms, fac_menuitems_module, fac_menuitems_url, fac_menuitems_srtdisc, fac_menuitems_disc, fac_functie_key, fac_menuitems_rw, fac_menuitems_default)
|
|
SELECT 0, 'lcl_menu_res_fe_1', '', 'RES', 'appl/res/res_reservering.asp?urole=fe', 1, 0, fac_functie_key, 'W', '0'
|
|
FROM fac_functie
|
|
WHERE fac_functie_code='WEB_RESUSE'
|
|
AND NOT EXISTS (SELECT fac_menuitems_key FROM fac_menuitems WHERE fac_menuitems_label = 'lcl_menu_res_fe_1');
|
|
INSERT INTO fac_menuitems (fac_menuitems_groep, fac_menuitems_label, fac_menuitems_oms, fac_menuitems_module, fac_menuitems_url, fac_menuitems_srtdisc, fac_menuitems_disc, fac_functie_key, fac_menuitems_rw, fac_menuitems_default)
|
|
SELECT 1, 'lcl_menu_res_fo_1', '', 'RES', 'appl/res/res_reservering.asp?urole=fo', 1, 0, fac_functie_key, 'W', '0'
|
|
FROM fac_functie
|
|
WHERE fac_functie_code='WEB_RESFOF'
|
|
AND NOT EXISTS (SELECT fac_menuitems_key FROM fac_menuitems WHERE fac_menuitems_label = 'lcl_menu_res_fo_1');
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25952
|
|
CREATE TABLE fac_imp_cnt
|
|
(
|
|
nummer_intern VARCHAR2 (30),
|
|
nummer_extern VARCHAR2 (30),
|
|
cnt_soort VARCHAR2 (30),
|
|
beschrijving VARCHAR2 (50),
|
|
mantel_nr VARCHAR2 (30),
|
|
omschrijving VARCHAR2 (1000),
|
|
afdeling VARCHAR2 (10),
|
|
perslid_eig VARCHAR2 (30),
|
|
perslid_beh VARCHAR2 (30),
|
|
opmerking VARCHAR2 (1000),
|
|
datum_ingang DATE,
|
|
datum_eind DATE,
|
|
datum_opzeg DATE,
|
|
datum_rappel DATE,
|
|
bedrijf_naam VARCHAR2 (60),
|
|
contact_naam VARCHAR2 (30),
|
|
kpn_code VARCHAR2 (30),
|
|
bedrag NUMBER (11,2),
|
|
bedrag_termijn NUMBER (11,2),
|
|
uurtarief NUMBER (6,2),
|
|
korting NUMBER (4,2),
|
|
gebouwcode VARCHAR2 (12),
|
|
verlengen VARCHAR2 (1),
|
|
flex1 VARCHAR2 (1000),
|
|
flex2 VARCHAR2 (1000),
|
|
flex3 VARCHAR2 (1000),
|
|
flex4 VARCHAR2 (1000),
|
|
flex5 VARCHAR2 (1000)
|
|
);
|
|
|
|
INSERT INTO fac_import_app
|
|
(fac_import_app_code, fac_import_app_oms, fac_functie_key)
|
|
SELECT 'CNT', 'FIP: Contracten', fac_functie_key
|
|
FROM fac_functie
|
|
WHERE fac_functie_code = 'WEB_PRSSYS';
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25697
|
|
-- Setting mld_close_mld_auto moet op 1 staan. Dan pas mld_typeopdr_sluitmelding aanpassen van 1 naar 2.
|
|
UPDATE mld_typeopdr
|
|
SET mld_typeopdr_sluitmelding = 2
|
|
WHERE mld_typeopdr_sluitmelding = 1
|
|
AND (SELECT COALESCE (fs.fac_setting_pvalue, fs.fac_setting_default)
|
|
FROM fac_setting fs
|
|
WHERE fs.fac_setting_name LIKE 'mld_close_mld_auto') = 1;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#25708
|
|
CREATE_TABLE(fac_qvw_ticket, 0)
|
|
(
|
|
fac_qvw_ticket_userid VARCHAR(32),
|
|
fac_qvw_ticket_flags NUMBER(3) DEFAULT 0 NOT NULL,
|
|
fac_qvw_ticket_aanmaak DATE DEFAULT SYSDATE,
|
|
fac_qvw_ticket_uitgifte DATE DEFAULT SYSDATE,
|
|
prs_perslid_key NUMBER(10) CONSTRAINT fac_r_qvw_perslid_key REFERENCES prs_perslid(prs_perslid_key) ON DELETE CASCADE
|
|
);
|
|
|
|
UPDATE fac_functie SET fac_functie_min_level = 3
|
|
WHERE fac_functie_code = 'WEB_MGTRAP' AND fac_functie_min_level = 0;
|
|
|
|
UPDATE fac_groeprechten
|
|
SET fac_gebruiker_prs_level_write = 9, fac_gebruiker_alg_level_write = 9
|
|
WHERE fac_functie_key = (SELECT fac_functie_key
|
|
FROM fac_functie
|
|
WHERE fac_functie_code = 'WEB_MGTRAP')
|
|
AND fac_gebruiker_prs_level_write = -1
|
|
AND fac_gebruiker_alg_level_write = -1;
|
|
|
|
UPDATE fac_setting
|
|
SET fac_setting_pvalue = 2
|
|
WHERE fac_setting_name = 'qvw_enabled' AND fac_setting_pvalue = 1;
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#24771
|
|
DEF_BOOKMARK('bestelopdr', 'appl/bes/bes_opdr.asp', 'ordernr=');
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// FSN#26422
|
|
UPDATE fac_setting
|
|
SET fac_setting_default = '9999999'
|
|
, fac_setting_description = 'I can approve myself below or equal this limit or someone else must approve always above this limit'
|
|
, fac_setting_pvalue = (CASE fac_setting_pvalue
|
|
WHEN '1'
|
|
THEN '9999999'
|
|
ELSE fac_setting_pvalue
|
|
END)
|
|
WHERE fac_setting_name LIKE 'can_selfapprove';
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// QA
|
|
-- detected using TOAD schema differences not all relevant, however the first are
|
|
ALTER TABLE fin_kenmerk DROP CONSTRAINT fin_c_fin_kenmerk_type1;
|
|
ALTER TABLE fin_kenmerk ADD CONSTRAINT fin_c_fin_kenmerk_type1 CHECK(fin_kenmerk_kenmerktype IN ('C','N','D','R','X','L','Q','F','M','E','S', 'l'));
|
|
ALTER TABLE ins_srtkenmerk DROP CONSTRAINT ins_c_ins_srtkenmerk_kenmtype;
|
|
ALTER TABLE ins_srtkenmerk ADD CONSTRAINT ins_c_ins_srtkenmerk_kenmtype CHECK(ins_srtkenmerk_kenmerktype IN ('C','N','D','R','X','L','Q','F','M','E','S', 'l'));
|
|
|
|
ALTER TABLE fac_locale DROP CONSTRAINT fac_u_fac_locale DROP INDEX;
|
|
ALTER TABLE fac_locale ADD CONSTRAINT fac_u_fac_locale UNIQUE(fac_locale_dialect_key, fac_locale_lang, fac_localeitems_key, fac_locale_kolomnaam, fac_locale_kolomkeyval);
|
|
ALTER TABLE fac_locale DROP CONSTRAINT fac_c_fac_locale1;
|
|
ALTER TABLE fac_locale ADD CONSTRAINT fac_c_fac_locale1
|
|
CHECK((fac_localeitems_key IS NOT NULL AND fac_locale_dialect_key IS NOT NULL AND fac_locale_kolomnaam IS NULL AND fac_locale_kolomkeyval IS NULL)
|
|
OR (fac_localeitems_key IS NULL AND fac_locale_dialect_key IS NULL AND fac_locale_kolomnaam IS NOT NULL AND fac_locale_kolomkeyval IS NOT NULL));
|
|
BEGIN
|
|
adm.trydrop('INDEX res_i_res_rsv_artikel2');
|
|
END;
|
|
/
|
|
// res_u_res_activiteit_upper is vaker *afwezig* dan aanwezig
|
|
// ALTER TABLE res_activiteit DROP CONSTRAINT res_u_res_activiteit_upper DROP INDEX;
|
|
ALTER TABLE res_activiteit ADD CONSTRAINT res_u_res_activiteit_upper UNIQUE(res_activiteit_upper, res_activiteit_verwijder, res_srtactiviteit_key);
|
|
PROMPT Hierboven mag een foutmelding komen: ORA02261: Dergelijke unieke of primaire sleutel bestaat al in de tabel
|
|
ALTER TABLE alg_srtruimte DROP CONSTRAINT alg_c_prs_werkplek_verhuurbaar;
|
|
ALTER TABLE alg_srtruimte ADD CONSTRAINT alg_c_prs_werkplek_verhuurbaar CHECK(NOT(prs_bevat_werkplek = 1 AND prs_verhuurbaar IS NULL));
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// GENERAL
|
|
|
|
|
|
/////////////////////////////////////////////////////////////////////////////////////////// CLEANUP
|
|
ALTER TABLE fac_api DROP COLUMN fac_api_apikey;
|
|
ALTER TABLE fac_api DROP COLUMN prs_perslid_key;
|
|
ALTER TABLE fac_api DROP COLUMN fac_api_no_session;
|
|
--FSN#25590
|
|
BEGIN
|
|
adm.trydrop('TABLE sys_tracking PURGE');
|
|
adm.trydrop('FUNCTION PRS_P_PRS_BepaalWerkplekOpp');
|
|
adm.trydrop('PACKAGE fac_p_fac_save_restore');
|
|
END;
|
|
/
|
|
--FSN#17879
|
|
ALTER TABLE bes_bestelling DROP COLUMN bes_bestelling_item_cnt;
|
|
ALTER TABLE bes_bestelling DROP COLUMN bes_bestelling_item_cnt_lev;
|
|
ALTER TABLE bes_bestelling DROP COLUMN bes_bestelling_item_cnt_acpt;
|
|
|
|
ALTER TABLE bes_bestelopdr DROP COLUMN bes_bestelopdr_item_cnt;
|
|
ALTER TABLE bes_bestelopdr DROP COLUMN bes_bestelopdr_item_cnt_lev;
|
|
|
|
ALTER TABLE fac_usrtab DROP COLUMN fac_usrtab_viewdef;
|
|
ALTER TABLE fac_usrtab DROP COLUMN fac_usrtab_view;
|
|
-- Later wellicht in de epiloog;
|
|
DELETE FROM fac_selectie;
|
|
///////////////////////////////////////////////////////////////////////////////////////////
|
|
REGISTERONCE('$Workfile: DB17to18.src $','$Revision$')
|
|
#include "epilogue.inc"
|