BLCC#71243 Rapport Opdracht Notities

svn path=/Customer/trunk/; revision=55208
This commit is contained in:
Suzan Wiegerinck
2022-03-03 12:30:16 +00:00
parent 65ee340e8d
commit f0987eea93

View File

@@ -19869,140 +19869,119 @@ AS
CREATE OR REPLACE VIEW blcc_v_rap_ord_notes_sd
AS
SELECT SYSDATE - x.aanmaak
hide_f_sort, -- Recentste bovenaan
CASE
WHEN x.aanmaak > SYSDATE - 5 / 24 / 60 THEN 'updated'
WHEN x.aanmaak > SYSDATE - 1 / 24 THEN 'updated10'
ELSE ''
END
hide_f_rowclass,
x.mld_opdr_key,
x.aanmaak
datumtijd,
--x.aanmaak datum,
--x.aanmaak tijdstip,
pn.prs_perslid_naam_friendly
door,
REPLACE (
REPLACE (
SELECT SYSDATE - x.aanmaak hide_f_sort, -- Recentste bovenaan
CASE
WHEN x.aanmaak > SYSDATE - 5 / 24 / 60 THEN 'updated'
WHEN x.aanmaak > SYSDATE - 1 / 24 THEN 'updated10'
ELSE ''
END
hide_f_rowclass,
x.mld_opdr_key,
x.aanmaak datumtijd,
--x.aanmaak datum,
--x.aanmaak tijdstip,
pn.prs_perslid_naam_friendly door,
REPLACE (
REPLACE (
REPLACE (
REPLACE (
REPLACE (
REPLACE (x.omschrijving, '##SPOED##', ''),
'##OPDRKEY##',
TO_CHAR (m.mld_melding_key)
|| '/'
|| TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)),
'##STDMLD##',
sm.mld_stdmelding_omschrijving),
'##DISC##',
md.ins_discipline_omschrijving),
' aan ##FIATTEUR##',
'')
omschrijving,
sd.ins_srtdiscipline_prefix
|| TO_CHAR (m.mld_melding_key)
|| '/'
|| TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)
nummer,
md.ins_discipline_omschrijving
vakgroep,
sm.mld_stdmelding_omschrijving
melding,
(SELECT mld_typeopdr_omschrijving
FROM mld_typeopdr
WHERE mld_typeopdr_key = o.mld_typeopdr_key)
opdrachttype,
b.prs_bedrijf_naam
uitvoerende,
o.mld_opdr_datumbegin
datum,
COALESCE (aog.alg_plaatsaanduiding, 'CAMPUS')
plaats,
o.mld_opdr_omschrijving
opdrachtomschrijving,
os.mld_statusopdr_omschrijving
status,
pb.prs_perslid_naam_friendly
behandelaar,
o.mld_opdr_einddatum
einddatum
FROM (SELECT n.mld_opdr_note_aanmaak aanmaak,
n.prs_perslid_key,
n.mld_opdr_note_omschrijving omschrijving,
n.mld_opdr_key
FROM mld_opdr_note n
WHERE n.mld_opdr_note_aanmaak >
TRUNC (ADD_MONTHS (SYSDATE, -6), 'mm') -- TODO: -3?
AND n.prs_perslid_key IS NOT NULL
AND NOT EXISTS
(SELECT 1
FROM fac_gebruikersgroep
WHERE fac_groep_key = 23 -- BCC FOBO
AND prs_perslid_key = n.prs_perslid_key)
UNION ALL
SELECT t.fac_tracking_datum aanmaak,
t.prs_perslid_key,
COALESCE (
t.fac_tracking_oms,
lcl.x ('fac_srtnotificatie_oms',
sn.fac_srtnotificatie_key,
sn.fac_srtnotificatie_oms)) omschrijving,
t.fac_tracking_refkey mld_opdr_key
FROM fac_tracking t, fac_srtnotificatie sn
WHERE t.fac_tracking_datum >
TRUNC (ADD_MONTHS (SYSDATE, -6), 'mm') -- TODO: -3?
AND t.prs_perslid_key IS NOT NULL
AND t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_xmlnode = 'opdracht'
AND NOT EXISTS
(SELECT 1
FROM fac_gebruikersgroep
WHERE fac_groep_key = 23 -- BCC FOBO
AND prs_perslid_key = t.prs_perslid_key))
x,
mld_opdr o,
mld_melding m,
mld_stdmelding sm,
mld_discipline md,
ins_srtdiscipline sd,
prs_v_perslid_fullnames_all pn, -- Noteur
prs_v_perslid_fullnames_all pb, -- Behandelaar
--prs_v_perslid_fullnames_all pm, -- Melder
prs_bedrijf b,
alg_v_allonrgoed_gegevens aog,
mld_statusopdr os
WHERE x.mld_opdr_key = o.mld_opdr_key
--AND o.mld_typeopdr_key IN (101, 103, 1261) -- Workorder/Offerteaanvraag/Kostenraming
AND o.mld_melding_key = m.mld_melding_key
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_ins_discipline_key = md.ins_discipline_key
AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND x.prs_perslid_key = pn.prs_perslid_key
AND o.prs_perslid_key = pb.prs_perslid_key(+)
--AND m.prs_perslid_key = pm.prs_perslid_key
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key(+)
AND m.mld_alg_onroerendgoed_keys = aog.alg_onroerendgoed_keys(+)
AND o.mld_statusopdr_key = os.mld_statusopdr_key
AND NOT EXISTS
(SELECT 1
FROM mld_opdr_note n, fac_gebruikersgroep gg
WHERE n.prs_perslid_key = gg.prs_perslid_key
AND gg.fac_groep_key = 23 -- BCC FOBO
AND n.mld_opdr_key = x.mld_opdr_key
AND n.mld_opdr_note_aanmaak > x.aanmaak)
AND NOT EXISTS
(SELECT 1
FROM fac_tracking t,
fac_srtnotificatie sn,
fac_gebruikersgroep gg
WHERE t.fac_srtnotificatie_key =
sn.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_xmlnode = 'opdracht'
AND t.prs_perslid_key = gg.prs_perslid_key
AND gg.fac_groep_key = 23 -- BCC FOBO
AND t.fac_tracking_refkey = x.mld_opdr_key
AND t.fac_tracking_datum > x.aanmaak);
REPLACE (x.omschrijving, '##SPOED##', ''),
'##OPDRKEY##',
TO_CHAR (m.mld_melding_key)
|| '/'
|| TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)),
'##STDMLD##',
sm.mld_stdmelding_omschrijving),
'##DISC##',
md.ins_discipline_omschrijving),
' aan ##FIATTEUR##',
'')
omschrijving,
sd.ins_srtdiscipline_prefix || TO_CHAR (m.mld_melding_key) || '/' || TO_CHAR (o.mld_opdr_bedrijfopdr_volgnr)
nummer,
md.ins_discipline_omschrijving vakgroep,
sm.mld_stdmelding_omschrijving melding,
(SELECT mld_typeopdr_omschrijving FROM mld_typeopdr WHERE mld_typeopdr_key = o.mld_typeopdr_key)
opdrachttype,
b.prs_bedrijf_naam uitvoerende,
o.mld_opdr_datumbegin datum,
COALESCE (aog.alg_plaatsaanduiding, 'CAMPUS') plaats,
o.mld_opdr_omschrijving opdrachtomschrijving,
os.mld_statusopdr_omschrijving status,
pb.prs_perslid_naam_friendly behandelaar,
o.mld_opdr_einddatum einddatum,
x.mutatie_notitie
FROM (SELECT n.mld_opdr_note_aanmaak aanmaak,
n.prs_perslid_key,
n.mld_opdr_note_omschrijving omschrijving,
n.mld_opdr_key,
'Notitie' mutatie_notitie
FROM mld_opdr_note n
WHERE n.mld_opdr_note_aanmaak > TRUNC (ADD_MONTHS (SYSDATE, -6), 'mm') -- TODO: -3?
AND n.prs_perslid_key IS NOT NULL
AND NOT EXISTS
(SELECT 1
FROM fac_gebruikersgroep
WHERE fac_groep_key = 23 -- BCC FOBO
AND prs_perslid_key = n.prs_perslid_key)
UNION ALL
SELECT t.fac_tracking_datum aanmaak,
t.prs_perslid_key,
COALESCE (t.fac_tracking_oms, lcl.x ('fac_srtnotificatie_oms', sn.fac_srtnotificatie_key, sn.fac_srtnotificatie_oms))
omschrijving,
t.fac_tracking_refkey mld_opdr_key,
'Mutatie' mutatie_notitie
FROM fac_tracking t, fac_srtnotificatie sn
WHERE t.fac_tracking_datum > TRUNC (ADD_MONTHS (SYSDATE, -6), 'mm') -- TODO: -3?
AND t.prs_perslid_key IS NOT NULL
AND t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_xmlnode = 'opdracht'
AND NOT EXISTS
(SELECT 1
FROM fac_gebruikersgroep
WHERE fac_groep_key = 23 -- BCC FOBO
AND prs_perslid_key = t.prs_perslid_key)) x,
mld_opdr o,
mld_melding m,
mld_stdmelding sm,
mld_discipline md,
ins_srtdiscipline sd,
prs_v_perslid_fullnames_all pn, -- Noteur
prs_v_perslid_fullnames_all pb, -- Behandelaar
--prs_v_perslid_fullnames_all pm, -- Melder
prs_bedrijf b,
alg_v_allonrgoed_gegevens aog,
mld_statusopdr os
WHERE x.mld_opdr_key = o.mld_opdr_key
--AND o.mld_typeopdr_key IN (101, 103, 1261) -- Workorder/Offerteaanvraag/Kostenraming
AND o.mld_melding_key = m.mld_melding_key
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
AND sm.mld_ins_discipline_key = md.ins_discipline_key
AND md.ins_srtdiscipline_key = sd.ins_srtdiscipline_key
AND x.prs_perslid_key = pn.prs_perslid_key
AND o.prs_perslid_key = pb.prs_perslid_key(+)
--AND m.prs_perslid_key = pm.prs_perslid_key
AND o.mld_uitvoerende_keys = b.prs_bedrijf_key(+)
AND m.mld_alg_onroerendgoed_keys = aog.alg_onroerendgoed_keys(+)
AND o.mld_statusopdr_key = os.mld_statusopdr_key
AND NOT EXISTS
(SELECT 1
FROM mld_opdr_note n, fac_gebruikersgroep gg
WHERE n.prs_perslid_key = gg.prs_perslid_key
AND gg.fac_groep_key = 23 -- BCC FOBO
AND n.mld_opdr_key = x.mld_opdr_key
AND n.mld_opdr_note_aanmaak > x.aanmaak)
AND NOT EXISTS
(SELECT 1
FROM fac_tracking t,
fac_srtnotificatie sn,
fac_gebruikersgroep gg
WHERE t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
AND sn.fac_srtnotificatie_xmlnode = 'opdracht'
AND t.prs_perslid_key = gg.prs_perslid_key
AND gg.fac_groep_key = 23 -- BCC FOBO
AND t.fac_tracking_refkey = x.mld_opdr_key
AND t.fac_tracking_datum > x.aanmaak);
CREATE OR REPLACE VIEW BLCC_V_HUURDERS
(
@@ -21921,7 +21900,201 @@ AS
AND m.mld_alg_onroerendgoed_keys = og.alg_onroerendgoed_keys(+)
AND m.prs_perslid_key_voor = p.prs_perslid_key
AND p.prs_afdeling_key = a.prs_afdeling_key;
/*BLCC#70677 Inrichten BHV organisatie - Nog in ontwikkeling dus voorlopig niet naar prd
CREATE OR REPLACE VIEW BLCC_V_BESTELLINGEN_EHBO_TAS
AS
WITH
BESTELLING
AS
(SELECT d.ins_deel_omschrijving
EHBO_tas,
isc.ins_srtcontrole_omschrijving
controle,
idsc.ins_deelsrtcontrole_key
controle_key,
idsc.ins_deelsrtcontrole_datum
datum,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = idsc.prs_perslid_key)
perslid,
gebouw.alg_gebouw_omschrijving
gebouw,
REPLACE (
REPLACE (bestelling.ins_kenmerk_omschrijving,
' te bestellen',
''),
'*',
'')
|| ': '
|| bestelling.ins_kmdeelsrtcontr_waarde
bestelling
FROM ins_deel d,
ins_deelsrtcontrole idsc,
ins_srtcontrole isc,
(SELECT k.ins_kenmerk_omschrijving,
kctr.ins_kmdeelsrtcontr_waarde,
kctr.ins_deelsrtcontrole_key
FROM ins_kmdeelsrtcontr kctr,
ins_kenmerk k,
ins_srtkenmerk sk
WHERE kctr.ins_kenmerk_key = k.ins_kenmerk_key
AND k.ins_srtkenmerk_key = sk.ins_srtkenmerk_key
AND kctr.ins_kmdeelsrtcontr_waarde > 0 -- alleen meenemen als er ook besteld moet worden
AND sk.ins_srtkenmerk_upper LIKE '%TE BESTELLEN%')
bestelling,
(SELECT k.ins_kenmerk_omschrijving,
g.alg_gebouw_omschrijving,
kctr.ins_deelsrtcontrole_key
FROM ins_kmdeelsrtcontr kctr,
ins_kenmerk k,
ins_srtkenmerk sk,
alg_gebouw g
WHERE kctr.ins_kenmerk_key = k.ins_kenmerk_key
AND k.ins_srtkenmerk_key = sk.ins_srtkenmerk_key
AND sk.ins_srtkenmerk_upper LIKE '%GEBOUW%'
AND kctr.ins_kmdeelsrtcontr_waarde =
g.alg_gebouw_key) gebouw
WHERE d.ins_deel_key = idsc.ins_deel_key
AND isc.ins_srtcontrole_key = idsc.ins_srtcontrole_key
AND idsc.ins_deelsrtcontrole_status = 6 -- voltooid
AND bestelling.ins_deelsrtcontrole_key =
idsc.ins_deelsrtcontrole_key
AND gebouw.ins_deelsrtcontrole_key(+) =
idsc.ins_deelsrtcontrole_key
AND UPPER (isc.ins_srtcontrole_omschrijving) LIKE
'%CONTROLE INHOUD EHBO%')
SELECT EHBO_TAS,
CONTROLE,
CONTROLE_KEY,
DATUM,
PERSLID,
GEBOUW,
LISTAGG (BESTELLING, CHR (10))
WITHIN GROUP (ORDER BY CONTROLE_KEY) BESTELLING_TAS
FROM BESTELLING
GROUP BY EHBO_TAS,
CONTROLE,
CONTROLE_KEY,
DATUM,
PERSLID,
GEBOUW;
CREATE OR REPLACE PROCEDURE BLCC_BESTELLING_EHBO_TAS
AS
v_telling NUMBER;
v_melding_key NUMBER;
c_applname VARCHAR2 (50) := 'BESTELLING_EHBO_TAS';
v_errorhint VARCHAR2 (1000);
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
-- de te bestellen artikelen per tas
CURSOR bestelregel IS
SELECT k.mld_kenmerk_key, k.mld_kenmerk_omschrijving, bestelling_tas
FROM mld_srtkenmerk sk,
mld_kenmerk k,
blcc_v_bestellingen_ehbo_tas tas
WHERE sk.mld_srtkenmerk_upper = 'BESTELLING'
AND k.mld_srtkenmerk_key = sk.mld_srtkenmerk_key
AND SUBSTR (ehbo_tas, -3, 3) =
SUBSTR (k.mld_kenmerk_omschrijving, -3, 3)
AND TRUNC (datum) >=
TRUNC (TRUNC (SYSDATE, 'Month') - 1, 'Month')
AND TRUNC (datum) < TRUNC (SYSDATE, 'Month');
BEGIN
SELECT COUNT (*)
INTO v_telling
FROM blcc_v_bestellingen_ehbo_tas
WHERE TRUNC (datum) >= TRUNC (TRUNC (SYSDATE, 'Month') - 1, 'Month')
AND TRUNC (datum) < TRUNC (SYSDATE, 'Month');
v_errorhint := 'Fout bij aanmaken bestelling EHBO tassen';
-- Er is minimaal 1 tas die bijgevuld moet worden
-- Dan wordt 1 melding aangemaakt voor de totale bestelling voor deze maand
IF v_telling > 0
THEN
INSERT INTO mld_melding (mld_melding_module,
mld_meldbron_key,
mld_melding_datum,
mld_alg_locatie_key,
mld_stdmelding_key,
prs_perslid_key,
mld_melding_status,
mld_melding_spoed)
VALUES ('MLD',
6, -- System
SYSDATE,
1,
1741, -- Aanvullen EHBO tas
4, -- Facilitor
2, -- Nieuw
3)
RETURNING mld_melding_key
INTO v_melding_key;
fac.writelog (
c_applname,
'S',
'Bestelling '
|| v_melding_key
|| ' aanvullen EHBO-tassen aangemaakt',
'');
FOR rec IN bestelregel
LOOP
BEGIN
v_errorhint := 'Fout bij: ' || rec.mld_kenmerk_omschrijving;
mld.upsertmeldingkenmerk (rec.mld_kenmerk_key,
v_melding_key,
rec.bestelling_tas);
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
v_errormsg
|| ' ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.writelog (
'Bestelregel ' || rec.mld_kenmerk_omschrijving,
'E',
v_errorhint || '/' || v_errormsg,
'');
END;
END LOOP;
COMMIT;
END IF;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg :=
v_errormsg
|| ' ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.writelog (c_applname,
'E',
v_errormsg,
'');
COMMIT;
END;
*/
------ payload end ------
SET DEFINE OFF