Compare commits
35 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e91fab1a47 | ||
|
|
86eb532a2d | ||
|
|
8110221e43 | ||
|
|
a7c9068806 | ||
|
|
24855f1e1e | ||
|
|
ddc1067bf7 | ||
|
|
d6881fe219 | ||
|
|
11020748a0 | ||
|
|
061e44885d | ||
|
|
ba9603a62c | ||
| 78a027a723 | |||
| 3490c6591b | |||
| d6a48a0de7 | |||
|
|
5aa2f14baf | ||
|
|
6848f46b99 | ||
| 761478e5c4 | |||
|
|
491cc5b06c | ||
|
|
05388b80a4 | ||
|
|
49452ff6bc | ||
| 90aa537a1f | |||
|
|
0013b2bd21 | ||
|
|
a545314ce2 | ||
|
|
0ff61cc1b9 | ||
| 6e38bd09af | |||
| e81df9e029 | |||
|
|
dbe2096830 | ||
| 96d9dad71e | |||
|
|
289ab7beba | ||
| a217b03c5d | |||
|
|
05641e991d | ||
|
|
ed4406dbd7 | ||
|
|
27ccd165f1 | ||
|
|
dd8f872cb5 | ||
| 1046a64edb | |||
| 6a24668f64 |
@@ -716,9 +716,6 @@ CREATE_TABLE(alg_kenmerk,0)
|
||||
,alg_kenmerk_volgnr
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
,alg_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
,alg_kenmerk_omschrijving
|
||||
VARCHAR2(50)
|
||||
,alg_kenmerk_upper
|
||||
|
||||
@@ -497,7 +497,7 @@ CREATE_TABLE(bes_disc_params, 0)
|
||||
NUMBER(1)
|
||||
DEFAULT 0
|
||||
NOT NULL,
|
||||
bes_disc_params_bestelmode /* 0=ouderwets artikelselector, 1=vrij artikelen, 2=bestellijst, 3=actuele lijst */
|
||||
bes_disc_params_bestelmode /* 0=ouderwets artikelselector, 1=vrij artikelen, 2=bestellijst */
|
||||
NUMBER(1)
|
||||
DEFAULT 0
|
||||
NOT NULL,
|
||||
@@ -607,9 +607,6 @@ CREATE_TABLE(bes_kenmerk, 0)
|
||||
, bes_kenmerk_volgnummer
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
, bes_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
, bes_kenmerk_uniek
|
||||
NUMBER(1)
|
||||
, bes_kenmerk_regexp
|
||||
|
||||
112
BES/BES_VIE.SRC
112
BES/BES_VIE.SRC
@@ -351,118 +351,6 @@ AS
|
||||
AND sd.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND sd.bes_staffeltabel_key = bs.bes_staffeltabel_key;
|
||||
|
||||
|
||||
CREATE_VIEW(bes_v_average_current_stock, 0)
|
||||
AS
|
||||
-- Gemiddelde voorraad en bestellingen voor "Actuele lijst" artikelen.
|
||||
SELECT sd.bes_srtdeel_key,
|
||||
sd.bes_srtdeel_volgnr volgnummer,
|
||||
sd.bes_srtdeel_nr artikelnummer,
|
||||
sd.bes_srtdeel_omschrijving artikel,
|
||||
sd.bes_srtdeel_notitie notitie,
|
||||
dp.bes_ins_discipline_key,
|
||||
bd.ins_discipline_omschrijving discipline,
|
||||
g.bes_srtgroep_key,
|
||||
g.bes_srtgroep_omschrijving groep,
|
||||
sd.bes_srtdeel_voorraadmax voorraadmax,
|
||||
sd.bes_srtdeel_voorraadmin voorraadmin,
|
||||
sd.bes_srtdeel_maxbestel maxbestel,
|
||||
sd.bes_srtdeel_minimum bestelmin,
|
||||
sd.bes_srtdeel_maximum bestelmax,
|
||||
sd.bes_srtdeel_veelvoud bestelveelvoud,
|
||||
sd.bes_srtdeel_eenheid eenheid,
|
||||
sd.bes_srtdeel_vervaldatum vervaldatum,
|
||||
(SELECT COUNT(*)
|
||||
FROM bes_kenmerk bk,
|
||||
bes_srtkenmerk sk,
|
||||
bes_srtdeel sd2,
|
||||
bes_srtgroep sg
|
||||
WHERE sd2.bes_srtgroep_key = sg.bes_srtgroep_key
|
||||
AND (bk.bes_srtinstallatie_key = sg.ins_discipline_key
|
||||
AND bk.bes_kenmerk_niveau LIKE 'D'
|
||||
OR bk.bes_srtinstallatie_key = sg.bes_srtgroep_key
|
||||
AND bk.bes_kenmerk_niveau LIKE 'G'
|
||||
OR bk.bes_srtinstallatie_key = sd2.bes_srtdeel_key
|
||||
AND bk.bes_kenmerk_niveau LIKE 'S')
|
||||
AND bk.bes_kenmerk_type = 'I'
|
||||
AND bk.bes_srtkenmerk_key = sk.bes_srtkenmerk_key
|
||||
AND bk.bes_kenmerk_verwijder IS NULL
|
||||
AND sk.bes_srtkenmerk_verwijder IS NULL
|
||||
AND sd2.bes_srtdeel_key = sd.bes_srtdeel_key) aantal_kenmerken,
|
||||
SUM(CASE WHEN b.bes_bestelling_status = 6 THEN 0 ELSE bi.bes_bestelling_item_aantal END) - SUM(CASE WHEN b.bes_bestelling_status = 6 THEN 0 ELSE COALESCE(bi.bes_bestelling_item_aantalontv, 0) END) in_bestelling,
|
||||
SUM(bi.bes_bestelling_item_aantal) besteld,
|
||||
SUM(COALESCE(bi.bes_bestelling_item_aantalontv, 0)) geleverd,
|
||||
COALESCE(bes.getsrtdeelprijs(sd.bes_srtdeel_key, NULL), 0) prijs,
|
||||
MIN(b.bes_bestelling_datum) eerste_bestelling,
|
||||
MAX(b.bes_bestelling_datum) laatste_bestelling,
|
||||
ROUND(MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) historie_dagen,
|
||||
COUNT(sd.bes_srtdeel_key) aantal_bestellingen,
|
||||
ROUND((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / COUNT(sd.bes_srtdeel_key)) bestel_periode_dagen,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND((COUNT(sd.bes_srtdeel_key) / ((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365)) / 12, 1)
|
||||
END bestellingen_per_maand,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND((((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365) * SUM(bi.bes_bestelling_item_aantal)) / 12, 1)
|
||||
END artikelen_per_maand,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND((((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365) * SUM(bi.bes_bestelling_item_aantal)) * COALESCE(bes.getsrtdeelprijs(sd.bes_srtdeel_key, NULL), 0) / 12)
|
||||
END totaal_per_maand,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND(COUNT(sd.bes_srtdeel_key) / ((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365), 1)
|
||||
END bestellingen_per_jaar,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND(((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365) * SUM(bi.bes_bestelling_item_aantal))
|
||||
END artikelen_per_jaar,
|
||||
CASE
|
||||
WHEN MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum) = 0
|
||||
THEN NULL
|
||||
ELSE ROUND(((MAX(b.bes_bestelling_datum) - MIN(b.bes_bestelling_datum)) / 365) * SUM(bi.bes_bestelling_item_aantal)) * COALESCE(bes.getsrtdeelprijs(sd.bes_srtdeel_key, NULL), 0)
|
||||
END totaal_per_jaar
|
||||
FROM bes_discipline bd,
|
||||
bes_v_aanwezigsrtgroep g,
|
||||
bes_v_aanwezigsrtdeel sd,
|
||||
bes_disc_params dp,
|
||||
bes_bestelling b,
|
||||
bes_bestelling_item bi
|
||||
WHERE sd.bes_srtgroep_key = g.bes_srtgroep_key
|
||||
AND dp.bes_disc_params_bestelmode = 3
|
||||
AND g.ins_discipline_key = bd.ins_discipline_key
|
||||
AND bd.ins_discipline_key = dp.bes_ins_discipline_key
|
||||
AND sd.bes_srtdeel_key = bi.bes_srtdeel_key
|
||||
AND bi.bes_bestelling_key = b.bes_bestelling_key
|
||||
AND b.bes_bestelling_status IN (2, 3, 4, 5, 6)
|
||||
AND (sd.bes_srtdeel_vervaldatum IS NULL
|
||||
OR sd.bes_srtdeel_vervaldatum > SYSDATE)
|
||||
GROUP BY sd.bes_srtdeel_volgnr,
|
||||
sd.bes_srtdeel_nr,
|
||||
sd.bes_srtdeel_key,
|
||||
sd.bes_srtdeel_omschrijving,
|
||||
sd.bes_srtdeel_notitie,
|
||||
dp.bes_ins_discipline_key,
|
||||
bd.ins_discipline_omschrijving,
|
||||
g.bes_srtgroep_key,
|
||||
g.bes_srtgroep_omschrijving,
|
||||
sd.bes_srtdeel_voorraadmax,
|
||||
sd.bes_srtdeel_voorraadmin,
|
||||
sd.bes_srtdeel_maxbestel,
|
||||
sd.bes_srtdeel_minimum,
|
||||
sd.bes_srtdeel_maximum,
|
||||
sd.bes_srtdeel_veelvoud,
|
||||
sd.bes_srtdeel_eenheid,
|
||||
sd.bes_srtdeel_vervaldatum
|
||||
ORDER BY sd.bes_srtdeel_volgnr,
|
||||
sd.bes_srtdeel_nr;
|
||||
|
||||
REGISTERRUN('$Id$')
|
||||
|
||||
#endif // BES
|
||||
|
||||
@@ -161,9 +161,6 @@ CREATE_TABLE(bez_kenmerk,0)
|
||||
,bez_kenmerk_volgnr
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
,bez_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
,bez_kenmerk_omschrijving
|
||||
VARCHAR2(50)
|
||||
,bez_kenmerk_upper
|
||||
|
||||
@@ -892,78 +892,6 @@ AS
|
||||
GROUP BY ins_deel_key, res_deel_omschrijving;
|
||||
|
||||
|
||||
// Een basisview om sensorgemiddelde per ruimte per dag te berekenen
|
||||
// AI-generated, nog niet nageteld, maar who cares.
|
||||
// Bevat alleen sensoren met niet-discrete numerieke waarden zoals temperatuur, niet bezetting
|
||||
// Bevat het ruimtegemiddelde van alle sensoren van hetzelfde srtdeel gedurende de kantoortijden
|
||||
CREATE_VIEW(ins_v_sensorgemiddele_per_ruimte_per_dag, 0)
|
||||
AS
|
||||
WITH
|
||||
sensor_data
|
||||
AS
|
||||
(SELECT d.ins_alg_ruimte_key
|
||||
, d.ins_srtdeel_key
|
||||
, sd.ins_srtdeel_code
|
||||
, sd.ins_srtdeel_omschrijving
|
||||
, sh.ins_deel_statedate
|
||||
, sh.ins_deel_state
|
||||
, LEAD (sh.ins_deel_statedate) OVER (PARTITION BY d.ins_alg_ruimte_key, sd.ins_srtdeel_omschrijving ORDER BY sh.ins_deel_statedate) AS next_statedate
|
||||
FROM ins_deel d
|
||||
JOIN ins_deel_state_history sh ON sh.ins_deel_key = d.ins_deel_key
|
||||
JOIN ins_srtdeel sd ON sd.ins_srtdeel_key = d.ins_srtdeel_key
|
||||
WHERE d.ins_alg_ruimte_type = 'R' AND sd.ins_srtdeel_sensortype = 2),
|
||||
bounded_intervals
|
||||
AS
|
||||
(SELECT ins_alg_ruimte_key
|
||||
, ins_srtdeel_key
|
||||
, ins_srtdeel_code
|
||||
, ins_srtdeel_omschrijving
|
||||
, TRUNC (ins_deel_statedate) AS datum
|
||||
, GREATEST (ins_deel_statedate, TRUNC (ins_deel_statedate) + fac.getsetting ('fac_t_startofworkday') / 24) AS start_time
|
||||
, LEAST (NVL (next_statedate, TRUNC (ins_deel_statedate) + 1), TRUNC (ins_deel_statedate) + fac.getsetting ('fac_t_endofworkday') / 24) AS end_time
|
||||
, ins_deel_state
|
||||
FROM sensor_data
|
||||
WHERE -- Alleen intervallen die de kantoortijd raken
|
||||
NVL (next_statedate, TRUNC (ins_deel_statedate) + 1) > TRUNC (ins_deel_statedate) + fac.getsetting ('fac_t_startofworkday') / 24
|
||||
AND ins_deel_statedate < TRUNC (ins_deel_statedate) + fac.getsetting ('fac_t_endofworkday') / 24),
|
||||
gewogen_data
|
||||
AS
|
||||
(SELECT ins_alg_ruimte_key
|
||||
, ins_srtdeel_key
|
||||
, ins_srtdeel_code
|
||||
, ins_srtdeel_omschrijving
|
||||
, datum
|
||||
, ins_deel_state
|
||||
, (end_time - start_time) * 24 * 60 AS duration_minutes -- of * 24 * 60 * 60 voor seconden
|
||||
FROM bounded_intervals
|
||||
WHERE end_time > start_time -- filter eventueel negatieve of nulduur
|
||||
)
|
||||
SELECT ins_alg_ruimte_key
|
||||
, ins_srtdeel_key
|
||||
, ins_srtdeel_code
|
||||
, ins_srtdeel_omschrijving
|
||||
, datum
|
||||
, ROUND (SUM (ins_deel_state * duration_minutes) / SUM (duration_minutes), 2) AS gewogen_gemiddelde
|
||||
FROM gewogen_data
|
||||
GROUP BY ins_alg_ruimte_key
|
||||
, ins_srtdeel_key
|
||||
, ins_srtdeel_code
|
||||
, ins_srtdeel_omschrijving
|
||||
, datum
|
||||
ORDER BY ins_alg_ruimte_key, datum;
|
||||
|
||||
CREATE_VIEW(cad_v_co2_daggemiddelde, 0)
|
||||
AS
|
||||
SELECT ins_alg_ruimte_key alg_ruimte_key, datum fclt_f_datum, gewogen_gemiddelde waarde
|
||||
FROM ins_v_sensorgemiddele_per_ruimte_per_dag
|
||||
WHERE ins_srtdeel_code = 'CO2';
|
||||
|
||||
CREATE_VIEW(cad_v_temp_daggemiddelde)
|
||||
AS
|
||||
SELECT ins_alg_ruimte_key alg_ruimte_key, datum fclt_f_datum, gewogen_gemiddelde waarde
|
||||
FROM ins_v_sensorgemiddele_per_ruimte_per_dag
|
||||
WHERE ins_srtdeel_code = 'TEMP';
|
||||
|
||||
REGISTERRUN('$Id$')
|
||||
|
||||
#endif // CAD
|
||||
|
||||
@@ -27,8 +27,6 @@ CREATE UNIQUE INDEX cnt_i_cnt_factuurschema1 ON cnt_factuurschema(cnt_contract_k
|
||||
CREATE INDEX cnt_i_cnt_srtkenmerk1 ON cnt_srtkenmerk(cnt_srtkenmerk_code);
|
||||
CREATE INDEX cnt_i_cnt_kenmerk1 ON cnt_kenmerk(cnt_kenmerk_code);
|
||||
|
||||
CREATE INDEX cnt_i_cnt_verlengschema ON cnt_verlengschema(cnt_contract_key);
|
||||
|
||||
REGISTERONCE('$Id$')
|
||||
|
||||
#endif // CNT
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
|
||||
CREATE OR REPLACE PACKAGE cnt AS
|
||||
PROCEDURE setcontractstatus (pcontractkey IN NUMBER, pstatus IN NUMBER, puserkey IN NUMBER);
|
||||
FUNCTION getVerlengschemaEinddatum(startdatum IN DATE, cnt_key IN NUMBER, volgnr IN NUMBER) RETURN DATE;
|
||||
FUNCTION cnt_getTermijndatum (pdate IN DATE, ptermijn_key IN NUMBER, prichting IN NUMBER) RETURN DATE;
|
||||
FUNCTION termijnjaarfactor (ptermijn_key IN NUMBER) RETURN NUMBER;
|
||||
FUNCTION cnt_getOpzegdatum (pcnt_contract_key IN NUMBER) RETURN DATE;
|
||||
@@ -78,7 +77,7 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
END IF;
|
||||
WHEN 3 -- Ter goedkeuring
|
||||
THEN
|
||||
IF currentstatus = 2 OR currentstatus IS NULL
|
||||
IF currentstatus = 2
|
||||
THEN
|
||||
newstatus := pstatus;
|
||||
eventcode := 'CNTCPT';
|
||||
@@ -101,27 +100,6 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
END IF;
|
||||
END;
|
||||
|
||||
-- Bepaal de einddatum na x iteraties van het verlengschema vanaf een startdatum.
|
||||
FUNCTION getVerlengschemaEinddatum(startdatum IN DATE, cnt_key IN NUMBER, volgnr IN NUMBER) RETURN DATE
|
||||
IS
|
||||
CURSOR c_verleng
|
||||
IS
|
||||
SELECT cnt_verlengschema_volgnr
|
||||
, cnt_verlengschema_verlengtermijn
|
||||
FROM cnt_verlengschema
|
||||
WHERE cnt_verlengschema_volgnr <= volgnr
|
||||
AND cnt_contract_key = cnt_key;
|
||||
|
||||
einddatum DATE := startdatum;
|
||||
BEGIN
|
||||
FOR c IN c_verleng
|
||||
LOOP
|
||||
einddatum := cnt.cnt_getTermijndatum(einddatum, c.cnt_verlengschema_verlengtermijn, 1);
|
||||
END LOOP;
|
||||
|
||||
RETURN einddatum;
|
||||
END;
|
||||
|
||||
-- Deze functie bepaalt de datum door het termijn (ptermijn_key) van de datum (pdate) in mindering te brengen.
|
||||
-- Indien de 29, 30 of 31 datum niet in de betreffende maand voorkomt wordt de eerste van de volgende maand genomen.
|
||||
-- prichting geeft aan of ten opzichte van pdate achteruit (-1) of vooruit (1, of anders) moet worden gerekend.
|
||||
@@ -269,7 +247,6 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
, c.cnt_contract_nummer_intern
|
||||
, c.cnt_contract_omschrijving
|
||||
, c.cnt_contract_looptijd_tot
|
||||
, c.cnt_contract_verleng_termijn
|
||||
, o.cnt_termijn_omschrijving opzegtermijn
|
||||
, cnt.cnt_getTermijndatum (c.cnt_contract_looptijd_tot, c.cnt_contract_opzegtermijn, -1) dtopzeggen
|
||||
, v.cnt_termijn_omschrijving verlengtermijn
|
||||
@@ -294,11 +271,7 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
AND cn.cnt_contract_verwijder IS NULL
|
||||
);
|
||||
|
||||
tracking VARCHAR2(4000);
|
||||
this_verlengschema_key cnt_verlengschema.cnt_verlengschema_key%TYPE;
|
||||
next_verlengschema_key cnt_verlengschema.cnt_verlengschema_key%TYPE;
|
||||
next_termijn cnt_termijn.cnt_termijn_key%TYPE;
|
||||
infinite_prolongate NUMBER(1) := 0;
|
||||
tracking VARCHAR2(4000);
|
||||
BEGIN
|
||||
FOR cnt_verloopt IN c_verleng
|
||||
LOOP
|
||||
@@ -311,45 +284,6 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
, '{1}', TO_CHAR(cnt_verloopt.dtnieuw,'dd-mm-yyyy')
|
||||
);
|
||||
fac.trackaction ('CNTUPD', cnt_verloopt.cnt_contract_key, NULL, NULL, tracking);
|
||||
-- Heeft dit automatisch verlengbaar contract een verlengschema?
|
||||
BEGIN
|
||||
SELECT this_schema_key
|
||||
, next_schema_key
|
||||
INTO this_verlengschema_key
|
||||
, next_verlengschema_key
|
||||
FROM ( SELECT cnt_verlengschema_key AS this_schema_key
|
||||
, LEAD(cnt_verlengschema_key) OVER(ORDER BY cnt_verlengschema_volgnr) AS next_schema_key
|
||||
FROM cnt_verlengschema
|
||||
WHERE cnt_contract_key = cnt_verloopt.cnt_contract_key
|
||||
)
|
||||
WHERE rownum = 1;
|
||||
-- Dan eerstvolgende verlengtermijn uit verlengschema naar het veld verlengtermijn in contract kopieren...
|
||||
IF next_verlengschema_key IS NOT NULL
|
||||
THEN
|
||||
SELECT cnt_verlengschema_verlengtermijn
|
||||
INTO next_termijn
|
||||
FROM cnt_verlengschema
|
||||
WHERE cnt_verlengschema_key = next_verlengschema_key;
|
||||
ELSE
|
||||
IF infinite_prolongate = 1
|
||||
THEN
|
||||
next_termijn := cnt_verloopt.cnt_contract_verleng_termijn;
|
||||
ELSE
|
||||
next_termijn := NULL;
|
||||
END IF;
|
||||
END IF;
|
||||
UPDATE cnt_contract
|
||||
SET cnt_contract_verleng_termijn = next_termijn
|
||||
WHERE cnt_contract_key = cnt_verloopt.cnt_contract_key;
|
||||
|
||||
-- ...en deze verlengtermijn uit het verlengschema verwijderen.
|
||||
DELETE
|
||||
FROM cnt_verlengschema
|
||||
WHERE cnt_verlengschema_key = this_verlengschema_key;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN NULL;
|
||||
-- Laat laatste verlengtermijn staan als er geen volgende in het schema gevonden kan worden.
|
||||
END;
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
@@ -366,8 +300,7 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
AND NOT EXISTS (SELECT f.fin_factuur_key -- Contract mag geen openstaande facturen hebben.
|
||||
FROM fin_factuur f
|
||||
WHERE f.cnt_contract_key = c.cnt_contract_key
|
||||
AND f.fin_factuur_statuses_key NOT IN (1,7)
|
||||
AND f.fin_factuur_verwijder IS NULL);
|
||||
AND f.fin_factuur_statuses_key NOT IN (1,7));
|
||||
BEGIN
|
||||
BEGIN
|
||||
SELECT prs_perslid_key
|
||||
@@ -401,7 +334,6 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
newkey NUMBER;
|
||||
nummer1 cnt_contract.cnt_contract_nummer_intern%TYPE;
|
||||
amount1 cnt_contract.cnt_contract_kosten%TYPE;
|
||||
approve_new cnt_disc_params.cnt_disc_params_approve_new%TYPE;
|
||||
srtcontract_type cnt_disc_params.cnt_srtcontract_type%TYPE;
|
||||
new_status cnt_contract.cnt_contract_status%TYPE;
|
||||
tracking VARCHAR2 (4000);
|
||||
@@ -424,9 +356,8 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
cnt_contract_nummer_intern,
|
||||
cnt_contract_kosten,
|
||||
cdp.cnt_srtcontract_type,
|
||||
cdp.cnt_disc_params_approve_new,
|
||||
c.cnt_contract_status
|
||||
INTO begin1, eind1, versie1, nummer1, amount1, srtcontract_type, approve_new, new_status
|
||||
INTO begin1, eind1, versie1, nummer1, amount1, srtcontract_type, new_status
|
||||
FROM cnt_contract c,
|
||||
cnt_disc_params cdp
|
||||
WHERE c.ins_discipline_key = cdp.cnt_ins_discipline_key
|
||||
@@ -444,12 +375,7 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
eind1 := eind1;
|
||||
IF (fac.getsetting('cnt_contract_approval') = 1 AND srtcontract_type != 6)
|
||||
THEN
|
||||
IF (approve_new = 1)
|
||||
THEN
|
||||
new_status := 3; -- gesplitst contract altijd accorderen
|
||||
ELSE
|
||||
new_status := 2; -- altijd op nieuw
|
||||
END IF;
|
||||
new_status := 2; -- altijd op nieuw
|
||||
ELSE
|
||||
new_status := 0; -- direct actief
|
||||
END IF;
|
||||
@@ -788,15 +714,11 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
l.alg_locatie_key,
|
||||
CASE WHEN b.prs_bedrijf_key = c.cnt_prs_bedrijf_key THEN 'C' ELSE 'G' END bedrijfadres_type,
|
||||
cnt_contract_nummer_intern,
|
||||
c.ins_discipline_key,
|
||||
COALESCE (l.alg_locatie_email, ins_discipline_email),
|
||||
d.prs_bedrijf_key persoon_bedrijf_key -- van de melder, niet de uitvoerende
|
||||
COALESCE (l.alg_locatie_email, ins_discipline_email)
|
||||
FROM prs_bedrijf b,
|
||||
cnt_contract c,
|
||||
ins_tab_discipline d,
|
||||
alg_locatie l,
|
||||
prs_perslid p,
|
||||
prs_v_afdeling d,
|
||||
( SELECT cnt_contract_key,
|
||||
DECODE (MIN (cp1.cnt_alg_plaats_code),
|
||||
'L', MIN (cp1.cnt_alg_plaats_key),
|
||||
@@ -840,8 +762,6 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
AND d.ins_discipline_key = c.ins_discipline_key
|
||||
AND c.cnt_contract_key = cp.cnt_contract_key(+)
|
||||
AND cp.cnt_locatie_key = l.alg_locatie_key(+)
|
||||
AND d.prs_afdeling_key = p.prs_afdeling_key
|
||||
AND p.prs_perslid_key = c.prs_perslid_key_beh
|
||||
AND ( b.prs_bedrijf_key = c.cnt_prs_bedrijf_key -- type 'C'
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
@@ -855,9 +775,7 @@ CREATE OR REPLACE PACKAGE BODY cnt AS
|
||||
prefkey => pcntkey,
|
||||
ptrackingkey => ptrackingkey,
|
||||
preference => bedrijfrec.cnt_contract_nummer_intern,
|
||||
pdiscipline_key => bedrijfrec.ins_discipline_key,
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pbedrijf_key2 => bedrijfrec.persoon_bedrijf_key,
|
||||
pnotidelay => pnotidelay);
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
@@ -18,7 +18,6 @@ CREATE SEQUENCE cnt_s_cnt_kenmerkcontract_key MINVALUE 1;
|
||||
|
||||
CREATE SEQUENCE cnt_s_cnt_contract_note_key MINVALUE 1;
|
||||
CREATE SEQUENCE cnt_s_cnt_factuurschema_key MINVALUE 1;
|
||||
CREATE SEQUENCE cnt_s_cnt_verlengschema_key MINVALUE 1;
|
||||
|
||||
REGISTERONCE('$Id$')
|
||||
|
||||
|
||||
@@ -86,14 +86,6 @@ CREATE_TABLE(cnt_disc_params, 0)
|
||||
DEFAULT 0
|
||||
NOT NULL,
|
||||
cnt_disc_params_opties
|
||||
NUMBER(1)
|
||||
DEFAULT 0
|
||||
NOT NULL,
|
||||
cnt_disc_params_ksverplicht /* Kostensoort verplicht {0=niet verplicht (default), 1=verplicht} */
|
||||
NUMBER(1)
|
||||
DEFAULT 0
|
||||
NOT NULL,
|
||||
cnt_disc_params_approve_new /* nieuw/gesplitst contract altijd acorderen {0=nee (default), 1=ja} */
|
||||
NUMBER(1)
|
||||
DEFAULT 0
|
||||
NOT NULL
|
||||
@@ -377,9 +369,6 @@ CREATE_TABLE(cnt_kenmerk, 0)
|
||||
, cnt_kenmerk_volgnummer
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
, cnt_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
, cnt_kenmerk_uniek
|
||||
NUMBER(1)
|
||||
, cnt_kenmerk_regexp
|
||||
@@ -461,21 +450,6 @@ CREATE_TABLE(cnt_factuurschema , 0)
|
||||
DEFAULT SYSDATE
|
||||
);
|
||||
|
||||
CREATE_TABLE(cnt_verlengschema, 0)
|
||||
(
|
||||
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)
|
||||
);
|
||||
|
||||
REGISTERONCE('$Id$')
|
||||
|
||||
|
||||
|
||||
@@ -357,14 +357,6 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE OR REPLACE TRIGGER cnt_t_cnt_verlengschema_B_I
|
||||
BEFORE INSERT ON cnt_verlengschema
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
UPDATE_PRIMARY_KEY(cnt_verlengschema_key,cnt_s_cnt_verlengschema_key);
|
||||
END;
|
||||
/
|
||||
|
||||
REGISTERRUN('$Id$')
|
||||
|
||||
#endif // CNT
|
||||
|
||||
@@ -104,6 +104,7 @@ AS
|
||||
WHERE starttime <= date_interval_end
|
||||
AND endtime >= date_interval_start
|
||||
AND appt_id || '|' || recur_id = p_appt_id || '|' || p_recur_id
|
||||
AND gelukt IS NULL
|
||||
AND NOT REGEXP_LIKE (att_mail, (SELECT COALESCE (fac_setting_pvalue, fac_setting_default)
|
||||
FROM fac_setting
|
||||
WHERE fac_setting_name = 'exchange_internal_email_regexp'));
|
||||
|
||||
@@ -1550,7 +1550,7 @@ DEF_FAC_MESSAGE ('PRS_R_PRS_EENHEID_KEY', 'Verwijderen niet toegestaan, er zijn
|
||||
DEF_FAC_MESSAGE ('PRS_R_PRS_CONTACTPERSOON_KEY', 'De contactpersoon is niet goed.','The contact person is invalid.');
|
||||
|
||||
DEF_FAC_MESSAGE ('PRS_U_PERSLIDWERKPLEK', 'De combinatie van persoon of afdeling en werkplek is niet uniek.','The combination of person or department and workplace is not unique.');
|
||||
DEF_FAC_MESSAGE ('PRS_U_PRS_AFDELING_UPPER', 'Het veld ''Code'' is niet uniek.','The field ''Code'' is not unique.');
|
||||
DEF_FAC_MESSAGE ('PRS_U_PRS_AFDELING_UPPER', 'Het veld ''Naam'' is niet uniek.','The field ''Name'' is not unique.');
|
||||
DEF_FAC_MESSAGE ('PRS_U_PRS_BEDRIJF_NAAM_UPPER', 'Het veld ''Naam'' is niet uniek.','The field ''Name'' is not unique.');
|
||||
DEF_FAC_MESSAGE ('PRS_U_PRS_BEDRIJFDIENSTLOC_KEY', 'De combinatie bedrijf, dienst, locatie en gebouw is niet uniek', 'The combination of company, service, location and building is not unique');
|
||||
DEF_FAC_MESSAGE ('PRS_U_PRS_BESTEK_UPPER_NR', 'Het veld ''Nummer'' is niet uniek.','The field ''Number'' is not unique.');
|
||||
@@ -2059,7 +2059,6 @@ DEF_FAC_SRTNOT('ORDNOL', 1, 'lcl_noti_ORDNOL', 'mld/mld_opdr.asp?opdr_key=', '0'
|
||||
DEF_FAC_SRTNOT('ORDAFM', 1, 'lcl_noti_ORDAFM', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 10);
|
||||
DEF_FAC_SRTNOT('ORDNEW', 0, 'lcl_noti_ORDNEW', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 10);
|
||||
DEF_FAC_SRTNOT('ORDUPD', 0, 'lcl_noti_ORDUPD', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
|
||||
DEF_FAC_SRTNOT('ORDSND', 0, 'lcl_noti_ORDSND', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
|
||||
DEF_FAC_SRTNOT('ORDDAT', 0, 'lcl_noti_ORDDAT', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
|
||||
DEF_FAC_SRTNOT('ORDPLD', 0, 'lcl_noti_ORDPLD', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
|
||||
DEF_FAC_SRTNOT('ORDPL2', 0, 'lcl_noti_ORDPL2', 'mld/mld_opdr.asp?opdr_key=', '0', 'opdracht', 60);
|
||||
@@ -2699,7 +2698,6 @@ DEF_MENUITEM(1, 'lcl_menu_cht_incoming' , '', 'CHT', 'appl/chat/ChatterA
|
||||
DEF_MENUITEM(1, 'lcl_menu_mld_fo_overview' , '', 'MLD', 'appl/mld/mld_search.asp?urole=fo', 0, 0, 'WEB_MLDFOF', 'R', '1', '');
|
||||
DEF_MENUITEM(1, 'lcl_menu_mld_fo_1' , '', 'MLD', 'appl/mld/mld_melding.asp?urole=fo', 1, 0, 'WEB_MLDFOF', 'W', '1', '');
|
||||
DEF_MENUITEM(1, 'lcl_menu_mld_fo_2' , '', 'MLD', 'appl/mld/mld_melding.asp?urole=fo', 0, 0, 'WEB_MLDFOF', 'W', '0', '');
|
||||
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(1, 'lcl_menu_mld_concepts' , '', 'MLD', 'appl/mld/mld_search.asp?concept=1&urole=fo', 0, 0, 'WEB_MLDMSU', 'R', '0', '');
|
||||
DEF_MENUITEM(1, 'lcl_menu_mld_notes' , '', 'MLD', 'appl/mld/mld_show_note.asp?urole=fo', 0, 0, 'WEB_MLDFOF', 'R', '0', '');
|
||||
DEF_MENUITEM(1, 'lcl_menu_mld_bo_call_center' , '', 'MLD', 'appl/mld/mld_search.asp?urole=bo', 0, 0, 'WEB_MLDBOF', 'R', '1', '');
|
||||
@@ -2904,8 +2902,6 @@ DEF_MENUITEM(2, 'lcl_menu_mld_opdrachttypes' , '', 'MLD', 'appl/mgt/mld_typeo
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_improdopdr' , '', 'MLD', 'appl/mgt/mld_impropdr.asp', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_opdrkosten' , '', 'MLD', 'appl/mgt/mld_kosten.asp', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_workflows' , '', 'MLD', 'appl/mgt/mld_workflow.asp', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_fac_jobs_templates' , '', 'MLD', 'appl/fac/job_search.asp?template=1', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_email_setting' , '', 'MLD', 'appl/mgt/fac_email_setting.asp', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_kenmerken_m' , '', 'MLD', 'appl/mgt/mld_kenmerk.asp?niveau=M', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_kenmerken' , '', 'MLD', 'appl/mgt/mld_kenmerk.asp?niveau=O', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
DEF_MENUITEM(2, 'lcl_menu_mld_kenmerksoorten' , '', 'MLD', 'appl/mgt/mld_srtkenmerk.asp', 0, 0, 'WEB_MLDMGT', 'W', '1', '');
|
||||
|
||||
659
FAC/FAC_LCL.SRC
659
FAC/FAC_LCL.SRC
File diff suppressed because it is too large
Load Diff
686
FAC/FAC_PAC.SRC
686
FAC/FAC_PAC.SRC
@@ -163,7 +163,8 @@ CREATE OR REPLACE PACKAGE fac
|
||||
plocatie_key NUMBER DEFAULT NULL,
|
||||
pdiscipline_key NUMBER DEFAULT NULL,
|
||||
ptypeopdr_key NUMBER DEFAULT NULL,
|
||||
pbedrijf_key2 NUMBER DEFAULT NULL);
|
||||
pbedrijf_key2 NUMBER DEFAULT NULL,
|
||||
pdisc_key NUMBER DEFAULT NULL);
|
||||
FUNCTION gettrackingdate (peventcode IN VARCHAR2, pkey IN number) RETURN date;
|
||||
FUNCTION gettrackinguserkey (peventcode IN VARCHAR2, pkey IN number) RETURN number;
|
||||
PROCEDURE initsession (flcode IN VARCHAR2);
|
||||
@@ -172,18 +173,14 @@ CREATE OR REPLACE PACKAGE fac
|
||||
PROCEDURE registercustversion (pcustid IN VARCHAR2, pcustnr IN NUMBER);
|
||||
FUNCTION getdbversion RETURN VARCHAR2;
|
||||
FUNCTION getDefaultBehandelteam(p_stdm IN NUMBER) RETURN NUMBER;
|
||||
PROCEDURE processemail (p_from IN VARCHAR2
|
||||
, p_to IN VARCHAR2
|
||||
, p_subject IN VARCHAR2
|
||||
, p_body IN VARCHAR2
|
||||
, p_session_id IN VARCHAR2
|
||||
, p_email_set_key IN NUMBER);
|
||||
PROCEDURE processemail (pfrom IN VARCHAR2, pto IN VARCHAR2, psubject IN VARCHAR2, pbody IN VARCHAR2, psessionid IN VARCHAR2);
|
||||
FUNCTION isdatefeestdag(p_date IN DATE, pCalendarId IN VARCHAR2 DEFAULT 'Default') RETURN BOOLEAN;
|
||||
FUNCTION calcnextcyclusdate (p_date IN DATE, p_mode IN NUMBER, p_eenheid IN NUMBER, p_periode IN NUMBER, p_bits IN NUMBER, pCalendarId IN VARCHAR2 DEFAULT 'Default') RETURN DATE;
|
||||
FUNCTION nextcyclusdate (p_date IN DATE, p_mode IN NUMBER, p_eenheid IN NUMBER, p_periode IN NUMBER, p_bits IN NUMBER, p_steps IN NUMBER DEFAULT 0, p_ismjob IN NUMBER DEFAULT 0, pCalendarId IN VARCHAR2 DEFAULT 'Default') RETURN DATE;
|
||||
FUNCTION nextcyclusdatedeel (p_insdeel IN NUMBER, p_srtcontrole IN NUMBER, p_steps IN NUMBER DEFAULT 0, pCalendarId IN VARCHAR2 DEFAULT 'Default') RETURN DATE;
|
||||
FUNCTION nextcyclusdatesteps (p_date IN DATE, p_mode IN NUMBER, p_eenheid IN NUMBER, p_periode IN NUMBER, p_bits IN NUMBER, p_steps IN NUMBER DEFAULT 1, p_enddate IN DATE DEFAULT SYSDATE, pCalendarId IN VARCHAR2 DEFAULT 'Default') RETURN NUMBER;
|
||||
FUNCTION makehash (p_in VARCHAR2, method IN VARCHAR2 DEFAULT 'MD5') RETURN VARCHAR2;
|
||||
FUNCTION testhash (p_hash VARCHAR2, p_in VARCHAR2) RETURN NUMBER;
|
||||
PROCEDURE createlikebookmark (pxmlnode VARCHAR2, prefkey NUMBER);
|
||||
PROCEDURE sequence_nextval(p_seqname IN VARCHAR2, p_initval IN NUMBER DEFAULT 1, p_initexpire IN DATE DEFAULT NULL);
|
||||
PROCEDURE remove_tracking(p_xmlnode IN VARCHAR2, p_refkey IN NUMBER);
|
||||
@@ -678,47 +675,28 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AND pEindWerkUur BETWEEN 0 AND 24
|
||||
AND pEindWerkUur > pBeginWerkUur
|
||||
THEN
|
||||
datumbegin := begindatum;
|
||||
LOOP
|
||||
-- Verschuif datumbegin als deze valt
|
||||
-- [a] in het weekend (alleen als pMode = 1)
|
||||
-- [b] buiten de meegegeven uren, hier geldt Kantoortijden- of Openingstijden-regime!
|
||||
-- [c] op een vrije dag
|
||||
IF pMode = 1
|
||||
THEN
|
||||
-- Verschuif (gewijzigde) datumbegin als deze in het weekend valt.
|
||||
weekdagbegin := fac.getweekdaynum (datumbegin); -- zo=1 t/m za=7
|
||||
-- Verschuif begindatum als deze valt [a] buiten de meegegeven uren of [b] op
|
||||
-- een vrije dag. Dit geldt Kantoortijden- of Openingstijden-regime!
|
||||
SELECT COUNT ( * )
|
||||
INTO vrijedag
|
||||
FROM mld_vrije_dagen
|
||||
WHERE mld_vrije_dagen_datum = TRUNC (begindatum)
|
||||
AND mld_vrije_dagen_id = pCalendarId;
|
||||
|
||||
IF weekdagbegin = 1
|
||||
THEN
|
||||
-- Als zo=1, dan schuif 1 dag door naar maandag 'pBeginWerkUur'.
|
||||
datumbegin := TRUNC (datumbegin + 1) + (pBeginWerkUur / 24);
|
||||
ELSIF weekdagbegin = 7
|
||||
THEN
|
||||
-- Als za=7, dan schuif 2 dagen door naar maandag 'pBeginWerkUur'.
|
||||
datumbegin := TRUNC (datumbegin + 2) + (pBeginWerkUur / 24);
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
SELECT COUNT ( * )
|
||||
INTO vrijedag
|
||||
FROM mld_vrije_dagen
|
||||
WHERE mld_vrije_dagen_datum = TRUNC (datumbegin)
|
||||
AND mld_vrije_dagen_id = pCalendarId;
|
||||
|
||||
IF (datumbegin > TRUNC (datumbegin) + (pEindWerkUur / 24) OR vrijedag = 1)
|
||||
THEN
|
||||
-- Als begintijd na 'pEindWerkUur', dan naar 'pBeginWerkUur' volgende dag;
|
||||
-- hetzelfde als begindag is een vrije dag.
|
||||
-- En als deze volgende dag is een vrije dag, dan volgt vanzelf compensatie!
|
||||
datumbegin := TRUNC (datumbegin + 1) + (pBeginWerkUur / 24);
|
||||
ELSIF (datumbegin < TRUNC (datumbegin) + (pBeginWerkUur / 24))
|
||||
THEN
|
||||
-- Als begintijd voor 'pBeginWerkUur', dan naar 'pBeginWerkUur' huidige dag.
|
||||
datumbegin := TRUNC (datumbegin) + (pBeginWerkUur / 24);
|
||||
END IF;
|
||||
EXIT WHEN vrijedag = 0;
|
||||
END LOOP;
|
||||
IF (begindatum > TRUNC (begindatum) + (pEindWerkUur / 24) OR vrijedag = 1)
|
||||
THEN
|
||||
-- Als begintijd na 'pEindWerkUur', dan naar 'pBeginWerkUur' volgende dag;
|
||||
-- hetzelfde als begindag is een vrije dag.
|
||||
-- En als deze volgende dag is een vrije dag, dan volgt vanzelf compensatie!
|
||||
datumbegin := TRUNC (begindatum + 1) + (pBeginWerkUur / 24);
|
||||
ELSIF (begindatum < TRUNC (begindatum) + (pBeginWerkUur / 24))
|
||||
THEN
|
||||
-- Als begintijd voor 'pBeginWerkUur', dan naar 'pBeginWerkUur' huidige dag.
|
||||
datumbegin := TRUNC (begindatum) + (pBeginWerkUur / 24);
|
||||
ELSE
|
||||
-- Anders 1-op-1 overnemen.
|
||||
datumbegin := begindatum;
|
||||
END IF;
|
||||
|
||||
IF pMode = 0
|
||||
THEN
|
||||
@@ -729,6 +707,19 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
-- Alleen werkdagen excl. vrije dagen (= Kantoortijden-regime en alleen
|
||||
-- werkdagen-variant van Openingstijden-regime)!
|
||||
dagenperweek := 5;
|
||||
|
||||
-- Verschuif (gewijzigde) datumbegin als deze in het weekend valt.
|
||||
weekdagbegin := fac.getweekdaynum (datumbegin); -- zo=1 t/m za=7
|
||||
|
||||
IF weekdagbegin = 1
|
||||
THEN
|
||||
-- Als zo=1, dan schuif 1 dag door naar maandag 'pBeginWerkUur'.
|
||||
datumbegin := TRUNC (datumbegin + 1) + (pBeginWerkUur / 24);
|
||||
ELSIF weekdagbegin = 7
|
||||
THEN
|
||||
-- Als za=7, dan schuif 2 dagen door naar maandag 'pBeginWerkUur'.
|
||||
datumbegin := TRUNC (datumbegin + 2) + (pBeginWerkUur / 24);
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
IF uitvoertijdtype IN ('D', 'DAGEN')
|
||||
@@ -2651,7 +2642,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
soms,
|
||||
pref,
|
||||
pxref,
|
||||
CASE WHEN l_srtnoti_delay = 0 THEN 1 ELSE pprio END, -- delay 0 altijd hoge prio en 'voorkruipen'
|
||||
CASE WHEN l_srtnoti_delay = 0 THEN 1 ELSE pprio END, // delay 0 altijd hoge prio en 'voorkruipen'
|
||||
psender,
|
||||
llang,
|
||||
lsysteem,
|
||||
@@ -3002,7 +2993,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AND k.mld_kenmerk_default LIKE '%##SQL##%'
|
||||
AND k.mld_kenmerk_verplicht = 1
|
||||
AND t.mld_srtkenmerk_verwijder IS NULL
|
||||
AND BITAND(k.mld_kenmerk_rolcode, 3) > 0
|
||||
AND k.mld_kenmerk_volgnummer <= 900
|
||||
AND NOT EXISTS
|
||||
(SELECT ''
|
||||
FROM mld_kenmerkmelding km
|
||||
@@ -3428,7 +3419,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AS
|
||||
cust_daily VARCHAR2(20);
|
||||
has_cust_daily NUMBER(1);
|
||||
mld_assume_ok_days NUMBER(10);
|
||||
BEGIN
|
||||
|
||||
fac.writelog ('FAC_DAILY', 'S', 'Start', '');
|
||||
@@ -3458,13 +3448,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
-- Automatische inactivering van contracten.
|
||||
cnt.autoinactiveer_contract();
|
||||
|
||||
-- Het resetten van de Actie-bij-melder van het afmelden na "mld_assume_ok_days" dagen.
|
||||
mld_assume_ok_days := fac.safe_to_number(fac.getsetting('mld_assume_ok_days'));
|
||||
IF mld_assume_ok_days > 0
|
||||
THEN
|
||||
mld.resetpostafmeldactie(256, mld_assume_ok_days);
|
||||
END IF;
|
||||
|
||||
fac_custprocedure('DAILY');
|
||||
|
||||
fac.fac_cleanup(0); -- 0 = onvoorwaardelijk
|
||||
@@ -3899,7 +3882,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
VALUES (prefkey, puserkey, tkey, loms, psubjectkey
|
||||
)
|
||||
RETURNING fac_tracking_key INTO new_fac_tracking_key;
|
||||
-- LET OP: Dit activeert fac_t_fac_tracking_b_i aan waar fac.notifytracking wordt aangeroepen.
|
||||
ELSE
|
||||
INSERT INTO fac_tracking (fac_tracking_refkey, prs_perslid_key, fac_srtnotificatie_key, fac_tracking_datum, fac_tracking_oms, fac_tracking_subject_refkey
|
||||
)
|
||||
@@ -3978,7 +3960,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
lreskey res_rsv_ruimte.res_reservering_key%TYPE;
|
||||
lres_ruimte_opstel_key res_rsv_ruimte.res_ruimte_opstel_key%TYPE;
|
||||
lrefkey NUMBER (10);
|
||||
lxrefkey NUMBER (10); -- res_rsv_ruimte_key, fac_tracking_key, mld_opdr_note_key
|
||||
lxrefkey res_rsv_ruimte.res_rsv_ruimte_key%TYPE; -- also fac_tracking_key
|
||||
lalg_ruimte_key res_rsv_ruimte.alg_ruimte_key%TYPE;
|
||||
lalglocatiekey alg_locatie.alg_locatie_key%TYPE;
|
||||
lalgonrgoedkey mld_melding.mld_alg_onroerendgoed_keys%TYPE;
|
||||
@@ -4035,7 +4017,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
-- dus zo simpel is het niet. Daarom maar specifiek uitsluiten.
|
||||
--
|
||||
-- Deze leiden intrinsiek niet tot notificaties
|
||||
IF (lcode = 'BESLIK' OR lcode = 'MLDLIK' OR lcode ='RESLIK')
|
||||
IF (lcode = 'BESLIK' OR lcode = 'MLDLIK' OR lcode='RESLIK')
|
||||
THEN
|
||||
RETURN;
|
||||
END IF;
|
||||
@@ -4195,9 +4177,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
THEN
|
||||
bericht := mld.opdrsprintf (loms, prefkey);
|
||||
END IF;
|
||||
-- voor opdrachten (en meldingen) hebben we een toepassing voor de extrakey in de queue, nl. de verwijzing
|
||||
-- naar de trackingtabel, dat is specifieker dan we terug kunnen bepalen. De notitie daarbij kan nl. van belang zijn
|
||||
lxrefkey := ptrackingkey;
|
||||
|
||||
-- In 4i notificeerden we alleen toekenning aan de uitvoerder
|
||||
-- In 5i tracken we veel meer, en is er dus ook de mogelijkheid
|
||||
@@ -4219,11 +4198,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
FROM mld_v_uitvoerende u
|
||||
WHERE u.mld_uitvoerende_key = lreceiver;
|
||||
|
||||
SELECT fac_tracking_subject_refkey
|
||||
INTO lxrefkey
|
||||
FROM fac_tracking
|
||||
WHERE fac_tracking_key = ptrackingkey;
|
||||
|
||||
IF luitvtype = 'B'
|
||||
THEN
|
||||
-- Het gaat om een bedrijf receiver
|
||||
@@ -4341,6 +4315,9 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
WHERE aog.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND aog.alg_onroerendgoed_keys = lalgonrgoedkey;
|
||||
END IF;
|
||||
-- voor opdrachten (en meldingen) hebben we een toepassing voor de extrakey in de queue, nl. de verwijzing
|
||||
-- naar de trackingtabel, dat is specifieker dan we terug kunnen bepalen. De notitie daarbij kan nl. van belang zijn
|
||||
lxrefkey := ptrackingkey;
|
||||
|
||||
WHEN lxmlnode = 'reservering' OR lxmlnode = 'xreservering'
|
||||
THEN
|
||||
@@ -5011,7 +4988,8 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
plocatie_key NUMBER DEFAULT NULL,
|
||||
pdiscipline_key NUMBER DEFAULT NULL,
|
||||
ptypeopdr_key NUMBER DEFAULT NULL,
|
||||
pbedrijf_key2 NUMBER DEFAULT NULL)
|
||||
pbedrijf_key2 NUMBER DEFAULT NULL,
|
||||
pdisc_key NUMBER DEFAULT NULL) -- future use
|
||||
AS
|
||||
l_bdradr_key prs_bedrijfadres.prs_bedrijfadres_key%TYPE;
|
||||
l_basrt_key prs_bedrijfadres_srtnoti.prs_bedrijfadres_srtnoti_key%TYPE;
|
||||
@@ -5023,6 +5001,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
l_oms fac_notificatie.fac_notificatie_oms%TYPE;
|
||||
l_perslid_key fac_tracking.prs_perslid_key%TYPE;
|
||||
l_extra_key fac_tracking.fac_tracking_subject_refkey%TYPE;
|
||||
nn_noti NUMBER (10);
|
||||
aantal NUMBER (10);
|
||||
dummy VARCHAR2 (1);
|
||||
notbefore fac_notificatie.fac_notificatie_notbefore%TYPE;
|
||||
@@ -5073,14 +5052,20 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
|
||||
-- Merk op: per bedrijf notificeren we hooguit <20><>n enkel technisch adres
|
||||
-- Dat adres wordt eerst bepaald op basis van locatie/district/opdrachttype/discipline/bedrijfadres_type
|
||||
-- Als er meerdere adressen zijn die aan zo'n combinatie wordt gekeken welke srtnotificaties er aan hangen
|
||||
-- Als er meerdere adressen zijn die aan zo'n combinatie voldoen moet je er altijd srtnotificaties aan hangen
|
||||
-- Alleen als er maar een enkel adres is mag dat eventueel zonder srtnotificatie
|
||||
-- (dat werkt alleen voor ORDNEW, BES2NE en CNTNEW voor backwards compatibiliteit)
|
||||
-- Dit is om het begrijpbaar te houden.
|
||||
-- Ook: je kunt onder een bedrijf een adres maken voor alle locaties maar specifiek opdrachttype
|
||||
-- en eentje voor specifieke locatie en algemene opdracht
|
||||
-- Dat ondersteunen we niet en geeft ongedefinieerd gedrag.
|
||||
BEGIN
|
||||
SELECT ba.prs_bedrijfadres_key
|
||||
INTO l_bdradr_key
|
||||
SELECT ba.prs_bedrijfadres_key,
|
||||
(SELECT COUNT (*)
|
||||
FROM prs_bedrijfadres_srtnoti basrt
|
||||
WHERE basrt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key
|
||||
AND basrt.fac_srtnotificatie_key = l_srtnoti_key)
|
||||
INTO l_bdradr_key, nn_noti
|
||||
FROM prs_bedrijfadres ba
|
||||
WHERE ba.prs_bedrijf_key = pbedrijf_key
|
||||
AND ba.prs_bedrijfadres_type = pbedrijfadres_type
|
||||
@@ -5089,6 +5074,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AND (ba.ins_discipline_key = pdiscipline_key OR ba.ins_discipline_key IS NULL)
|
||||
AND (ba.alg_locatie_key = plocatie_key OR ba.alg_locatie_key IS NULL)
|
||||
AND (ba.prs_bedrijf_key2 = pbedrijf_key2 OR ba.prs_bedrijf_key2 IS NULL)
|
||||
AND (ba.ins_discipline_key = pdisc_key OR ba.ins_discipline_key IS NULL)
|
||||
AND ( ba.alg_district_key = (SELECT d.alg_district_key
|
||||
FROM alg_locatie d
|
||||
WHERE d.alg_locatie_key = plocatie_key)
|
||||
@@ -5096,6 +5082,9 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AND (l_srtnoti_key IN (SELECT basrt.fac_srtnotificatie_key
|
||||
FROM prs_bedrijfadres_srtnoti basrt
|
||||
WHERE basrt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key)
|
||||
OR NOT EXISTS (SELECT 1 -- backwards compatible: technische adressen zonder srtnoti werken nog steeds voor ORDNEW
|
||||
FROM prs_bedrijfadres_srtnoti basrt
|
||||
WHERE basrt.prs_bedrijfadres_key = ba.prs_bedrijfadres_key)
|
||||
)
|
||||
ORDER BY ba.mld_typeopdr_key NULLS LAST, -- door de NULLS LAST heeft een specifieke altijd voorkeur
|
||||
ba.ins_discipline_key NULLS LAST,
|
||||
@@ -5127,6 +5116,21 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
AND basrt.fac_srtnotificatie_key(+) = srtnoti.fac_srtnotificatie_key
|
||||
AND srtnoti.fac_srtnotificatie_key = l_srtnoti_key;
|
||||
|
||||
IF (nn_noti = 0) // geen specifiek record gevonden
|
||||
THEN
|
||||
IF (pbedrijfadres_type = 'O' AND l_srtnoti_code = 'ORDNEW')
|
||||
OR (pbedrijfadres_type = 'O' AND l_srtnoti_code = 'ORDUPD' AND ptrackingkey IS NULL) -- vanuit trigger mld_t_mld_opdr_B_IU toen teverzenden op 2 is gezet
|
||||
OR (pbedrijfadres_type = 'B' AND l_srtnoti_code = 'BES2NE') -- bestelopdracht aangemaakt
|
||||
OR (pbedrijfadres_type = 'C' AND l_srtnoti_code = 'CNTNEW')
|
||||
-- RESNEW nooit automatisch OR (pbedrijfadres_type = 'R' AND l_srtnoti_code = 'RESNEW')
|
||||
THEN
|
||||
NULL; -- backwards compatible: als geen enkel prs_bedrijfadres_srtnoti is dan is er default een xxxNEW
|
||||
ELSE
|
||||
DBMS_OUTPUT.Put_line ('Technisch adres onder bedrijf ' || pbedrijf_key || ' luistert niet naar notificatie ' || l_srtnoti_code);
|
||||
RETURN;
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
-- ORDUPD of wat dan ook sturen we niet als er nog geen ORDNEW tracking (en naar we aannamen notificatie) is geweest
|
||||
-- (DECODE mag alleen binnen een SELECT, domme Oracle)
|
||||
SELECT DECODE(l_srtnoti_xmlnode, 'opdracht', 'ORDNEW',
|
||||
@@ -5338,386 +5342,179 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
RETURN verstring;
|
||||
END;
|
||||
|
||||
|
||||
-- Hulpfuncties voor processemail
|
||||
-- Haalt default Behandelteam op
|
||||
FUNCTION getdefaultbehandelteam (p_stdm IN NUMBER)
|
||||
FUNCTION getDefaultBehandelteam(p_stdm IN NUMBER)
|
||||
RETURN NUMBER
|
||||
IS
|
||||
stdm_default_disc mld_stdmelding.mld_stdmelding_default_disc%TYPE;
|
||||
BEGIN
|
||||
SELECT mld_stdmelding_default_disc
|
||||
INTO stdm_default_disc
|
||||
FROM mld_stdmelding
|
||||
WHERE mld_stdmelding_key = p_stdm;
|
||||
|
||||
RETURN stdm_default_disc;
|
||||
SELECT mld_stdmelding_default_disc
|
||||
INTO stdm_default_disc
|
||||
FROM mld_stdmelding
|
||||
WHERE mld_stdmelding_key = p_stdm;
|
||||
RETURN stdm_default_disc;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
RETURN NULL;
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
RETURN NULL;
|
||||
END;
|
||||
|
||||
PROCEDURE processemail (p_from IN VARCHAR2
|
||||
, p_to IN VARCHAR2
|
||||
, p_subject IN VARCHAR2
|
||||
, p_body IN VARCHAR2
|
||||
, p_session_id IN VARCHAR2
|
||||
, p_email_set_key IN NUMBER)
|
||||
AS
|
||||
-- Local variables
|
||||
l_sender prs_perslid.prs_perslid_key%TYPE;
|
||||
l_cost_center prs_afdeling.prs_kostenplaats_key%TYPE;
|
||||
l_new_key mld_melding.mld_melding_key%TYPE;
|
||||
l_std_message_key mld_stdmelding.mld_stdmelding_key%TYPE;
|
||||
l_std_thirdparty_flag mld_stdmelding.mld_stdmelding_thirdparty%TYPE;
|
||||
l_std_discipline_key mld_stdmelding.mld_ins_discipline_key%TYPE;
|
||||
l_fallback_sender fac_email_setting.prs_perslid_key_auth%TYPE;
|
||||
l_using_fallback BOOLEAN := FALSE;
|
||||
l_existing_mld_key mld_melding.mld_melding_key%TYPE;
|
||||
l_sender_email_ext mld_melding.mld_melding_email_ext%TYPE;
|
||||
l_kenmerk_key mld_kenmerk.mld_kenmerk_key%TYPE;
|
||||
l_error_msg fac_result.fac_result_waarde%TYPE;
|
||||
l_default_disc mld_stdmelding.mld_ins_discipline_key%TYPE;
|
||||
-- Precomputed cleaned body
|
||||
l_clean_body VARCHAR2 (4000);
|
||||
-- Status: proven concept
|
||||
PROCEDURE processemail (pfrom IN VARCHAR2,
|
||||
pto IN VARCHAR2,
|
||||
psubject IN VARCHAR2,
|
||||
pbody IN VARCHAR2,
|
||||
psessionid IN VARCHAR2
|
||||
)
|
||||
AS
|
||||
sender prs_perslid.prs_perslid_key%TYPE;
|
||||
kostenplaats prs_afdeling.prs_kostenplaats_key%TYPE;
|
||||
newkey mld_melding.mld_melding_key%TYPE;
|
||||
defaultstdmelding fac_setting.fac_setting_default%TYPE;
|
||||
stdm_default_disc mld_stdmelding.mld_stdmelding_default_disc%TYPE;
|
||||
kkey mld_kenmerk.mld_kenmerk_key%TYPE;
|
||||
errormsg fac_result.fac_result_waarde%TYPE;
|
||||
BEGIN
|
||||
-- Valideer de sender in pfrom: kennen we deze?
|
||||
SELECT p.prs_perslid_key, d.prs_kostenplaats_key
|
||||
INTO sender, kostenplaats
|
||||
FROM prs_perslid p, prs_afdeling d
|
||||
WHERE p.prs_afdeling_key = d.prs_afdeling_key
|
||||
AND UPPER (prs_perslid_email) = UPPER (pfrom);
|
||||
|
||||
-- Helper function: extract existing ticket key
|
||||
FUNCTION get_mld_key_from_subject (subj IN VARCHAR2, sndr IN NUMBER)
|
||||
RETURN NUMBER
|
||||
IS
|
||||
m VARCHAR2 (4000);
|
||||
d VARCHAR2 (10);
|
||||
k NUMBER;
|
||||
BEGIN
|
||||
m :=
|
||||
REGEXP_SUBSTR (subj
|
||||
, '([A-Za-z]{1,3})?#?\d{1,10}'
|
||||
, 1
|
||||
, 1
|
||||
, 'i');
|
||||
CASE
|
||||
WHEN UPPER (pto) LIKE 'SERVICEDESK@%'
|
||||
THEN
|
||||
defaultstdmelding := fac.getsetting ('defaultstdmelding');
|
||||
stdm_default_disc := getDefaultBehandelteam(defaultstdmelding);
|
||||
|
||||
IF m IS NOT NULL
|
||||
THEN
|
||||
d := REGEXP_SUBSTR (m, '\d{1,10}');
|
||||
END IF;
|
||||
|
||||
IF d IS NOT NULL
|
||||
THEN
|
||||
SELECT MAX (mld_melding_key)
|
||||
INTO k
|
||||
FROM mld_melding
|
||||
WHERE mld_melding_key = fac.safe_to_number (d) AND prs_perslid_key = sndr;
|
||||
|
||||
RETURN k;
|
||||
END IF;
|
||||
|
||||
RETURN NULL;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
RETURN NULL;
|
||||
END;
|
||||
|
||||
-- Helper function: clean body text
|
||||
FUNCTION clean_body (bod IN VARCHAR2)
|
||||
RETURN VARCHAR2
|
||||
IS
|
||||
t VARCHAR2 (4000);
|
||||
BEGIN
|
||||
t := REPLACE (bod, CHR (13) || CHR (10) || CHR (13) || CHR (10), CHR (13) || CHR (10));
|
||||
RETURN SUBSTR (t, 1, 4000);
|
||||
END;
|
||||
BEGIN
|
||||
-- Precompute body variants
|
||||
l_clean_body := clean_body (p_body);
|
||||
|
||||
-- Alle criteria zijn al 'verbruikt' om de juiste configuratie te vinden
|
||||
-- dus p_email_set_key is voldoende om de juiste standaardmelding te vinden
|
||||
-- In principe definieert de afzender de melder, maar als die niet bestaat kan
|
||||
-- dat de bij de configuratie behorende fallback persoon zijn.
|
||||
|
||||
-- 1. Validate sender (and get the key)
|
||||
BEGIN
|
||||
SELECT p.prs_perslid_key, d.prs_kostenplaats_key
|
||||
INTO l_sender, l_cost_center
|
||||
FROM prs_perslid p JOIN prs_afdeling d ON p.prs_afdeling_key = d.prs_afdeling_key
|
||||
WHERE p.prs_perslid_verwijder IS NULL
|
||||
AND (p.prs_perslid_inactief IS NULL OR p.prs_perslid_inactief > SYSDATE)
|
||||
AND (p.prs_perslid_einddatum IS NULL OR p.prs_perslid_einddatum > SYSDATE)
|
||||
AND UPPER (p.prs_perslid_email) = UPPER (p_from);
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
l_sender := NULL;
|
||||
-- fac.writelog ('PROCESSEMAIL', 'I', 'Unknown sender: ' || p_from, NULL);
|
||||
END;
|
||||
|
||||
-- 2. Fetch standard stdmelding props from configuration
|
||||
BEGIN
|
||||
SELECT s.mld_stdmelding_key
|
||||
, s.mld_stdmelding_thirdparty
|
||||
, s.mld_ins_discipline_key
|
||||
, e.prs_perslid_key_auth
|
||||
INTO l_std_message_key
|
||||
, l_std_thirdparty_flag
|
||||
, l_std_discipline_key
|
||||
, l_fallback_sender
|
||||
FROM fac_email_setting e JOIN mld_stdmelding s ON e.mld_stdmelding_key = s.mld_stdmelding_key
|
||||
WHERE e.fac_email_setting_key = p_email_set_key
|
||||
AND s.mld_stdmelding_verwijder IS NULL
|
||||
AND (s.mld_stdmelding_vervaldatum IS NULL OR s.mld_stdmelding_vervaldatum > SYSDATE);
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
-- Deze mag wel weg, maar was nog even ter compatibiliteit
|
||||
-- met oude configuraties die nog geen standaard melding hebben
|
||||
-- l_std_message_key := fac.safe_to_number (fac.getsetting ('defaultstdmelding'))
|
||||
-- dan zou de rest alsnog weer moeten bepalen, doen we maar niet dan
|
||||
l_error_msg := 'Onvolledige email configuratie: geen standaardmelding gevonden voor configuratie ' || p_email_set_key;
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'E'
|
||||
, l_error_msg
|
||||
, '');
|
||||
RETURN;
|
||||
END;
|
||||
|
||||
-- 3. Fallback if third-party
|
||||
IF l_sender IS NULL AND l_std_thirdparty_flag = 1 AND l_fallback_sender IS NOT NULL
|
||||
THEN
|
||||
l_sender := l_fallback_sender;
|
||||
l_using_fallback := TRUE;
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'I'
|
||||
, 'Fallback melder ('||l_sender||') wordt gebruikt voor ' || p_from
|
||||
, NULL);
|
||||
END IF;
|
||||
|
||||
IF l_sender IS NULL
|
||||
THEN
|
||||
l_error_msg := 'Afzender '|| p_from ||' is onbekend en er kan geen fallback worden afgeleid uit de email configuratie';
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'E'
|
||||
, l_error_msg
|
||||
, NULL);
|
||||
RETURN;
|
||||
END IF;
|
||||
|
||||
-- 4. Authorization check
|
||||
BEGIN
|
||||
SELECT 1
|
||||
INTO l_kenmerk_key
|
||||
FROM fac_v_webgebruiker v
|
||||
WHERE v.fac_functie_key = (SELECT fac_functie_key
|
||||
FROM fac_functie
|
||||
WHERE fac_functie_code = 'WEB_MLDUSE')
|
||||
AND v.ins_discipline_key = l_std_discipline_key
|
||||
AND v.prs_perslid_key = l_sender
|
||||
AND v.fac_gebruiker_prs_level_write < 9
|
||||
AND v.fac_gebruiker_alg_level_write < 9;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
l_error_msg := 'De melder is niet geautoriseerd voor melding van discipline ' || l_std_discipline_key;
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'E'
|
||||
, l_error_msg
|
||||
, NULL);
|
||||
RETURN;
|
||||
END;
|
||||
|
||||
-- 5. Create new or append
|
||||
l_existing_mld_key := get_mld_key_from_subject (p_subject, l_sender);
|
||||
|
||||
IF l_existing_mld_key IS NULL
|
||||
THEN
|
||||
-- New melding
|
||||
l_default_disc := fac.getdefaultbehandelteam (l_std_message_key);
|
||||
|
||||
IF l_using_fallback
|
||||
THEN
|
||||
-- Store mail address as external email
|
||||
l_sender_email_ext := p_from;
|
||||
END IF;
|
||||
|
||||
INSERT INTO mld_melding (mld_melding_module
|
||||
, mld_meldbron_key
|
||||
, mld_melding_datum
|
||||
, mld_melding_onderwerp
|
||||
, mld_melding_omschrijving
|
||||
, mld_melding_status
|
||||
, mld_stdmelding_key
|
||||
, prs_perslid_key
|
||||
, prs_perslid_key_voor
|
||||
, mld_melding_email_ext
|
||||
, prs_kostenplaats_key
|
||||
, mld_melding_spoed
|
||||
, mld_ins_discipline_key)
|
||||
VALUES ('MLD'
|
||||
, 4
|
||||
, SYSDATE
|
||||
, p_subject
|
||||
, l_clean_body
|
||||
, NULL
|
||||
, l_std_message_key
|
||||
, l_sender
|
||||
, l_sender
|
||||
, l_sender_email_ext
|
||||
, l_cost_center
|
||||
, 3
|
||||
, l_default_disc)
|
||||
RETURNING mld_melding_key
|
||||
INTO l_new_key;
|
||||
|
||||
mld.setmeldingstatus (l_new_key, 2, l_sender);
|
||||
|
||||
-- En nu dan?
|
||||
IF l_default_disc IS NOT NULL
|
||||
THEN
|
||||
mld.notifybackoffice (l_new_key, 'MLDBHG', 2);
|
||||
END IF;
|
||||
|
||||
mld.mld_nextworkflowstep (l_new_key, -1);
|
||||
mld.mld_addautoorder(l_new_key);
|
||||
|
||||
|
||||
-- logging voor de mailserver..
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'maillog', 'Mail geregistreerd onder melding ' || TO_CHAR (l_new_key));
|
||||
ELSE
|
||||
-- Append note
|
||||
INSERT INTO mld_melding_note (mld_melding_key
|
||||
, mld_melding_note_omschrijving
|
||||
, prs_perslid_key
|
||||
, mld_melding_note_flag)
|
||||
VALUES (l_existing_mld_key
|
||||
, l_clean_body
|
||||
, l_sender
|
||||
, 1);
|
||||
|
||||
fac.trackaction ('MLDA2B'
|
||||
, l_existing_mld_key
|
||||
, l_sender
|
||||
, NULL
|
||||
, '#Notitie via email'); -- TODO testen of okay zo
|
||||
|
||||
UPDATE mld_melding
|
||||
SET mld_melding_actiecode = 128 + 1
|
||||
WHERE mld_melding_key = l_existing_mld_key;
|
||||
|
||||
-- logging voor de mailserver..
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'maillog', 'Notitie toegevoegd aan melding ' || TO_CHAR (l_existing_mld_key));
|
||||
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'I'
|
||||
, 'Mail als notitie toegevoegd aan ' || l_existing_mld_key
|
||||
, NULL);
|
||||
l_new_key := l_existing_mld_key;
|
||||
|
||||
END IF;
|
||||
|
||||
-- Alleen van een nieuwe melding bewaren we de originele mail body
|
||||
l_error_msg := NULL;
|
||||
IF l_existing_mld_key IS NULL
|
||||
THEN
|
||||
-- 6a. ORGMAIL kenmerk
|
||||
-- suggested extensions:
|
||||
-- check for MLDUSE-write autorisations
|
||||
-- parse the subject to find an appropriate stdmelding, if uniquely possible
|
||||
-- append (as a note?) to an existing melding if #key is found in the subject
|
||||
BEGIN
|
||||
l_error_msg := 'Error saving original mail body';
|
||||
INSERT INTO mld_melding (mld_melding_module,
|
||||
mld_meldbron_key,
|
||||
mld_melding_datum,
|
||||
mld_melding_omschrijving,
|
||||
mld_melding_status,
|
||||
mld_stdmelding_key,
|
||||
prs_perslid_key,
|
||||
prs_perslid_key_voor,
|
||||
prs_kostenplaats_key,
|
||||
mld_melding_spoed,
|
||||
mld_ins_discipline_key)
|
||||
VALUES ('MLD',
|
||||
4, -- email
|
||||
SYSDATE,
|
||||
SUBSTR (
|
||||
psubject || CHR (13)
|
||||
|| REPLACE (
|
||||
SUBSTR (pbody,
|
||||
1,
|
||||
4000 - (LENGTH (psubject) + 2)),
|
||||
CHR (13) || CHR (10) || CHR (13) || CHR (10),
|
||||
CHR (13) || CHR (10)),
|
||||
1,
|
||||
4000), -- verwijder onnodige witregels
|
||||
NULL,
|
||||
defaultstdmelding,
|
||||
sender,
|
||||
sender,
|
||||
kostenplaats,
|
||||
3,
|
||||
stdm_default_disc)
|
||||
RETURNING mld_melding_key
|
||||
INTO newkey;
|
||||
|
||||
SELECT k.mld_kenmerk_key
|
||||
INTO l_kenmerk_key
|
||||
FROM mld_kenmerk k
|
||||
, mld_srtkenmerk sk
|
||||
, mld_stdmelding std
|
||||
, ins_tab_discipline d
|
||||
WHERE mld_srtkenmerk_kenmerktype = 'M'
|
||||
AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND std.mld_stdmelding_key = l_std_message_key
|
||||
AND std.mld_ins_discipline_key = d.ins_discipline_key
|
||||
AND ( (k.mld_kenmerk_niveau = 'A' AND k.mld_stdmelding_key IS NULL)
|
||||
OR (k.mld_kenmerk_niveau = 'S' AND k.mld_stdmelding_key = std.mld_stdmelding_key)
|
||||
OR (k.mld_kenmerk_niveau = 'D' AND k.mld_stdmelding_key = d.ins_discipline_key)
|
||||
OR (k.mld_kenmerk_niveau = 'T' AND k.mld_stdmelding_key = d.ins_srtdiscipline_key))
|
||||
AND k.mld_kenmerk_verwijder IS NULL
|
||||
AND BITAND (k.mld_kenmerk_rolcode, 1) = 1
|
||||
AND k.mld_kenmerk_code = '*ORGMAIL';
|
||||
-- find the lowest volgnummer of the flexfield of type folder.
|
||||
SELECT MIN (mld_kenmerk_key)
|
||||
INTO kkey
|
||||
FROM mld_kenmerk k,
|
||||
mld_srtkenmerk sk,
|
||||
mld_stdmelding std,
|
||||
ins_tab_discipline d
|
||||
WHERE mld_srtkenmerk_kenmerktype = 'M'
|
||||
AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND std.mld_stdmelding_key = defaultstdmelding
|
||||
AND std.mld_ins_discipline_key = d.ins_discipline_key
|
||||
AND ((k.mld_kenmerk_niveau = 'A' AND k.mld_stdmelding_key IS NULL)
|
||||
OR (k.mld_kenmerk_niveau = 'S' AND k.mld_stdmelding_key = std.mld_stdmelding_key)
|
||||
OR (k.mld_kenmerk_niveau = 'D' AND k.mld_stdmelding_key = d.ins_discipline_key)
|
||||
OR (k.mld_kenmerk_niveau = 'T' AND k.mld_stdmelding_key = d.ins_srtdiscipline_key))
|
||||
AND k.mld_kenmerk_verwijder IS NULL
|
||||
AND NOT EXISTS
|
||||
(SELECT mld_kenmerk_volgnummer
|
||||
FROM mld_kenmerk k1,
|
||||
mld_srtkenmerk sk1,
|
||||
mld_stdmelding std1,
|
||||
ins_tab_discipline d1
|
||||
WHERE sk1.mld_srtkenmerk_kenmerktype = 'M'
|
||||
AND sk1.mld_srtkenmerk_key =
|
||||
k1.mld_srtkenmerk_key
|
||||
AND std1.mld_stdmelding_key =
|
||||
defaultstdmelding
|
||||
AND std1.mld_ins_discipline_key =
|
||||
d1.ins_discipline_key
|
||||
AND ((k1.mld_kenmerk_niveau = 'A' AND k1.mld_stdmelding_key IS NULL)
|
||||
OR (k1.mld_kenmerk_niveau = 'S' AND k1.mld_stdmelding_key = std1.mld_stdmelding_key)
|
||||
OR (k1.mld_kenmerk_niveau = 'D' AND k1.mld_stdmelding_key = d1.ins_discipline_key)
|
||||
OR (k1.mld_kenmerk_niveau = 'T' AND k1.mld_stdmelding_key = d1.ins_srtdiscipline_key))
|
||||
AND k1.mld_kenmerk_verwijder IS NULL
|
||||
AND k1.mld_kenmerk_volgnummer >
|
||||
k.mld_kenmerk_volgnummer);
|
||||
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'kenmerkorgmailpath', 'MLD\M' || TO_CHAR (TRUNC (l_new_key / 1000), 'FM0000') || '___\M' || l_new_key || '\' || l_kenmerk_key || '\');
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'I'
|
||||
, 'Geen bijlagenkenmerk (code *ORGMAIL) voor origineel bericht geconstateerd.'
|
||||
, l_error_msg);
|
||||
WHEN TOO_MANY_ROWS
|
||||
THEN
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'W'
|
||||
, 'Niet eenduidig bijlagenkenmerk (code *ORGMAIL) voor origineel bericht geconstateerd.'
|
||||
, l_error_msg);
|
||||
IF kkey IS NOT NULL
|
||||
THEN
|
||||
INSERT INTO fac_result (fac_result_sessionid,
|
||||
fac_result_naam,
|
||||
fac_result_waarde)
|
||||
VALUES (psessionid,
|
||||
'kenmerkpath',
|
||||
'MLD\M' || to_char( TRUNC(newkey/1000), 'FM0000') || '___\M' || newkey || '\' || kkey || '\');
|
||||
END IF;
|
||||
|
||||
mld.setmeldingstatus (newkey, 2, sender);
|
||||
|
||||
IF stdm_default_disc IS NOT NULL
|
||||
THEN
|
||||
mld.notifybackoffice (newkey, 'MLDBHG', 2);
|
||||
END IF;
|
||||
END;
|
||||
END IF;
|
||||
|
||||
l_error_msg := NULL;
|
||||
-- 6b. Attachment kenmerk, bij nieuwe en bestaande melding
|
||||
BEGIN
|
||||
l_error_msg := 'Error saving attachements';
|
||||
SELECT k.mld_kenmerk_key
|
||||
INTO l_kenmerk_key
|
||||
FROM mld_kenmerk k
|
||||
, mld_srtkenmerk sk
|
||||
, mld_stdmelding std
|
||||
, ins_tab_discipline d
|
||||
WHERE mld_srtkenmerk_kenmerktype = 'M'
|
||||
AND sk.mld_srtkenmerk_key = k.mld_srtkenmerk_key
|
||||
AND std.mld_stdmelding_key = l_std_message_key
|
||||
AND std.mld_ins_discipline_key = d.ins_discipline_key
|
||||
AND ( (k.mld_kenmerk_niveau = 'A' AND k.mld_stdmelding_key IS NULL)
|
||||
OR (k.mld_kenmerk_niveau = 'S' AND k.mld_stdmelding_key = std.mld_stdmelding_key)
|
||||
OR (k.mld_kenmerk_niveau = 'D' AND k.mld_stdmelding_key = d.ins_discipline_key)
|
||||
OR (k.mld_kenmerk_niveau = 'T' AND k.mld_stdmelding_key = d.ins_srtdiscipline_key))
|
||||
AND k.mld_kenmerk_verwijder IS NULL
|
||||
AND BITAND (k.mld_kenmerk_rolcode, 1) = 1
|
||||
AND k.mld_kenmerk_code = '*MAILATT';
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'kenmerkpath', 'MLD\M' || TO_CHAR (TRUNC (l_new_key / 1000), 'FM0000') || '___\M' || l_new_key || '\' || l_kenmerk_key || '\');
|
||||
l_error_msg := NULL;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'I'
|
||||
, 'Geen bijlagenkenmerk (code *MAILATT) voor bijlagen geconstateerd.'
|
||||
, l_error_msg);
|
||||
WHEN TOO_MANY_ROWS
|
||||
THEN
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'W'
|
||||
, 'Niet eenduidig bijlagenkenmerk (code *MAILATT) voor bijlagen geconstateerd.'
|
||||
, l_error_msg);
|
||||
END;
|
||||
|
||||
-- 7. Final error
|
||||
IF l_error_msg IS NOT NULL
|
||||
THEN
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'errormsg', l_error_msg);
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
fac.writelog ('PROCESSEMAIL'
|
||||
, 'E'
|
||||
, 'Error: ' || SQLERRM
|
||||
, NULL);
|
||||
|
||||
INSERT INTO fac_result (fac_result_sessionid, fac_result_naam, fac_result_waarde)
|
||||
VALUES (p_session_id, 'errormsg', 'Unexpected error');
|
||||
END processemail;
|
||||
ELSE
|
||||
NULL;
|
||||
END CASE;
|
||||
|
||||
IF errormsg IS NOT NULL
|
||||
THEN
|
||||
INSERT INTO fac_result (fac_result_sessionid,
|
||||
fac_result_naam,
|
||||
fac_result_waarde)
|
||||
VALUES (psessionid, 'errormsg', errormsg);
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
fac.writelog (
|
||||
'PROCESSEMAIL',
|
||||
'W',
|
||||
'Mail kon niet verwerkt worden afzender: '
|
||||
|| pfrom
|
||||
|| '['
|
||||
|| errormsg
|
||||
|| ']',
|
||||
'OTHERS (error '
|
||||
|| SQLCODE
|
||||
|| '/'
|
||||
|| SUBSTR (SQLERRM, 1, 100)
|
||||
|| ')');
|
||||
INSERT INTO fac_result (fac_result_sessionid,
|
||||
fac_result_naam,
|
||||
fac_result_waarde)
|
||||
VALUES (psessionid,
|
||||
'errormsg',
|
||||
'Database fout - Neem contact op met uw systeembeheerder');
|
||||
END;
|
||||
|
||||
-- Is de meegegeven datum een feestdag
|
||||
FUNCTION isdatefeestdag(p_date IN DATE, pCalendarId IN VARCHAR2 DEFAULT 'Default')
|
||||
@@ -5767,7 +5564,7 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
month1 NUMBER;
|
||||
month2 NUMBER;
|
||||
BEGIN
|
||||
IF (p_periode = 0 OR p_eenheid = 5)
|
||||
IF p_periode = 0
|
||||
THEN
|
||||
RETURN p_date;
|
||||
END IF;
|
||||
@@ -6293,7 +6090,6 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
|
||||
-- We garanderen maximaal 64 characters
|
||||
-- We ondersteunen alleen nog maar 'MD5'
|
||||
-- DEPRECATED! Droppen met DB52
|
||||
FUNCTION makehash (p_in VARCHAR2, method IN VARCHAR2 DEFAULT 'MD5')
|
||||
RETURN VARCHAR2
|
||||
IS
|
||||
@@ -6303,6 +6099,18 @@ CREATE OR REPLACE PACKAGE BODY fac AS
|
||||
RETURN l_hash;
|
||||
END;
|
||||
|
||||
FUNCTION testhash (p_hash VARCHAR2, p_in VARCHAR2)
|
||||
RETURN NUMBER
|
||||
IS
|
||||
BEGIN
|
||||
IF p_hash = makehash(p_in, 'MD5')
|
||||
THEN
|
||||
RETURN 1;
|
||||
ELSE
|
||||
RETURN 0;
|
||||
END IF;
|
||||
END;
|
||||
|
||||
PROCEDURE createlikebookmark (pxmlnode IN VARCHAR2,
|
||||
prefkey IN NUMBER)
|
||||
IS
|
||||
|
||||
348
FAC/FAC_PACF.SRC
348
FAC/FAC_PACF.SRC
@@ -13387,7 +13387,7 @@ IS
|
||||
v_prs_overeenkomst_nr VARCHAR2 (256); -- C30
|
||||
v_prs_overeenkomst_datum VARCHAR2 (256); -- DATE
|
||||
v_prs_bedrijf_email VARCHAR2 (256); -- C100
|
||||
v_prs_bedrijf_opmerking VARCHAR2 (4000); -- C4000
|
||||
v_prs_bedrijf_opmerking VARCHAR2 (512); -- C320
|
||||
v_prs_dienst_omschrijving VARCHAR2 (256); -- C60
|
||||
v_alg_locatie_code VARCHAR2 (256); -- C10
|
||||
v_alg_gebouw_code VARCHAR2 (256); -- C12
|
||||
@@ -13997,15 +13997,15 @@ BEGIN
|
||||
|
||||
v_errorhint := 'Opmerking te lang';
|
||||
v_prs_bedrijf_opmerking := TRIM (v_prs_bedrijf_opmerking);
|
||||
IF LENGTH (v_prs_bedrijf_opmerking) > 4000
|
||||
IF LENGTH (v_prs_bedrijf_opmerking) > 320
|
||||
THEN
|
||||
v_prs_bedrijf_opmerking :=
|
||||
SUBSTR (TRIM (v_prs_bedrijf_opmerking), 1, 4000);
|
||||
SUBSTR (TRIM (v_prs_bedrijf_opmerking), 1, 320);
|
||||
fac.imp_writelog (p_import_key,
|
||||
'W',
|
||||
v_aanduiding || v_errorhint,
|
||||
'Opmerking wordt afgebroken tot ['
|
||||
|| SUBSTR(v_prs_bedrijf_opmerking, 1, 1000) -- imp_log_omschrijving is niet groter :)
|
||||
|| v_prs_bedrijf_opmerking
|
||||
|| ']'
|
||||
);
|
||||
END IF;
|
||||
@@ -17755,7 +17755,6 @@ IS
|
||||
v_kenmerk_niveau VARCHAR2 (300);
|
||||
v_kenmerk_verplicht VARCHAR2 (300);
|
||||
v_kenmerk_groep VARCHAR2 (300);
|
||||
v_kenmerk_rolcode VARCHAR2 (300);
|
||||
v_kenmerk_volgnummer VARCHAR2 (300);
|
||||
v_kenmerk_default VARCHAR2 (4000);
|
||||
v_kenmerk_toonbaar VARCHAR2 (300);
|
||||
@@ -17821,7 +17820,6 @@ BEGIN
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_niveau);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_verplicht);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_groep);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_rolcode);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_volgnummer);
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_default); -- 20
|
||||
fac.imp_getfield (v_newline, v_fielddelimitor, v_kenmerk_toonbaar);
|
||||
@@ -17862,7 +17860,6 @@ BEGIN
|
||||
AND UPPER (v_kenmerk_niveau) = 'KENMERK_NIVEAU'
|
||||
AND UPPER (v_kenmerk_verplicht) = 'KENMERK_VERPLICHT'
|
||||
AND UPPER (v_kenmerk_groep) = 'KENMERK_GROEP'
|
||||
AND UPPER (v_kenmerk_rolcode) = 'KENMERK_ROLCODE'
|
||||
AND UPPER (v_kenmerk_volgnummer) = 'KENMERK_VOLGNUMMER'
|
||||
AND UPPER (v_kenmerk_default) = 'KENMERK_DEFAULT'
|
||||
AND UPPER (v_kenmerk_toonbaar) = 'KENMERK_TOONBAAR'
|
||||
@@ -17962,7 +17959,6 @@ BEGIN
|
||||
kenmerk_niveau,
|
||||
kenmerk_verplicht,
|
||||
kenmerk_groep,
|
||||
kenmerk_rolcode,
|
||||
kenmerk_volgnummer,
|
||||
kenmerk_default,
|
||||
kenmerk_type, -- 20
|
||||
@@ -18011,7 +18007,6 @@ BEGIN
|
||||
SUBSTR (v_kenmerk_niveau, 1, 255),
|
||||
SUBSTR (v_kenmerk_verplicht, 1, 255),
|
||||
SUBSTR (v_kenmerk_groep, 1, 255),
|
||||
SUBSTR (v_kenmerk_rolcode, 1, 255),
|
||||
SUBSTR (v_kenmerk_volgnummer, 1, 255),
|
||||
SUBSTR (v_kenmerk_default, 1, 4000),
|
||||
SUBSTR (v_kenmerk_type, 1, 255), -- 20
|
||||
@@ -18558,7 +18553,6 @@ BEGIN
|
||||
bes_kenmerk_type,
|
||||
bes_kenmerk_verplicht,
|
||||
bes_kenmerk_groep,
|
||||
bes_kenmerk_rolcode,
|
||||
bes_kenmerk_volgnummer,
|
||||
bes_kenmerk_default,
|
||||
bes_kenmerk_verwijder,
|
||||
@@ -18577,7 +18571,6 @@ BEGIN
|
||||
rec.kenmerk_type,
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
rec.kenmerk_default,
|
||||
TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18604,7 +18597,6 @@ BEGIN
|
||||
bes_kenmerk_type = rec.kenmerk_type,
|
||||
bes_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
bes_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
bes_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
bes_kenmerk_volgnummer = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
bes_kenmerk_default = rec.kenmerk_default,
|
||||
bes_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18694,7 +18686,6 @@ BEGIN
|
||||
mld_kenmerk_niveau,
|
||||
mld_kenmerk_verplicht,
|
||||
mld_kenmerk_groep,
|
||||
mld_kenmerk_rolcode,
|
||||
mld_kenmerk_volgnummer,
|
||||
mld_kenmerk_default,
|
||||
mld_kenmerk_verwijder,
|
||||
@@ -18716,7 +18707,6 @@ BEGIN
|
||||
rec.kenmerk_niveau,
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
rec.kenmerk_default,
|
||||
TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18746,7 +18736,6 @@ BEGIN
|
||||
mld_kenmerk_niveau = rec.kenmerk_niveau,
|
||||
mld_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
mld_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
mld_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
mld_kenmerk_volgnummer = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
mld_kenmerk_default = rec.kenmerk_default,
|
||||
mld_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18801,7 +18790,6 @@ BEGIN
|
||||
res_kenmerk_niveau,
|
||||
res_kenmerk_verplicht,
|
||||
res_kenmerk_groep,
|
||||
res_kenmerk_rolcode,
|
||||
res_kenmerk_volgnummer,
|
||||
res_kenmerk_default,
|
||||
res_kenmerk_verwijder,
|
||||
@@ -18819,7 +18807,6 @@ BEGIN
|
||||
rec.kenmerk_niveau,
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
rec.kenmerk_default,
|
||||
TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18845,7 +18832,6 @@ BEGIN
|
||||
res_kenmerk_niveau = rec.kenmerk_niveau,
|
||||
res_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
res_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
res_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
res_kenmerk_volgnummer = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
res_kenmerk_default = rec.kenmerk_default,
|
||||
res_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18901,7 +18887,6 @@ BEGIN
|
||||
cnt_kenmerk_verplicht,
|
||||
cnt_kenmerk_groep,
|
||||
cnt_kenmerk_toonbaar,
|
||||
cnt_kenmerk_rolcode,
|
||||
cnt_kenmerk_volgnummer,
|
||||
cnt_kenmerk_uniek,
|
||||
cnt_kenmerk_verwijder,
|
||||
@@ -18919,7 +18904,6 @@ BEGIN
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
fac.safe_to_number (rec.kenmerk_toonbaar),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
fac.safe_to_number (rec.kenmerk_uniek),
|
||||
TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -18945,7 +18929,6 @@ BEGIN
|
||||
cnt_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
cnt_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
cnt_kenmerk_toonbaar = fac.safe_to_number (rec.kenmerk_toonbaar),
|
||||
cnt_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
cnt_kenmerk_volgnummer = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
cnt_kenmerk_uniek = fac.safe_to_number (rec.kenmerk_uniek),
|
||||
cnt_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -19044,7 +19027,6 @@ BEGIN
|
||||
ins_kenmerk_bewerkniveau,
|
||||
ins_kenmerk_verplicht,
|
||||
ins_kenmerk_groep,
|
||||
ins_kenmerk_rolcode,
|
||||
ins_kenmerk_volgnummer,
|
||||
ins_kenmerk_default,
|
||||
ins_kenmerk_verwijder,
|
||||
@@ -19065,7 +19047,6 @@ BEGIN
|
||||
rec.kenmerk_type,
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
rec.kenmerk_default,
|
||||
TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -19094,7 +19075,6 @@ BEGIN
|
||||
ins_kenmerk_bewerkniveau = rec.kenmerk_type,
|
||||
ins_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
ins_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
ins_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
ins_kenmerk_volgnummer = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
ins_kenmerk_default = rec.kenmerk_default,
|
||||
ins_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -19137,7 +19117,6 @@ BEGIN
|
||||
fin_kenmerk_dimensie,
|
||||
fin_kenmerk_type,
|
||||
fin_kenmerk_verplicht,
|
||||
fin_kenmerk_rolcode,
|
||||
fin_kenmerk_volgnr,
|
||||
fin_kenmerk_groep,
|
||||
fin_kenmerk_default,
|
||||
@@ -19160,7 +19139,6 @@ BEGIN
|
||||
rec.srtkenmerk_dimensie,
|
||||
rec.kenmerk_type,
|
||||
fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
fac.safe_to_number (rec.kenmerk_groep),
|
||||
rec.kenmerk_default,
|
||||
@@ -19191,7 +19169,6 @@ BEGIN
|
||||
fin_kenmerk_type = rec.kenmerk_type,
|
||||
fin_kenmerk_verplicht = fac.safe_to_number (rec.kenmerk_verplicht),
|
||||
fin_kenmerk_groep = fac.safe_to_number (rec.kenmerk_groep),
|
||||
fin_kenmerk_rolcode = fac.safe_to_number (rec.kenmerk_rolcode),
|
||||
fin_kenmerk_volgnr = fac.safe_to_number (rec.kenmerk_volgnummer),
|
||||
fin_kenmerk_default = rec.kenmerk_default,
|
||||
fin_kenmerk_verwijder = TO_DATE (rec.kenmerk_verwijder, 'YYYY-MM-DD HH24:MI:SS'),
|
||||
@@ -20429,37 +20406,34 @@ AS
|
||||
, fac_imp_csv_col24 TERMIJNBEDRAG
|
||||
, fac_imp_csv_col25 UURTARIEF
|
||||
, fac_imp_csv_col26 KORTING
|
||||
, fac_imp_csv_col27 LOCATIECODE
|
||||
, fac_imp_csv_col28 TERREINCODE
|
||||
, fac_imp_csv_col29 GEBOUWCODE
|
||||
, fac_imp_csv_col30 VERDIEPINGCODE
|
||||
, fac_imp_csv_col31 RUIMTECODE
|
||||
, fac_imp_csv_col32 VERLENGEN
|
||||
, fac_imp_csv_col33 flex_01
|
||||
, fac_imp_csv_col34 flex_02
|
||||
, fac_imp_csv_col35 flex_03
|
||||
, fac_imp_csv_col36 flex_04
|
||||
, fac_imp_csv_col37 flex_05
|
||||
, fac_imp_csv_col38 flex_06
|
||||
, fac_imp_csv_col39 flex_07
|
||||
, fac_imp_csv_col40 flex_08
|
||||
, fac_imp_csv_col41 flex_09
|
||||
, fac_imp_csv_col42 flex_10
|
||||
, fac_imp_csv_col43 flex_11
|
||||
, fac_imp_csv_col44 flex_12
|
||||
, fac_imp_csv_col45 flex_13
|
||||
, fac_imp_csv_col46 flex_14
|
||||
, fac_imp_csv_col47 flex_15
|
||||
, fac_imp_csv_col48 flex_16
|
||||
, fac_imp_csv_col49 flex_17
|
||||
, fac_imp_csv_col50 flex_18
|
||||
, fac_imp_csv_col51 flex_19
|
||||
, fac_imp_csv_col52 flex_20
|
||||
, fac_imp_csv_col53 flex_21
|
||||
, fac_imp_csv_col54 flex_22
|
||||
, fac_imp_csv_col55 flex_23
|
||||
, fac_imp_csv_col56 flex_24
|
||||
, fac_imp_csv_col57 flex_25
|
||||
, fac_imp_csv_col27 SCOPETYPE
|
||||
, fac_imp_csv_col28 LOCATIEGEBOUW_CODE
|
||||
, fac_imp_csv_col29 VERLENGEN
|
||||
, fac_imp_csv_col30 flex_01
|
||||
, fac_imp_csv_col31 flex_02
|
||||
, fac_imp_csv_col32 flex_03
|
||||
, fac_imp_csv_col33 flex_04
|
||||
, fac_imp_csv_col34 flex_05
|
||||
, fac_imp_csv_col35 flex_06
|
||||
, fac_imp_csv_col36 flex_07
|
||||
, fac_imp_csv_col37 flex_08
|
||||
, fac_imp_csv_col38 flex_09
|
||||
, fac_imp_csv_col39 flex_10
|
||||
, fac_imp_csv_col40 flex_11
|
||||
, fac_imp_csv_col41 flex_12
|
||||
, fac_imp_csv_col42 flex_13
|
||||
, fac_imp_csv_col43 flex_14
|
||||
, fac_imp_csv_col44 flex_15
|
||||
, fac_imp_csv_col45 flex_16
|
||||
, fac_imp_csv_col46 flex_17
|
||||
, fac_imp_csv_col47 flex_18
|
||||
, fac_imp_csv_col48 flex_19
|
||||
, fac_imp_csv_col49 flex_20
|
||||
, fac_imp_csv_col50 flex_21
|
||||
, fac_imp_csv_col51 flex_22
|
||||
, fac_imp_csv_col52 flex_23
|
||||
, fac_imp_csv_col53 flex_24
|
||||
, fac_imp_csv_col54 flex_25
|
||||
FROM fac_imp_csv
|
||||
WHERE fac_imp_csv_index > 1
|
||||
AND fac_import_key = p_import_key;
|
||||
@@ -20502,11 +20476,8 @@ AS
|
||||
v_bedrag_termijn cnt_contract.cnt_contract_termijnkosten%TYPE; --NUMBER(11,2)
|
||||
v_uurtarief cnt_contract.cnt_contract_uurloon%TYPE; --NUMBER(6,2)
|
||||
v_korting cnt_contract.cnt_contract_korting%TYPE; --NUMBER(5,2)
|
||||
v_locatiecode alg_locatie.alg_locatie_code%TYPE; --VARCHAR2(10)
|
||||
v_terreincode alg_terreinsector.alg_terreinsector_code%TYPE; --VARCHAR2(12)
|
||||
v_gebouwcode alg_gebouw.alg_gebouw_code%TYPE; --VARCHAR2(12)
|
||||
v_verdiepingcode alg_verdieping.alg_verdieping_volgnr%TYPE; --NUMBER(3)
|
||||
v_ruimtecode alg_ruimte.alg_ruimte_nr%TYPE; --VARCHAR2(20)
|
||||
v_scope_type cnt_contract_plaats.cnt_alg_plaats_code%TYPE; --VARCHAR2(1) --> cnt_contract_plaats.cnt_alg_plaats_code
|
||||
v_gebouwcode alg_gebouw.alg_gebouw_code%TYPE; --VARCHAR2(12) --> cnt_contract_plaats.cnt_alg_plaats_key
|
||||
v_verlengen cnt_contract.cnt_contract_verlenging%TYPE; --NUMBER(1)
|
||||
|
||||
v_cnt_kenmerk_01 fac_imp_cnt.flex1%TYPE; --VARCHAR2(255);
|
||||
@@ -20540,9 +20511,7 @@ AS
|
||||
|| 'EIGENAAR_EMAIL;BEHEERDER_EMAIL;OPMERKING;INGANGSDATUM;RAPPELDATUM;'
|
||||
|| 'OPZEGDATUM;EINDDATUM;SOORT_CONTACTPARTIJ;BEDRIJFSNAAM;CONTACTNAAM;'
|
||||
|| 'KOSTENPLAATSCODE;KOSTENSOORTCODE;CONTRACTBEDRAG;TERMIJNBEDRAG;UURTARIEF;'
|
||||
|| 'KORTING;LOCATIECODE;TERREINCODE;GEBOUWCODE;VERDIEPINGCODE;'
|
||||
|| 'RUIMTECODE;VERLENGEN';
|
||||
|
||||
|| 'KORTING;SCOPETYPE;LOCATIEGEBOUW_CODE;VERLENGEN';
|
||||
v_header_csv VARCHAR2(500);
|
||||
v_flex_naam_01 fac_imp_cnt.flex1%TYPE;
|
||||
v_flex_naam_02 fac_imp_cnt.flex2%TYPE;
|
||||
@@ -20652,7 +20621,7 @@ AS
|
||||
v_flexval VARCHAR2(200);
|
||||
v_flx VARCHAR2(255);
|
||||
BEGIN
|
||||
v_flx := bepaal_kenmerk(p_flex_naam);
|
||||
v_flx := bepaal_kenmerk(p_flex_waarde);
|
||||
|
||||
IF v_flx IS NULL
|
||||
THEN
|
||||
@@ -20679,14 +20648,13 @@ BEGIN
|
||||
fac_imp_csv_col11 ||';'|| fac_imp_csv_col12 ||';'|| fac_imp_csv_col13 ||';'|| fac_imp_csv_col14 ||';'|| fac_imp_csv_col15 ||';'||
|
||||
fac_imp_csv_col16 ||';'|| fac_imp_csv_col17 ||';'|| fac_imp_csv_col18 ||';'|| fac_imp_csv_col19 ||';'|| fac_imp_csv_col20 ||';'||
|
||||
fac_imp_csv_col21 ||';'|| fac_imp_csv_col22 ||';'|| fac_imp_csv_col23 ||';'|| fac_imp_csv_col24 ||';'|| fac_imp_csv_col25 ||';'||
|
||||
fac_imp_csv_col26 ||';'|| fac_imp_csv_col27 ||';'|| fac_imp_csv_col28 ||';'|| fac_imp_csv_col29 ||';'|| fac_imp_csv_col30 ||';'||
|
||||
fac_imp_csv_col31 ||';'|| fac_imp_csv_col32
|
||||
fac_imp_csv_col26 ||';'|| fac_imp_csv_col27 ||';'|| fac_imp_csv_col28 ||';'|| fac_imp_csv_col29
|
||||
), ' ', '')
|
||||
, fac_imp_csv_col33, fac_imp_csv_col34, fac_imp_csv_col35, fac_imp_csv_col36, fac_imp_csv_col37
|
||||
, fac_imp_csv_col38, fac_imp_csv_col39, fac_imp_csv_col40, fac_imp_csv_col41, fac_imp_csv_col42
|
||||
, fac_imp_csv_col43, fac_imp_csv_col44, fac_imp_csv_col45, fac_imp_csv_col46, fac_imp_csv_col47
|
||||
, fac_imp_csv_col48, fac_imp_csv_col49, fac_imp_csv_col50, fac_imp_csv_col51, fac_imp_csv_col52
|
||||
, fac_imp_csv_col53, fac_imp_csv_col54, fac_imp_csv_col55, fac_imp_csv_col56, fac_imp_csv_col57
|
||||
, fac_imp_csv_col30, fac_imp_csv_col31, fac_imp_csv_col32, fac_imp_csv_col33, fac_imp_csv_col34
|
||||
, fac_imp_csv_col35, fac_imp_csv_col36, fac_imp_csv_col37, fac_imp_csv_col38, fac_imp_csv_col39
|
||||
, fac_imp_csv_col40, fac_imp_csv_col41, fac_imp_csv_col42, fac_imp_csv_col43, fac_imp_csv_col44
|
||||
, fac_imp_csv_col45, fac_imp_csv_col46, fac_imp_csv_col47, fac_imp_csv_col48, fac_imp_csv_col49
|
||||
, fac_imp_csv_col50, fac_imp_csv_col51, fac_imp_csv_col52, fac_imp_csv_col53, fac_imp_csv_col54
|
||||
INTO v_header_csv -- standaard header
|
||||
, v_flex_naam_01, v_flex_naam_02, v_flex_naam_03, v_flex_naam_04, v_flex_naam_05 -- kenmerk kolom namen
|
||||
, v_flex_naam_06, v_flex_naam_07, v_flex_naam_08, v_flex_naam_09, v_flex_naam_10
|
||||
@@ -21066,54 +21034,52 @@ BEGIN
|
||||
);
|
||||
END IF;
|
||||
|
||||
-- CSV-kolom AA: Controle Locatiecode
|
||||
v_locatiecode := SUBSTR(TRIM(rec.locatiecode), 1, 10);
|
||||
IF LENGTH(TRIM(rec.locatiecode)) > 10
|
||||
-- CSV-kolom AA: Controle ScopeType
|
||||
IF TRIM(rec.locatiegebouw_code) IS NULL
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Locatiecode - Aangepast ivm lengte groter dan 10 voor locatie'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.locatiecode || ' wordt: ' || v_locatiecode
|
||||
);
|
||||
END IF;
|
||||
-- CSV-kolom AB: Controle Terreincode
|
||||
v_terreincode := SUBSTR(TRIM(rec.terreincode), 1, 12);
|
||||
IF LENGTH(TRIM(rec.terreincode)) > 12
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Terreincode - Aangepast ivm lengte groter dan 12 voor terrein'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.terreincode || ' wordt: ' || v_terreincode
|
||||
);
|
||||
END IF;
|
||||
-- CSV-kolom AC: Controle Gebouwcode
|
||||
v_gebouwcode := SUBSTR(TRIM(rec.gebouwcode), 1, 12);
|
||||
IF LENGTH(TRIM(rec.gebouwcode)) > 12
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Gebouwcode - Aangepast ivm lengte groter dan 12 voor gebouw'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.gebouwcode || ' wordt: ' || v_gebouwcode
|
||||
);
|
||||
END IF;
|
||||
-- CSV-kolom AD: Controle Verdiepingcode
|
||||
BEGIN
|
||||
v_verdiepingcode := fac.safe_to_number(rec.verdiepingcode);
|
||||
EXCEPTION
|
||||
WHEN OTHERS THEN
|
||||
v_scope_type := NULL;
|
||||
ELSE
|
||||
v_scope_type := SUBSTR(TRIM(rec.scopetype), 1, 1);
|
||||
IF v_scope_type IS NULL OR v_scope_type NOT IN ('L', 'G')
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Verdiepingcode - Aangepast ivm lengte groter dan 3 voor verdieping'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.verdiepingcode || ' wordt: ' || v_verdiepingcode
|
||||
, v_aanduiding || 'ScopeType - Is niet aanwezig of ongeldig'
|
||||
, rec.fac_imp_csv_index || ' - ' || v_scope_type || ', Regel wordt overgeslagen'
|
||||
);
|
||||
END;
|
||||
-- CSV-kolom AE: Controle Ruimtecode
|
||||
v_ruimtecode := SUBSTR(TRIM(rec.ruimtecode), 1, 20);
|
||||
IF LENGTH(TRIM(rec.ruimtecode)) > 20
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Ruimtecode - Aangepast ivm lengte groter dan 20 voor ruimte'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.ruimtecode || ' wordt: ' || v_ruimtecode
|
||||
);
|
||||
v_ongeldig := 1;
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
-- CSV-kolom AF: Controle op geldige waarde voor verlengen
|
||||
-- CSV-kolom AB: Controle Locatiegebouw_code
|
||||
IF v_scope_type IS NOT NULL
|
||||
THEN
|
||||
IF v_scope_type = 'L'
|
||||
THEN
|
||||
v_gebouwcode := SUBSTR(TRIM(rec.locatiegebouw_code), 1, 10);
|
||||
IF LENGTH(TRIM(rec.locatiegebouw_code)) > 10
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Locatiegebouw_code - Aangepast ivm lengte groter dan 10 voor locatie'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.locatiegebouw_code || ' wordt: ' || v_gebouwcode
|
||||
);
|
||||
END IF;
|
||||
END IF;
|
||||
IF v_scope_type = 'G'
|
||||
THEN
|
||||
v_gebouwcode := SUBSTR(TRIM(rec.locatiegebouw_code), 1, 12);
|
||||
IF LENGTH(TRIM(rec.locatiegebouw_code)) > 12
|
||||
THEN
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || 'Locatiegebouw_code - Aangepast ivm lengte groter dan 12 voor gebouw'
|
||||
, rec.fac_imp_csv_index || ' - ' || rec.locatiegebouw_code || ' wordt: ' || v_gebouwcode
|
||||
);
|
||||
END IF;
|
||||
END IF;
|
||||
ELSE
|
||||
v_gebouwcode := NULL;
|
||||
END IF;
|
||||
|
||||
-- CSV-kolom AC: Controle op geldige waarde voor verlengen
|
||||
v_verlengen := fac.safe_to_number(rec.verlengen);
|
||||
IF v_verlengen NOT IN (0,1,2,3,5)
|
||||
THEN
|
||||
@@ -21189,11 +21155,8 @@ BEGIN
|
||||
, bedrag_termijn
|
||||
, uurtarief
|
||||
, korting
|
||||
, locatiecode
|
||||
, terreincode
|
||||
, scope
|
||||
, gebouwcode
|
||||
, verdiepingcode
|
||||
, ruimtecode
|
||||
, verlengen
|
||||
, flex1, flex2, flex3, flex4, flex5
|
||||
, flex6, flex7, flex8, flex9, flex10
|
||||
@@ -21227,11 +21190,8 @@ BEGIN
|
||||
, v_bedrag_termijn
|
||||
, v_uurtarief
|
||||
, v_korting
|
||||
, v_locatiecode
|
||||
, v_terreincode
|
||||
, v_scope_type
|
||||
, v_gebouwcode
|
||||
, v_verdiepingcode
|
||||
, v_ruimtecode
|
||||
, v_verlengen
|
||||
, v_cnt_kenmerk_01, v_cnt_kenmerk_02, v_cnt_kenmerk_03, v_cnt_kenmerk_04, v_cnt_kenmerk_05
|
||||
, v_cnt_kenmerk_06, v_cnt_kenmerk_07, v_cnt_kenmerk_08, v_cnt_kenmerk_09, v_cnt_kenmerk_10
|
||||
@@ -21317,11 +21277,8 @@ AS
|
||||
, i.bedrag_termijn
|
||||
, i.uurtarief
|
||||
, i.korting
|
||||
, i.locatiecode
|
||||
, i.terreincode
|
||||
, i.scope
|
||||
, i.gebouwcode
|
||||
, i.verdiepingcode
|
||||
, i.ruimtecode
|
||||
, i.verlengen
|
||||
, disc.ins_discipline_key
|
||||
, mntl.cnt_contract_key mantel_key
|
||||
@@ -21417,11 +21374,10 @@ AS
|
||||
, a.bedrag_termijn
|
||||
, a.uurtarief
|
||||
, a.korting
|
||||
, a.locatiecode
|
||||
, a.terreincode
|
||||
, a.gebouwcode
|
||||
, a.verdiepingcode
|
||||
, a.ruimtecode
|
||||
, a.scope locgeb_scope
|
||||
, a.gebouwcode locgeb_code
|
||||
, gg.plaats_scope
|
||||
, gg.plaats_key
|
||||
, a.verlengen
|
||||
, a.flex1 cnt_kenmerkwaarde1
|
||||
, a.flex2 cnt_kenmerkwaarde2
|
||||
@@ -21451,9 +21407,21 @@ AS
|
||||
FROM imp_cnt a
|
||||
, cnt_disc_params dp
|
||||
, prs_contactpersoon cp
|
||||
, (SELECT 'L' plaats_scope
|
||||
, alg_locatie_key plaats_key
|
||||
, alg_locatie_code plaats_code
|
||||
FROM alg_v_aanweziglocatie
|
||||
UNION
|
||||
SELECT 'G'
|
||||
, alg_gebouw_key
|
||||
, alg_gebouw_code
|
||||
FROM alg_v_aanweziggebouw
|
||||
) gg
|
||||
WHERE a.ins_discipline_key = dp.cnt_ins_discipline_key
|
||||
AND UPPER(a.contact_naam) = UPPER(TRIM(cp.prs_contactpersoon_email(+)))
|
||||
AND a.prs_bedrijf_key = cp.prs_bedrijf_key(+);
|
||||
AND a.prs_bedrijf_key = cp.prs_bedrijf_key(+)
|
||||
AND a.scope = gg.plaats_scope(+)
|
||||
AND a.gebouwcode = gg.plaats_code(+);
|
||||
|
||||
-- Constanten
|
||||
c_contract_type NUMBER := 5; -- Leverancier (met scope)
|
||||
@@ -21480,9 +21448,7 @@ AS
|
||||
v_count_cntnew NUMBER;
|
||||
v_count_cntupd NUMBER;
|
||||
v_srtnoti_code VARCHAR2(6);
|
||||
v_scope_code VARCHAR2(1);
|
||||
v_scope_key NUMBER(10);
|
||||
v_scope_err VARCHAR2(100);
|
||||
v_fulltext varchar2(2000);
|
||||
|
||||
-- SUBPROC
|
||||
PROCEDURE bepaal_termijn( p_start IN DATE
|
||||
@@ -21734,92 +21700,6 @@ AS
|
||||
);
|
||||
END; -- SUBPROC upsert_cntkenmerk
|
||||
|
||||
-- SUBPROC
|
||||
PROCEDURE onroerendgoed_to_scope( loc IN VARCHAR2 DEFAULT NULL
|
||||
, ter IN VARCHAR2 DEFAULT NULL
|
||||
, bld IN VARCHAR2 DEFAULT NULL
|
||||
, flr IN NUMBER DEFAULT NULL
|
||||
, room IN VARCHAR2 DEFAULT NULL
|
||||
, scope_typ OUT VARCHAR2
|
||||
, scope_key OUT NUMBER
|
||||
, scope_err OUT VARCHAR2
|
||||
)
|
||||
AS
|
||||
BEGIN
|
||||
IF loc IS NOT NULL
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT alg_locatie_key
|
||||
INTO scope_key
|
||||
FROM alg_v_aanweziglocatie
|
||||
WHERE alg_locatie_code = loc;
|
||||
scope_typ := 'L';
|
||||
IF ter IS NOT NULL
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT alg_terreinsector_key
|
||||
INTO scope_key
|
||||
FROM alg_v_aanwezigterreinsector
|
||||
WHERE alg_locatie_key = scope_key
|
||||
AND alg_terreinsector_code = ter;
|
||||
scope_typ := 'T';
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
scope_err := 'Onbekende terreinsector: ' || ter || ' in ' || loc;
|
||||
END;
|
||||
ELSE
|
||||
BEGIN
|
||||
IF bld IS NOT NULL
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT alg_gebouw_key
|
||||
INTO scope_key
|
||||
FROM alg_v_aanweziggebouw
|
||||
WHERE alg_locatie_key = scope_key
|
||||
AND alg_gebouw_code = bld;
|
||||
scope_typ := 'G';
|
||||
IF flr IS NOT NULL
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT alg_verdieping_key
|
||||
INTO scope_key
|
||||
FROM alg_v_aanwezigverdieping
|
||||
WHERE alg_gebouw_key = scope_key
|
||||
AND alg_verdieping_volgnr = flr;
|
||||
scope_typ := 'V';
|
||||
IF room IS NOT NULL
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT alg_ruimte_key
|
||||
INTO scope_key
|
||||
FROM alg_v_aanwezigruimte
|
||||
WHERE alg_verdieping_key = scope_key
|
||||
AND alg_ruimte_nr = room;
|
||||
scope_typ := 'R';
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
scope_err := 'Onbekende ruimte: ' || room || ' in ' || loc ||'-'|| bld ||'-'|| TO_CHAR(flr);
|
||||
END;
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
scope_err := 'Onbekende verdieping: ' || TO_CHAR(flr) || ' in ' || loc ||'-'|| bld;
|
||||
END;
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
scope_err := 'Onbekend gebouw: ' || bld || ' in ' || loc;
|
||||
END;
|
||||
END IF;
|
||||
END;
|
||||
END IF;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND THEN
|
||||
scope_err := 'Onbekende locatie: ' || loc;
|
||||
END;
|
||||
END IF;
|
||||
END; -- SUBPROC onroerendgoed_to_scope
|
||||
|
||||
BEGIN
|
||||
v_count_tot := 0;
|
||||
v_count_cntnew := 0;
|
||||
@@ -21930,15 +21810,13 @@ BEGIN
|
||||
v_geldig := 0;
|
||||
END IF;
|
||||
|
||||
onroerendgoed_to_scope( rec.locatiecode, rec.terreincode, rec.gebouwcode, rec.verdiepingcode, rec.ruimtecode
|
||||
, v_scope_code, v_scope_key, v_scope_err);
|
||||
-- Locatie/gebouw (als meegegeven): moet bestaan en ook passen bij de
|
||||
-- contractsoort (type_key 3=Ondersteuning of 5=Leverancier).
|
||||
IF (v_scope_code IS NOT NULL)
|
||||
IF (rec.locgeb_scope IS NOT NULL)
|
||||
THEN
|
||||
IF v_scope_err IS NOT NULL
|
||||
THEN
|
||||
v_errormsg := 'Fout bij bepalen scope: ' || v_scope_err;
|
||||
v_errormsg := 'Fout bij bepalen locatie/gebouw: ' || rec.locgeb_scope ||'|'|| rec.locgeb_code;
|
||||
IF (rec.plaats_key IS NULL)
|
||||
THEN -- Geen locatie/gebouw gevonden.
|
||||
fac.imp_writelog( p_import_key, 'W'
|
||||
, v_aanduiding || v_errormsg
|
||||
, 'Contract/scope wordt overgeslagen'
|
||||
@@ -22257,14 +22135,14 @@ BEGIN
|
||||
-- Zo niet, dan toevoegen (bij INSERT altijd toevoegen).
|
||||
-- NB. Op deze manier kan een contract meerdere keren voorkomen in
|
||||
-- het importbestand, met verschillende gebouwen.
|
||||
IF (v_scope_code IS NOT NULL)
|
||||
IF (rec.plaats_key IS NOT NULL)
|
||||
THEN -- Komt deze scope al voor?
|
||||
SELECT COUNT(*)
|
||||
INTO v_count
|
||||
FROM cnt_contract_plaats
|
||||
WHERE cnt_contract_key = v_contract_key
|
||||
AND cnt_alg_plaats_key = v_scope_key
|
||||
AND cnt_alg_plaats_code = v_scope_code;
|
||||
AND cnt_alg_plaats_key = rec.plaats_key
|
||||
AND cnt_alg_plaats_code = rec.plaats_scope;
|
||||
|
||||
IF (v_count = 0) -- Scope komt nog niet voor, dus toevoegen.
|
||||
THEN
|
||||
@@ -22275,8 +22153,8 @@ BEGIN
|
||||
, cnt_alg_plaats_code
|
||||
)
|
||||
VALUES ( v_contract_key
|
||||
, v_scope_key
|
||||
, v_scope_code
|
||||
, rec.plaats_key
|
||||
, rec.plaats_scope
|
||||
);
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
@@ -91,53 +91,49 @@
|
||||
o_ktable_kshowexpr OUT VARCHAR2
|
||||
)
|
||||
AS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
BEGIN
|
||||
l_module := pmodule;
|
||||
o_kvtable_kniveau := NULL;
|
||||
CASE
|
||||
WHEN pmodule = 'ALG'
|
||||
THEN o_kvtable := 'alg_onrgoedkenmerk';
|
||||
THEN o_kvtable := 'alg_onrgoedkenmerk';
|
||||
o_kvtable_refkey := 'alg_onrgoed_key';
|
||||
o_kvtable_kniveau := 'alg_onrgoed_niveau';
|
||||
WHEN pmodule = 'BEZ'
|
||||
THEN o_kvtable := 'bez_kenmerkwaarde';
|
||||
THEN o_kvtable := 'bez_kenmerkwaarde';
|
||||
o_kvtable_refkey := 'bez_bezoekers_key';
|
||||
WHEN pmodule = 'BES'
|
||||
THEN o_kvtable := 'bes_kenmerkbestell';
|
||||
THEN o_kvtable := 'bes_kenmerkbestell';
|
||||
o_kvtable_refkey := 'bes_bestelling_key';
|
||||
WHEN pmodule = 'CNT'
|
||||
THEN o_kvtable := 'cnt_kenmerkcontract';
|
||||
THEN o_kvtable := 'cnt_kenmerkcontract';
|
||||
o_kvtable_refkey := 'cnt_contract_key';
|
||||
WHEN pmodule = 'FAQ'
|
||||
THEN o_kvtable := 'faq_kenmerkwaarde';
|
||||
THEN o_kvtable := 'faq_kenmerkwaarde';
|
||||
o_kvtable_refkey := 'fac_faq_key';
|
||||
WHEN pmodule = 'FIN'
|
||||
THEN o_kvtable := 'fin_kenmerkfactuur';
|
||||
THEN o_kvtable := 'fin_kenmerkfactuur';
|
||||
o_kvtable_refkey := 'fin_factuur_key';
|
||||
WHEN pmodule = 'FINR'
|
||||
THEN o_kvtable := 'fin_kenmerkfactregel';
|
||||
o_kvtable_refkey := 'fin_factuurregel_key';
|
||||
l_module := 'FIN';
|
||||
WHEN pmodule = 'CIL' OR pmodule = 'SLE'
|
||||
THEN o_kvtable := 'ins_kenmerkdeel';
|
||||
THEN o_kvtable := 'ins_kenmerkdeel';
|
||||
o_kvtable_refkey := 'ins_deel_key';
|
||||
WHEN pmodule = 'INS'
|
||||
THEN o_kvtable := 'ins_kenmerkdeel';
|
||||
THEN o_kvtable := 'ins_kenmerkdeel';
|
||||
o_kvtable_refkey := 'ins_deel_key';
|
||||
WHEN pmodule = 'MLD'
|
||||
THEN o_kvtable := 'mld_kenmerkmelding';
|
||||
THEN o_kvtable := 'mld_kenmerkmelding';
|
||||
o_kvtable_refkey := 'mld_melding_key';
|
||||
WHEN pmodule = 'OPD'
|
||||
THEN o_kvtable := 'mld_kenmerkopdr';
|
||||
THEN o_kvtable := 'mld_kenmerkopdr';
|
||||
o_kvtable_refkey := 'mld_opdr_key';
|
||||
l_module := 'MLD';
|
||||
WHEN pmodule = 'PRS'
|
||||
THEN o_kvtable := 'prs_kenmerklink';
|
||||
THEN o_kvtable := 'prs_kenmerklink';
|
||||
o_kvtable_refkey := 'prs_link_key';
|
||||
o_kvtable_kniveau := 'prs_kenmerklink_niveau';
|
||||
WHEN pmodule = 'RES'
|
||||
THEN o_kvtable := 'res_kenmerkwaarde';
|
||||
THEN o_kvtable := 'res_kenmerkwaarde';
|
||||
o_kvtable_refkey := 'res_rsv_ruimte_key';
|
||||
END CASE;
|
||||
IF l_module = 'RES'
|
||||
@@ -169,7 +165,7 @@
|
||||
l_kcolumnname_kkey VARCHAR2 (30);
|
||||
l_kcolumnname_delete VARCHAR2 (30);
|
||||
l_kcolumnname_showexpr VARCHAR2 (30);
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
BEGIN
|
||||
IF p_optional = 1 AND p_ref_key IS NULL
|
||||
THEN
|
||||
@@ -392,7 +388,7 @@
|
||||
p_waarde IN VARCHAR2,
|
||||
p_multi IN NUMBER DEFAULT 0)
|
||||
AS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_kenm VARCHAR2 (4500);
|
||||
l_sql_upsert VARCHAR2 (4500);
|
||||
l_rowsprocessed NUMBER DEFAULT 0;
|
||||
@@ -468,7 +464,7 @@
|
||||
p_niveau IN VARCHAR2,
|
||||
p_waardekey IN NUMBER DEFAULT NULL)
|
||||
AS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_delete VARCHAR2 (4500);
|
||||
l_rowsprocessed NUMBER DEFAULT 0;
|
||||
l_cursor_delete INTEGER DEFAULT DBMS_SQL.open_cursor;
|
||||
@@ -514,7 +510,7 @@
|
||||
FUNCTION getflexexprtype (pmodule IN VARCHAR2,
|
||||
p_kenmerk_key IN NUMBER) RETURN VARCHAR2
|
||||
IS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_expr VARCHAR2 (4500);
|
||||
l_kenmerk_tablename VARCHAR2 (30);
|
||||
l_kenmval_tablename VARCHAR2 (30);
|
||||
@@ -549,7 +545,7 @@
|
||||
FUNCTION getflexexpression (pmodule IN VARCHAR2,
|
||||
p_kenmerk_key IN NUMBER) RETURN VARCHAR2
|
||||
IS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_expr VARCHAR2 (4500);
|
||||
l_kenmerk_tablename VARCHAR2 (30);
|
||||
l_kenmval_tablename VARCHAR2 (30);
|
||||
@@ -575,7 +571,7 @@
|
||||
FUNCTION getflexshowexpr (pmodule IN VARCHAR2,
|
||||
p_kenmerk_key IN NUMBER) RETURN VARCHAR2
|
||||
IS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_expr VARCHAR2 (4500);
|
||||
l_kenmerk_tablename VARCHAR2 (30);
|
||||
l_kenmval_tablename VARCHAR2 (30);
|
||||
@@ -645,7 +641,7 @@
|
||||
END;
|
||||
PROCEDURE evaluateflexexpressions (pmodule IN VARCHAR2, prefkey IN NUMBER, puserkey IN NUMBER, psavetodb IN NUMBER)
|
||||
AS
|
||||
l_module VARCHAR2 (4);
|
||||
l_module VARCHAR2 (3);
|
||||
l_sql_exprval VARCHAR2 (4500);
|
||||
l_rowsprocessed NUMBER DEFAULT 0;
|
||||
l_cursor_exprval NUMBER; -- INTEGER DEFAULT DBMS_SQL.open_cursor;
|
||||
|
||||
@@ -33,6 +33,8 @@ AS
|
||||
fac_schema fac_version.fac_version_schema%TYPE;
|
||||
currentdb_schema VARCHAR2 (64);
|
||||
tsksql VARCHAR2 (4000);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust,
|
||||
fac_version_schema
|
||||
@@ -59,7 +61,13 @@ AS
|
||||
WHERE fac_cust_customerid = custid;
|
||||
ELSE -- Remote register
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.registercust(:custid, :schema); END;';
|
||||
EXECUTE IMMEDIATE tsksql USING selfid, fac_schema;
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':schema', fac_schema);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
@@ -70,6 +78,8 @@ AS
|
||||
selfid fac_version.fac_version_cust%TYPE;
|
||||
tsksql VARCHAR2 (4000);
|
||||
currentdb_schema VARCHAR2 (64);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust INTO selfid FROM fac_version;
|
||||
tsk_master_schema := fac.getsetting ('tsk_master_schema');
|
||||
@@ -89,7 +99,13 @@ AS
|
||||
END;
|
||||
ELSE -- start remote tasker
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.registertask(:taskcode, :custid); END;';
|
||||
EXECUTE IMMEDIATE tsksql USING p_taskcode, selfid;
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':taskcode', p_taskcode);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
@@ -102,6 +118,8 @@ AS
|
||||
selfid fac_version.fac_version_cust%TYPE;
|
||||
tsksql VARCHAR2 (4000);
|
||||
currentdb_schema VARCHAR2 (64);
|
||||
cursor_name INTEGER;
|
||||
rows_processed INTEGER;
|
||||
BEGIN
|
||||
SELECT fac_version_cust INTO selfid FROM fac_version;
|
||||
tsk_master_schema := fac.getsetting ('tsk_master_schema');
|
||||
@@ -117,7 +135,14 @@ AS
|
||||
WHERE fac_cust_customerid = COALESCE(p_customerid, selfid));
|
||||
ELSE -- start remote tasker
|
||||
tsksql := 'BEGIN ' || tsk_master_schema || '.tsk.starttask(:taskcode, :nextrun, :custid); END;';
|
||||
EXECUTE IMMEDIATE tsksql USING p_taskcode, p_nextrun, selfid;
|
||||
|
||||
cursor_name := DBMS_SQL.open_cursor;
|
||||
DBMS_SQL.PARSE (cursor_name, tsksql, DBMS_SQL.NATIVE);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':custid', selfid);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':taskcode', p_taskcode);
|
||||
DBMS_SQL.BIND_VARIABLE (cursor_name, ':nextrun', p_nextrun);
|
||||
rows_processed := DBMS_SQL.EXECUTE (cursor_name);
|
||||
DBMS_SQL.CLOSE_CURSOR (cursor_name);
|
||||
END IF;
|
||||
END;
|
||||
|
||||
@@ -145,8 +170,7 @@ AS
|
||||
RETURN;
|
||||
END IF;
|
||||
|
||||
DBMS_SESSION.SLEEP(pinterval); -- Dit maakt dat in de Oracle statistics allerlei timer events
|
||||
-- hoog scoren in 'Top 5 Timed Events' Dat is verder niet erg.
|
||||
DBMS_SESSION.SLEEP(pinterval);
|
||||
END LOOP;
|
||||
END;
|
||||
END tsk;
|
||||
|
||||
112
FAC/FAC_PACX.SRC
112
FAC/FAC_PACX.SRC
@@ -588,14 +588,14 @@ AS
|
||||
|
||||
|
||||
|
||||
-- * createxmltagvalueattributes12
|
||||
-- * function to return a complex XML node including up to 12 attributes
|
||||
-- * createxmltagvalueattributes9
|
||||
-- * function to return a complex XML node including up to 9 attributes
|
||||
-- * use the NULL value in the attrnameX argument for empty attributes
|
||||
-- * used for Kenmerk-nodes; if the fac_kenmerkdomein_key from p_kmdkey
|
||||
-- * defines a fac_kenmerkdomein_xmlnode the corresponding subnode
|
||||
-- * is added on the highest level only
|
||||
-- * Per 5.4.3 empty nodes are skipped here too, unless the value is '#donotsuppress#'
|
||||
PROCEDURE createxmltagvalueattributes12 (p_tag IN VARCHAR2,
|
||||
PROCEDURE createxmltagvalueattributes9 (p_tag IN VARCHAR2,
|
||||
p_attrname1 IN VARCHAR2,
|
||||
p_attrvalue1 IN VARCHAR2,
|
||||
p_attrname2 IN VARCHAR2,
|
||||
@@ -614,12 +614,6 @@ AS
|
||||
p_attrvalue8 IN VARCHAR2,
|
||||
p_attrname9 IN VARCHAR2,
|
||||
p_attrvalue9 IN VARCHAR2,
|
||||
p_attrname10 IN VARCHAR2,
|
||||
p_attrvalue10 IN VARCHAR2,
|
||||
p_attrname11 IN VARCHAR2,
|
||||
p_attrvalue11 IN VARCHAR2,
|
||||
p_attrname12 IN VARCHAR2,
|
||||
p_attrvalue12 IN VARCHAR2,
|
||||
p_kmdkey IN VARCHAR2,
|
||||
p_value IN VARCHAR2,
|
||||
p_mld_kbm_key IN NUMBER)
|
||||
@@ -644,9 +638,6 @@ AS
|
||||
v_return := v_return || attrval(p_attrname7, p_attrvalue7);
|
||||
v_return := v_return || attrval(p_attrname8, p_attrvalue8);
|
||||
v_return := v_return || attrval(p_attrname9, p_attrvalue9);
|
||||
v_return := v_return || attrval(p_attrname10, p_attrvalue10);
|
||||
v_return := v_return || attrval(p_attrname11, p_attrvalue11);
|
||||
v_return := v_return || attrval(p_attrname12, p_attrvalue12);
|
||||
|
||||
IF p_kmdkey IS NOT NULL
|
||||
THEN
|
||||
@@ -738,49 +729,6 @@ AS
|
||||
addvarchartoclob (v_return);
|
||||
END;
|
||||
|
||||
-- Compatible function for 9 attributes
|
||||
PROCEDURE createxmltagvalueattributes9 (p_tag IN VARCHAR2,
|
||||
p_attrname1 IN VARCHAR2,
|
||||
p_attrvalue1 IN VARCHAR2,
|
||||
p_attrname2 IN VARCHAR2,
|
||||
p_attrvalue2 IN VARCHAR2,
|
||||
p_attrname3 IN VARCHAR2,
|
||||
p_attrvalue3 IN VARCHAR2,
|
||||
p_attrname4 IN VARCHAR2,
|
||||
p_attrvalue4 IN VARCHAR2,
|
||||
p_attrname5 IN VARCHAR2,
|
||||
p_attrvalue5 IN VARCHAR2,
|
||||
p_attrname6 IN VARCHAR2,
|
||||
p_attrvalue6 IN VARCHAR2,
|
||||
p_attrname7 IN VARCHAR2,
|
||||
p_attrvalue7 IN VARCHAR2,
|
||||
p_attrname8 IN VARCHAR2,
|
||||
p_attrvalue8 IN VARCHAR2,
|
||||
p_attrname9 IN VARCHAR2,
|
||||
p_attrvalue9 IN VARCHAR2,
|
||||
p_kmdkey IN VARCHAR2,
|
||||
p_value IN VARCHAR2,
|
||||
p_mld_kbm_key IN NUMBER)
|
||||
AS
|
||||
BEGIN
|
||||
createxmltagvalueattributes12 (p_tag,
|
||||
p_attrname1, p_attrvalue1,
|
||||
p_attrname2, p_attrvalue2,
|
||||
p_attrname3, p_attrvalue3,
|
||||
p_attrname4, p_attrvalue4,
|
||||
p_attrname5, p_attrvalue5,
|
||||
p_attrname6, p_attrvalue6,
|
||||
p_attrname7, p_attrvalue7,
|
||||
p_attrname8, p_attrvalue8,
|
||||
p_attrname9, p_attrvalue9,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
p_kmdkey,
|
||||
p_value,
|
||||
p_mld_kbm_key);
|
||||
END;
|
||||
|
||||
-- Compatible function for 5 attributes
|
||||
PROCEDURE createxmltagvalueattributes (p_tag IN VARCHAR2,
|
||||
p_attrname1 IN VARCHAR2,
|
||||
@@ -797,7 +745,7 @@ AS
|
||||
p_value IN VARCHAR2)
|
||||
AS
|
||||
BEGIN
|
||||
createxmltagvalueattributes12 (p_tag,
|
||||
createxmltagvalueattributes9 (p_tag,
|
||||
p_attrname1, p_attrvalue1,
|
||||
p_attrname2, p_attrvalue2,
|
||||
p_attrname3, p_attrvalue3,
|
||||
@@ -807,9 +755,6 @@ AS
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
p_kmdkey,
|
||||
p_value,
|
||||
NULL);
|
||||
@@ -1694,7 +1639,6 @@ AS
|
||||
k.prs_kenmerk_nmax,
|
||||
k.prs_kenmerk_default,
|
||||
NVL (k.prs_kenmerk_volgnr, 0) volgnummer,
|
||||
k.prs_kenmerk_rolcode rolcode,
|
||||
lcl.x ('prs_kenmerk_dimensie',
|
||||
k.prs_kenmerk_key,
|
||||
prs_kenmerk_dimensie)
|
||||
@@ -1739,7 +1683,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.prs_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
@@ -1916,7 +1860,6 @@ AS
|
||||
createxmltagvalue ('username', rec.prs_bedrijfadres_username);
|
||||
createxmltagvalue ('password', rec.prs_bedrijfadres_password);
|
||||
END IF;
|
||||
create_prs_perslid_node(rec.prs_bedrijfadres_lockuser_key, 'lockeduser', TRUE);
|
||||
createclosetag ('bedrijfadres');
|
||||
END LOOP;
|
||||
END IF;
|
||||
@@ -2994,8 +2937,7 @@ AS
|
||||
k.alg_kenmerk_nmax,
|
||||
k.alg_kenmerk_default,
|
||||
NVL (k.alg_kenmerk_volgnr, 0) volgnummer,
|
||||
k.alg_kenmerk_rolcode rolcode,
|
||||
lcl.x ('alg_kenmerk_dimensie',
|
||||
lcl.x ('alg_kenmerk_dimensie',
|
||||
k.alg_kenmerk_key,
|
||||
alg_kenmerk_dimensie)
|
||||
dimensie,
|
||||
@@ -3058,7 +3000,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.alg_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
@@ -3993,7 +3935,6 @@ AS
|
||||
s.ins_srtkenmerk_nmax,
|
||||
k.ins_kenmerk_default,
|
||||
NVL (k.ins_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.ins_kenmerk_rolcode rolcode,
|
||||
lcl.x ('ins_srtkenmerk_dimensie',
|
||||
s.ins_srtkenmerk_key,
|
||||
ins_srtkenmerk_dimensie)
|
||||
@@ -4061,7 +4002,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.ins_kenmerk_key,
|
||||
'aanmaak', TO_CHAR (v_kenmerk_aanmaak, 'YYYYMMDD HH24:MI'),
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -4233,7 +4174,6 @@ AS
|
||||
s.ins_srtkenmerk_nmax,
|
||||
k.ins_kenmerk_default,
|
||||
NVL (k.ins_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.ins_kenmerk_rolcode rolcode,
|
||||
lcl.x ('ins_srtkenmerk_dimensie', s.ins_srtkenmerk_key, ins_srtkenmerk_dimensie)
|
||||
dimensie,
|
||||
lcl.x ('ins_kenmerk_hint', k.ins_kenmerk_key, ins_kenmerk_hint) hint,
|
||||
@@ -4285,7 +4225,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.ins_kenmerk_key,
|
||||
'aanmaak', TO_CHAR (v_kenmerk_aanmaak, 'YYYYMMDD HH24:MI'),
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -4647,7 +4587,6 @@ AS
|
||||
k.mld_kenmerk_default,
|
||||
k.mld_kenmerk_wissen,
|
||||
NVL (k.mld_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.mld_kenmerk_rolcode rolcode,
|
||||
lcl.x ('mld_srtkenmerk_dimensie',
|
||||
s.mld_srtkenmerk_key,
|
||||
mld_srtkenmerk_dimensie)
|
||||
@@ -4699,7 +4638,7 @@ AS
|
||||
rec1.mld_kenmerk_key,
|
||||
'MLD');
|
||||
|
||||
createxmltagvalueattributes12('kenmerk',
|
||||
createxmltagvalueattributes9('kenmerk',
|
||||
'kenmerkcode', rec1.mld_kenmerk_code,
|
||||
'srtkenmerkcode', rec1.mld_srtkenmerk_code,
|
||||
'naam', rec1.mld_kenmerk_omschrijving,
|
||||
@@ -4709,9 +4648,6 @@ AS
|
||||
'dimensie', rec1.dimensie,
|
||||
'systeem', rec1.mld_srtkenmerk_systeem,
|
||||
'wissen', rec1.mld_kenmerk_wissen,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
rec1.mld_kenmerkblokmelding_key
|
||||
@@ -4781,7 +4717,6 @@ AS
|
||||
s.mld_srtkenmerk_nmax,
|
||||
k.mld_kenmerk_default,
|
||||
NVL (k.mld_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.mld_kenmerk_rolcode rolcode,
|
||||
lcl.x ('mld_srtkenmerk_dimensie',
|
||||
s.mld_srtkenmerk_key,
|
||||
mld_srtkenmerk_dimensie)
|
||||
@@ -4832,7 +4767,7 @@ AS
|
||||
'key', rec1.mld_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'systeem', rec1.mld_srtkenmerk_systeem,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
NULL
|
||||
@@ -5823,7 +5758,6 @@ AS
|
||||
v_tag_naam mld_melding_tag.mld_melding_tag_naam%TYPE;
|
||||
v_tag_omschrijving mld_melding_tag.mld_melding_tag_oms%TYPE;
|
||||
v_tag_datum_van mld_melding_tag.mld_melding_tag_datum_van%TYPE;
|
||||
v_tag_datum_acc mld_melding_tag.mld_melding_tag_datum_acc%TYPE;
|
||||
v_tag_datum_tot mld_melding_tag.mld_melding_tag_datum_tot%TYPE;
|
||||
v_conceptstatus mld_melding.mld_melding_conceptstatus%TYPE;
|
||||
l_isrootmelding NUMBER(1);
|
||||
@@ -5928,7 +5862,6 @@ AS
|
||||
mld_melding_tag_naam,
|
||||
mld_melding_tag_oms,
|
||||
mld_melding_tag_datum_van,
|
||||
mld_melding_tag_datum_acc,
|
||||
mld_melding_tag_datum_tot
|
||||
INTO v_meldbron_nr,
|
||||
v_datum,
|
||||
@@ -5993,7 +5926,6 @@ AS
|
||||
v_tag_naam,
|
||||
v_tag_omschrijving,
|
||||
v_tag_datum_van,
|
||||
v_tag_datum_acc,
|
||||
v_tag_datum_tot
|
||||
FROM mld_melding m, mld_statuses s, mld_stdmelding stdm, mld_melding_tag mmt
|
||||
WHERE m.mld_melding_status = s.mld_statuses_key
|
||||
@@ -6072,7 +6004,6 @@ AS
|
||||
createxmltagvalue ('tag_naam', v_tag_naam);
|
||||
createxmltagvalue ('tag_omschrijving', v_tag_omschrijving);
|
||||
mydatetochar ('tag_begindatum', v_tag_datum_van);
|
||||
mydatetochar ('tag_accdatum', v_tag_datum_acc);
|
||||
mydatetochar ('tag_einddatum', v_tag_datum_tot);
|
||||
create_mld_kenmerken (p_key);
|
||||
create_prs_kostenplaats_node (v_prs_kostenplaats_key, FALSE);
|
||||
@@ -7026,7 +6957,6 @@ AS
|
||||
s.bes_srtkenmerk_nmax,
|
||||
k.bes_kenmerk_default,
|
||||
NVL (k.bes_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.bes_kenmerk_rolcode rolcode,
|
||||
lcl.x ('bes_srtkenmerk_dimensie',
|
||||
s.bes_srtkenmerk_key,
|
||||
bes_srtkenmerk_dimensie)
|
||||
@@ -7086,7 +7016,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.bes_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -7117,7 +7047,6 @@ AS
|
||||
s.bes_srtkenmerk_nmax,
|
||||
k.bes_kenmerk_default,
|
||||
NVL (k.bes_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.bes_kenmerk_rolcode rolcode,
|
||||
lcl.x ('bes_srtkenmerk_dimensie',
|
||||
s.bes_srtkenmerk_key,
|
||||
bes_srtkenmerk_dimensie)
|
||||
@@ -7166,7 +7095,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.bes_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -7250,7 +7179,6 @@ AS
|
||||
s.ins_srtkenmerk_nmax,
|
||||
k.ins_kenmerk_default,
|
||||
NVL (k.ins_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.ins_kenmerk_rolcode rolcode,
|
||||
lcl.x ('ins_srtkenmerk_dimensie',
|
||||
s.ins_srtkenmerk_key,
|
||||
ins_srtkenmerk_dimensie)
|
||||
@@ -7316,7 +7244,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.ins_kenmerk_key,
|
||||
'aanmaak', TO_CHAR (v_kenmerk_aanmaak, 'YYYYMMDD HH24:MI'),
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -8139,7 +8067,6 @@ AS
|
||||
k.bez_kenmerk_nmax,
|
||||
k.bez_kenmerk_default,
|
||||
NVL (k.bez_kenmerk_volgnr, 0) volgnummer,
|
||||
k.bez_kenmerk_rolcode rolcode,
|
||||
lcl.x ('bez_kenmerk_dimensie',
|
||||
k.bez_kenmerk_key,
|
||||
bez_kenmerk_dimensie)
|
||||
@@ -8181,7 +8108,7 @@ AS
|
||||
'key', rec1.bez_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'systeem', rec1.bez_kenmerk_systeem,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -8479,7 +8406,6 @@ AS
|
||||
s.res_srtkenmerk_nmax,
|
||||
k.res_kenmerk_default,
|
||||
NVL (k.res_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.res_kenmerk_rolcode rolcode,
|
||||
lcl.x ('res_srtkenmerk_dimensie',
|
||||
s.res_srtkenmerk_key,
|
||||
res_srtkenmerk_dimensie)
|
||||
@@ -8526,7 +8452,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.res_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -8553,7 +8479,6 @@ AS
|
||||
s.res_srtkenmerk_nmax,
|
||||
k.res_kenmerk_default,
|
||||
NVL (k.res_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.res_kenmerk_rolcode rolcode,
|
||||
lcl.x ('res_srtkenmerk_dimensie',
|
||||
s.res_srtkenmerk_key,
|
||||
res_srtkenmerk_dimensie)
|
||||
@@ -8603,7 +8528,7 @@ AS
|
||||
'volgnummer', rec1.volgnummer,
|
||||
'key', rec1.res_kenmerk_key,
|
||||
'dimensie', rec1.dimensie,
|
||||
'rolcode', rec1.rolcode,
|
||||
NULL, NULL,
|
||||
NULL, NULL,
|
||||
rec1.fac_kenmerkdomein_key,
|
||||
v_kenmerk_waarde,
|
||||
@@ -10016,7 +9941,6 @@ AS
|
||||
s.cnt_srtkenmerk_nmax,
|
||||
k.cnt_kenmerk_default,
|
||||
NVL (k.cnt_kenmerk_volgnummer, 0) volgnummer,
|
||||
k.cnt_kenmerk_rolcode rolcode,
|
||||
lcl.x ('cnt_srtkenmerk_dimensie',
|
||||
s.cnt_srtkenmerk_key,
|
||||
cnt_srtkenmerk_dimensie)
|
||||
@@ -10409,7 +10333,6 @@ AS
|
||||
k.fin_kenmerk_nmax,
|
||||
k.fin_kenmerk_default,
|
||||
NVL (k.fin_kenmerk_volgnr, 0) volgnummer,
|
||||
k.fin_kenmerk_rolcode rolcode,
|
||||
lcl.x ('fin_kenmerk_dimensie',
|
||||
k.fin_kenmerk_key,
|
||||
fin_kenmerk_dimensie)
|
||||
@@ -10442,7 +10365,6 @@ AS
|
||||
k.fin_kenmerk_nmax,
|
||||
k.fin_kenmerk_default,
|
||||
NVL (k.fin_kenmerk_volgnr, 0) volgnummer,
|
||||
k.fin_kenmerk_rolcode rolcode,
|
||||
lcl.x ('fin_kenmerk_dimensie',
|
||||
k.fin_kenmerk_key,
|
||||
fin_kenmerk_dimensie)
|
||||
|
||||
@@ -122,7 +122,6 @@ DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'iLearning_enabled'
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'language_toggles' , 'array' , 'NL' , 'Allow language toggle for alternate languages')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'login_pda_url' , 'string' , 'appl/aut/login.asp' , 'url providing login-services when pda detected. Future use')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'login_url' , 'string' , 'appl/aut/login.asp' , 'url providing login-services')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'm2m_enabled' , 'number' , '0' , 'Is Facilitor Mail2Melding configured {0=disabled | 1=enabled}')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'mobile_enabled' , 'number' , '0' , 'Is Facilitor Mobile available {0=disabled | 1=web only enabled | 2=Nativescript app only enabled | 3=web+app enabled}')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'multi_language_option' , 'number' , '0' , 'Enable multi language')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'prs_allow_impersonate' , 'boolean' , 'false' , 'Allow impersonation by PRSSYS')
|
||||
@@ -210,10 +209,8 @@ DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_msxml2domdocument'
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_tamper_check' , 'number' , '255' , 'Perform tampercheck on save')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_number1' , 'number' , '0' , 'reserved_number1 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_number2' , 'number' , '0' , 'reserved_number2 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_number3' , 'number' , '0' , 'reserved_number3 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_string1' , 'string' , '' , 'reserved_string1 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_string2' , 'string' , '' , 'reserved_string2 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_reserved_string3' , 'string' , '' , 'reserved_string3 (reserved and unused)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'fac_server_timezone' , 'string' , 'Europe/Amsterdam' , 'The timezone of the database-server')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'fac_t_endofworkday' , 'float' , '17' , 'End time (hour, decimal) of a working day')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'fac_t_startofworkday' , 'float' , '8' , 'Start time (hour, decimal) of a working day')
|
||||
@@ -237,7 +234,6 @@ DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'impAllowedExt'
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'kto_srtdiscipline_key' , 'number' , '-1' , 'key van KTO (klanttevredenheidsonderzoek) vakgroeptype')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'logcenter_url' , 'string' , 'https://logcentre.facilitor.nl/?SSO=CUSTOMER', 'Logcenter url')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'menu_image_path' , 'string' , NULL , 'relative! path to folder storing menu pictures and files')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'menu_image_url_path' , 'string' , NULL , 'relative! path to folder storing menu files which are used as url')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'mobile_favorite_menu_items' , 'number' , '3' , 'This is how many of the favorite menuitems are shown on the mobile portal')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'mobile_password_exp' , 'number' , '15' , 'time to enter the login code received on the mobile in minutes.')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'os_logon' , 'boolean' , 'false' , 'enable NT domain logon {true | false}')
|
||||
@@ -447,7 +443,7 @@ DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'anonymize_mode'
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'datapurge_period' , 'number' , '99' , 'Period (years) to keep dynamic data stored in database. Older data wil be permanently purged')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'aut_login_strip_domain' , 'number' , '1' , 'Strip AD domain from login name { 0=no, 1=yes (default) } (Future use)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'auth_edit_advanced' , 'boolean' , 'false' , 'Start autorisation popup dialog in advanced mode')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'buttons_in_hamburger' , 'array' , 'fa-print,fa-envelope,fa-table,fa-fclt-refresh,fa-columns,fa-share-square,fa-file-download,fa-file-upload,fa-megaphone', 'Hide these frameheader buttons behind a hamburger.')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'buttons_in_hamburger' , 'array' , 'fa-print,fa-envelope,fa-table,fa-fclt-refresh,fa-columns,fa-share-square,fa-file-download,fa-file-upload', 'Hide these frameheader buttons behind a hamburger.')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'can_selfapprove' , 'number' , '999999' , 'I can approve myself below or equal this limit or someone else must approve always above this limit')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'checkBrowser' , 'number' , '0' , 'Check for IE6 at login (1) or not.')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'currency_icon' , 'string' , 'fa-euro-sign' , 'Currency icon. Use fa-money-bill-wave for generic')
|
||||
@@ -557,9 +553,9 @@ DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'udr_graph_gauge_colors'
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'udr_graph_pie_colors' , 'string' , '[''#003478'',''#6685ae'',''#e37b00'',''#0b94f9'',''#81ce58'',''#f3d736'',''#acaa65'',''#a222c4'',''#5b9bc3'',''#1c40eb'',''#037011'',''#d192e7'',''#f88625'',''#93b89f'',''#bf6b87'',''#a2b41a'',''#f76979'',''#f41181'',''#73eb59'',''#32d1d0'',''#a00bed'',''#66fe6b'',''#b94d5b'']' , 'Colors being used for pie charts (string!)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'use_wildcard_with_suggests' , 'number' , '2' , 'Use wildcards for all sugest fields (0=no wildcard, 1=text*, 2=*text*)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_PRSSYS', 'usrrap_refreshrate' , 'number' , '60' , 'time between auto refresh of selected usrraps (seconds)')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'ai_enabled' , 'number' , '0' , 'Enable AI (65535=all (incl. future) AI features) to generate;' || CHR(10) || '&1; subjects for calls from their description (configuration needed)' || CHR(10) || '&2; FAQs for calls' || CHR(10) || '&4; text for closing calls' || CHR(10) || '&8; new order descriptions' || CHR(10) || '&16; portal messages when publishing calls')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'ai_enabled' , 'number' , '0' , 'Enable AI (65535=all (incl. future) AI features)' || CHR(10) || '&1; generate subjects for calls from their description (configuration needed)' || CHR(10) || '&2; generate FAQs for calls' || CHR(10) || '&4; generate text for closing calls' || CHR(10) || '&8; generate new order descriptions')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'ai_endpoint' , 'string' , 'https://ai-fac-prod-openai-studio.openai.azure.com/openai/deployments/ai-fac-prod-4o/chat/completions?api-version=2024-08-01-preview', 'AI API endpoint url')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACFAC', 'ai_apikey' , 'string' , 'CCV3nRxb3ohPwxlwPQBjGFWqDSPTilfLHjsfhGBRjOEmlfgRtRzwJQQJ99AKACfhMk5XJ3w3AAABACOG7TGx', 'APIKEY for AI services')
|
||||
DEFINE_SETTING('FAC', 0001, 'WEB_FACTAB', 'ai_apikey' , 'string' , 'CCV3nRxb3ohPwxlwPQBjGFWqDSPTilfLHjsfhGBRjOEmlfgRtRzwJQQJ99AKACfhMk5XJ3w3AAABACOG7TGx', 'APIKEY for AI services')
|
||||
DEFINE_SETTING('MSG', 0001, 'WEB_PRSSYS', 'msg_photo_size' , 'string' , 'r512x512' , 'Resize uploads to this maximum MSG photo size. Ex: r200x150')
|
||||
DEFINE_SETTING('MSG', 0001, 'WEB_PRSSYS', 'msg_max_history' , 'number' , '30' , 'Show messages no longer than msg_max_history days ago')
|
||||
DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_kennisbank_popup' , 'number' , '3' , 'Show kennisbank popup {0=no | 01=1=FE | 10=2=FO | 11=3=FE+FO}')
|
||||
@@ -567,7 +563,6 @@ DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_max_results'
|
||||
DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_max_results_mld' , 'number' , '0' , 'Initial number of faq items when editing an issue. 0 = show all.')
|
||||
DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_max_results_bez' , 'number' , '0' , 'Initial number of faq items when editing an appointment. 0 = show all.')
|
||||
DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_search_hints_only' , 'number' , '0' , 'When searching through the Knowledge base, only find matching hints {1=true | 0=false}')
|
||||
DEFINE_SETTING('FAQ', 0001, 'WEB_PRSSYS', 'faq_default_visibility' , 'number' , '3' , 'Set default visibility when creating a new knowledgebase item {1=Selfservice | 2=Professionals | 3=Selfservide and Profesionals')
|
||||
DEFINE_SETTING('FIN', 0001, 'WEB_PRSSYS', 'fin_bof_mag_editen' , 'number' , '1' , 'Users/Approvers with FINBOF rights have edit possibilities {0=no edit (only approve) | 1=edit (default)}')
|
||||
DEFINE_SETTING('FIN', 0001, 'WEB_PRSSYS', 'fin_btw_default' , 'number' , '3' , 'Standaard btw tarief (1=NL|Nul, 2=NL|Laag, 3=NL|Hoog, enz.)')
|
||||
DEFINE_SETTING('FIN', 0001, 'WEB_PRSSYS', 'fin_enable_afwijzen' , 'number' , '1' , 'Is it possible to reject an invoice or not {0=Afwijzen unavailable | 1=Afwijzen available}')
|
||||
@@ -631,7 +626,6 @@ DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_allow_parentmelding'
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_archive_by_gui' , 'boolean' , 'false' , 'Can a call be archived by a button (true) or just by export (false)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_archive_by_gui' , 'boolean' , 'false' , 'Can an order be archived by a button (true) or not (false)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_ask_for_orders' , 'boolean' , 'true' , 'ask for immediate order input after call entry { true | false }')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_assume_ok_days' , 'number' , '0' , 'Number of days after the call will be automatically closed, if no response is given')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_autolink_regexp' , 'string' , '(?:(?:melding [A-Z]*)|(?:[A-Z \,]+\#[A-Z]*))(\d+)', 'Automatically turn MLD-references in texts into clickable links eg. (?:(?:melding [A-Z]*)|(?:[A-Z\,\n]+\#[A-Z]*))(\d+)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_behandelteam_canclose' , 'number' , '1' , 'Close authorization depending on (0=discipline | 1=discipline en treatment team (default))')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_bo_sort_descending' , 'number' , '0' , 'Sort ordering of mld_melding for BO (0 = most urgent first | 1 = last made first | 2 = most recent activity first)')
|
||||
@@ -654,7 +648,7 @@ DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_first_close_orders'
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_fixdatums_marge' , 'number' , '7' , 'WEB_MLDMSU can fix invoer/afgemeld dates')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_fo_can_assign_team' , 'number' , '0' , 'Allow assignment of a new call to a treatment team by the frontoffice {0=no | 1=yes}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_fo_default_user' , 'boolean' , 'false' , 'Use current user as default caller, { true=user default | false=empty default }')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_fof_canFlexChange' , 'boolean' , 'false' , 'TODO is dit het dan? ***MLDFOF kan FE-flexkenmerken ook na acceptatie nog wijzigen***')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_fof_canFlexChange' , 'boolean' , 'false' , 'FOF flex kenmerken laten wijzigen >800 900<=.')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_forward_all' , 'number' , '1' , 'Forward a complain 0= to a complain with the same srtdiscipline 1= (default) to a complain for all srtdisciplines')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_forward_auto_fill' , 'number' , '0' , 'Use current discipline and call (and "assigned to") as defaults while forwarding. {0=no | 1=yes}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_forward_can_assign' , 'number' , '0' , 'Allow assignment to a specific handler-person while forwarding a call {0=no | 1=yes}')
|
||||
@@ -685,7 +679,6 @@ DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_object_filled_in_alert'
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_omschrijving_restrict_edit' , 'number' , '0' , 'Het veld omschrijving alleen in te vullen als nog te accepteren (0=no, 1=yes)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_alt_kostensoort' , 'number' , '0' , 'Enable use of alternative cost category {0|1} default 0')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_approval_all' , 'number' , '0' , 'Goedkeuring opdracht vereist t.o.v. eerstvolgende limiet (=0 default) of t.o.v. totale kosten (in n keer)(=1)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_pessismistisch_hergoedkeuren' , 'number' , '0' , 'Hergoedkeuren als de opdrachtkosten boven de bestellimiet, of boven de goedkeuringsvrijstelling komen {1=ja | 0=alleen als beiden waar zijn}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_validate_by_substitute' , 'number' , '1' , 'Validate by substitute {0=no | 1=yes default}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_ask_mail_if_unknown' , 'number' , '0' , 'Workaround for sending order by e-mail to ''externe relatie'' if address unknown (0=disabled default | 1=enabled)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_opdr_close' , 'number' , '0' , 'Can close orders in order overview window without seeing order details? {0=yes default | 1=no}')
|
||||
@@ -720,7 +713,6 @@ DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_restrict_mobile_to_me'
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_sel_single_closingtext' , 'number' , '1' , 'Auto select closing text when just one available {2=yes | 1=no (default)}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_selector_mode' , 'number' , '0' , 'Selector mode vakgroep/melding voor de frontend. {0(=default)=vakgroep en melding (beide eerst te kiezen), 1=vakgroep readonly, 2=alleen melding}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_show_cards' , 'number' , '5' , 'Number of order cards shown under a contractor in order plan board {nn=number | -1=all}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_bord_compact_threshold_columns' , 'number' , '6' , 'Number of columns after which the board will suppress empty columns {-1=never | 0=always | nn=number of columns}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_show_endtime' , 'number' , '1' , 'Show endtime for complaints (0=only date, 1=with endtime)')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_show_parent_attachments' , 'boolean' , 'true' , 'Show the attachments of parent calls {true (default) | false}')
|
||||
DEFINE_SETTING('MLD', 0001, 'WEB_PRSSYS', 'mld_show_search_similar' , 'number' , '0' , 'Show a link to similar calls with call details {0=no | 1=yes}')
|
||||
|
||||
@@ -873,7 +873,7 @@ CREATE_TABLE(fac_activiteit, 0)
|
||||
fac_activiteit_eenheid -- 1=dagelijks, 2=wekelijk, 3=maandelijk, 4=jaarlijks, null=eenmalig. Niet beschikbaar: uurlijks(0)
|
||||
NUMBER(1)
|
||||
DEFAULT(1)
|
||||
CONSTRAINT fac_c_fac_activiteit_eenheid CHECK (fac_activiteit_eenheid IN (1,2,3,4,5) OR fac_activiteit_eenheid IS NULL),
|
||||
CONSTRAINT fac_c_fac_activiteit_eenheid CHECK (fac_activiteit_eenheid IN (1,2,3,4) OR fac_activiteit_eenheid IS NULL),
|
||||
fac_activiteit_bits -- details, afhankelijk van de mode (mag best null zijn)
|
||||
NUMBER(4),
|
||||
fac_activiteit_periode
|
||||
@@ -1387,7 +1387,7 @@ CREATE_TABLE(fac_imp_ext_bedrijf, 0)
|
||||
prs_overeenkomst_nr VARCHAR2 (30),
|
||||
prs_overeenkomst_datum DATE,
|
||||
prs_bedrijf_email VARCHAR2 (100),
|
||||
prs_bedrijf_opmerking VARCHAR2 (4000),
|
||||
prs_bedrijf_opmerking VARCHAR2 (320),
|
||||
prs_dienst_omschrijving VARCHAR2 (60),
|
||||
alg_locatie_code VARCHAR2 (10),
|
||||
alg_gebouw_code VARCHAR2 (12),
|
||||
@@ -1648,8 +1648,6 @@ CREATE_TABLE(fac_nieuws, 0)
|
||||
fac_nieuws_parentkey NUMBER(10) REFERENCES fac_nieuws(fac_nieuws_key) ON DELETE CASCADE
|
||||
// Note: this column is defined in PRS_TAB.SRC
|
||||
// prs_perslid_key NUMBER(10) REFERENCES prs_perslid(prs_perslid_key) ON DELETE SET NULL
|
||||
// Note: this column is defined in MLD_TAB.SRC
|
||||
// mld_melding_key NUMBER(10) REFERENCES mld_melding(mld_melding_key) ON DELETE SET NULL
|
||||
);
|
||||
|
||||
CREATE_TABLE(fac_faq, 0)
|
||||
@@ -1825,7 +1823,6 @@ CREATE_TABLE(fac_imp_flex, 0)
|
||||
kenmerk_niveau VARCHAR2(255),
|
||||
kenmerk_verplicht VARCHAR2(255),
|
||||
kenmerk_groep VARCHAR2(255),
|
||||
kenmerk_rolcode VARCHAR2(255),
|
||||
kenmerk_volgnummer VARCHAR2(255),
|
||||
kenmerk_default VARCHAR2(4000),
|
||||
kenmerk_type VARCHAR2(255),
|
||||
@@ -2106,15 +2103,12 @@ CREATE_TABLE(fac_email_setting, 0)
|
||||
fac_email_setting_action VARCHAR2 (255),
|
||||
fac_email_setting_aanmaak DATE DEFAULT SYSDATE,
|
||||
fac_email_setting_expire DATE,
|
||||
fac_email_setting_attachpath VARCHAR2 (255) DEFAULT '*flexfilespath',
|
||||
fac_email_setting_attachpath VARCHAR2 (255),
|
||||
fac_email_setting_attachext VARCHAR2(255),
|
||||
fac_email_setting_reqattachext VARCHAR2(255),
|
||||
fac_email_setting_attachmaxkb NUMBER(10), -- Kilobyte
|
||||
fac_email_setting_loglevel NUMBER(3) DEFAULT 0 NOT NULL,
|
||||
fac_email_setting_text VARCHAR2 (320), -- signaaltekst in onderwerpregel
|
||||
fac_email_setting_opmerking VARCHAR2 (320),
|
||||
// Note: this column is defined in MLD_TAB.SRC
|
||||
// mld_stdmelding_key NUMBER(10) REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE,
|
||||
// Note: this column is defined in PRS_TAB.SRC
|
||||
// prs_perslid_key_auth NUMBER(10) REFERENCES prs_perslid(prs_perslid_key)
|
||||
CONSTRAINT fac_u_fac_email_setting_user UNIQUE(fac_email_setting_user, fac_email_setting_volgnr)
|
||||
@@ -2203,11 +2197,8 @@ CREATE_TABLE(fac_imp_cnt, 0)
|
||||
bedrag_termijn NUMBER (11,2),
|
||||
uurtarief NUMBER (6,2),
|
||||
korting NUMBER (4,2),
|
||||
locatiecode VARCHAR2 (10),
|
||||
terreincode VARCHAR2 (12),
|
||||
scope VARCHAR2 (1),
|
||||
gebouwcode VARCHAR2 (12),
|
||||
verdiepingcode NUMBER (3),
|
||||
ruimtecode VARCHAR2 (20),
|
||||
verlengen VARCHAR2 (1),
|
||||
versie VARCHAR2 (10),
|
||||
dienst VARCHAR2 (60),
|
||||
@@ -2337,7 +2328,6 @@ CREATE_TABLE(faq_kenmerk,0)
|
||||
faq_kenmerk_key NUMBER(10) CONSTRAINT faq_k_faq_kenmerk_key PRIMARY KEY,
|
||||
faq_discipline_key NUMBER(10),
|
||||
faq_kenmerk_volgnr NUMBER(3) NOT NULL,
|
||||
faq_kenmerk_rolcode NUMBER(4) DEFAULT 7 NOT NULL,
|
||||
faq_kenmerk_omschrijving VARCHAR2(50),
|
||||
faq_kenmerk_upper VARCHAR2(50),
|
||||
faq_kenmerk_code VARCHAR2(60),
|
||||
|
||||
@@ -585,11 +585,6 @@ CREATE_TRIGGER(fac_t_fac_tracking_b_i)
|
||||
ON fac_tracking
|
||||
COMPOUND TRIGGER
|
||||
newkey fac_tracking.fac_tracking_key%TYPE;
|
||||
srtkey fac_tracking.fac_srtnotificatie_key%TYPE;
|
||||
refkey fac_tracking.fac_tracking_refkey%TYPE;
|
||||
omschr fac_tracking.fac_tracking_oms%TYPE;
|
||||
prskey fac_tracking.prs_perslid_key%TYPE;
|
||||
notify_bedrijven BOOLEAN := FALSE;
|
||||
|
||||
BEFORE EACH ROW
|
||||
IS
|
||||
@@ -611,16 +606,12 @@ CREATE_TRIGGER(fac_t_fac_tracking_b_i)
|
||||
ELSIF SUBSTR(:new.fac_tracking_oms, 1, 1) = '@' -- Technische adressen niet notificeren, wel personen
|
||||
THEN
|
||||
:new.fac_tracking_oms := SUBSTR(:new.fac_tracking_oms, 2);
|
||||
newkey := :new.fac_tracking_key;
|
||||
fac.notifytracking(:new.fac_srtnotificatie_key, :new.prs_perslid_key, :new.fac_tracking_oms, :new.fac_tracking_refkey, :new.fac_tracking_key);
|
||||
-- geen newkey assignment zodat zo geen fac.notifytrackingbedrijven volgt
|
||||
ELSE
|
||||
fac.notifytracking(:new.fac_srtnotificatie_key, :new.prs_perslid_key, :new.fac_tracking_oms, :new.fac_tracking_refkey, :new.fac_tracking_key);
|
||||
newkey := :new.fac_tracking_key;
|
||||
notify_bedrijven := TRUE;
|
||||
-- Alleen hier ook fac.notifytrackingbedrijven uitvoeren
|
||||
END IF;
|
||||
srtkey := :new.fac_srtnotificatie_key;
|
||||
refkey := :new.fac_tracking_refkey;
|
||||
prskey := :new.prs_perslid_key;
|
||||
omschr := :new.fac_tracking_oms;
|
||||
END BEFORE EACH ROW;
|
||||
|
||||
AFTER STATEMENT
|
||||
@@ -628,11 +619,7 @@ CREATE_TRIGGER(fac_t_fac_tracking_b_i)
|
||||
BEGIN
|
||||
IF newkey IS NOT NULL
|
||||
THEN
|
||||
fac.notifytracking(srtkey, prskey, omschr, refkey, newkey);
|
||||
IF notify_bedrijven
|
||||
THEN
|
||||
fac.notifytrackingbedrijven (newkey);
|
||||
END IF;
|
||||
fac.notifytrackingbedrijven (newkey);
|
||||
END IF;
|
||||
END AFTER STATEMENT;
|
||||
END;
|
||||
|
||||
299
FAC/FAC_VIE.SRC
299
FAC/FAC_VIE.SRC
@@ -635,11 +635,7 @@ AS
|
||||
|| (SELECT bes_bestelopdr_id
|
||||
FROM bes_bestelopdr o
|
||||
WHERE bes_bestelopdr_key = fac_notificatie_refkey),
|
||||
'reservering', 'Reservation '
|
||||
|| (SELECT res_reservering_key || '/' || res_rsv_ruimte_volgnr
|
||||
FROM res_rsv_ruimte o
|
||||
WHERE res_rsv_ruimte_key = fac_notificatie_extrakey),
|
||||
fac_srtnotificatie_xmlnode || ' key ' || fac_notificatie_refkey)
|
||||
fac_notificatie_refkey)
|
||||
|| ' to '
|
||||
|| COALESCE ((SELECT (prs_bedrijf_naam)
|
||||
FROM prs_bedrijf b, prs_bedrijfadres pba
|
||||
@@ -847,33 +843,34 @@ CREATE_VIEW (fac_v_imp_res_artikel_sync ,0) (hide_f_artikel_catalogus,
|
||||
artikelMinimum
|
||||
)
|
||||
AS
|
||||
SELECT d.ins_discipline_omschrijving,
|
||||
a.res_artikel_omschrijving,
|
||||
TO_CHAR (a.res_artikel_key),
|
||||
d.ins_discipline_omschrijving,
|
||||
(SELECT k.prs_kostensoort_oms
|
||||
FROM prs_kostensoort k
|
||||
WHERE k.prs_kostensoort_key = d.prs_kostensoort_key),
|
||||
a.res_artikel_nr,
|
||||
a.res_artikel_omschrijving,
|
||||
a.res_artikel_eenheid,
|
||||
TO_CHAR (a.res_artikel_prijs),
|
||||
TO_CHAR (a.res_artikel_prijs_vast),
|
||||
TO_CHAR (a.res_artikel_inkoopprijs),
|
||||
TO_CHAR (a.res_artikel_kostenpersoneel),
|
||||
TO_CHAR (a.res_artikel_kostenalgemeen),
|
||||
TO_CHAR (a.res_artikel_btw),
|
||||
a.res_artikel_opmerking,
|
||||
a.res_artikel_groep,
|
||||
TO_CHAR (a.res_artikel_volgnummer),
|
||||
TO_CHAR (a.res_artikel_ingangsdatum, 'YYYYMMDD'),
|
||||
TO_CHAR (a.res_artikel_vervaldatum, 'YYYYMMDD'),
|
||||
TO_CHAR (a.res_artikel_minimum)
|
||||
FROM res_v_aanwezigartikel a
|
||||
, res_discipline d
|
||||
WHERE d.ins_discipline_key = a.res_discipline_key
|
||||
AND d.ins_discipline_verwijder IS NULL;
|
||||
|
||||
SELECT (SELECT ins_discipline_omschrijving
|
||||
FROM ins_tab_discipline d
|
||||
WHERE d.ins_discipline_key = res_discipline_key),
|
||||
res_artikel_omschrijving,
|
||||
TO_CHAR (res_artikel_key),
|
||||
(SELECT ins_discipline_omschrijving
|
||||
FROM ins_tab_discipline d
|
||||
WHERE d.ins_discipline_key = res_discipline_key),
|
||||
(SELECT prs_kostensoort_oms
|
||||
FROM ins_tab_discipline d, prs_kostensoort k
|
||||
WHERE d.ins_discipline_key = res_discipline_key
|
||||
AND d.prs_kostensoort_key = k.prs_kostensoort_key),
|
||||
res_artikel_nr,
|
||||
res_artikel_omschrijving,
|
||||
res_artikel_eenheid,
|
||||
TO_CHAR (res_artikel_prijs),
|
||||
TO_CHAR (res_artikel_prijs_vast),
|
||||
TO_CHAR (res_artikel_inkoopprijs),
|
||||
TO_CHAR (res_artikel_kostenpersoneel),
|
||||
TO_CHAR (res_artikel_kostenalgemeen),
|
||||
TO_CHAR (res_artikel_btw),
|
||||
res_artikel_opmerking,
|
||||
res_artikel_groep,
|
||||
TO_CHAR (res_artikel_volgnummer),
|
||||
TO_CHAR (res_artikel_ingangsdatum, 'YYYYMMDD'),
|
||||
TO_CHAR (res_artikel_vervaldatum, 'YYYYMMDD'),
|
||||
TO_CHAR (res_artikel_minimum)
|
||||
FROM res_v_aanwezigartikel;
|
||||
|
||||
/* View met het maximale actuele menu van de huidige configuratie */
|
||||
CREATE_VIEW (fac_v_menu, 0)
|
||||
@@ -987,89 +984,92 @@ AS
|
||||
WHERE imp_log_applicatie = '$PutOrders$' AND imp_log_datum > SYSDATE - 10;
|
||||
|
||||
CREATE_VIEW (fac_v_lcrap_fe_vs_key_data, 0)
|
||||
(
|
||||
prs_perslid_key
|
||||
, naam
|
||||
, usertype
|
||||
, oslogin
|
||||
, last_login
|
||||
, key_user
|
||||
)
|
||||
AS
|
||||
SELECT x.prs_perslid_key
|
||||
, naam
|
||||
, usertype
|
||||
, oslogin
|
||||
, last_login
|
||||
, a.key_user
|
||||
FROM (SELECT p.prs_perslid_key
|
||||
, (SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam
|
||||
, 'user'
|
||||
usertype
|
||||
, COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin
|
||||
, p.prs_perslid_login
|
||||
last_login
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE ( prs_perslid_oslogin IS NULL
|
||||
OR prs_perslid_oslogin NOT IN ('_FACILITOR'
|
||||
, '_PUTORDERS'
|
||||
, '_HMAIL'
|
||||
, '_SYSTEEM'))
|
||||
AND EXISTS -- op basis van groep + rechten
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker
|
||||
WHERE prs_perslid_key = p.prs_perslid_key)
|
||||
UNION ALL
|
||||
SELECT p.prs_perslid_key
|
||||
, (SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam
|
||||
, 'user'
|
||||
usertype
|
||||
, COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin
|
||||
, NULL
|
||||
last_login -- geen login (lees zonder rechten), dus telt als nooit recent ingelogd!
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE NOT EXISTS -- g<><67>n groep + rechten!
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker gg
|
||||
WHERE gg.prs_perslid_key = p.prs_perslid_key)
|
||||
AND ( fac.getsetting ('mld_allow_for_others') = 1
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM bes_disc_params dp, bes_discipline bd
|
||||
WHERE dp.bes_disc_params_for_others = 1 AND bd.ins_discipline_key = dp.bes_ins_discipline_key AND bd.ins_discipline_verwijder IS NULL))
|
||||
UNION ALL -- FSN#27315: En ook eventuele "sensorusers" meetellen!
|
||||
SELECT NULL prs_perslid_key
|
||||
, sd.ins_srtdeel_omschrijving naam
|
||||
, 'sensorobject' usertype
|
||||
, ins_deel_omschrijving oslogin
|
||||
, ins_deel_statedate last_login -- recent actief dus tellen als recent
|
||||
FROM ins_v_aanwezigdeel d, ins_srtdeel sd
|
||||
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key AND NVL (sd.ins_srtdeel_sensortype, 0) <> 0) x
|
||||
LEFT JOIN -- 1=user heeft schrijfrechten op key-codes=notFE-codes
|
||||
(SELECT DISTINCT prs_perslid_key, 1 key_user
|
||||
FROM (SELECT g.prs_perslid_key, 1 key_user
|
||||
FROM fac_v_webgebruiker g, fac_functie f
|
||||
WHERE g.fac_functie_key = f.fac_functie_key AND f.fac_functie_groep IN (1, 2) AND g.fac_gebruiker_prs_level_write < 9 AND g.fac_gebruiker_alg_level_write < 9
|
||||
UNION
|
||||
SELECT p.prs_perslid_key, 1 key_user
|
||||
FROM fac_groep fg, fac_gebruikersgroep fgg, prs_perslid p
|
||||
WHERE fac_groep_collega = 1
|
||||
AND fg.fac_groep_key = fgg.fac_groep_key
|
||||
AND p.prs_perslid_key = fgg.prs_perslid_key
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND fg.fac_groep_key IN ( SELECT fac_groep_key
|
||||
FROM fac_gebruikersgroep
|
||||
GROUP BY fac_groep_key
|
||||
HAVING COUNT (prs_perslid_key) > 9))) a
|
||||
ON x.prs_perslid_key = a.prs_perslid_key;
|
||||
SELECT x.prs_perslid_key,
|
||||
naam,
|
||||
usertype,
|
||||
oslogin,
|
||||
last_login,
|
||||
a.key_user,
|
||||
b.xd_user
|
||||
FROM (SELECT p.prs_perslid_key,
|
||||
(SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam,
|
||||
'user'
|
||||
usertype,
|
||||
COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin,
|
||||
p.prs_perslid_login
|
||||
last_login
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE ( prs_perslid_oslogin IS NULL
|
||||
OR prs_perslid_oslogin NOT IN ('_FACILITOR', '_PUTORDERS', '_HMAIL'))
|
||||
AND EXISTS -- op basis van groep + rechten
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker
|
||||
WHERE prs_perslid_key = p.prs_perslid_key)
|
||||
UNION ALL
|
||||
SELECT p.prs_perslid_key,
|
||||
(SELECT prs_perslid_naam_full
|
||||
FROM prs_v_perslid_fullnames_all pf
|
||||
WHERE pf.prs_perslid_key = p.prs_perslid_key)
|
||||
naam,
|
||||
'user'
|
||||
usertype,
|
||||
COALESCE (p.prs_perslid_oslogin, p.prs_perslid_oslogin2)
|
||||
oslogin,
|
||||
NULL
|
||||
last_login -- geen login (lees zonder rechten), dus telt als nooit recent ingelogd!
|
||||
FROM prs_v_aanwezigperslid p
|
||||
WHERE NOT EXISTS -- g<EFBFBD><EFBFBD>n groep + rechten!
|
||||
(SELECT 1
|
||||
FROM fac_v_webgebruiker gg
|
||||
WHERE gg.prs_perslid_key = p.prs_perslid_key)
|
||||
AND ( fac.getsetting ('mld_allow_for_others') = 1
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
FROM bes_disc_params dp, bes_discipline bd
|
||||
WHERE dp.bes_disc_params_for_others = 1
|
||||
AND bd.ins_discipline_key = dp.bes_ins_discipline_key
|
||||
AND bd.ins_discipline_verwijder IS NULL))
|
||||
UNION ALL -- FSN#27315: En ook eventuele "sensorusers" meetellen!
|
||||
SELECT NULL prs_perslid_key,
|
||||
sd.ins_srtdeel_omschrijving naam,
|
||||
'sensorobject' usertype,
|
||||
ins_deel_omschrijving oslogin,
|
||||
ins_deel_statedate last_login -- recent actief dus tellen als recent
|
||||
FROM ins_v_aanwezigdeel d, ins_srtdeel sd
|
||||
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key AND NVL(sd.ins_srtdeel_sensortype,0) <> 0) x
|
||||
LEFT JOIN -- 1=user heeft schrijfrechten op key-codes=notFE-codes
|
||||
(SELECT DISTINCT prs_perslid_key, 1 key_user
|
||||
FROM (SELECT g.prs_perslid_key, 1 key_user
|
||||
FROM fac_v_webgebruiker g, fac_functie f
|
||||
WHERE g.fac_functie_key = f.fac_functie_key
|
||||
AND f.fac_functie_groep IN (1, 2)
|
||||
AND g.fac_gebruiker_prs_level_write < 9
|
||||
AND g.fac_gebruiker_alg_level_write < 9
|
||||
UNION
|
||||
SELECT p.prs_perslid_key, 1 key_user
|
||||
FROM fac_groep fg, fac_gebruikersgroep fgg, prs_perslid p
|
||||
WHERE fac_groep_collega = 1
|
||||
AND fg.fac_groep_key = fgg.fac_groep_key
|
||||
AND p.prs_perslid_key = fgg.prs_perslid_key
|
||||
AND p.prs_perslid_verwijder IS NULL
|
||||
AND fg.fac_groep_key IN ( SELECT fac_groep_key
|
||||
FROM fac_gebruikersgroep
|
||||
GROUP BY fac_groep_key
|
||||
HAVING COUNT (prs_perslid_key) > 9))) a
|
||||
ON x.prs_perslid_key = a.prs_perslid_key
|
||||
LEFT JOIN -- FSN#30404: 1=user is cross-domain (xd) user
|
||||
(SELECT p.prs_perslid_key, 1 xd_user
|
||||
FROM prs_v_aanwezigperslid p, prs_v_afdeling_boom ab
|
||||
WHERE p.prs_afdeling_key = ab.prs_afdeling_key
|
||||
AND p.prs_perslid_apikey IS NOT NULL
|
||||
AND ab.prs_bedrijf_key =
|
||||
fac.safe_to_number (fac.getsetting ('xd_primary_bedrijfkey'))) b
|
||||
ON x.prs_perslid_key = b.prs_perslid_key;
|
||||
|
||||
-- Dit gaan we hanteren om API-users te tellen (zijn dan geen normale keyusers meer)
|
||||
CREATE_VIEW (fac_v_lcrap_apiusers, 0)
|
||||
@@ -1098,43 +1098,37 @@ AS
|
||||
-- personen zonder rechten worden als passive_user toegevoegd
|
||||
CREATE_VIEW (fac_v_lcrap_fe_vs_key, 0)
|
||||
(
|
||||
tijdstip
|
||||
, licensed_fe_users
|
||||
, licensed_key_users
|
||||
, licensed_device_users
|
||||
, licensed_passive_users
|
||||
, fe_users
|
||||
, key_users
|
||||
, devices
|
||||
, passive_users
|
||||
, all_users
|
||||
, recent_login
|
||||
, licensed_delta_fe
|
||||
, licensed_delta_key
|
||||
, licensed_delta_device
|
||||
, licensed_delta_passive
|
||||
tijdstip,
|
||||
all_users,
|
||||
fe_users,
|
||||
key_users,
|
||||
devices,
|
||||
passive_users,
|
||||
xdkey_users,
|
||||
recent_login
|
||||
)
|
||||
BEQUEATH DEFINER
|
||||
AS
|
||||
SELECT tijdstip
|
||||
, fac.getsetting ('licensed_fe_users') licensed_fe_users
|
||||
, fac.getsetting ('licensed_key_users') licensed_key_users
|
||||
, fac.getsetting ('licensed_device_users') licensed_device_users
|
||||
, fac.getsetting ('licensed_passive_users') licensed_passive_users
|
||||
, fe_users
|
||||
, key_users
|
||||
, NVL (system_users, 0)
|
||||
, NVL (passive_users, 0)
|
||||
, all_users
|
||||
, recent_login
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_fe_users')) - fe_users delta_fe
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_key_users')) - key_users delta_key
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_device_users')) - NVL (system_users, 0) delta_device
|
||||
, fac.safe_to_number (fac.getsetting ('licensed_passive_users')) - NVL (passive_users, 0) delta_passive
|
||||
FROM (SELECT SYSDATE tijdstip
|
||||
, COUNT (*) all_users
|
||||
, COUNT (*) - SUM (DECODE (x.key_user, NULL, 0, 1)) fe_users
|
||||
, SUM (DECODE (x.key_user, NULL, 0, 1)) key_users
|
||||
, SUM (CASE WHEN x.last_login > SYSDATE - 100 THEN 1 ELSE 0 END) recent_login
|
||||
SELECT tijdstip,
|
||||
all_users,
|
||||
fe_users,
|
||||
key_users,
|
||||
NVL (system_users, 0),
|
||||
NVL (passive_users, 0),
|
||||
xdkey_users,
|
||||
recent_login
|
||||
FROM (SELECT SYSDATE
|
||||
tijdstip,
|
||||
COUNT (*)
|
||||
all_users,
|
||||
COUNT (*) - SUM (DECODE (x.key_user, NULL, DECODE (x.xd_user, NULL, 0, 1), 1))
|
||||
fe_users,
|
||||
SUM (DECODE (x.key_user, NULL, 0, DECODE (x.xd_user, NULL, 1, 0)))
|
||||
key_users,
|
||||
SUM (DECODE (x.key_user, NULL, 0, DECODE (x.xd_user, NULL, 0, 1)))
|
||||
xdkey_users,
|
||||
SUM (CASE WHEN x.last_login > SYSDATE - 100 THEN 1 ELSE 0 END)
|
||||
recent_login
|
||||
FROM fac_v_lcrap_fe_vs_key_data x
|
||||
WHERE x.usertype = 'user') a
|
||||
LEFT JOIN (SELECT COUNT (*) system_users
|
||||
@@ -1824,7 +1818,6 @@ AS
|
||||
km.res_kenmerk_niveau kenmerk_niveau,
|
||||
km.res_kenmerk_verplicht kenmerk_verplicht,
|
||||
km.res_kenmerk_groep kenmerk_groep,
|
||||
km.res_kenmerk_rolcode kenmerk_rolcode,
|
||||
km.res_kenmerk_volgnummer kenmerk_volgnummer,
|
||||
km.res_kenmerk_default kenmerk_default,
|
||||
km.res_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -1871,7 +1864,6 @@ AS
|
||||
bes_kenmerk_niveau kenmerk_niveau,
|
||||
bes_kenmerk_verplicht kenmerk_verplicht,
|
||||
bes_kenmerk_groep kenmerk_groep,
|
||||
bes_kenmerk_rolcode kenmerk_rolcode,
|
||||
bes_kenmerk_volgnummer kenmerk_volgnummer,
|
||||
bes_kenmerk_default kenmerk_default,
|
||||
bes_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -1967,7 +1959,6 @@ AS
|
||||
mld_kenmerk_niveau kenmerk_niveau,
|
||||
mld_kenmerk_verplicht kenmerk_verplicht,
|
||||
mld_kenmerk_groep kenmerk_groep,
|
||||
mld_kenmerk_rolcode kenmerk_rolcode,
|
||||
mld_kenmerk_volgnummer kenmerk_volgnummer,
|
||||
mld_kenmerk_default kenmerk_default,
|
||||
mld_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -2121,7 +2112,6 @@ AS
|
||||
km.cnt_kenmerk_niveau kenmerk_niveau,
|
||||
km.cnt_kenmerk_verplicht kenmerk_verplicht,
|
||||
km.cnt_kenmerk_groep kenmerk_groep,
|
||||
km.cnt_kenmerk_rolcode kenmerk_rolcode,
|
||||
km.cnt_kenmerk_volgnummer kenmerk_volgnummer,
|
||||
km.cnt_kenmerk_default kenmerk_default,
|
||||
km.cnt_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -2168,7 +2158,6 @@ AS
|
||||
ins_kenmerk_niveau kenmerk_niveau,
|
||||
ins_kenmerk_verplicht kenmerk_verplicht,
|
||||
ins_kenmerk_groep kenmerk_groep,
|
||||
ins_kenmerk_rolcode kenmerk_rolcode,
|
||||
ins_kenmerk_volgnummer kenmerk_volgnummer,
|
||||
ins_kenmerk_default kenmerk_default,
|
||||
ins_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -2295,7 +2284,6 @@ AS
|
||||
NULL kenmerk_niveau,
|
||||
km.fin_kenmerk_verplicht kenmerk_verplicht,
|
||||
km.fin_kenmerk_groep kenmerk_groep,
|
||||
km.fin_kenmerk_rolcode kenmerk_rolcode,
|
||||
km.fin_kenmerk_volgnr kenmerk_volgnummer,
|
||||
km.fin_kenmerk_default kenmerk_default,
|
||||
km.fin_kenmerk_toonbaar kenmerk_toonbaar,
|
||||
@@ -2335,7 +2323,6 @@ AS
|
||||
, k.ins_kenmerk_niveau kenmerk_niveau
|
||||
, k.ins_kenmerk_verplicht kenmerk_verplicht
|
||||
, k.ins_kenmerk_groep kenmerk_groep
|
||||
, k.ins_kenmerk_rolcode kenmerk_rolcode
|
||||
, k.ins_kenmerk_volgnummer kenmerk_volgnummer
|
||||
, k.ins_kenmerk_default kenmerk_default
|
||||
, k.ins_kenmerk_toonbaar kenmerk_toonbaar
|
||||
|
||||
@@ -558,27 +558,23 @@ SELECT c.cnt_contract_nummer_intern ContractNr
|
||||
, TO_CHAR(c.cnt_contract_termijnkosten) Termijnbedrag --X_termijnbedrag
|
||||
, TO_CHAR(c.cnt_contract_uurloon) Uurtarief --Y_uurtarief
|
||||
, TO_CHAR(c.cnt_contract_korting) Korting --Z_korting
|
||||
, CASE WHEN p.cnt_alg_plaats_code IN ('L','T','G','V','R')
|
||||
THEN g.alg_locatie_code
|
||||
ELSE NULL
|
||||
END locatiecode --AA_locatiecode
|
||||
, CASE WHEN p.cnt_alg_plaats_code IN ('T')
|
||||
THEN g.alg_terreinsector_code
|
||||
ELSE NULL
|
||||
END terreincode --AB_terreincode
|
||||
, CASE WHEN p.cnt_alg_plaats_code IN ('G','V','R')
|
||||
THEN g.alg_gebouw_code
|
||||
ELSE NULL
|
||||
END gebouwcode --AC_gebouwcode
|
||||
, CASE WHEN p.cnt_alg_plaats_code IN ('V','R')
|
||||
THEN g.alg_verdieping_code
|
||||
ELSE NULL
|
||||
END verdiepingcode --AD_verdiepingcode
|
||||
, CASE WHEN p.cnt_alg_plaats_code IN ('R')
|
||||
THEN g.alg_ruimte_nr
|
||||
ELSE NULL
|
||||
END ruimtecode --AE_ruimtecode
|
||||
, c.cnt_contract_verlenging Verlengen --AF_verlengen
|
||||
, p.cnt_alg_plaats_code ScopeType --AA_scope
|
||||
, (SELECT MIN(CASE WHEN p.cnt_alg_plaats_code = 'L' THEN alg_locatie_code
|
||||
WHEN p.cnt_alg_plaats_code = 'G' THEN alg_gebouw_code
|
||||
ELSE ''
|
||||
END)
|
||||
FROM alg_v_gebouw_gegevens
|
||||
WHERE CASE WHEN p.cnt_alg_plaats_code = 'L' THEN alg_locatie_key
|
||||
WHEN p.cnt_alg_plaats_code = 'G' THEN alg_gebouw_key
|
||||
END = p.cnt_alg_plaats_key
|
||||
) LocatieGebouw_code --AB_locatiegebouw
|
||||
, c.cnt_contract_verlenging Verlengen --AC_verlengen
|
||||
--, CASE WHEN c.cnt_contract_verlenging = 5
|
||||
-- THEN cnt.cnt_getTermijndatum( c.cnt_contract_looptijd_tot
|
||||
-- , c.cnt_contract_verleng_termijn
|
||||
-- , 1)
|
||||
-- ELSE NULL
|
||||
-- END Verlengdatum
|
||||
FROM cnt_contract c
|
||||
, (SELECT mm.cnt_contract_key
|
||||
, mm.cnt_contract_nummer_intern
|
||||
@@ -589,20 +585,6 @@ SELECT c.cnt_contract_nummer_intern ContractNr
|
||||
AND md.cnt_srtcontract_type = 6
|
||||
AND mm.cnt_contract_status != 1
|
||||
) m
|
||||
, (SELECT o.*, l.alg_locatie_code
|
||||
FROM alg_v_onroerendgoed_gegevens o
|
||||
, alg_locatie l
|
||||
WHERE o.alg_locatie_key = l.alg_locatie_key
|
||||
UNION
|
||||
SELECT l.alg_locatie_key, NULL, NULL
|
||||
, l.alg_locatie_code, NULL
|
||||
, NULL, NULL, NULL
|
||||
, NULL, NULL, NULL
|
||||
, NULL, NULL, NULL
|
||||
, NULL, NULL, NULL
|
||||
, l.alg_locatie_key, 'L', l.alg_locatie_code
|
||||
FROM alg_locatie l
|
||||
) g
|
||||
, cnt_contract_plaats p
|
||||
, prs_afdeling a
|
||||
, prs_v_aanwezigperslid b
|
||||
@@ -612,7 +594,7 @@ SELECT c.cnt_contract_nummer_intern ContractNr
|
||||
AND c.cnt_contract_key = p.cnt_contract_key(+)
|
||||
AND c.prs_afdeling_key_eig = a.prs_afdeling_key
|
||||
AND c.prs_perslid_key_beh = b.prs_perslid_key
|
||||
AND c.prs_perslid_key_eig = e.prs_perslid_key(+)
|
||||
AND c.prs_perslid_key_eig = e.prs_perslid_key
|
||||
AND c.prs_kostenplaats_key = k.prs_kostenplaats_key
|
||||
AND c.cnt_contract_verwijder IS NULL
|
||||
AND a.prs_afdeling_verwijder IS NULL
|
||||
|
||||
4
FCLT.NMK
4
FCLT.NMK
@@ -60,8 +60,8 @@ PROJEXE=z:\Project\FACILITOR\BUILD
|
||||
##
|
||||
## New style using schemanumbers
|
||||
##
|
||||
CURRENTVERSION=50
|
||||
NEXTVERSION=51
|
||||
CURRENTVERSION=49
|
||||
NEXTVERSION=50
|
||||
FILEVERSION=a
|
||||
NEXTROOT=DB$(NEXTVERSION)$(FILEVERSION)
|
||||
CURRENTUPDATE=DB$(CURRENTVERSION)to$(NEXTVERSION)
|
||||
|
||||
@@ -190,9 +190,6 @@ CREATE_TABLE(fin_kenmerk,0)
|
||||
,fin_kenmerk_volgnr
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
,fin_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
,fin_kenmerk_omschrijving
|
||||
VARCHAR2(50)
|
||||
,fin_kenmerk_upper
|
||||
|
||||
@@ -905,14 +905,14 @@ fac.writelog ('INI.ITSM_INI','I', 'FAC completed', '');
|
||||
|
||||
-- Kenmerksoorten per standaardmelding
|
||||
-- Incidenten hebben kenmerken op vakgroeptypeniveau zodat een klant eenvoudig zelf incidenten kan toevoegen
|
||||
INSERT INTO mld_kenmerk (mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_rolcode, mld_kenmerk_volgnummer, mld_kenmerk_omschrijving)
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 7, 5 , 'Onderzoek en diagnose' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Bloktitel'
|
||||
INSERT INTO mld_kenmerk (mld_srtkenmerk_key, mld_stdmelding_key, mld_kenmerk_niveau, mld_kenmerk_volgnummer, mld_kenmerk_omschrijving)
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 5 , 'Onderzoek en diagnose' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Bloktitel'
|
||||
UNION ALL
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 7, 10 , 'Bijlagen' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Bijlagen'
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 10 , 'Bijlagen' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Bijlagen'
|
||||
UNION ALL
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 4, 20 , 'Workaround mogelijk?' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Ja/Nee/Nvt'
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 905 , 'Workaround mogelijk?' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Ja/Nee/Nvt'
|
||||
UNION ALL
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 4, 30 , 'Toelichting/beschrijving workaround' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Tekstblok';
|
||||
SELECT sk.mld_srtkenmerk_key, v_vgt_incident, 'T', 910 , 'Toelichting/beschrijving workaround' FROM mld_srtkenmerk sk WHERE sk.mld_srtkenmerk_omschrijving = 'ITSM Tekstblok';
|
||||
|
||||
-- Niet-standaard wijzigingen hebben kenmerken op vakgroep niveau zodat een klant eenvoudig een nieuwe categorie niet-standaard wijziging kan toevoegen
|
||||
-- Niet-standaard wijziging kennen Deelmeldingen
|
||||
|
||||
@@ -10,8 +10,21 @@ _FAC_MODULE('SLE','lcl_module_SLE')
|
||||
INSERT INTO ins_scenario(ins_scenario_key, ins_scenario_omschrijving)
|
||||
VALUES (1, 'Actual scenario');
|
||||
|
||||
DEF_RAPPORT('BASIS', 'WEB_SLEFOF', 0, 'ins_v_rap_sle_toegang', 'UDR: Sleuteloverzicht', 'Basisrapport voor sleutels',
|
||||
'UDR: Key management', 'Basic report for key management')
|
||||
INSERT INTO fac_usrrap
|
||||
(fac_usrrap_omschrijving, fac_usrrap_view_name,
|
||||
fac_usrrap_vraagbegindatum, fac_usrrap_vraageinddatum,
|
||||
fac_usrrap_functie,
|
||||
fac_usrrap_info,
|
||||
fac_functie_key, fac_usrrap_autorefresh
|
||||
)
|
||||
VALUES ('SLE: Sleuteloverzicht', 'ins_v_rap_sle_toegang',
|
||||
0, 0,
|
||||
0,
|
||||
'Overzicht van sleutels en bezitters',
|
||||
(SELECT fac_functie_key FROM fac_functie
|
||||
WHERE fac_functie_code = 'WEB_SLEFOF'),
|
||||
0
|
||||
);
|
||||
|
||||
DEF_STATUS('controle', 0, 'lcl_ins_controle_pending');
|
||||
DEF_STATUS('controle', 2, 'lcl_ins_controle_gestart');
|
||||
|
||||
@@ -850,9 +850,6 @@ CREATE_TABLE(ins_kenmerk, 0)
|
||||
ins_kenmerk_volgnummer
|
||||
NUMBER(3)
|
||||
NOT NULL,
|
||||
ins_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL,
|
||||
ins_kenmerk_locatiekolom
|
||||
VARCHAR2(30),
|
||||
ins_kenmerk_uniek
|
||||
|
||||
457
MLD/MLD_PAC.SRC
457
MLD/MLD_PAC.SRC
@@ -62,15 +62,6 @@ CREATE OR REPLACE PACKAGE mld AS
|
||||
eenheid IN VARCHAR2 DEFAULT NULL
|
||||
) RETURN MLD_T_UITVOERTIJD;
|
||||
FUNCTION getactualuitvoer (p_melding_key IN NUMBER) RETURN MLD_T_UITVOERTIJD;
|
||||
FUNCTION getactualaccept (startdate IN DATE,
|
||||
enddate IN DATE,
|
||||
stdm_key IN NUMBER,
|
||||
prio IN NUMBER,
|
||||
alg_key IN NUMBER,
|
||||
ins_key IN NUMBER,
|
||||
eenheid IN VARCHAR2 DEFAULT NULL
|
||||
) RETURN MLD_T_UITVOERTIJD;
|
||||
FUNCTION getactualaccept (p_melding_key IN NUMBER) RETURN MLD_T_UITVOERTIJD;
|
||||
FUNCTION getstduitvoer (stdm_key IN NUMBER,
|
||||
prio IN NUMBER,
|
||||
alg_key IN NUMBER,
|
||||
@@ -82,7 +73,6 @@ CREATE OR REPLACE PACKAGE mld AS
|
||||
ins_key IN NUMBER,
|
||||
v_mld_stdmelding_regime OUT NUMBER,
|
||||
v_uitvoertijd_object OUT MLD_T_UITVOERTIJD,
|
||||
v_accepttijd OUT MLD_T_UITVOERTIJD,
|
||||
v_beginuur OUT NUMBER,
|
||||
v_einduur OUT NUMBER,
|
||||
v_werkdagen OUT NUMBER
|
||||
@@ -1485,7 +1475,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
preference => bedrijfrec.reference,
|
||||
ptypeopdr_key => bedrijfrec.mld_typeopdr_key,
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pdiscipline_key => bedrijfrec.mld_opdr_discipline_key,
|
||||
pdisc_key => bedrijfrec.mld_opdr_discipline_key,
|
||||
psender => bedrijfrec.alg_locatie_email,
|
||||
pbedrijf_key2 => bedrijfrec.persoon_bedrijf_key,
|
||||
pnotidelay => pnotidelay);
|
||||
@@ -1532,9 +1522,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
ptrackingkey => ptrackingkey,
|
||||
preference => bedrijfrec.reference,
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pdiscipline_key => bedrijfrec.mld_ins_discipline_key,
|
||||
pdisc_key => bedrijfrec.mld_ins_discipline_key,
|
||||
psender => bedrijfrec.alg_locatie_email,
|
||||
pbedrijf_key2 => bedrijfrec.persoon_bedrijf_key,
|
||||
pnotidelay => pnotidelay);
|
||||
END LOOP;
|
||||
END;
|
||||
@@ -1795,10 +1784,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
l_alg_gebouw_key alg_v_allonrgoed_gegevens.alg_gebouw_key%TYPE;
|
||||
l_alg_verdieping_key alg_v_allonrgoed_gegevens.alg_verdieping_key %TYPE;
|
||||
l_alg_ruimte_key alg_v_allonrgoed_gegevens.alg_ruimte_key%TYPE;
|
||||
l_alg_type alg_v_allonrgoed_gegevens.alg_type%TYPE;
|
||||
l_prs_dienst_key NUMBER;
|
||||
l_prs_bedrijf_key prs_v_aanwezigbedrijf.prs_bedrijf_key%TYPE;
|
||||
l_cnt_contract_key cnt_contract.cnt_contract_key%TYPE;
|
||||
l_aantal NUMBER;
|
||||
l_bdl_tijdsduur prs_bedrijfdienstlocatie.prs_bdl_t_uitvoertijd.tijdsduur%TYPE;
|
||||
l_bdl_eenheid prs_bedrijfdienstlocatie.prs_bdl_t_uitvoertijd.eenheid%TYPE;
|
||||
@@ -1902,9 +1889,9 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
, mto.mld_typeopdr_fvs
|
||||
, mto.mld_typeopdr_gvs
|
||||
, mto.mld_typeopdr_isofferte
|
||||
, mto.mld_typeopdr_kosten
|
||||
, mto.mld_typeopdr_kosten_verplicht
|
||||
, mto.mld_typeopdr_slamode
|
||||
, mld_typeopdr_kosten
|
||||
, mld_typeopdr_kosten_verplicht
|
||||
, mld_typeopdr_slamode
|
||||
INTO l_mld_typeopdr_key
|
||||
, l_mld_typeopdr_fvs
|
||||
, l_mld_typeopdr_gvs
|
||||
@@ -2046,11 +2033,9 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
SELECT g.alg_gebouw_key
|
||||
, g.alg_verdieping_key
|
||||
, g.alg_ruimte_key
|
||||
, g.alg_type
|
||||
INTO l_alg_gebouw_key
|
||||
, l_alg_verdieping_key
|
||||
, l_alg_ruimte_key
|
||||
, l_alg_type
|
||||
FROM alg_v_allonrgoed_gegevens g
|
||||
WHERE g.alg_onroerendgoed_keys = l_mld_alg_onroerendgoed_keys;
|
||||
END IF;
|
||||
@@ -2071,7 +2056,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
|
||||
IF l_prs_dienst_key IS NOT NULL
|
||||
THEN
|
||||
-- Controleer of er <20><>n bedrijf is dat deze dienst levert (op deze locatie/dit gebouw) via prs_bedrijfdienstlocatie
|
||||
-- Controleer of er <20><>n bedrijf is dat deze dienst levert (op deze locatie/dit gebouw)
|
||||
IF l_alg_gebouw_key IS NOT NULL
|
||||
THEN
|
||||
SELECT MIN(bdl.prs_bedrijf_key) prs_bedrijf_key
|
||||
@@ -2086,13 +2071,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
, prs_v_aanwezigbedrijf b
|
||||
WHERE bdl.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND bdl.prs_dienst_key = l_prs_dienst_key
|
||||
AND ( ( bdl.alg_gebouw_key = l_alg_gebouw_key
|
||||
OR bdl.alg_gebouw_key IS NULL
|
||||
)
|
||||
AND ( bdl.alg_locatie_key = l_mld_alg_locatie_key
|
||||
OR bdl.alg_locatie_key IS NULL
|
||||
)
|
||||
)
|
||||
AND ((bdl.alg_gebouw_key = l_alg_gebouw_key
|
||||
OR bdl.alg_gebouw_key IS NULL)
|
||||
AND (bdl.alg_locatie_key = l_mld_alg_locatie_key
|
||||
OR bdl.alg_locatie_key IS NULL))
|
||||
AND bdl.mld_autoorder = 1;
|
||||
ELSIF l_mld_alg_locatie_key IS NOT NULL
|
||||
THEN
|
||||
@@ -2108,9 +2090,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
, prs_v_aanwezigbedrijf b
|
||||
WHERE bdl.prs_bedrijf_key = b.prs_bedrijf_key
|
||||
AND bdl.prs_dienst_key = l_prs_dienst_key
|
||||
AND ( bdl.alg_locatie_key = l_mld_alg_locatie_key
|
||||
OR bdl.alg_locatie_key IS NULL
|
||||
)
|
||||
AND (bdl.alg_locatie_key = l_mld_alg_locatie_key
|
||||
OR bdl.alg_locatie_key IS NULL)
|
||||
AND bdl.mld_autoorder = 1;
|
||||
ELSE
|
||||
SELECT MIN(bdl.prs_bedrijf_key) prs_bedrijf_key
|
||||
@@ -2135,56 +2116,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
THEN
|
||||
l_prs_bedrijf_key := NULL;
|
||||
END IF;
|
||||
--
|
||||
-- Controleer of er <20><>n bedrijf is dat deze dienst levert (op deze locatie/dit gebouw) via cnt_contract_plaats
|
||||
IF l_aantal <> 1
|
||||
THEN
|
||||
IF l_mld_alg_onroerendgoed_keys IS NOT NULL
|
||||
THEN
|
||||
SELECT MIN(c.cnt_prs_bedrijf_key) cnt_prs_bedrijf_key
|
||||
, MIN(cp.cnt_contract_key) cnt_contract_key
|
||||
, COUNT(DISTINCT c.cnt_prs_bedrijf_key) aantal
|
||||
INTO l_prs_bedrijf_key
|
||||
, l_cnt_contract_key
|
||||
, l_aantal
|
||||
FROM cnt_contract c
|
||||
, cnt_contract_plaats cp
|
||||
, cnt_disc_params cd
|
||||
WHERE cp.cnt_contract_key = c.cnt_contract_key
|
||||
AND cd.cnt_ins_discipline_key = c.ins_discipline_key
|
||||
AND SYSDATE BETWEEN c.cnt_contract_looptijd_van
|
||||
AND c.cnt_contract_looptijd_tot
|
||||
AND c.cnt_contract_verwijder IS NULL
|
||||
AND cd.cnt_srtcontract_type IN (3,5)
|
||||
AND cp.cnt_alg_plaats_key = l_mld_alg_onroerendgoed_keys
|
||||
AND cp.cnt_alg_plaats_code = l_alg_type
|
||||
AND c.prs_dienst_key = l_prs_dienst_key;
|
||||
ELSE
|
||||
SELECT MIN(c.cnt_prs_bedrijf_key) cnt_prs_bedrijf_key
|
||||
, MIN(cp.cnt_contract_key) cnt_contract_key
|
||||
, COUNT(DISTINCT c.cnt_prs_bedrijf_key) aantal
|
||||
INTO l_prs_bedrijf_key
|
||||
, l_cnt_contract_key
|
||||
, l_aantal
|
||||
FROM cnt_contract c
|
||||
, cnt_contract_plaats cp
|
||||
, cnt_disc_params cd
|
||||
WHERE cp.cnt_contract_key = c.cnt_contract_key
|
||||
AND cd.cnt_ins_discipline_key = c.ins_discipline_key
|
||||
AND SYSDATE BETWEEN c.cnt_contract_looptijd_van
|
||||
AND c.cnt_contract_looptijd_tot
|
||||
AND c.cnt_contract_verwijder IS NULL
|
||||
AND cd.cnt_srtcontract_type IN (3,5)
|
||||
AND cp.cnt_alg_plaats_key = l_mld_alg_locatie_key
|
||||
AND cp.cnt_alg_plaats_code = 'L'
|
||||
AND c.prs_dienst_key = l_prs_dienst_key;
|
||||
END IF;
|
||||
IF l_aantal <> 1
|
||||
THEN
|
||||
l_prs_bedrijf_key := NULL;
|
||||
l_cnt_contract_key := NULL;
|
||||
END IF;
|
||||
END IF;
|
||||
END IF;
|
||||
IF l_prs_bedrijf_key IS NULL
|
||||
THEN
|
||||
@@ -2311,7 +2242,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
mld_opdr_bedrijfopdr_volgnr,
|
||||
mld_typeopdr_key,
|
||||
mld_uitvoerende_keys,
|
||||
cnt_contract_key,
|
||||
prs_perslid_key,
|
||||
prs_kostenplaats_key,
|
||||
prs_kostensoort_key,
|
||||
@@ -2327,7 +2257,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
mld.bepaalopdrmeldingvolgnr(p_melding_key),
|
||||
l_mld_typeopdr_key,
|
||||
l_prs_bedrijf_key,
|
||||
l_cnt_contract_key,
|
||||
CASE
|
||||
WHEN l_haswrite = 1
|
||||
THEN l_prs_perslid_key
|
||||
@@ -2412,7 +2341,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
AND k.mld_srtkenmerk_key = t.mld_srtkenmerk_key
|
||||
AND t.mld_srtkenmerk_verwijder IS NULL
|
||||
AND t.mld_srtkenmerk_kenmerktype <> 'M'
|
||||
AND BITAND(k.mld_kenmerk_rolcode, 5) > 0 -- Alleen bij of na afmelden mogen afmeld-kenmerken (x0x of x1x)
|
||||
AND (k.mld_kenmerk_volgnummer <= 100
|
||||
OR k.mld_kenmerk_volgnummer >= 900) -- Alleen bij of na afmelden mogen afmeld-kenmerken tussen de 100..900
|
||||
AND COALESCE((SELECT v.mld_kenmerkmelding_waarde
|
||||
FROM mld_kenmerkmelding v
|
||||
, mld_kenmerk vk
|
||||
@@ -2482,7 +2412,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
AND k.mld_srtkenmerk_key = t.mld_srtkenmerk_key
|
||||
AND t.mld_srtkenmerk_verwijder IS NULL
|
||||
AND t.mld_srtkenmerk_kenmerktype <> 'M'
|
||||
AND BITAND(k.mld_kenmerk_rolcode, 5) > 0 -- Alleen bij of na afmelden mogen afmeld-kenmerken (x0x of x1x)
|
||||
AND (k.mld_kenmerk_volgnummer <= 100
|
||||
OR k.mld_kenmerk_volgnummer >= 900) -- Alleen bij of na afmelden mogen afmeld-kenmerken tussen de 100..900
|
||||
AND COALESCE((SELECT MIN(v.mld_kenmerkmelding_waarde)
|
||||
FROM mld_kenmerkmelding v
|
||||
, mld_kenmerk vk
|
||||
@@ -2506,7 +2437,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
UPDATE mld_opdr
|
||||
SET mld_opdr_teverzenden = 1
|
||||
WHERE mld_opdr_key = l_new_opdr_key;
|
||||
fac.notifytrackingbedrijven ('ORDNEW', l_new_opdr_key);
|
||||
ELSE
|
||||
-- Alleen in geval van een uitvoerder, de opdracht door putorders laten oppikken.
|
||||
BEGIN
|
||||
@@ -2529,7 +2459,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
UPDATE mld_opdr
|
||||
SET mld_opdr_teverzenden = 1
|
||||
WHERE mld_opdr_key = l_new_opdr_key;
|
||||
fac.notifytrackingbedrijven ('ORDNEW', l_new_opdr_key);
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN NULL;
|
||||
@@ -2761,7 +2690,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
-- and the flexprops of p_melding_key if these match the mld_srtkenmerk_key
|
||||
LOOP
|
||||
|
||||
DBMS_OUTPUT.put_line ( 'startkey:'
|
||||
DBMS_OUTPUT.put_line( 'startkey:'
|
||||
|| l_melding_start_key
|
||||
|| ' step key:'
|
||||
|| r_nextsteps.mld_workflowstep_key);
|
||||
@@ -2772,79 +2701,78 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key;
|
||||
|
||||
DBMS_OUTPUT.put_line ('total nr of possible predecessors for next step: ' || l_nrofpossiblepredecessors);
|
||||
DBMS_OUTPUT.put_line (
|
||||
'total nr of possible predecessors for next step: ' || l_nrofpossiblepredecessors);
|
||||
|
||||
SELECT COUNT ( * )
|
||||
INTO l_nrofactualpredecessors -- disregard status
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key
|
||||
)
|
||||
SELECT COUNT ( * )
|
||||
INTO l_nrofactualpredecessors -- disregard status
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key =
|
||||
r_nextsteps.mld_workflowstep_key)
|
||||
-- the step to be continued
|
||||
AND m.mld_melding_start_key = l_melding_start_key; -- for this thread
|
||||
AND mld_melding_start_key = l_melding_start_key; -- for this thread
|
||||
|
||||
DBMS_OUTPUT.put_line ('total nr of actual predecessors for next step: '
|
||||
|| l_nrofactualpredecessors);
|
||||
DBMS_OUTPUT.put_line('total nr of actual predecessors for next step: '
|
||||
|| l_nrofactualpredecessors);
|
||||
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors;
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors;
|
||||
|
||||
-- If there is a difference between l_nrofpossiblepredecessors and l_nrofactualpredecessors there are
|
||||
-- a few possibilities:
|
||||
-- a. an actual predecessor has not been started yet (workflow branches are unequal length)
|
||||
-- b. an actual predecessor has not been started and will not start due to a condition
|
||||
-- In case a. the predecessor will start eventually and then trigger the next step.
|
||||
-- Then l_nrofreadypredecessors = l_nrofpossiblepredecessors
|
||||
-- In case b. the l_nrofreadypredecessors will never reach l_nrofpossiblepredecessors, the
|
||||
-- next step will be triggered when l_nrofreadypredecessors = l_nrofactualpredecessors
|
||||
-- The question is: how do we distinguish a and b?
|
||||
--
|
||||
-- Suggestion: backtracking the workflow for the step that is not (yet) there?
|
||||
IF l_nrofpossiblepredecessors > l_nrofactualpredecessors
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT wr1.mld_workflowstep_key
|
||||
INTO l_common_ancestor
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key
|
||||
)
|
||||
GROUP BY wr1.mld_workflowstep_key;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND OR TOO_MANY_ROWS
|
||||
THEN
|
||||
-- If there is a difference between l_nrofpossiblepredecessors and l_nrofactualpredecessors there are
|
||||
-- a few possibilities:
|
||||
-- a. an actual predecessor has not been started yet (workflow branches are unequal length)
|
||||
-- b. an actual predecessor has not been started and will not start due to a condition
|
||||
-- In case a. the predecessor will start eventually and then trigger the next step.
|
||||
-- Then l_nrofreadypredecessors = l_nrofpossiblepredecessors
|
||||
-- In case b. the l_nrofreadypredecessors will never reach l_nrofpossiblepredecessors, the
|
||||
-- next step will be triggered when l_nrofreadypredecessors = l_nrofactualpredecessors
|
||||
-- The question is: how do we distinguish a and b?
|
||||
--
|
||||
-- Suggestion: backtracking the workflow for the step that is not (yet) there?
|
||||
IF l_nrofpossiblepredecessors > l_nrofactualpredecessors
|
||||
THEN
|
||||
BEGIN
|
||||
SELECT wr1.mld_workflowstep_key
|
||||
INTO l_common_ancestor
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key)
|
||||
GROUP BY wr1.mld_workflowstep_key;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND OR TOO_MANY_ROWS
|
||||
THEN
|
||||
l_common_ancestor := -1;
|
||||
END;
|
||||
END;
|
||||
|
||||
IF l_common_ancestor <> -1
|
||||
THEN
|
||||
IF l_common_ancestor <> -1
|
||||
THEN
|
||||
DBMS_OUTPUT.put_line ('Common ancestor detected for all previous workflowsteps, so a condition not met (case b)');
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors;
|
||||
ELSE
|
||||
ELSE
|
||||
-- determine case a or case b
|
||||
FOR missingsteps
|
||||
IN (SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key =
|
||||
r_nextsteps.mld_workflowstep_key
|
||||
MINUS
|
||||
SELECT mld_workflowstep_key
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key
|
||||
)
|
||||
AND mld_melding_start_key = l_melding_start_key
|
||||
)
|
||||
LOOP
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key =
|
||||
r_nextsteps.mld_workflowstep_key)
|
||||
AND mld_melding_start_key = l_melding_start_key) LOOP
|
||||
-- This predecessing step missingsteps.mld_workflowstep_key is possible but not actual. How come?
|
||||
-- Are some of its predecessor(s) not being the root actual in this workflow?
|
||||
-- NOTE THAT THIS NEEDS ATTENTION IF WE NEED TO SUPPORT LONGER, UNBALANCED, CONDITIONAL WORKFLOWS
|
||||
@@ -2853,18 +2781,18 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
INTO l_prepredecessors
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = missingsteps.mld_workflowstep_key
|
||||
)
|
||||
AND mld_melding_key <> l_melding_start_key
|
||||
AND mld_melding_start_key = l_melding_start_key;
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key =
|
||||
missingsteps.mld_workflowstep_key)
|
||||
AND mld_melding_key <> l_melding_start_key
|
||||
AND mld_melding_start_key = l_melding_start_key;
|
||||
|
||||
DBMS_OUTPUT.put_line ('Complex case! Total nr of actual prepredecessors for predecessor-step '
|
||||
|| missingsteps.mld_workflowstep_key
|
||||
|| ': '
|
||||
|| l_prepredecessors);
|
||||
DBMS_OUTPUT.put_line('Complex case! Total nr of actual prepredecessors for predecessor-step '
|
||||
|| missingsteps.mld_workflowstep_key
|
||||
|| ': '
|
||||
|| l_prepredecessors);
|
||||
|
||||
IF l_prepredecessors = 0
|
||||
THEN
|
||||
@@ -2883,30 +2811,30 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
THEN
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors + nrcase_a; --l_nrofpossiblepredecessors;
|
||||
END IF;
|
||||
END IF;
|
||||
ELSE
|
||||
-- both are the same, just pick one to test against later
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors;
|
||||
END IF;
|
||||
END IF;
|
||||
ELSE
|
||||
-- both are the same, just pick one to test against later
|
||||
l_nrofrequiredpredecessors := l_nrofactualpredecessors;
|
||||
END IF;
|
||||
|
||||
DBMS_OUTPUT.put_line ('total nr of required predecessors for next step: '
|
||||
|| l_nrofrequiredpredecessors);
|
||||
DBMS_OUTPUT.put_line('total nr of required predecessors for next step: '
|
||||
|| l_nrofrequiredpredecessors);
|
||||
|
||||
SELECT COUNT ( * )
|
||||
INTO l_nrofreadypredecessors
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key = r_nextsteps.mld_workflowstep_key
|
||||
)
|
||||
-- the step to be continued
|
||||
AND mld_melding_status IN (1, 5, 6) -- predecessor has been handled, no matter how
|
||||
AND mld_melding_start_key = l_melding_start_key; -- for this thread
|
||||
SELECT COUNT ( * )
|
||||
INTO l_nrofreadypredecessors
|
||||
FROM mld_melding m
|
||||
WHERE m.mld_workflowstep_key IN
|
||||
(SELECT wr1.mld_workflowstep_key
|
||||
FROM mld_workflowrule wr1, mld_workflowstep ws1
|
||||
WHERE wr1.mld_workflowstep_key = ws1.mld_workflowstep_key
|
||||
AND wr1.mld_workflowstep_next_key =
|
||||
r_nextsteps.mld_workflowstep_key)
|
||||
-- the step to be continued
|
||||
AND mld_melding_status IN (1, 5, 6) -- predecessor has been handled, no matter how
|
||||
AND mld_melding_start_key = l_melding_start_key; -- for this thread
|
||||
|
||||
DBMS_OUTPUT.put_line ('total nr of READY predecessors for next step: '
|
||||
|| l_nrofreadypredecessors);
|
||||
DBMS_OUTPUT.put_line (
|
||||
'total nr of READY predecessors for next step: ' || l_nrofreadypredecessors);
|
||||
createthisnextstep := FALSE;
|
||||
|
||||
-- What we do next depends on the jointype. We are one predecessor ourselves. Options are:
|
||||
@@ -2926,11 +2854,12 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
CASE r_nextsteps.mld_workflowstep_jointype
|
||||
WHEN 0
|
||||
THEN -- AND
|
||||
createthisnextstep := l_nrofreadypredecessors >= l_nrofrequiredpredecessors OR p_success = -1;
|
||||
createthisnextstep :=
|
||||
l_nrofreadypredecessors >= l_nrofrequiredpredecessors OR p_success = -1;
|
||||
WHEN 1
|
||||
THEN -- OR
|
||||
createthisnextstep := l_nrofreadypredecessors = 1 OR p_success = -1;
|
||||
-- if l_nrofreadypredecessors > 1 the creation has already taken place :-)
|
||||
createthisnextstep := l_nrofreadypredecessors = 1;
|
||||
-- if l_nrofreadypredecessors > 1 the creation has already taken place :-)
|
||||
WHEN 2
|
||||
THEN -- SYNC
|
||||
-- Wel nog een beetje raar in onze <20>naar mijn groeiende overtuiging slimmere- implementatie:
|
||||
@@ -2941,7 +2870,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
|
||||
IF createthisnextstep
|
||||
THEN
|
||||
DBMS_OUTPUT.put_line ('We GO for the next step ' || r_nextsteps.mld_workflowstep_key);
|
||||
DBMS_OUTPUT.put_line (
|
||||
'We GO for the next step ' || r_nextsteps.mld_workflowstep_key);
|
||||
|
||||
IF evaluatecondition (p_melding_key, r_nextsteps.mld_workflowrule_condition)
|
||||
THEN
|
||||
@@ -2957,7 +2887,8 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
rootregistered := TRUE;
|
||||
END IF;
|
||||
|
||||
DBMS_OUTPUT.put_line ('We actually start the next step ' || r_nextsteps.mld_workflowstep_key);
|
||||
DBMS_OUTPUT.put_line (
|
||||
'We actually start the next step ' || r_nextsteps.mld_workflowstep_key);
|
||||
l_nrstepsevaluatedtrue := l_nrstepsevaluatedtrue + 1;
|
||||
|
||||
IF r_nextsteps.mld_directklaar = 2
|
||||
@@ -3399,7 +3330,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
RETURN MLD_T_UITVOERTIJD
|
||||
AS
|
||||
v_actual_uitvoertijd_object mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- constructor initialisatie;
|
||||
v_actual_accepttijd mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- constructor initialisatie;
|
||||
v_uitvoertijdtype VARCHAR2(5);
|
||||
v_mld_stdmelding_regime mld_stdmelding.mld_stdmelding_regime%TYPE;
|
||||
v_beginuur alg_gebouw.alg_gebouw_beginuur%TYPE;
|
||||
@@ -3407,7 +3337,7 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
v_werkdagen alg_gebouw.alg_gebouw_werkdagen%TYPE;
|
||||
BEGIN
|
||||
getSLAparams(stdm_key, prio, alg_key, ins_key,
|
||||
v_mld_stdmelding_regime, v_actual_uitvoertijd_object, v_actual_accepttijd, v_beginuur, v_einduur, v_werkdagen);
|
||||
v_mld_stdmelding_regime, v_actual_uitvoertijd_object, v_beginuur, v_einduur, v_werkdagen);
|
||||
|
||||
IF COALESCE(eenheid, v_actual_uitvoertijd_object.eenheid) = 'D'
|
||||
THEN
|
||||
@@ -3450,89 +3380,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
RETURN v_actual_uitvoertijd_object;
|
||||
END;
|
||||
|
||||
-- Dit is de tijd waarop afgerekend gaat worden.
|
||||
FUNCTION getactualaccept (p_melding_key IN NUMBER)
|
||||
RETURN MLD_T_UITVOERTIJD
|
||||
AS
|
||||
v_actual_accepttijd mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- constructor initialisatie;
|
||||
BEGIN
|
||||
-- Objecten hebben geen acceptatietijd.
|
||||
SELECT mld.getactualaccept(m.mld_melding_datum,
|
||||
COALESCE(fac.gettrackingdate('MLDACP', m.mld_melding_key), fac.gettrackingdate('MLDAFM', m.mld_melding_key), fac.gettrackingdate('MLDREJ', m.mld_melding_key), SYSDATE),
|
||||
m.mld_stdmelding_key,
|
||||
m.mld_melding_spoed,
|
||||
m.mld_alg_onroerendgoed_keys,
|
||||
NULL, -- ins_key (Objecten hebben geen acceptatietijd).
|
||||
m.mld_melding_t_accepttijd.eenheid
|
||||
)
|
||||
INTO v_actual_accepttijd
|
||||
FROM mld_melding m
|
||||
WHERE mld_melding_key = p_melding_key;
|
||||
RETURN v_actual_accepttijd;
|
||||
END;
|
||||
|
||||
FUNCTION getactualaccept (startdate IN DATE,
|
||||
enddate IN DATE,
|
||||
stdm_key IN NUMBER,
|
||||
prio IN NUMBER,
|
||||
alg_key IN NUMBER, -- Altijd gebouw of hoger, locatie niet ondersteund
|
||||
ins_key IN NUMBER, -- Object met de laagste uitvoertijd
|
||||
eenheid IN VARCHAR2 DEFAULT NULL
|
||||
)
|
||||
RETURN MLD_T_UITVOERTIJD
|
||||
AS
|
||||
v_actual_uitvoertijd_object mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- constructor initialisatie;
|
||||
v_actual_accepttijd mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- constructor initialisatie;
|
||||
v_uitvoertijdtype VARCHAR2(5);
|
||||
v_mld_stdmelding_regime mld_stdmelding.mld_stdmelding_regime%TYPE;
|
||||
v_beginuur alg_gebouw.alg_gebouw_beginuur%TYPE;
|
||||
v_einduur alg_gebouw.alg_gebouw_einduur%TYPE;
|
||||
v_werkdagen alg_gebouw.alg_gebouw_werkdagen%TYPE;
|
||||
BEGIN
|
||||
getSLAparams(stdm_key, prio, alg_key, ins_key,
|
||||
v_mld_stdmelding_regime, v_actual_uitvoertijd_object, v_actual_accepttijd, v_beginuur, v_einduur, v_werkdagen);
|
||||
|
||||
IF COALESCE(eenheid, v_actual_accepttijd.eenheid) = 'D'
|
||||
THEN
|
||||
v_uitvoertijdtype := 'DAGEN';
|
||||
ELSE
|
||||
v_uitvoertijdtype := 'UREN';
|
||||
END IF;
|
||||
|
||||
-- Als bij Openingstijden geen ruimte/gebouwopeningstijden zijn gevonden dan terugvallen op Kantoortijden.
|
||||
IF v_mld_stdmelding_regime = 1 OR (v_mld_stdmelding_regime = 2 AND (v_beginuur = -1 OR v_einduur = -1)) -- Kantoortijden: als in 5.1.2
|
||||
THEN
|
||||
v_actual_accepttijd :=
|
||||
FAC.datumtijdnaaruitvoertijd (startdate, enddate, v_uitvoertijdtype);
|
||||
ELSIF v_mld_stdmelding_regime = 2 -- Openingstijden: gebruik ruimte/gebouwopeningstijden
|
||||
THEN
|
||||
v_actual_accepttijd :=
|
||||
FAC.datumtijdnaaruitvoertijd (startdate,
|
||||
enddate,
|
||||
v_uitvoertijdtype,
|
||||
v_beginuur,
|
||||
v_einduur,
|
||||
v_werkdagen); -- Mode=0/1 resp. alle dagen/alleen werkdagen!
|
||||
ELSIF v_mld_stdmelding_regime = 3 -- 24/7: negeert weekenden of vrije dagen
|
||||
THEN
|
||||
v_actual_accepttijd :=
|
||||
FAC.datumtijdnaaruitvoertijd (startdate,
|
||||
enddate,
|
||||
v_uitvoertijdtype,
|
||||
NULL, -- Don't care
|
||||
NULL, -- Don't care
|
||||
2); -- Mode=2 => 24/7
|
||||
END IF;
|
||||
|
||||
-- Een negatieve actuele uitvoertijd niet toestaan. Minimale waarde is 0.
|
||||
IF v_actual_accepttijd.tijdsduur < 0
|
||||
THEN
|
||||
v_actual_accepttijd.tijdsduur := 0;
|
||||
END IF;
|
||||
|
||||
RETURN v_actual_accepttijd;
|
||||
END;
|
||||
|
||||
FUNCTION uitvoertijd_to_char (uitvoertijd IN MLD_T_UITVOERTIJD)
|
||||
RETURN VARCHAR
|
||||
AS BEGIN
|
||||
@@ -3574,14 +3421,13 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
v_einddatum DATE;
|
||||
v_mld_stdmelding_regime mld_stdmelding.mld_stdmelding_regime%TYPE;
|
||||
v_uitvoertijd_object mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie;
|
||||
v_accepttijd mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie;
|
||||
v_uitvoertijdtype VARCHAR2(5);
|
||||
v_beginuur alg_gebouw.alg_gebouw_beginuur%TYPE;
|
||||
v_einduur alg_gebouw.alg_gebouw_einduur%TYPE;
|
||||
v_werkdagen NUMBER;
|
||||
BEGIN
|
||||
getSLAparams(stdm_key, prio, alg_key, ins_key,
|
||||
v_mld_stdmelding_regime, v_uitvoertijd_object, v_accepttijd, v_beginuur, v_einduur, v_werkdagen);
|
||||
v_mld_stdmelding_regime, v_uitvoertijd_object, v_beginuur, v_einduur, v_werkdagen);
|
||||
|
||||
IF uitvoertijd_object.eenheid IS NOT NULL
|
||||
THEN
|
||||
@@ -3661,14 +3507,13 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
RETURN MLD_T_UITVOERTIJD
|
||||
AS
|
||||
v_uitvoertijd_object mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
v_accepttijd mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
v_mld_stdmelding_regime mld_stdmelding.mld_stdmelding_regime%TYPE;
|
||||
v_beginuur alg_gebouw.alg_gebouw_beginuur%TYPE;
|
||||
v_einduur alg_gebouw.alg_gebouw_einduur%TYPE;
|
||||
v_werkdagen NUMBER;
|
||||
BEGIN
|
||||
getSLAparams(stdm_key, prio, alg_key, ins_key,
|
||||
v_mld_stdmelding_regime, v_uitvoertijd_object, v_accepttijd, v_beginuur, v_einduur, v_werkdagen);
|
||||
v_mld_stdmelding_regime, v_uitvoertijd_object, v_beginuur, v_einduur, v_werkdagen);
|
||||
RETURN v_uitvoertijd_object;
|
||||
END;
|
||||
|
||||
@@ -3700,14 +3545,12 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
ins_key IN NUMBER, -- Object met de laagste uitvoertijd
|
||||
v_mld_stdmelding_regime OUT NUMBER,
|
||||
v_uitvoertijd_object OUT MLD_T_UITVOERTIJD,
|
||||
v_accepttijd OUT MLD_T_UITVOERTIJD,
|
||||
v_beginuur OUT NUMBER,
|
||||
v_einduur OUT NUMBER,
|
||||
v_werkdagen OUT NUMBER
|
||||
)
|
||||
AS
|
||||
v_uitvoertijd_object_s mld_stdmelding.mld_stdmelding_t_uitvoertijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
v_accepttijd_s mld_stdmelding.mld_stdmelding_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
v_mld_stdmelding_afhankelijk mld_stdmelding.mld_stdmelding_afhankelijk%TYPE;
|
||||
l_alg_type VARCHAR2(1);
|
||||
l_terreinsector_key alg_terreinsector.alg_terreinsector_key%TYPE;
|
||||
@@ -3720,9 +3563,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
l_mldsrtruimte_uitvtijd_object mld_stdmsrtruimte.mld_stdmsrtruimte_t_uitvtijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
l_mldsrtgebouw_uitvtijd_object mld_stdmsrtgebouw.mld_stdmsrtgebouw_t_uitvtijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
l_mldsrtterrein_uitvtijd_object mld_stdmsrtterrein.mld_stdmsrtterrein_t_uitvtijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
l_mldsrtterrein_acctijd mld_stdmsrtterrein.mld_stdmsrtterrein_t_acctijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
l_mldsrtgebouw_accepttijd mld_stdmsrtgebouw.mld_stdmsrtgebouw_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
l_mldsrtruimte_accepttijd mld_stdmsrtruimte.mld_stdmsrtruimte_t_accepttijd%TYPE := MLD_T_UITVOERTIJD(NULL, NULL); -- contructor initialisatie
|
||||
BEGIN
|
||||
SELECT mld_stdmelding_regime,
|
||||
CASE prio
|
||||
@@ -3732,19 +3572,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
ELSE mld_stdmelding_t_uitvoertijd
|
||||
END, -- gegarandeerd gevuld
|
||||
mld_stdmelding_t_uitvoertijd, -- standaard uitvoertijd
|
||||
CASE prio
|
||||
WHEN 1 THEN mld_stdmelding_t_accept_pr1
|
||||
WHEN 2 THEN mld_stdmelding_t_accept_pr2
|
||||
WHEN 4 THEN mld_stdmelding_t_accept_pr4
|
||||
ELSE mld_stdmelding_t_accepttijd
|
||||
END, -- gegarandeerd gevuld
|
||||
mld_stdmelding_t_accepttijd, -- standaard acceptatietijd
|
||||
mld_stdmelding_afhankelijk
|
||||
INTO v_mld_stdmelding_regime,
|
||||
v_uitvoertijd_object,
|
||||
v_uitvoertijd_object_s,
|
||||
v_accepttijd,
|
||||
v_accepttijd_s,
|
||||
v_mld_stdmelding_afhankelijk
|
||||
FROM mld_stdmelding msm
|
||||
WHERE msm.mld_stdmelding_key = stdm_key;
|
||||
@@ -3756,14 +3587,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
v_uitvoertijd_object := v_uitvoertijd_object_s;
|
||||
END IF;
|
||||
|
||||
-- Als je geen afwijkende acceptatietijd voor de prio hebt, dan is het die van Normaal
|
||||
-- Dit is een vangnet, die prio had eigenlijk niet voor kunnen komen.
|
||||
IF prio <> 3 AND v_accepttijd.tijdsduur IS NULL
|
||||
THEN
|
||||
v_accepttijd := v_accepttijd_s;
|
||||
END IF;
|
||||
|
||||
-- Acceptatietijd kent itt uitvoertijd geen objectafhankelijkheid.
|
||||
IF v_mld_stdmelding_afhankelijk = 1 AND ins_key IS NOT NULL
|
||||
THEN
|
||||
-- is er een objectafhankelijke SLA? Dan geldt die ongeacht de prio
|
||||
@@ -3813,16 +3636,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
2, sst.mld_stdmsrtterrein_t_uitv_pr2,
|
||||
3, sst.mld_stdmsrtterrein_t_uitvtijd,
|
||||
4, sst.mld_stdmsrtterrein_t_uitv_pr4),
|
||||
COALESCE(sst.mld_stdmsrtterrein_regime, v_mld_stdmelding_regime) regime, -- geen srtterreinsector-afhankelijk afwijkend regime.
|
||||
DECODE (prio,
|
||||
1, sst.mld_stdmsrtterrein_t_acc_pr1,
|
||||
2, sst.mld_stdmsrtterrein_t_acc_pr2,
|
||||
3, sst.mld_stdmsrtterrein_t_acctijd,
|
||||
4, sst.mld_stdmsrtterrein_t_acc_pr4)
|
||||
COALESCE(sst.mld_stdmsrtterrein_regime, v_mld_stdmelding_regime) regime -- geen srtterreinsector-afhankelijk afwijkend regime.
|
||||
INTO l_srtterrein_uitvoertijd_object,
|
||||
l_mldsrtterrein_uitvtijd_object,
|
||||
v_mld_stdmelding_regime,
|
||||
l_mldsrtterrein_acctijd
|
||||
v_mld_stdmelding_regime
|
||||
FROM alg_terreinsector t,
|
||||
alg_srtterreinsector st,
|
||||
mld_stdmsrtterrein sst
|
||||
@@ -3846,16 +3663,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
2, ssg.mld_stdmsrtgebouw_t_uitv_pr2,
|
||||
3, ssg.mld_stdmsrtgebouw_t_uitvtijd,
|
||||
4, ssg.mld_stdmsrtgebouw_t_uitv_pr4),
|
||||
COALESCE(ssg.mld_stdmsrtgebouw_regime, v_mld_stdmelding_regime) regime, -- geen srtgebouw-afhankelijk afwijkend regime.
|
||||
DECODE (prio,
|
||||
1, ssg.mld_stdmsrtgebouw_t_accept_pr1,
|
||||
2, ssg.mld_stdmsrtgebouw_t_accept_pr2,
|
||||
3, ssg.mld_stdmsrtgebouw_t_accepttijd,
|
||||
4, ssg.mld_stdmsrtgebouw_t_accept_pr4)
|
||||
COALESCE(ssg.mld_stdmsrtgebouw_regime, v_mld_stdmelding_regime) regime -- geen srtgebouw-afhankelijk afwijkend regime.
|
||||
INTO l_srtgebouw_uitvoertijd_object,
|
||||
l_mldsrtgebouw_uitvtijd_object,
|
||||
v_mld_stdmelding_regime,
|
||||
l_mldsrtgebouw_accepttijd
|
||||
v_mld_stdmelding_regime
|
||||
FROM alg_gebouw g,
|
||||
alg_srtgebouw sg,
|
||||
mld_stdmsrtgebouw ssg
|
||||
@@ -3881,16 +3692,10 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
2, ssr.mld_stdmsrtruimte_t_uitv_pr2,
|
||||
3, ssr.mld_stdmsrtruimte_t_uitvtijd,
|
||||
4, ssr.mld_stdmsrtruimte_t_uitv_pr4),
|
||||
COALESCE(ssr.mld_stdmsrtruimte_regime, v_mld_stdmelding_regime), -- geen srtruimte-afhankelijk afwijkend regime.
|
||||
DECODE (prio,
|
||||
1, ssr.mld_stdmsrtruimte_t_accept_pr1,
|
||||
2, ssr.mld_stdmsrtruimte_t_accept_pr2,
|
||||
3, ssr.mld_stdmsrtruimte_t_accepttijd,
|
||||
4, ssr.mld_stdmsrtruimte_t_accept_pr4)
|
||||
COALESCE(ssr.mld_stdmsrtruimte_regime, v_mld_stdmelding_regime) -- geen srtruimte-afhankelijk afwijkend regime.
|
||||
INTO l_srtruimte_uitvoertijd_object,
|
||||
l_mldsrtruimte_uitvtijd_object,
|
||||
v_mld_stdmelding_regime,
|
||||
l_mldsrtruimte_accepttijd
|
||||
v_mld_stdmelding_regime
|
||||
FROM alg_ruimte r,
|
||||
alg_srtruimte sr,
|
||||
mld_stdmsrtruimte ssr
|
||||
@@ -3930,26 +3735,6 @@ CREATE OR REPLACE PACKAGE BODY mld AS
|
||||
ELSE
|
||||
v_uitvoertijd_object.eenheid := v_uitvoertijd_object.eenheid;
|
||||
END IF;
|
||||
|
||||
-- Acceptatietijd van de mld_stdmsrtruimte, mld_stdmsrtgebouw of mld_stdmsrtterrein nemen.
|
||||
-- Als mld_stdmsrtruimte_t_accepttijd, mld_stdmsrtgebouw_t_accepttijd en mld_stdmsrtterrein_t_acctijd geen waarden hebben, dan terugvallen op standaard uitvoertijd die altijd een waarde heeft.
|
||||
IF l_alg_type = 'T'
|
||||
THEN
|
||||
v_accepttijd.tijdsduur := COALESCE(l_mldsrtterrein_acctijd.tijdsduur, v_accepttijd.tijdsduur);
|
||||
ELSE
|
||||
v_accepttijd.tijdsduur := COALESCE(l_mldsrtruimte_accepttijd.tijdsduur, -- eerst ruimte
|
||||
l_mldsrtgebouw_accepttijd.tijdsduur, -- dan gebouw
|
||||
v_accepttijd.tijdsduur); -- dan standaard.
|
||||
END IF;
|
||||
IF l_mldsrtruimte_accepttijd.tijdsduur IS NOT NULL
|
||||
THEN
|
||||
v_accepttijd.eenheid := l_mldsrtruimte_accepttijd.eenheid;
|
||||
ELSIF l_mldsrtgebouw_accepttijd.tijdsduur IS NOT NULL
|
||||
THEN
|
||||
v_accepttijd.eenheid := l_mldsrtgebouw_accepttijd.eenheid;
|
||||
ELSE
|
||||
v_accepttijd.eenheid := v_accepttijd.eenheid;
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
IF alg_key IS NULL AND v_mld_stdmelding_regime = 2
|
||||
@@ -4829,7 +4614,7 @@ IS
|
||||
BEGIN
|
||||
UPDATE mld_melding m
|
||||
SET m.mld_melding_actiecode = m.mld_melding_actiecode - BITAND (m.mld_melding_actiecode, p_actiecode)
|
||||
WHERE m.mld_melding_status = 5 -- afgemeld
|
||||
WHERE m.mld_melding_status = 6 -- afgemeld
|
||||
AND BITAND (m.mld_melding_actiecode, p_actiecode) > 0
|
||||
AND fac.gettrackingdate ('MLDAFM', m.mld_melding_key) < (SYSDATE - p_days);
|
||||
|
||||
|
||||
@@ -388,8 +388,6 @@ CREATE_TABLE(mld_melding_tag,0) /* generieke opzet voor mld_releases of mld_rel
|
||||
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_acc /* de acceptatiereleasedatum */
|
||||
DATE,
|
||||
mld_melding_tag_datum_tot /* de releasedatum */
|
||||
DATE NOT NULL,
|
||||
prs_perslid_key /* aanmaker of verantwoordelijke */
|
||||
@@ -605,11 +603,6 @@ ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvoertijd NOT_NULL(mld_stdm
|
||||
ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr1 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL);
|
||||
ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr2 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL);
|
||||
ALTER TABLE mld_stdmelding MODIFY mld_stdmelding_t_uitvtijd_pr4 DEFAULT MLD_T_UITVOERTIJD(NULL, NULL);
|
||||
ALTER TABLE fac_email_setting ADD
|
||||
(
|
||||
mld_stdmelding_key
|
||||
NUMBER(10) REFERENCES mld_stdmelding(mld_stdmelding_key) ON DELETE CASCADE
|
||||
);
|
||||
ALTER TABLE ins_srtdeel ADD
|
||||
(
|
||||
mld_stdmelding_key
|
||||
@@ -858,11 +851,11 @@ CREATE_TABLE(mld_discipline_discipline, 0) -- Kruistabel
|
||||
(
|
||||
mld_discipline_discipline_key
|
||||
NUMBER (10) PRIMARY KEY NOT NULL,
|
||||
mld_discipline_key1 -- Vakgroep
|
||||
mld_discipline_key1
|
||||
NUMBER(10)
|
||||
CONSTRAINT mld_k_mld_disc_disc_key1
|
||||
REFERENCES ins_tab_discipline(ins_discipline_key) NOT NULL,
|
||||
mld_discipline_key2 -- Behandelteam
|
||||
mld_discipline_key2
|
||||
NUMBER(10)
|
||||
CONSTRAINT mld_r_mld_disc_disc_key2
|
||||
REFERENCES ins_tab_discipline(ins_discipline_key) NOT NULL
|
||||
@@ -1207,10 +1200,6 @@ COMMENT ON COLUMN mld_workflowrule.mld_workflowrule_result IS '0 is failure/reje
|
||||
COMMENT ON COLUMN mld_melding.mld_workflowstep_key IS 'references the workflow step that this melding corresponds to';
|
||||
COMMENT ON COLUMN mld_melding.mld_melding_start_key IS 'references the initiating mld_melding if this is a workflow step';
|
||||
|
||||
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;
|
||||
|
||||
|
||||
CREATE_TABLE(mld_opdr,0)
|
||||
(
|
||||
@@ -1472,7 +1461,7 @@ CREATE_TABLE(mld_kenmerk, 0)
|
||||
VARCHAR2(60)
|
||||
, mld_kenmerk_verplicht
|
||||
NUMBER(1)
|
||||
, mld_kenmerk_groep /* voor groepsverplichting als mld_kenmerk_verplicht=2 */
|
||||
, mld_kenmerk_groep
|
||||
NUMBER(1)
|
||||
DEFAULT 0 NOT NULL
|
||||
, mld_kenmerk_toonbaar
|
||||
@@ -1483,10 +1472,6 @@ CREATE_TABLE(mld_kenmerk, 0)
|
||||
, mld_kenmerk_volgnummer
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
, mld_kenmerk_rolcode /* voor welke rol(len) is dit kenmerk */
|
||||
NUMBER(4)
|
||||
DEFAULT 7 /* default alles */
|
||||
NOT NULL
|
||||
, mld_kenmerk_uniek
|
||||
NUMBER(1)
|
||||
, mld_kenmerk_regexp
|
||||
|
||||
@@ -430,7 +430,7 @@ BEGIN
|
||||
NULL; -- stond hij al in de queue
|
||||
ELSIF :NEW.mld_opdr_teverzenden = 2 AND :NEW.mld_opdr_verzonden IS NULL
|
||||
THEN -- Zou hij vroeger in de fac_v_orderqueue herverschijnen
|
||||
-- ORDSND tracking/notificatie
|
||||
-- ORDUPD tracking/notificatie
|
||||
--mld.notifyopdrbedrijven (:new.mld_opdr_key, ptrackingkey => NULL); geeft trigger mutating
|
||||
FOR bedrijfrec
|
||||
IN (SELECT b.prs_bedrijf_key,
|
||||
@@ -454,7 +454,7 @@ BEGIN
|
||||
AND m.mld_alg_locatie_key = l2.alg_locatie_key(+)
|
||||
AND d.prs_afdeling_key = p.prs_afdeling_key
|
||||
AND p.prs_perslid_key = m.prs_perslid_key
|
||||
AND fac_srtnotificatie_code = 'ORDSND') -- hardcoded ORDSND, het gaat uiteindelijk vooral om de XMLnode 'opdracht' in putorders
|
||||
AND fac_srtnotificatie_code = 'ORDUPD') -- hardcoded ORDUPD, het gaat uiteindelijk vooral om de XMLnode 'opdracht' in putorders
|
||||
LOOP
|
||||
fac.notifybedrijf (pbedrijf_key => bedrijfrec.prs_bedrijf_key,
|
||||
pbedrijfadres_type => 'O',
|
||||
@@ -464,7 +464,7 @@ BEGIN
|
||||
preference => bedrijfrec.reference,
|
||||
ptypeopdr_key => :NEW.mld_typeopdr_key,
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pdiscipline_key => :NEW.mld_opdr_discipline_key,
|
||||
pdisc_key => :NEW.mld_opdr_discipline_key,
|
||||
pbedrijf_key2 => bedrijfrec.persoon_bedrijf_key,
|
||||
psender => bedrijfrec.alg_locatie_email);
|
||||
END LOOP;
|
||||
|
||||
@@ -850,8 +850,6 @@ CREATE_VIEW(mld_v_udr_melding, 1)
|
||||
accept_sla_optijd,
|
||||
uitvoering_sla_optijd,
|
||||
afspraak_sla_optijd,
|
||||
acceptatietijd_werkdgn,
|
||||
acceptatietijd_werkuren,
|
||||
selfservice,
|
||||
melding_tag,
|
||||
melding_tag_datum
|
||||
@@ -1012,10 +1010,6 @@ AS
|
||||
lcl.l ('lcl_no')
|
||||
END
|
||||
afspraak_sla_optijd,
|
||||
DECODE (x.t_acceptatietijd.eenheid, 'D', x.t_acceptatietijd.tijdsduur, NULL)
|
||||
acceptatietijd_werkdgn,
|
||||
DECODE (x.t_acceptatietijd.eenheid, 'U', x.t_acceptatietijd.tijdsduur, NULL)
|
||||
acceptatietijd_werkuren,
|
||||
DECODE(invoerder, melder, lcl.l ('lcl_yes'), lcl.l ('lcl_no')) selfservice,
|
||||
mld_melding_tag_naam,
|
||||
mld_melding_tag_datum_tot
|
||||
@@ -1168,7 +1162,6 @@ AS
|
||||
mld.getmeldingstatusdate (m.mld_melding_key, 1))
|
||||
accepted,
|
||||
mld.getactualuitvoer (m.mld_melding_key) t_doorlooptijd,
|
||||
mld.getactualaccept(m.mld_melding_key) t_acceptatietijd,
|
||||
m.mld_melding_onderwerp onderwerp,
|
||||
m.mld_melding_omschrijving omschrijving,
|
||||
m.mld_melding_opmerking opmerking,
|
||||
|
||||
@@ -95,6 +95,9 @@ AS
|
||||
|
||||
PROCEDURE setpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2);
|
||||
|
||||
FUNCTION testpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2)
|
||||
RETURN NUMBER;
|
||||
|
||||
PROCEDURE upsertkenmerk (p_kenmerk_key IN NUMBER, p_prs_key IN NUMBER, p_waarde IN VARCHAR2);
|
||||
|
||||
PROCEDURE movetoruimte (p_prs_key IN NUMBER, p_ruimte_key IN NUMBER, p_alg_type IN VARCHAR2, p_virtual IN NUMBER DEFAULT 0);
|
||||
@@ -551,8 +554,6 @@ AS
|
||||
RETURN lnextfiatteur;
|
||||
END;
|
||||
|
||||
// Let op: Als pwachtwoord IS NULL wordt het wachtwoord gewist
|
||||
// Als pwachtwoord IS NOT NULL wordt een random(!!) wachtwoord ingesteld zodat de gebruik zelf 'wachtwoord vergeten' kan gaan doen
|
||||
PROCEDURE setpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2)
|
||||
IS
|
||||
BEGIN
|
||||
@@ -569,12 +570,37 @@ AS
|
||||
SET prs_perslid_salt = DBMS_RANDOM.string ('a', 32)
|
||||
WHERE prs_perslid_key = pperslidkey;
|
||||
UPDATE prs_perslid
|
||||
SET prs_perslid_wachtwoord_hash = DBMS_RANDOM.string ('a', 32), -- zodat wachtwoord vergeten mogelijk wordt
|
||||
prs_perslid_wachtwoord_exp = SYSDATE -- direct verlopen
|
||||
SET prs_perslid_wachtwoord_hash = fac.makehash(prs_perslid_salt || pwachtwoord),
|
||||
prs_perslid_wachtwoord_exp = CASE WHEN fac.getsetting ('prs_password_expiration') > 0
|
||||
THEN SYSDATE + fac.getsetting ('prs_password_expiration')
|
||||
ELSE NULL
|
||||
END
|
||||
WHERE prs_perslid_key = pperslidkey;
|
||||
END IF;
|
||||
END;
|
||||
|
||||
FUNCTION testpassword(pperslidkey IN NUMBER, pwachtwoord IN VARCHAR2)
|
||||
RETURN NUMBER
|
||||
IS
|
||||
perslid_key prs_perslid.prs_perslid_key%TYPE;
|
||||
BEGIN
|
||||
IF pwachtwoord IS NULL
|
||||
THEN
|
||||
RETURN 0;
|
||||
END IF;
|
||||
BEGIN
|
||||
SELECT prs_perslid_key
|
||||
INTO perslid_key
|
||||
FROM prs_perslid
|
||||
WHERE fac.testhash(prs_perslid_wachtwoord_hash, prs_perslid_salt || pwachtwoord) = 1
|
||||
AND prs_perslid_key = pperslidkey;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN RETURN 0;
|
||||
END;
|
||||
RETURN 1;
|
||||
END;
|
||||
|
||||
-- Er wordt nu niet getrackt (wat eigenlijk niet zo goed is)
|
||||
PROCEDURE upsertkenmerk (p_kenmerk_key IN NUMBER,
|
||||
p_prs_key IN NUMBER,
|
||||
@@ -2378,10 +2404,10 @@ AS
|
||||
prs_perslid_apikey = recPersLid.prs_perslid_apikey
|
||||
WHERE prs_perslid_key = v_perslid_key;
|
||||
|
||||
IF recPersLid.prs_perslid_wachtwoord IS NOT NULL
|
||||
THEN
|
||||
IF recPersLid.prs_perslid_wachtwoord IS NOT NULL
|
||||
THEN
|
||||
prs.setpassword(v_perslid_key, recPersLid.prs_perslid_wachtwoord);
|
||||
END IF;
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
-- Voor CUST-postprocessing (van de kenmerken) is het handig te onthouden:
|
||||
|
||||
@@ -60,7 +60,7 @@ CREATE_TABLE(prs_bedrijf,0)
|
||||
prs_bedrijf_contact_fax
|
||||
VARCHAR2(20),
|
||||
prs_bedrijf_opmerking
|
||||
VARCHAR2(4000),
|
||||
VARCHAR2(1000),
|
||||
prs_bedrijf_opmerking2
|
||||
VARCHAR2(1000),
|
||||
prs_bedrijf_uurloon
|
||||
@@ -113,9 +113,7 @@ CREATE_TABLE(prs_bedrijf,0)
|
||||
CONSTRAINT prs_c_prs_bedrijf_contract CHECK(prs_bedrijf_contract IS NULL
|
||||
OR prs_bedrijf_contract = 1 ),
|
||||
prs_bedrijf_intern /* NULL=extern, 1=onderdeel van de eigen organisatie, 2=pseudo(systeem)bedrijf voor bedrijfadressen */
|
||||
NUMBER(1)
|
||||
CONSTRAINT prs_c_prs_bedrijf_intern CHECK(prs_bedrijf_intern IS NULL
|
||||
OR prs_bedrijf_intern IN (1,2)),
|
||||
NUMBER(1),
|
||||
prs_bedrijf_huurder /* is huurder */
|
||||
NUMBER(1)
|
||||
CONSTRAINT prs_c_prs_bedrijf_huurder CHECK(prs_bedrijf_huurder IS NULL
|
||||
@@ -1140,9 +1138,6 @@ CREATE_TABLE(prs_kenmerk,0)
|
||||
,prs_kenmerk_volgnr
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
,prs_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
,prs_kenmerk_omschrijving
|
||||
VARCHAR2(50)
|
||||
,prs_kenmerk_upper
|
||||
|
||||
@@ -500,45 +500,6 @@ BEGIN
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(prs_t_prs_bedrijfadres_A_I)
|
||||
AFTER INSERT ON prs_bedrijfadres
|
||||
FOR EACH ROW
|
||||
BEGIN
|
||||
CASE :new.prs_bedrijfadres_type
|
||||
WHEN 'C' THEN
|
||||
INSERT INTO prs_bedrijfadres_srtnoti
|
||||
(prs_bedrijfadres_key, fac_srtnotificatie_key)
|
||||
SELECT :new.prs_bedrijfadres_key,
|
||||
fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code = 'CNTNEW';
|
||||
WHEN 'O' THEN
|
||||
INSERT INTO prs_bedrijfadres_srtnoti
|
||||
(prs_bedrijfadres_key, fac_srtnotificatie_key)
|
||||
SELECT :new.prs_bedrijfadres_key,
|
||||
fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code IN ('ORDNEW', 'ORDSND');
|
||||
WHEN 'B' THEN
|
||||
INSERT INTO prs_bedrijfadres_srtnoti
|
||||
(prs_bedrijfadres_key, fac_srtnotificatie_key)
|
||||
SELECT :new.prs_bedrijfadres_key,
|
||||
fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code = 'BES2NE';
|
||||
WHEN 'R' THEN
|
||||
INSERT INTO prs_bedrijfadres_srtnoti
|
||||
(prs_bedrijfadres_key, fac_srtnotificatie_key)
|
||||
SELECT :new.prs_bedrijfadres_key,
|
||||
fac_srtnotificatie_key
|
||||
FROM fac_srtnotificatie
|
||||
WHERE fac_srtnotificatie_code = 'RESSND';
|
||||
ELSE -- V=Voorraadinfo, N=Notificatie, E=ERP (Mareon)
|
||||
NULL;
|
||||
END CASE;
|
||||
END;
|
||||
/
|
||||
|
||||
CREATE_TRIGGER(prs_t_prs_bedrijfadres_srtnoti_B_I)
|
||||
BEFORE INSERT ON prs_bedrijfadres_srtnoti
|
||||
FOR EACH ROW
|
||||
|
||||
@@ -361,8 +361,8 @@ AS
|
||||
prsv_ruimte_key_to,
|
||||
ra.res_rsv_deel_prijs,
|
||||
2, -- ingevoerd
|
||||
TRUNC (rsv_to.res_rsv_ruimte_van) + (ra.res_rsv_deel_van - TRUNC (rsv_from.res_rsv_ruimte_van)), -- reservering van rsv_deel kan afwijken van rsv_ruimte
|
||||
TRUNC (rsv_to.res_rsv_ruimte_tot) + (ra.res_rsv_deel_tot - TRUNC (rsv_from.res_rsv_ruimte_tot))
|
||||
TRUNC (rsv_to.res_rsv_ruimte_van) + (ra.res_rsv_deel_van - TRUNC (rsv_from.res_rsv_ruimte_van)),
|
||||
TRUNC (rsv_to.res_rsv_ruimte_van) + (ra.res_rsv_deel_tot - TRUNC (rsv_from.res_rsv_ruimte_tot))
|
||||
FROM res_rsv_deel ra, res_deel rd
|
||||
WHERE ra.res_rsv_ruimte_key = prsv_ruimte_key_from
|
||||
AND ra.res_deel_key = rd.res_deel_key
|
||||
@@ -444,7 +444,11 @@ AS
|
||||
ka.res_kenmerk_key,
|
||||
ka.res_kenmerkartikel_waarde,
|
||||
ra.res_artikel_key,
|
||||
k.res_srtkenmerk_key
|
||||
ROW_NUMBER()
|
||||
OVER(ORDER BY
|
||||
rra.res_rsv_artikel_key,
|
||||
k.res_kenmerk_key)
|
||||
AS RN
|
||||
FROM res_kenmerkartikel ka,
|
||||
res_kenmerk k,
|
||||
res_srtkenmerk sk,
|
||||
@@ -460,7 +464,7 @@ AS
|
||||
AND rra.res_rsv_ruimte_key = rr.res_rsv_ruimte_key
|
||||
--AND k.res_activiteit_key IS NULL -- Niet nodig: Als res_activiteit_key gevuld is dan is res_kenmerk_niveau 'A'.
|
||||
AND k.res_kenmerk_niveau IN ('C', 'D')
|
||||
AND BITAND(k.res_kenmerk_rolcode, 7) <> 4 -- Backofficekenmerken niet (100)
|
||||
AND k.res_kenmerk_volgnummer < 900
|
||||
AND k.res_kenmerk_verwijder IS NULL
|
||||
AND ka.res_kenmerkartikel_verwijder IS NULL
|
||||
AND sk.res_srtkenmerk_kenmerktype NOT IN ('F', 'M', 'E')
|
||||
@@ -468,7 +472,11 @@ AS
|
||||
(SELECT rra.res_rsv_artikel_key,
|
||||
k.res_kenmerk_key,
|
||||
ra.res_artikel_key,
|
||||
k.res_srtkenmerk_key
|
||||
ROW_NUMBER()
|
||||
OVER(ORDER BY
|
||||
rra.res_rsv_artikel_key,
|
||||
k.res_kenmerk_key)
|
||||
AS rn
|
||||
FROM res_rsv_ruimte rr,
|
||||
res_rsv_artikel rra,
|
||||
res_artikel ra,
|
||||
@@ -478,8 +486,8 @@ AS
|
||||
OR k.res_discipline_key = ra.res_discipline_key)
|
||||
AND ra.res_artikel_key = rra.res_artikel_key
|
||||
AND rr.res_rsv_ruimte_key = prsv_ruimte_key_to) newkenmerk
|
||||
WHERE oldkenmerk.res_kenmerk_key = newkenmerk.res_kenmerk_key
|
||||
AND oldkenmerk.res_srtkenmerk_key = newkenmerk.res_srtkenmerk_key
|
||||
WHERE oldkenmerk.rn = newkenmerk.rn
|
||||
AND oldkenmerk.res_kenmerk_key = newkenmerk.res_kenmerk_key
|
||||
AND oldkenmerk.res_artikel_key = newkenmerk.res_artikel_key
|
||||
ORDER BY newkenmerk.res_rsv_artikel_key,
|
||||
newkenmerk.res_kenmerk_key;
|
||||
@@ -538,7 +546,7 @@ AS
|
||||
) waarde_from
|
||||
WHERE k.res_activiteit_key = r.res_activiteit_key
|
||||
AND k.res_kenmerk_niveau = 'A'
|
||||
AND BITAND(k.res_kenmerk_rolcode, 7) <> 4 -- Backofficekenmerken niet
|
||||
AND k.res_kenmerk_volgnummer < 900
|
||||
AND k.res_kenmerk_verwijder IS NULL
|
||||
AND s.res_srtkenmerk_verwijder IS NULL
|
||||
AND k.res_srtkenmerk_key = s.res_srtkenmerk_key
|
||||
@@ -2549,20 +2557,14 @@ AS
|
||||
AS
|
||||
BEGIN
|
||||
FOR bedrijfrec
|
||||
-- JGL: Vooralsnog geen ondersteuning van technische adressen per discipline
|
||||
-- Dat wordt te ingewikkeld omdat onderstaande loop dan per discipline fac.notifybedrijf
|
||||
-- gaat aanroepen waardoor je altijd een notificatie per catalogus krijgt wat je misschien helemaal niet wilt
|
||||
IN (SELECT b.prs_bedrijf_key,
|
||||
l.alg_locatie_key,
|
||||
CASE WHEN b.prs_bedrijf_key = resbedrijf.prs_bedrijf_key THEN 'R' ELSE 'G' END bedrijfadres_type,
|
||||
rrr.res_reservering_key || '/' || rrr.res_rsv_ruimte_volgnr reference,
|
||||
d.prs_bedrijf_key persoon_bedrijf_key -- van de melder, niet de uitvoerende
|
||||
rrr.res_reservering_key || '/' || rrr.res_rsv_ruimte_volgnr reference
|
||||
FROM prs_bedrijf b,
|
||||
res_rsv_ruimte rrr,
|
||||
alg_locatie l,
|
||||
alg_v_ruimte_gegevens_all ruimte_geg,
|
||||
prs_perslid p,
|
||||
prs_v_afdeling d,
|
||||
( SELECT res_ruimte_opstel_key,
|
||||
rr.res_ruimte_key,
|
||||
MIN (alg_ruimte_key) alg_ruimte_key
|
||||
@@ -2581,8 +2583,6 @@ AS
|
||||
AND rrr.res_ruimte_opstel_key = opstelalg.res_ruimte_opstel_key(+)
|
||||
AND ruimte_geg.alg_ruimte_key = COALESCE (rrr.alg_ruimte_key, opstelalg.alg_ruimte_key)
|
||||
AND ruimte_geg.alg_locatie_key = l.alg_locatie_key
|
||||
AND d.prs_afdeling_key = p.prs_afdeling_key
|
||||
AND p.prs_perslid_key = rrr.res_rsv_ruimte_host_key
|
||||
AND ( b.prs_bedrijf_key = resbedrijf.prs_bedrijf_key -- type 'R'
|
||||
OR EXISTS
|
||||
(SELECT 1
|
||||
@@ -2597,7 +2597,6 @@ AS
|
||||
ptrackingkey => ptrackingkey,
|
||||
preference => bedrijfrec.reference,
|
||||
plocatie_key => bedrijfrec.alg_locatie_key,
|
||||
pbedrijf_key2 => bedrijfrec.persoon_bedrijf_key,
|
||||
pnotidelay => pnotidelay);
|
||||
END LOOP;
|
||||
END;
|
||||
|
||||
@@ -141,8 +141,6 @@ CREATE_TABLE(res_ruimte,0)
|
||||
DEFAULT 0
|
||||
NOT NULL
|
||||
CONSTRAINT res_c_res_ruimte_cv CHECK(res_ruimte_cv IN (0,1)),
|
||||
res_ruimte_limiet /* Optional overrule of Setting res_reservering_limiet (days) */
|
||||
NUMBER(3),
|
||||
CONSTRAINT res_u_res_ruimte_upper UNIQUE(res_ruimte_upper, res_ruimte_verwijder)
|
||||
);
|
||||
|
||||
@@ -869,9 +867,6 @@ CREATE_TABLE(res_kenmerk, 0)
|
||||
, res_kenmerk_volgnummer
|
||||
NUMBER(3)
|
||||
NOT NULL
|
||||
, res_kenmerk_rolcode
|
||||
NUMBER(4)
|
||||
DEFAULT 7 NOT NULL
|
||||
, res_kenmerk_default
|
||||
VARCHAR2(4000)
|
||||
, res_kenmerk_show_expr
|
||||
|
||||
414
_UP/DB50to51.src
414
_UP/DB50to51.src
@@ -1,414 +0,0 @@
|
||||
/*
|
||||
* 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"
|
||||
Reference in New Issue
Block a user