3871 lines
163 KiB
SQL
3871 lines
163 KiB
SQL
--
|
||
-- $Id$
|
||
--
|
||
-- Script containing customer specific sql statements for the FACILITOR database
|
||
|
||
DEFINE thisfile = 'SGGR.SQL'
|
||
DEFINE dbuser = '^SGGR'
|
||
DEFINE custid = 'SGGR'
|
||
|
||
SET ECHO ON
|
||
SET DEFINE ON
|
||
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
||
WHENEVER SQLERROR EXIT;
|
||
|
||
SELECT adm.scriptspoolfile ('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
|
||
|
||
WHENEVER SQLERROR CONTINUE;
|
||
SPOOL &fcltlogfile
|
||
SET DEFINE OFF
|
||
|
||
------ payload begin ------
|
||
|
||
CREATE OR REPLACE PACKAGE sggr
|
||
AS
|
||
FUNCTION find_str (p_string IN VARCHAR2, p_search IN VARCHAR2)
|
||
RETURN VARCHAR2;
|
||
|
||
FUNCTION find_oud (p_string IN VARCHAR2, p_default IN VARCHAR2)
|
||
RETURN VARCHAR2;
|
||
|
||
FUNCTION find_nieuw (p_string IN VARCHAR2, p_default IN VARCHAR2)
|
||
RETURN VARCHAR2;
|
||
END;
|
||
/
|
||
|
||
|
||
CREATE OR REPLACE PACKAGE BODY sggr
|
||
AS
|
||
FUNCTION find_str (p_string IN VARCHAR2, p_search IN VARCHAR2)
|
||
RETURN VARCHAR2
|
||
AS
|
||
v_index NUMBER;
|
||
v_van NUMBER;
|
||
v_tot NUMBER;
|
||
BEGIN
|
||
v_index := INSTR (p_string, p_search);
|
||
|
||
IF v_index > 0
|
||
THEN
|
||
v_van := v_index + LENGTH (p_search);
|
||
v_tot := INSTR (p_string, CHR (10), v_index + LENGTH (p_search));
|
||
|
||
-- dbms_output.put_line ('van:' || to_char(v_van));
|
||
-- dbms_output.put_line ('tot:' || to_char(v_tot));
|
||
|
||
-- als v_tot gelijk is aan 0 dan zitten we op het einde van de string. Geef
|
||
-- dan alles maar terug tot het einde van de string (maar even op 1000 gezet.
|
||
IF v_tot = 0
|
||
THEN
|
||
v_tot := 1000;
|
||
END IF;
|
||
|
||
RETURN SUBSTR (p_string, v_van + 1, v_tot - v_van - 1);
|
||
ELSE
|
||
RETURN NULL;
|
||
END IF;
|
||
END;
|
||
|
||
FUNCTION find_oud (p_string IN VARCHAR2, p_default IN VARCHAR2)
|
||
RETURN VARCHAR2
|
||
AS
|
||
v_dummy NUMBER;
|
||
v_result VARCHAR2 (100);
|
||
BEGIN
|
||
IF p_string IS NOT NULL
|
||
THEN
|
||
v_result :=
|
||
TRIM (SUBSTR (p_string, 1, INSTR (p_string, ' --> ')));
|
||
|
||
IF v_result = '(leeg)'
|
||
THEN
|
||
v_result := NULL;
|
||
END IF;
|
||
|
||
RETURN v_result;
|
||
ELSE
|
||
RETURN p_default;
|
||
END IF;
|
||
END;
|
||
|
||
FUNCTION find_nieuw (p_string IN VARCHAR2, p_default IN VARCHAR2)
|
||
RETURN VARCHAR2
|
||
AS
|
||
v_dummy NUMBER;
|
||
v_van NUMBER;
|
||
v_tot NUMBER;
|
||
v_token VARCHAR (10);
|
||
v_result VARCHAR (100);
|
||
BEGIN
|
||
v_token := ' --> ';
|
||
v_van := INSTR (p_string, v_token) + LENGTH (v_token);
|
||
|
||
IF v_van > 0
|
||
THEN
|
||
v_result := TRIM (SUBSTR (p_string, v_van));
|
||
|
||
IF v_result = '(gewist)' OR v_result = '(Leeg)'
|
||
THEN
|
||
v_result := NULL;
|
||
END IF;
|
||
|
||
RETURN v_result;
|
||
ELSE
|
||
RETURN p_default;
|
||
END IF;
|
||
END;
|
||
END;
|
||
/
|
||
|
||
/* de te factureren contracten */
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_rap_cnt_periode_saas
|
||
AS
|
||
SELECT b.prs_leverancier_nr
|
||
ax_nr,
|
||
b.prs_bedrijf_naam
|
||
bedrijf,
|
||
'C'
|
||
|| c.cnt_contract_nummer_intern
|
||
|| '.'
|
||
|| COALESCE (c.cnt_contract_versie, '0')
|
||
nr,
|
||
c.cnt_contract_omschrijving
|
||
omschrijving,
|
||
COALESCE (c.cnt_contract_nummer, c.cnt_contract_omschrijving)
|
||
referentie,
|
||
c.cnt_contract_looptijd_van
|
||
ingangsdatum,
|
||
SUM (kc1.cnt_kenmerkcontract_waarde)
|
||
maandbedrag,
|
||
TO_CHAR (c.cnt_contract_korting)
|
||
kortingpct,
|
||
3
|
||
* SUM (kc1.cnt_kenmerkcontract_waarde)
|
||
* (1 - COALESCE (c.cnt_contract_korting, 0) / 100)
|
||
kwartaalbedrag,
|
||
c.cnt_contract_document
|
||
opmerking,
|
||
kc2.cnt_kenmerkcontract_waarde
|
||
indexdatum,
|
||
c.cnt_contract_looptijd_tot
|
||
einddatum,
|
||
c.cnt_contract_termijnkosten
|
||
- SUM (kc1.cnt_kenmerkcontract_waarde)
|
||
* (1 - COALESCE (c.cnt_contract_korting, 0) / 100)
|
||
controle
|
||
FROM cnt_v_aanwezigcontract c,
|
||
prs_bedrijf b,
|
||
cnt_kenmerkcontract kc1,
|
||
cnt_kenmerk ck1,
|
||
cnt_srtkenmerk cks1,
|
||
(SELECT kc2.cnt_contract_key, kc2.cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc2, cnt_kenmerk k2
|
||
WHERE kc2.cnt_kenmerk_key = k2.cnt_kenmerk_key
|
||
AND k2.cnt_srtkenmerk_key = 301 -- indexdatum
|
||
AND kc2.cnt_kenmerkcontract_verwijder IS NULL) kc2
|
||
WHERE c.ins_discipline_key IN (481, 501) -- 481 saas; 482 lic; 501 care
|
||
AND c.cnt_contract_status = 0
|
||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||
AND c.cnt_contract_key = kc1.cnt_contract_key
|
||
AND kc1.cnt_kenmerk_key = ck1.cnt_kenmerk_key
|
||
AND ck1.cnt_kenmerk_verwijder IS NULL
|
||
AND ck1.cnt_srtkenmerk_key = cks1.cnt_srtkenmerk_key
|
||
AND ( cks1.cnt_srtkenmerk_omschrijving LIKE '%rijs%'
|
||
OR cks1.cnt_srtkenmerk_omschrijving LIKE '%Hosting%'
|
||
OR cks1.cnt_srtkenmerk_omschrijving LIKE '%Korting%')
|
||
AND c.cnt_contract_key = kc2.cnt_contract_key(+)
|
||
AND c.cnt_contract_looptijd_van < SYSDATE + 50
|
||
AND c.cnt_contract_looptijd_tot > SYSDATE + 50
|
||
GROUP BY b.prs_leverancier_nr,
|
||
b.prs_bedrijf_naam,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_omschrijving,
|
||
c.cnt_contract_nummer,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_versie,
|
||
c.cnt_contract_document,
|
||
c.cnt_contract_korting,
|
||
kc2.cnt_kenmerkcontract_waarde,
|
||
c.cnt_contract_termijnkosten,
|
||
c.cnt_contract_looptijd_tot
|
||
ORDER BY 1, 4;
|
||
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_rap_cnt_periode_lic
|
||
AS
|
||
SELECT b.prs_leverancier_nr
|
||
ax_nr,
|
||
b.prs_bedrijf_naam
|
||
bedrijf,
|
||
'C'
|
||
|| c.cnt_contract_nummer_intern
|
||
|| '.'
|
||
|| COALESCE (c.cnt_contract_versie, '0')
|
||
nr,
|
||
c.cnt_contract_omschrijving
|
||
omschrijving,
|
||
COALESCE (c.cnt_contract_nummer, c.cnt_contract_omschrijving)
|
||
referentie,
|
||
c.cnt_contract_looptijd_van
|
||
ingangsdatum,
|
||
DECODE (SUM (kc1.cnt_kenmerkcontract_waarde),
|
||
0, c.cnt_contract_termijnkosten,
|
||
SUM (kc1.cnt_kenmerkcontract_waarde))
|
||
jaarbedrag,
|
||
c.cnt_contract_termijnkosten
|
||
termijnbedrag,
|
||
(SELECT ct.cnt_termijn_omschrijving
|
||
FROM cnt_termijn ct
|
||
WHERE ct.cnt_termijn_key = c.cnt_contract_termijntermijn)
|
||
termijn,
|
||
c.cnt_contract_document
|
||
opmerking,
|
||
kc2.cnt_kenmerkcontract_waarde
|
||
indexdatum,
|
||
c.cnt_contract_looptijd_tot
|
||
einddatum,
|
||
c.cnt_contract_termijnkosten
|
||
- DECODE (SUM (kc1.cnt_kenmerkcontract_waarde),
|
||
0, c.cnt_contract_termijnkosten,
|
||
SUM (kc1.cnt_kenmerkcontract_waarde))
|
||
controle
|
||
FROM cnt_v_aanwezigcontract c,
|
||
prs_bedrijf b,
|
||
cnt_kenmerkcontract kc1,
|
||
cnt_kenmerk ck1,
|
||
cnt_srtkenmerk cks1,
|
||
(SELECT kc2.cnt_contract_key, kc2.cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc2, cnt_kenmerk k2
|
||
WHERE kc2.cnt_kenmerk_key = k2.cnt_kenmerk_key
|
||
AND k2.cnt_srtkenmerk_key = 301 -- indexdatum
|
||
AND kc2.cnt_kenmerkcontract_verwijder IS NULL) kc2
|
||
WHERE c.ins_discipline_key IN (482) -- 482 lic
|
||
AND c.cnt_contract_status = 0
|
||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||
AND c.cnt_contract_key = kc1.cnt_contract_key
|
||
AND kc1.cnt_kenmerk_key = ck1.cnt_kenmerk_key
|
||
AND ck1.cnt_kenmerk_verwijder IS NULL
|
||
AND ck1.cnt_srtkenmerk_key = cks1.cnt_srtkenmerk_key
|
||
AND ( cks1.cnt_srtkenmerk_omschrijving LIKE '%rijs%'
|
||
OR cks1.cnt_srtkenmerk_omschrijving LIKE '%Hosting%'
|
||
OR cks1.cnt_srtkenmerk_omschrijving LIKE '%Korting%')
|
||
AND c.cnt_contract_key = kc2.cnt_contract_key(+)
|
||
AND c.cnt_contract_looptijd_van < SYSDATE + 50
|
||
AND c.cnt_contract_looptijd_tot > SYSDATE + 50
|
||
GROUP BY b.prs_leverancier_nr,
|
||
b.prs_bedrijf_naam,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_omschrijving,
|
||
c.cnt_contract_nummer,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_versie,
|
||
c.cnt_contract_document,
|
||
c.cnt_contract_looptijd_tot,
|
||
kc2.cnt_kenmerkcontract_waarde,
|
||
c.cnt_contract_termijnkosten,
|
||
cnt_contract_termijntermijn
|
||
UNION
|
||
SELECT b.prs_leverancier_nr
|
||
ax_nr,
|
||
b.prs_bedrijf_naam
|
||
bedrijf,
|
||
'C'
|
||
|| c.cnt_contract_nummer_intern
|
||
|| '.'
|
||
|| COALESCE (c.cnt_contract_versie, '0')
|
||
nr,
|
||
c.cnt_contract_omschrijving
|
||
omschrijving,
|
||
COALESCE (c.cnt_contract_nummer, c.cnt_contract_omschrijving)
|
||
referentie,
|
||
c.cnt_contract_looptijd_van
|
||
ingangsdatum,
|
||
c.cnt_contract_kosten
|
||
jaarbedrag,
|
||
c.cnt_contract_termijnkosten
|
||
termijnbedrag,
|
||
(SELECT ct.cnt_termijn_omschrijving
|
||
FROM cnt_termijn ct
|
||
WHERE ct.cnt_termijn_key = c.cnt_contract_termijntermijn)
|
||
termijn,
|
||
c.cnt_contract_document
|
||
opmerking,
|
||
kc2.cnt_kenmerkcontract_waarde
|
||
indexdatum,
|
||
c.cnt_contract_looptijd_tot
|
||
einddatum,
|
||
c.cnt_contract_termijnkosten
|
||
FROM cnt_v_aanwezigcontract c,
|
||
prs_bedrijf b,
|
||
cnt_kenmerk ck1,
|
||
cnt_srtkenmerk cks1,
|
||
(SELECT kc2.cnt_contract_key, kc2.cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc2, cnt_kenmerk k2
|
||
WHERE kc2.cnt_kenmerk_key = k2.cnt_kenmerk_key
|
||
AND k2.cnt_srtkenmerk_key = 301 -- indexdatum
|
||
AND kc2.cnt_kenmerkcontract_verwijder IS NULL) kc2
|
||
WHERE c.ins_discipline_key IN (661) -- 661 specials
|
||
AND c.cnt_contract_status = 0
|
||
AND c.cnt_prs_bedrijf_key = b.prs_bedrijf_key
|
||
AND c.cnt_contract_key = kc2.cnt_contract_key(+)
|
||
AND c.cnt_contract_looptijd_van < SYSDATE + 50
|
||
AND c.cnt_contract_looptijd_tot > SYSDATE + 50
|
||
GROUP BY b.prs_leverancier_nr,
|
||
b.prs_bedrijf_naam,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_omschrijving,
|
||
c.cnt_contract_nummer,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_versie,
|
||
c.cnt_contract_document,
|
||
c.cnt_contract_looptijd_tot,
|
||
c.cnt_contract_termijnkosten,
|
||
cnt_contract_kosten,
|
||
cnt_kenmerkcontract_waarde,
|
||
cnt_contract_termijntermijn
|
||
ORDER BY 1, 4;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_MLD_VERLOF
|
||
(
|
||
MLD_MELDING_KEY,
|
||
MELDING_DATUM,
|
||
MELDING_OMSCHRIJVING,
|
||
DATUM_VERLOF,
|
||
DATUM_TM,
|
||
STATUS,
|
||
AANVRAGER_KEY,
|
||
AANVRAGER,
|
||
GOEDKEURDER_KEY,
|
||
GOEDKEURDER,
|
||
UREN,
|
||
FASE,
|
||
INCLUDE
|
||
)
|
||
AS
|
||
SELECT *
|
||
FROM (SELECT meld.mld_melding_key,
|
||
meld.mld_melding_datum,
|
||
meld.mld_melding_omschrijving,
|
||
meld.datum_verlof,
|
||
meld.datum_tm,
|
||
meld.mld_statuses_omschrijving,
|
||
meld.prs_perslid_key_voor,
|
||
meld.prs_perslid_naam_full_voor,
|
||
meld.prs_perslid_key,
|
||
meld.prs_perslid_naam_full,
|
||
meld.uren,
|
||
DECODE (
|
||
mld_melding_status,
|
||
0, reden.fac_usrdata_code || ' verlof: Ingediend',
|
||
2, reden.fac_usrdata_code || ' verlof: Ingediend',
|
||
3, reden.fac_usrdata_code || ' verlof: Ingediend',
|
||
4, reden.fac_usrdata_code || ' verlof: Geacepteerd',
|
||
7, reden.fac_usrdata_code || ' verlof: Geacepteerd',
|
||
reden.fac_usrdata_code || ' verlof: Verwerkt')
|
||
fase,
|
||
DECODE (mld_melding_status, 0, 2, 2, 2, 3, 2, 3)
|
||
include
|
||
FROM (SELECT m.mld_melding_key,
|
||
mld_melding_datum,
|
||
mld_melding_omschrijving,
|
||
mld_melding_status,
|
||
datver.kenmerkwaarde
|
||
datum_verlof,
|
||
datver.mld_kenmerk_groep,
|
||
dattm.kenmerkwaarde
|
||
datum_tm,
|
||
mld_statuses_omschrijving,
|
||
m.prs_perslid_key_voor,
|
||
pf1.prs_perslid_naam_full
|
||
prs_perslid_naam_full_voor,
|
||
tra.prs_perslid_key,
|
||
pf2.prs_perslid_naam_full,
|
||
uren.kenmerkwaarde
|
||
uren,
|
||
DECODE (mld_melding_status,
|
||
0, 2,
|
||
2, 2,
|
||
3, 2,
|
||
3)
|
||
include
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all pf1,
|
||
prs_v_perslid_fullnames_all pf2,
|
||
mld_statuses st,
|
||
(SELECT fac_tracking_refkey, prs_perslid_key
|
||
FROM fac_srtnotificatie srt, fac_tracking tr
|
||
WHERE tr.fac_srtnotificatie_key =
|
||
srt.fac_srtnotificatie_key
|
||
AND srt.fac_srtnotificatie_code = 'MLDACP')
|
||
tra,
|
||
(SELECT mld_melding_key,
|
||
mld_kenmerk_groep,
|
||
fac.safe_to_date (
|
||
mld_kenmerkmelding_waarde,
|
||
'DD-MM-YYYY') kenmerkwaarde
|
||
FROM mld_kenmerkmelding km, mld_kenmerk k
|
||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_srtkenmerk_key = 347
|
||
AND km.mld_kenmerkmelding_waarde
|
||
IS NOT NULL) datver,
|
||
(SELECT mld_melding_key,
|
||
mld_kenmerk_groep,
|
||
fac.safe_to_date (
|
||
mld_kenmerkmelding_waarde,
|
||
'DD-MM-YYYY') kenmerkwaarde
|
||
FROM mld_kenmerkmelding km, mld_kenmerk k
|
||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_srtkenmerk_key = 346
|
||
AND km.mld_kenmerkmelding_waarde
|
||
IS NOT NULL) dattm,
|
||
(SELECT mld_melding_key,
|
||
mld_kenmerk_groep,
|
||
fac.safe_to_number (
|
||
mld_kenmerkmelding_waarde)
|
||
* -1 kenmerkwaarde
|
||
FROM mld_kenmerkmelding km, mld_kenmerk k
|
||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_srtkenmerk_key = 341
|
||
AND km.mld_kenmerkmelding_waarde
|
||
IS NOT NULL) uren
|
||
WHERE m.mld_stdmelding_key = 241
|
||
AND m.mld_melding_status IN (0,
|
||
2,
|
||
3,
|
||
4,
|
||
5,
|
||
7,
|
||
9)
|
||
AND m.prs_perslid_key_voor = pf1.prs_perslid_key
|
||
AND datver.mld_melding_key = m.mld_melding_key
|
||
AND dattm.mld_melding_key = m.mld_melding_key
|
||
AND uren.mld_melding_key = m.mld_melding_key
|
||
AND datver.mld_kenmerk_groep =
|
||
dattm.mld_kenmerk_groep
|
||
AND datver.mld_kenmerk_groep =
|
||
uren.mld_kenmerk_groep
|
||
AND m.mld_melding_status = st.mld_statuses_key
|
||
AND m.mld_melding_key = tra.fac_tracking_refkey(+)
|
||
AND tra.prs_perslid_key = pf2.prs_perslid_key(+))
|
||
meld
|
||
LEFT OUTER JOIN
|
||
(SELECT mld_melding_key,
|
||
mld_kenmerk_groep,
|
||
mld_kenmerkmelding_waarde,
|
||
w.fac_usrdata_code
|
||
FROM mld_kenmerkmelding km,
|
||
mld_kenmerk k,
|
||
fac_usrdata w
|
||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND W.FAC_USRDATA_KEY = mld_kenmerkmelding_waarde
|
||
AND k.mld_srtkenmerk_key = 441
|
||
AND km.mld_kenmerkmelding_waarde IS NOT NULL)
|
||
reden
|
||
ON meld.mld_melding_key = reden.mld_melding_key
|
||
AND meld.mld_kenmerk_groep =
|
||
reden.mld_kenmerk_groep
|
||
WHERE COALESCE (reden.fac_usrdata_code, 'Apekool') NOT IN
|
||
('Compensatie', 'Bijzonder'))
|
||
UNION ALL
|
||
SELECT NULL,
|
||
ADD_MONTHS (TRUNC (SYSDATE, 'YYYY'), 0),
|
||
NULL,
|
||
ADD_MONTHS (TRUNC (SYSDATE, 'YYYY'), 0),
|
||
ADD_MONTHS (TRUNC (SYSDATE, 'YYYY'), 12) - 1,
|
||
'Beginstand',
|
||
prs_perslid_key,
|
||
prs_perslid_naam_full,
|
||
NULL,
|
||
NULL,
|
||
fac.safe_to_number (pk.prs_kenmerklink_waarde),
|
||
'Beginstand',
|
||
1 include
|
||
FROM prs_kenmerklink pk, prs_v_perslid_fullnames_all pf
|
||
WHERE prs_kenmerk_key = 1060 AND pk.prs_link_key = pf.prs_perslid_key;
|
||
|
||
CREATE OR REPLACE VIEW PRS_V_SGF_AFDELING
|
||
(
|
||
prs_afdeling_key,
|
||
prs_afdeling_naam
|
||
)
|
||
AS
|
||
SELECT prs_afdeling_key, prs_afdeling_naam
|
||
FROM prs_v_aanwezigafdeling
|
||
WHERE prs_afdeling_parentkey = 27;
|
||
|
||
CREATE OR REPLACE VIEW PRS_V_BUDGETHOUDER
|
||
(
|
||
PRS_PERSLID_KEY,
|
||
PRS_PERSLID_NAAM
|
||
)
|
||
AS
|
||
SELECT prs_kostenplaats_key, prs_perslid_naam_full
|
||
FROM prs_kostenplaats k, prs_v_perslid_fullnames p
|
||
WHERE prs_kostenplaats_begin < SYSDATE
|
||
AND ( prs_kostenplaats_eind < SYSDATE
|
||
OR prs_kostenplaats_eind IS NULL)
|
||
AND prs_kostenplaats_verwijder IS NULL
|
||
AND p.prs_perslid_key = k.prs_perslid_key;
|
||
|
||
-- SGGR#23236 - Inzetten FACILITOR voor administratieve processen SGF!
|
||
|
||
CREATE OR REPLACE PROCEDURE sggr_select_INDEXWERK (p_applname IN VARCHAR2,
|
||
p_applrun IN VARCHAR2)
|
||
AS
|
||
BEGIN
|
||
NULL;
|
||
END;
|
||
/
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_export_INDEXWERK
|
||
(
|
||
RESULT,
|
||
result_order
|
||
)
|
||
AS
|
||
SELECT '', 0
|
||
FROM DUAL
|
||
WHERE 1 = 0;
|
||
|
||
|
||
CREATE OR REPLACE PROCEDURE sggr_export_indexwerk (p_applname IN VARCHAR2,
|
||
p_applrun IN VARCHAR2,
|
||
p_filedir IN VARCHAR2,
|
||
p_filename IN VARCHAR2)
|
||
AS
|
||
CURSOR ccnt (p_splitsindexdatum DATE)
|
||
IS
|
||
SELECT '['
|
||
|| TO_CHAR (x.cnt_contract_nummer_intern)
|
||
|| '|'
|
||
|| x.cnt_contract_omschrijving
|
||
|| '] ' aanduiding,
|
||
x.ins_discipline_key,
|
||
x.cnt_contract_key,
|
||
x.cnt_contract_nummer_intern,
|
||
x.cnt_contract_versie,
|
||
x.cnt_contract_looptijd_tot einddatum,
|
||
li.index_datum laatste_indexdatum,
|
||
x.cnt_contract_kosten,
|
||
x.cnt_contract_termijnkosten,
|
||
x.cnt_prs_bedrijf_key,
|
||
DECODE (x.cnt_prs_bedrijf_key,
|
||
1062, 2,
|
||
1901, 2,
|
||
1061, 2,
|
||
2901, 2,
|
||
1073, 2,
|
||
2) indexpct -- Voor 2021: 2%, voor AAFM (1062), YASKS(1901)/(1061)/VEBE(2901), UWVA (1073)
|
||
FROM (SELECT c.*
|
||
FROM cnt_v_aanwezigcontract c
|
||
WHERE c.ins_discipline_key IN (481, 482, 501, 661) -- SaaS/Onderhoud/Care/Specials
|
||
AND c.cnt_contract_status = 0 -- NIET Gesloten!
|
||
AND NOT EXISTS -- Beschouw alleen laatste versie van contracten
|
||
(SELECT 1
|
||
FROM cnt_v_aanwezigcontract
|
||
WHERE cnt_contract_nummer_intern =
|
||
c.cnt_contract_nummer_intern
|
||
AND TO_NUMBER (cnt_contract_versie) >
|
||
TO_NUMBER (
|
||
COALESCE (
|
||
c.cnt_contract_versie,
|
||
'0')))) x
|
||
LEFT JOIN
|
||
(SELECT cnt_contract_key,
|
||
fac.safe_to_date (cnt_kenmerkcontract_waarde,
|
||
'dd-mm-yyyy') index_datum
|
||
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
||
WHERE cnt_kenmerkcontract_verwijder IS NULL
|
||
AND kc.cnt_kenmerk_key = k.cnt_kenmerk_key
|
||
AND k.cnt_srtkenmerk_key = 301) li -- Laatste index-datum
|
||
ON x.cnt_contract_key = li.cnt_contract_key
|
||
WHERE x.cnt_contract_looptijd_tot > p_splitsindexdatum
|
||
AND COALESCE (li.index_datum, SYSDATE) < p_splitsindexdatum
|
||
ORDER BY TO_NUMBER (x.cnt_contract_nummer_intern);
|
||
|
||
|
||
|
||
c_splitsindexdatum DATE := TO_DATE ('01012022', 'ddmmyyyy');
|
||
v_errorhint VARCHAR2 (1000);
|
||
v_errormsg VARCHAR2 (1000);
|
||
oracle_err_num NUMBER;
|
||
oracle_err_mes VARCHAR2 (200);
|
||
v_new_contract_key NUMBER;
|
||
termijnkorting cnt_kenmerkcontract.cnt_kenmerkcontract_waarde%TYPE;
|
||
oldtermijnkosten cnt_contract.cnt_contract_termijnkosten%TYPE;
|
||
newtermijnkosten cnt_contract.cnt_contract_termijnkosten%TYPE;
|
||
|
||
PROCEDURE upsert_cntkenmerk (p_contract_key IN NUMBER,
|
||
p_srtkenmerk_key IN NUMBER,
|
||
p_waarde IN VARCHAR2)
|
||
AS
|
||
v_kenmerk_key NUMBER;
|
||
v_srtkenmerk_kenmerktype VARCHAR2 (10);
|
||
v_srtkenmerk_lengte NUMBER;
|
||
v_waarde VARCHAR2 (255);
|
||
v_kenmerkcontract_key NUMBER;
|
||
BEGIN
|
||
-- Bepaal kenmerk van meegegeven contract en soort; deze moet bestaan!
|
||
SELECT cnt_kenmerk_key,
|
||
cnt_srtkenmerk_kenmerktype,
|
||
COALESCE (cnt_srtkenmerk_lengte, 255)
|
||
INTO v_kenmerk_key, v_srtkenmerk_kenmerktype, v_srtkenmerk_lengte
|
||
FROM cnt_contract c, cnt_kenmerk k, cnt_srtkenmerk sk
|
||
WHERE c.cnt_contract_key = p_contract_key
|
||
AND c.ins_discipline_key = k.cnt_srtcontract_key
|
||
AND k.cnt_kenmerk_verwijder IS NULL
|
||
AND k.cnt_srtkenmerk_key = sk.cnt_srtkenmerk_key
|
||
AND sk.cnt_srtkenmerk_verwijder IS NULL
|
||
AND sk.cnt_srtkenmerk_key = p_srtkenmerk_key;
|
||
|
||
v_waarde := SUBSTR (p_waarde, 1, v_srtkenmerk_lengte);
|
||
|
||
BEGIN
|
||
-- Bepaal bestaan/aanwezigheid huidige kenmerkwaarde?
|
||
SELECT cnt_kenmerkcontract_key
|
||
INTO v_kenmerkcontract_key
|
||
FROM cnt_kenmerkcontract kc
|
||
WHERE kc.cnt_contract_key = p_contract_key
|
||
AND kc.cnt_kenmerk_key = v_kenmerk_key
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL;
|
||
EXCEPTION
|
||
WHEN NO_DATA_FOUND
|
||
THEN
|
||
IF p_waarde IS NULL
|
||
THEN
|
||
RETURN;
|
||
END IF;
|
||
|
||
INSERT INTO cnt_kenmerkcontract (cnt_contract_key,
|
||
cnt_kenmerk_key,
|
||
cnt_kenmerkcontract_waarde)
|
||
VALUES (p_contract_key, v_kenmerk_key, v_waarde);
|
||
|
||
RETURN;
|
||
END;
|
||
|
||
IF p_waarde IS NULL
|
||
THEN
|
||
--DELETE FROM cnt_kenmerkcontract
|
||
-- WHERE cnt_kenmerkcontract_key = v_kenmerkcontract_key;
|
||
UPDATE cnt_kenmerkcontract
|
||
SET cnt_kenmerkcontract_verwijder = SYSDATE
|
||
WHERE cnt_kenmerkcontract_key = v_kenmerkcontract_key;
|
||
ELSE
|
||
UPDATE cnt_kenmerkcontract
|
||
SET cnt_kenmerkcontract_waarde = v_waarde,
|
||
cnt_kenmerkcontract_wijzig = SYSDATE
|
||
WHERE cnt_kenmerkcontract_key = v_kenmerkcontract_key;
|
||
END IF;
|
||
END;
|
||
BEGIN
|
||
-- Splitsen en indexeren FACILITOR-contracten.
|
||
FOR rc IN ccnt (c_splitsindexdatum)
|
||
LOOP
|
||
BEGIN
|
||
v_errorhint := 'Fout bij splitsen contract.';
|
||
-- Splitsen kun je wel achterwege laten als het contract pas na de splitsdatum begint
|
||
-- of voor de splitsdatum eindigt. Dat komt voor en geeft dan nu de waarschuwing
|
||
-- "Fout bij bepalen nieuwe versie" in de volgende stap. dat is niet erg dus.
|
||
cnt.splitscontract (rc.cnt_contract_key,
|
||
c_splitsindexdatum,
|
||
NULL,
|
||
NULL);
|
||
|
||
COMMIT;
|
||
|
||
-- Na splitsen wordt de nieuwe versie ge<67>ndexeerd.
|
||
v_errorhint := 'Fout bij bepalen nieuwe versie.';
|
||
|
||
BEGIN
|
||
SELECT cnt_contract_key
|
||
INTO v_new_contract_key
|
||
FROM cnt_v_aanwezigcontract
|
||
WHERE cnt_contract_nummer_intern =
|
||
rc.cnt_contract_nummer_intern
|
||
AND TO_NUMBER (cnt_contract_versie) >
|
||
TO_NUMBER (COALESCE (rc.cnt_contract_versie, '0'));
|
||
EXCEPTION
|
||
WHEN NO_DATA_FOUND
|
||
THEN
|
||
-- Er is blijkbaar niet gesplitst (waarschijnlijk dat contract begint pas op of na splitsdatum)
|
||
-- omdat prijspeil volgens laatste index toch oud is, moet die dan toch geindexdeerd worden
|
||
IF rc.einddatum > c_splitsindexdatum
|
||
THEN
|
||
v_new_contract_key := rc.cnt_contract_key;
|
||
END IF;
|
||
END;
|
||
|
||
v_errorhint := 'Fout bij toevoegen laatste indexdatum.';
|
||
upsert_cntkenmerk (v_new_contract_key,
|
||
301, -- Laatste index-datum
|
||
TO_CHAR (c_splitsindexdatum, 'ddmmyyyy'));
|
||
COMMIT;
|
||
|
||
v_errorhint := 'Fout bij toevoegen laatste indexpercentage.';
|
||
upsert_cntkenmerk (v_new_contract_key, 302, -- Laatste index-percentage
|
||
rc.indexpct);
|
||
COMMIT;
|
||
|
||
FOR rkc
|
||
IN ( SELECT kc.cnt_kenmerkcontract_key,
|
||
kc.cnt_kenmerkcontract_waarde cur_waarde,
|
||
ROUND (
|
||
fac.safe_to_number (
|
||
kc.cnt_kenmerkcontract_waarde)
|
||
* ((100 + rc.indexpct) / 100),
|
||
2) new_waarde
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE 1 = 1
|
||
AND kc.cnt_contract_key = v_new_contract_key
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND kc.cnt_kenmerk_key = k.cnt_kenmerk_key
|
||
AND k.cnt_kenmerk_verwijder IS NULL
|
||
AND k.cnt_srtkenmerk_key = sk.cnt_srtkenmerk_key
|
||
AND sk.cnt_srtkenmerk_verwijder IS NULL
|
||
AND sk.cnt_srtkenmerk_kenmerktype = 'N'
|
||
AND ( sk.cnt_srtkenmerk_key = 241 -- Hosting
|
||
OR ( sk.cnt_srtkenmerk_key = 221 -- Tarief Consultant
|
||
AND rc.cnt_contract_nummer_intern NOT IN
|
||
(16)) -- ...behalve voor UWVA=> handmatig
|
||
OR ( sk.cnt_srtkenmerk_key = 222 -- Tarief Specialist
|
||
AND rc.cnt_contract_nummer_intern NOT IN
|
||
(16)) -- ...behalve voor UWVA=> handmatig
|
||
OR sk.cnt_srtkenmerk_upper LIKE '%PRIJS%')
|
||
ORDER BY k.cnt_kenmerk_volgnummer)
|
||
LOOP
|
||
v_errorhint := 'Fout bij bijwerken prijsveld.';
|
||
|
||
UPDATE cnt_kenmerkcontract
|
||
SET cnt_kenmerkcontract_waarde =
|
||
TO_CHAR (rkc.new_waarde, '999999D99')
|
||
WHERE cnt_kenmerkcontract_key = rkc.cnt_kenmerkcontract_key;
|
||
END LOOP;
|
||
|
||
COMMIT;
|
||
|
||
|
||
-- Aanpassen van de totalen. Let op dat een evt kortingsbedrag (cnt_srtkenmerk_key=85)
|
||
-- niet meegeindexeerd wordt, dus kun je niet zomaar het totaal indexeren
|
||
v_errorhint := 'Fout bij bijwerken termijnbedrag.';
|
||
|
||
SELECT cnt_contract_termijnkosten
|
||
INTO oldtermijnkosten
|
||
FROM cnt_contract
|
||
WHERE cnt_contract_key = v_new_contract_key;
|
||
|
||
DBMS_OUTPUT.PUT_LINE ('oldtermijn ' || oldtermijnkosten);
|
||
|
||
BEGIN
|
||
SELECT COALESCE (
|
||
fac.safe_to_number (kc.cnt_kenmerkcontract_waarde),
|
||
0)
|
||
INTO termijnkorting
|
||
FROM cnt_kenmerkcontract kc, cnt_kenmerk k
|
||
WHERE kc.cnt_kenmerk_key = k.cnt_kenmerk_key
|
||
AND k.cnt_srtkenmerk_key = 85 -- het kortingsbedrag (is negatief bij korting) per termijn
|
||
AND kc.cnt_contract_key = v_new_contract_key;
|
||
EXCEPTION
|
||
WHEN NO_DATA_FOUND
|
||
THEN
|
||
termijnkorting := 0;
|
||
END;
|
||
|
||
UPDATE cnt_contract
|
||
SET cnt_contract_termijnkosten =
|
||
ROUND (
|
||
( rc.cnt_contract_termijnkosten
|
||
- fac.safe_to_number (termijnkorting))
|
||
* ((100 + rc.indexpct) / 100)
|
||
+ fac.safe_to_number (termijnkorting),
|
||
2)
|
||
WHERE cnt_contract_key = v_new_contract_key;
|
||
|
||
SELECT cnt_contract_termijnkosten
|
||
INTO newtermijnkosten
|
||
FROM cnt_contract
|
||
WHERE cnt_contract_key = v_new_contract_key;
|
||
|
||
DBMS_OUTPUT.PUT_LINE (
|
||
'newtermijn ' || TO_CHAR (newtermijnkosten));
|
||
|
||
--c.ins_discipline_key IN (481, 482, 501) -- SaaS/Onderhoud/Care = termijn per maand/jaar/maand
|
||
v_errorhint := 'Fout bij bijwerken jaarbedrag.';
|
||
|
||
UPDATE cnt_contract
|
||
SET cnt_contract_kosten =
|
||
DECODE (ins_discipline_key,
|
||
481, 12,
|
||
501, 12,
|
||
661, 12,
|
||
482, 1)
|
||
* cnt_contract_termijnkosten,
|
||
cnt_contract_termijntermijn =
|
||
DECODE (ins_discipline_key,
|
||
481, 3,
|
||
501, 3,
|
||
661, 3,
|
||
482, 10) -- mnd/mnd/jr
|
||
WHERE cnt_contract_key = v_new_contract_key;
|
||
|
||
-- SGGR#60314: Totalen igv. FACILITOR SaaS (ins_discipline_key=481)
|
||
-- ook doorvoeren in berekende kenmerkvelden van soort:
|
||
-- 481=Totaal contractbedrag/mnd
|
||
-- 482=Totaal contractbedrag/jaar
|
||
v_errorhint := 'Fout bij bijwerken berekende velden.';
|
||
-- alleen bij 481??
|
||
IF rc.ins_discipline_key = 481 -- FACILITOR SaaS
|
||
THEN
|
||
upsert_cntkenmerk (v_new_contract_key, 481, -- Totaal contractbedrag/mnd
|
||
newtermijnkosten);
|
||
upsert_cntkenmerk (v_new_contract_key,
|
||
482, -- Totaal contractbedrag/jaar
|
||
12 * newtermijnkosten);
|
||
END IF;
|
||
|
||
v_errorhint := 'Fout bij bijwerken index-tracking (CNTUPD).';
|
||
|
||
fac.trackaction (
|
||
'CNTUPD',
|
||
v_new_contract_key,
|
||
NULL,
|
||
NULL,
|
||
'Contract ge<67>ndexeerd met '
|
||
|| TO_CHAR (rc.indexpct, '0.00')
|
||
|| '%; termijnbedrag gewijzigd van <20>'
|
||
|| TO_CHAR (oldtermijnkosten)
|
||
|| ' naar <20>'
|
||
|| TO_CHAR (newtermijnkosten));
|
||
COMMIT;
|
||
EXCEPTION
|
||
WHEN OTHERS
|
||
THEN
|
||
oracle_err_num := SQLCODE;
|
||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||
v_errormsg :=
|
||
' Error '
|
||
|| oracle_err_num
|
||
|| '/'
|
||
|| oracle_err_mes
|
||
|| ')';
|
||
fac.writelog (p_applname,
|
||
'W',
|
||
rc.aanduiding || v_errormsg,
|
||
v_errorhint);
|
||
COMMIT;
|
||
END;
|
||
END LOOP;
|
||
EXCEPTION
|
||
WHEN OTHERS
|
||
THEN
|
||
oracle_err_num := SQLCODE;
|
||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||
v_errormsg :=
|
||
'Error ' || oracle_err_num || '/' || oracle_err_mes || ')';
|
||
fac.writelog (p_applname,
|
||
'E',
|
||
'Proces INDEXWERK afgebroken!',
|
||
v_errormsg);
|
||
COMMIT;
|
||
END;
|
||
/
|
||
|
||
-- Standaard volgorde van de kolommen in het CSV-formaat)
|
||
-- Variabelelijst
|
||
-- v_alg_locatie_code 1
|
||
-- v_alg_gebouw_code 2
|
||
-- v_alg_verdieping_volgnr 3
|
||
-- v_alg_ruimte_nr 4
|
||
-- v_prs_werkplek_volgnr 5
|
||
-- v_prs_werkplek_omschrijving 6
|
||
-- v_prs_afdeling_naam 7
|
||
-- v_prs_perslid_naam 8
|
||
-- v_prs_perslid_tussenvoegsel 9
|
||
-- v_prs_perslid_voornaam 10
|
||
-- v_prs_perslid_voorletters 11
|
||
-- v_prs_perslid_partner_naam 12
|
||
-- v_prs_perslid_partner_tussenv 13
|
||
-- v_prs_naamgebruik_code 14 0 (default) perslid_naam en perslid_tussenvoegsel worden gebruikt
|
||
-- 1 personen die de geboortenaam van de partner icm de eigen naam willen gebruiken
|
||
-- 2 personen die de geboortenaam van de partner willen gebruiken
|
||
-- 3 personen die de eigen naam icm de geboortenaam van de partner willen gebruiken
|
||
-- v_prs_perslid_geslacht 15 Gebruik 'man', 'm' of 1 voor man en 'vrouw', 'v' of 0 voor vrouw case insensitive geen default
|
||
-- v_prs_perslid_telefoonnr 16
|
||
-- v_prs_perslid_mobiel 17
|
||
-- v_prs_perslid_email 18
|
||
-- v_prs_perslid_dienstverband 19
|
||
-- v_prs_perslid_nr 20
|
||
-- v_prs_srtperslid_omschrijving 21
|
||
-- v_prs_perslid_oslogin 22
|
||
-- v_prs_perslid_wachtwoord 23
|
||
-- v_prs_perslid_titel 24
|
||
-- v_prs_perslid_apikey 25
|
||
-- v_dummy 26
|
||
-- v_prs_kenmerk1 27
|
||
-- v_prs_kenmerk2 28
|
||
-- v_prs_kenmerk3 29
|
||
-- v_prs_kenmerk4 30
|
||
-- v_prs_kenmerk5 31
|
||
-- v_prs_kenmerk6 32
|
||
-- v_prs_kenmerk7 33
|
||
-- v_prs_kenmerk8 34
|
||
-- v_prs_kenmerk9 35
|
||
-- v_prs_kenmerk10 36
|
||
-- v_prs_kenmerk11 37
|
||
-- v_prs_kenmerk12 38
|
||
-- v_prs_kenmerk13 39
|
||
-- v_prs_kenmerk14 40
|
||
-- v_prs_kenmerk15 41
|
||
-- v_prs_kenmerk16 42
|
||
-- v_prs_kenmerk17 43
|
||
-- v_prs_kenmerk18 44
|
||
-- v_prs_kenmerk19 45
|
||
-- v_prs_kenmerk20 46
|
||
|
||
CREATE OR REPLACE PROCEDURE sggr_import_prs (p_import_key IN NUMBER)
|
||
AS
|
||
v_errormsg VARCHAR2 (1000) := '-';
|
||
v_errorhint VARCHAR2 (1000) := '-';
|
||
oracle_err_num NUMBER;
|
||
oracle_err_mes VARCHAR2 (200);
|
||
BEGIN
|
||
v_errorhint := 'Generieke import';
|
||
|
||
-- De sequence array staat beschreven in PRS_PAC.SRC bij de import_perslid-PROCEDURE.
|
||
--"Personeelsnummer;Geslacht;Login;Achternaam;Tussenvoegsel;Voorletters;Voornaam;Telefoonnummer;Mobiel;Email;Afdeling;Datumindienst;Datumuitdienst;Functie"
|
||
prs.import_perslid (
|
||
p_import_key,
|
||
'0;0;0;0;0;0;11;4;5;6;'
|
||
|| '7;0;0;0;2;8;9;10;0;1;'
|
||
|| '14;3;0;0;0;0;12;13;0;0;'
|
||
|| '0;0;0;0;0;0;0;0;0;0;'
|
||
|| '0;0;0;0;0;0',
|
||
'%Personeelsnummer;Geslacht;Login;Achternaam;Tussenvoegsel;Voorletters;Voornaam;Telefoonnummer;Mobiel;Email;Afdeling;Datumindienst;Datumuitdienst;Functie%');
|
||
EXCEPTION
|
||
WHEN OTHERS
|
||
THEN
|
||
oracle_err_num := SQLCODE;
|
||
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
|
||
v_errormsg :=
|
||
'ORACLE (error '
|
||
|| oracle_err_num
|
||
|| '/'
|
||
|| oracle_err_mes
|
||
|| ') ';
|
||
fac.imp_writelog (p_import_key,
|
||
'E',
|
||
v_errormsg || v_errorhint,
|
||
'Inleesproces personen afgebroken!');
|
||
END sggr_import_prs;
|
||
/
|
||
|
||
|
||
CREATE OR REPLACE PROCEDURE sggr_update_prs (p_import_key IN NUMBER)
|
||
IS
|
||
-- Maximaal percentage aan nieuwe medewerkers tov. actieve medewerkers met een e-mail
|
||
c_max_delta_percentage NUMBER (10) := 20; -- 20%!
|
||
v_count_prs_import NUMBER (10); -- #actieve personen na import!
|
||
v_count_prs_actual NUMBER (10); -- #actieve personen voor import!
|
||
|
||
-- Let op! Personen die niet meer in dienst zijn -> niet in fac_imp_perslid!
|
||
-- Dubbele oslogins? Dan wordt iemand mogelijk niet verwijderd/INACTIEF!
|
||
CURSOR c_del IS
|
||
SELECT p.prs_perslid_key, p.prs_perslid_oslogin
|
||
FROM prs_v_aanwezigperslid p
|
||
WHERE ( p.prs_perslid_oslogin IS NULL
|
||
OR p.prs_perslid_oslogin NOT LIKE '\_%' ESCAPE '\') -- ' tbv. opmaak
|
||
AND p.prs_perslid_oslogin2 IS NULL
|
||
AND NOT EXISTS
|
||
(SELECT 1
|
||
FROM fac_imp_perslid i
|
||
WHERE UPPER (i.prs_perslid_oslogin) =
|
||
UPPER (p.prs_perslid_oslogin))
|
||
ORDER BY 2, 1;
|
||
BEGIN
|
||
-- Bepaal oslogin-match tussen Facilitor en RECENT importbestand ofwel het aantal
|
||
-- actieve personen na import.
|
||
-- RECENT betekent niet meer dan een kwartiertje oud (14,4 minuten); dit voorkomt
|
||
-- dat - als er geen nieuw importbestand is aangeleverd - telkens dezelfde fouten
|
||
-- worden gerapporteerd (nl. op basis van een oud bestand in FAC_IMP_PERSLID).
|
||
SELECT COUNT (*)
|
||
INTO v_count_prs_import
|
||
FROM prs_v_aanwezigperslid p, fac_imp_perslid i
|
||
WHERE p.prs_perslid_oslogin IS NOT NULL
|
||
AND UPPER (p.prs_perslid_oslogin) = UPPER (i.prs_perslid_oslogin);
|
||
|
||
-- Bepaal huidig aantal actieve personen in Facilitor.
|
||
SELECT DECODE (COUNT (*), 0, 1, COUNT (*))
|
||
INTO v_count_prs_actual
|
||
FROM prs_v_aanwezigperslid
|
||
WHERE prs_perslid_oslogin IS NOT NULL;
|
||
|
||
IF (TRUNC ((v_count_prs_import / v_count_prs_actual) * 100) <
|
||
(100 - c_max_delta_percentage))
|
||
THEN
|
||
fac.imp_writelog (
|
||
p_import_key,
|
||
'E',
|
||
'Verschil tussen huidig aantal en te importeren aantal personen te groot; zie specificatie!',
|
||
'- max. verschilpercentage = ['
|
||
|| TO_CHAR (c_max_delta_percentage)
|
||
|| '%]'
|
||
|| CHR (13)
|
||
|| CHR (10)
|
||
|| '- #personen/import = ['
|
||
|| TO_CHAR (v_count_prs_import)
|
||
|| ']'
|
||
|| CHR (13)
|
||
|| CHR (10)
|
||
|| '- #personen/huidig = ['
|
||
|| TO_CHAR (v_count_prs_actual)
|
||
|| ']');
|
||
|
||
RETURN;
|
||
END IF;
|
||
|
||
-- Generieke update.
|
||
prs.update_perslid (p_import_key, 'LOGIN', 'D');
|
||
|
||
-- Verwijder personen die niet meer in de import voorkomen.
|
||
FOR rec IN c_del
|
||
LOOP
|
||
prs.delete_perslid (p_import_key, rec.prs_perslid_key);
|
||
END LOOP;
|
||
|
||
-- Zolang SSO nog niet is ingeregeld, krijgt elke medewerker -met primaire
|
||
-- login en zonder wachtwoord!- een dummy-wachtwoord!
|
||
BEGIN
|
||
EXECUTE IMMEDIATE 'ALTER TRIGGER prs_t_prs_perslid_b_iu DISABLE';
|
||
|
||
BEGIN
|
||
FOR c
|
||
IN (SELECT prs_perslid_key
|
||
FROM prs_v_aanwezigperslid
|
||
WHERE prs_perslid_key > 100
|
||
AND prs_perslid_oslogin IS NOT NULL
|
||
AND prs_perslid_salt IS NULL)
|
||
LOOP
|
||
prs.setpassword (c.prs_perslid_key, 'Ququlequ');
|
||
END LOOP;
|
||
END;
|
||
|
||
EXECUTE IMMEDIATE 'ALTER TRIGGER prs_t_prs_perslid_b_iu ENABLE';
|
||
END;
|
||
END sggr_update_prs;
|
||
/
|
||
|
||
-- View tbv rapportage voor het planbureau in Emmen, nodig voor het verwerken van verlofaanvragen van consultants
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_rap_verlofplanbureau
|
||
(
|
||
melding,
|
||
meldingdatum,
|
||
meldingomschrijving,
|
||
status,
|
||
perslid
|
||
)
|
||
AS
|
||
SELECT DISTINCT m.mld_melding_key,
|
||
mld_melding_datum,
|
||
mld_melding_omschrijving,
|
||
mld_statuses_omschrijving,
|
||
pf1.prs_perslid_naam_full
|
||
FROM mld_melding m,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pf1,
|
||
mld_statuses st,
|
||
(SELECT k.*
|
||
FROM prs_kenmerklink k
|
||
WHERE K.prs_KENMERK_KEY = 1100
|
||
AND k.PRS_KENMERKLINK_WAARDE = '1') planbureau
|
||
WHERE m.mld_stdmelding_key = 241
|
||
AND mld_melding_status IN (0,
|
||
2,
|
||
3,
|
||
4)
|
||
AND m.prs_perslid_key_voor = pf1.prs_perslid_key
|
||
AND m.mld_melding_status = st.mld_statuses_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = planbureau.prs_link_key
|
||
--AND p.prs_srtperslid_key IN (31, 2047, 3815, 3816, 4081)
|
||
AND (m.mld_melding_flag <> 3 OR m.mld_melding_flag IS NULL);
|
||
|
||
|
||
--- Notificatie verlofaanvragen consultants voor het planbureau
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_PLANBUREAU
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'planbureau@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_perslid p,
|
||
(SELECT k.*
|
||
FROM prs_kenmerklink k
|
||
WHERE K.prs_KENMERK_KEY = 1100
|
||
AND k.PRS_KENMERKLINK_WAARDE = '1') planbureau
|
||
WHERE T.FAC_TRACKING_REFKEY = M.MLD_MELDING_KEY
|
||
AND P.PRS_PERSLID_KEY = PN.PRS_PERSLID_KEY
|
||
AND T.FAC_SRTNOTIFICATIE_KEY = 26 --- nieuwe verlofaanvraag
|
||
AND N.FAC_SRTNOTIFICATIE_CODE = 'CUST01'
|
||
AND M.MLD_STDMELDING_KEY = 241 -- verlofaanvragen
|
||
AND M.PRS_PERSLID_KEY_VOOR = P.PRS_PERSLID_KEY
|
||
-- AND P.PRS_SRTPERSLID_KEY IN (31, 2047, 3815, 3816, 4081) -- alleen notificeren indien de aanvaag door een (IT) consultant gedaan is
|
||
AND P.PRS_PERSLID_KEY = PLANBUREAU.PRS_LINK_KEY
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_PLANBUREAU')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_PLANBUREAU');
|
||
|
||
-- overzicht met te accepteren meldingen voor teamleiders/managers
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_ACC
|
||
(
|
||
MLD_MELDING_KEY,
|
||
MLD_MELDING_NR,
|
||
MELDING,
|
||
DATUM,
|
||
STATUS,
|
||
AANVRAGER,
|
||
LEIDINGGEVENDE,
|
||
FCLT_3D_USER_KEY
|
||
)
|
||
AS
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
mg.prs_perslid_naam_friendly leidinggevende,
|
||
mg.prs_perslid_key AS fclt_3d_user_key
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_kenmerklink kl,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm
|
||
WHERE ( m.mld_stdmelding_key IN (43,
|
||
281,
|
||
261,
|
||
1161,
|
||
421,
|
||
346) -- 43=inkoopverplichtingen, 281=aftrekbare kosten leaseauto's, 261=declaraties, 1161=declaratie nieuw, 421=overurensheet, 346=Aanvraag hotelkamer
|
||
OR sm.mld_ins_discipline_key IN (721, 821)) --- 731=vakgroep relatiegeschenken, 821=vakgroep aanvragen met acceptatie
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = kl.prs_link_key
|
||
AND kl.prs_kenmerk_key = 1081
|
||
AND fac.safe_to_number (kl.prs_kenmerklink_waarde) =
|
||
mg.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND m.mld_melding_status IN (2, 3)
|
||
UNION ALL
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
mg.prs_perslid_naam_friendly leidinggevende,
|
||
184 AS fclt_3d_user_key
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_kenmerklink kl,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm
|
||
WHERE m.mld_stdmelding_key = 201
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = kl.prs_link_key
|
||
AND kl.prs_kenmerk_key = 1081
|
||
AND mg.prs_perslid_key <> 281 --- Peter Feij
|
||
AND fac.safe_to_number (kl.prs_kenmerklink_waarde) =
|
||
mg.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND m.mld_melding_status IN (2, 3)
|
||
UNION ALL
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
mg.prs_perslid_naam_friendly leidinggevende,
|
||
161 AS fclt_3d_user_key --- altijd Marcel Vrieling
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_kenmerklink kl,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm
|
||
WHERE m.mld_stdmelding_key IN (321, 522) --- verwerking aanvraag HW/SW
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = kl.prs_link_key
|
||
AND kl.prs_kenmerk_key = 1081
|
||
AND fac.safe_to_number (kl.prs_kenmerklink_waarde) =
|
||
mg.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND m.mld_melding_status IN (2, 3, 4);
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_ICT_leverancier
|
||
(
|
||
BEDRIJF_KEY,
|
||
BEDRIJF_NAAM
|
||
)
|
||
AS
|
||
SELECT L.PRS_BEDRIJF_KEY, L.PRS_BEDRIJF_NAAM
|
||
FROM prs_bedrijf l
|
||
WHERE L.PRS_RELATIETYPE_KEY = 10 -- ICT leverancier
|
||
AND L.PRS_BEDRIJF_LEVERANCIER IS NOT NULL
|
||
AND L.PRS_BEDRIJF_VERWIJDER IS NULL;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_ICT
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'Ict@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST04'
|
||
AND m.mld_stdmelding_key IN (321, 522) -- Aanvraag hardware/software
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_ICT')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_ICT');
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_DIR
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'jeroen.kuiper@aareon.com;johan.deboer@aareon.nl;alexander.zaal@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST05'
|
||
AND m.mld_stdmelding_key IN (301, 523) -- Inkoop hardware/software
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND fac.safe_to_number (prs_kenmerklink_waarde) =
|
||
mgr.prs_perslid_key
|
||
AND mgr.prs_perslid_key <> 281 --- Peter Feij
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'p.feij@facilitor.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST05'
|
||
AND m.mld_stdmelding_key IN (301, 523) -- Inkoop hardware/software
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND fac.safe_to_number (prs_kenmerklink_waarde) =
|
||
mgr.prs_perslid_key
|
||
AND mgr.prs_perslid_key = 281 --- Peter Feij
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (
|
||
lcl.x ('fac_srtnotificatie_oms',
|
||
n.fac_srtnotificatie_key,
|
||
n.fac_srtnotificatie_oms),
|
||
'##STDMLD## ##KEY##',
|
||
sm.mld_stdmelding_omschrijving || '/' || m.mld_melding_key),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'p.feij@facilitor.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
mld_stdmelding sm,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_v_afdeling a
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'MLD2B3'
|
||
AND m.mld_stdmelding_key IN (361,
|
||
161,
|
||
101,
|
||
122,
|
||
162,
|
||
201) --- 361=Aanvraag opleiding, 161=Nieuw abo, 101=Nieuwe opdr, 122=Uitbreiding opdr, 162=wijzigingen abo, 201=creditering
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||
AND a.prs_bedrijf_key = 1001 --- Facilitor
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (
|
||
lcl.x ('fac_srtnotificatie_oms',
|
||
n.fac_srtnotificatie_key,
|
||
n.fac_srtnotificatie_oms),
|
||
'##STDMLD## ##KEY##',
|
||
sm.mld_stdmelding_omschrijving || '/' || m.mld_melding_key),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'jeroen.kuiper@aareon.com;johan.deboer@aareon.nl;alexander.zaal@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
mld_stdmelding sm,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_v_afdeling a
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'MLD2B3'
|
||
AND m.mld_stdmelding_key IN (361, 386) --- 361=Aanvraag opleiding, 386=Productmanagement Aareon
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||
AND A.PRS_BEDRIJF_KEY = 21 --- Aareon Nederland
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_DIR');
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_DIR
|
||
(
|
||
MLD_MELDING_KEY,
|
||
MLD_MELDING_NR,
|
||
MELDING,
|
||
DATUM,
|
||
STATUS,
|
||
AANVRAGER,
|
||
BEDRIJF,
|
||
LEIDINGGEVENDE
|
||
)
|
||
AS
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
b.prs_bedrijf_naam,
|
||
mg.prs_perslid_naam_friendly leidinggevende
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_perslid pl,
|
||
prs_v_afdeling a,
|
||
prs_bedrijf b,
|
||
prs_kenmerklink kl,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm
|
||
WHERE ( m.mld_stdmelding_key IN (261,
|
||
281,
|
||
1161,
|
||
43,
|
||
421)
|
||
OR sm.mld_ins_discipline_key IN (721, 821)) --inkoopverplichting, declaratie, aftrekbare kosten lease auto, overurensheet, vakgroep relatiegeschenken en aanvragen met acceptarie
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = kl.prs_link_key
|
||
AND kl.prs_kenmerk_key = 1081
|
||
AND kl.prs_kenmerklink_waarde = mg.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND m.mld_melding_status IN (2, 3)
|
||
AND p.prs_perslid_key = pl.prs_perslid_key
|
||
AND pl.prs_afdeling_key = a.prs_afdeling_key
|
||
AND a.prs_bedrijf_key = b.prs_bedrijf_key
|
||
AND mg.prs_perslid_key IN (121, 281) -- directie
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
b.prs_bedrijf_naam,
|
||
manager.prs_perslid_naam_friendly leidinggevende
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_perslid pl,
|
||
prs_v_afdeling a,
|
||
prs_bedrijf b,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm,
|
||
(SELECT kl.*, mg.*
|
||
FROM prs_kenmerklink kl, prs_v_perslid_fullnames_all mg
|
||
WHERE kl.prs_kenmerklink_waarde = mg.prs_perslid_key
|
||
AND kl.prs_kenmerk_key = 1081) manager
|
||
WHERE m.mld_stdmelding_key IN (301,
|
||
361,
|
||
386,
|
||
161,
|
||
101,
|
||
122,
|
||
162,
|
||
201,
|
||
523,
|
||
1101) -- aanvraag hw/sw, opleidingsformulier, aanvraag productmanagement, nieuw abo, nieuwe opdr, uitbreiding opdr, wijziging abo, crediteringen
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND m.mld_melding_status IN (2, 3)
|
||
AND p.prs_perslid_key = pl.prs_perslid_key
|
||
AND pl.prs_afdeling_key = a.prs_afdeling_key
|
||
AND a.prs_bedrijf_key = b.prs_bedrijf_key
|
||
AND m.prs_perslid_key_voor = manager.prs_link_key(+);
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_CRM
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'2elijnKlantenMarkt@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 22
|
||
AND n.fac_srtnotificatie_code = 'CUST01'
|
||
AND m.mld_stdmelding_key = 241 -- verlofaanvragen
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND P.PRS_AFDELING_KEY = 274 ---CRM en Markt
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_CRM')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) = 'SGGR_V_NOTI_CRM');
|
||
|
||
-- Notificatie aan managers:
|
||
-- Acceptatie van declaratie vereist
|
||
-- Acceptatie van inkoopverplichting vereist
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_MANAGER
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL sender,
|
||
NULL receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms, '##KEY##', m.mld_melding_key),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL xkey,
|
||
mgr.prs_perslid_email xemail,
|
||
NULL xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr,
|
||
mld_stdmelding sm
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST02'
|
||
AND m.mld_stdmelding_key IN (281, 261, 1161) -- declaratie, aftrekbare priv<69>kosten leaseauto,
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND prs_kenmerklink_waarde = mgr.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL sender,
|
||
NULL receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms, '##KEY##', m.mld_melding_key),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL xkey,
|
||
mgr.prs_perslid_email xemail,
|
||
NULL xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr,
|
||
mld_stdmelding sm
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST03'
|
||
AND (m.mld_stdmelding_key = 43 OR sm.mld_ins_discipline_key = 721) -- inkoopverplichting of vakgroep relatiegeschenken
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND prs_kenmerklink_waarde = mgr.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
aanvr.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
mgr.prs_perslid_email
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames aanvr,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr,
|
||
mld_stdmelding sm
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST07'
|
||
AND m.mld_stdmelding_key = 421 -- overurensheet
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = aanvr.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND prs_kenmerklink_waarde = mgr.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
UNION ALL
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
(REPLACE (n.fac_srtnotificatie_oms,
|
||
'##STDMELDINGOMSCHR##',
|
||
sm.mld_stdmelding_omschrijving))
|
||
|| '/'
|
||
|| m.mld_melding_key,
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
mgr.prs_perslid_email
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr,
|
||
mld_stdmelding sm
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND t.fac_srtnotificatie_key = 26
|
||
AND n.fac_srtnotificatie_code = 'CUST08'
|
||
AND sm.mld_ins_discipline_key = 821 -- vakgroep aanvragen met acceptatie
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND prs_kenmerklink_waarde = mgr.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_MANAGER');
|
||
|
||
-- Informeren over verlofaanvragen na afmelden door administratie
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_VERLOF_MGR
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (n.fac_srtnotificatie_oms,
|
||
'##NAAM##',
|
||
pn.prs_perslid_naam_friendly),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
mgr.prs_perslid_email
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t,
|
||
mld_melding m,
|
||
fac_srtnotificatie n,
|
||
prs_perslid p,
|
||
prs_v_perslid_fullnames_all pn,
|
||
prs_kenmerklink kl,
|
||
prs_perslid mgr
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 22 ---mldafm
|
||
AND n.fac_srtnotificatie_code = 'CUST01'
|
||
AND m.mld_stdmelding_key = 241 -- verlofaanvragen
|
||
AND p.prs_perslid_key = pn.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND p.prs_perslid_key = kl.prs_link_key
|
||
AND prs_kenmerk_key = 1081 -- kenmerk waarin de manager staat vermeld
|
||
AND prs_kenmerklink_waarde = mgr.prs_perslid_key
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_VERLOF_MGR')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_VERLOF_MGR');
|
||
|
||
CREATE OR REPLACE FORCE VIEW SGGR_V_RAPP_VERLOF
|
||
(
|
||
MLD_MELDING_KEY,
|
||
MLD_MELDING_NR,
|
||
MELDING,
|
||
DATUM,
|
||
STATUS,
|
||
AANVRAGER,
|
||
LEIDINGGEVENDE,
|
||
FCLT_3D_USER_KEY
|
||
)
|
||
AS
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
mg.prs_perslid_naam_friendly leidinggevende,
|
||
mg.prs_perslid_key AS fclt_3d_user_key
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_kenmerklink kl,
|
||
prs_v_perslid_fullnames_all mg,
|
||
mld_stdmelding sm
|
||
WHERE m.mld_stdmelding_key = 241
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND m.prs_perslid_key_voor = kl.prs_link_key
|
||
AND kl.prs_kenmerk_key = 1081
|
||
AND kl.prs_kenmerklink_waarde = mg.prs_perslid_key
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key;
|
||
|
||
CREATE OR REPLACE FORCE VIEW SGGR_V_RAPP_AANVR_HWSW
|
||
(
|
||
MLD_MELDING_KEY,
|
||
MLD_MELDING_NR,
|
||
MELDING,
|
||
DATUM,
|
||
STATUS,
|
||
AANVRAGER,
|
||
KOSTENPLAATS
|
||
)
|
||
AS
|
||
SELECT m.mld_melding_key,
|
||
m.mld_melding_key meldingnr,
|
||
sm.mld_stdmelding_omschrijving melding,
|
||
TO_DATE (m.mld_melding_datum) datum,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END status,
|
||
p.prs_perslid_naam_friendly aanvrager,
|
||
K.PRS_KOSTENPLAATS_NR
|
||
FROM mld_melding m,
|
||
prs_v_perslid_fullnames_all p,
|
||
prs_perslid l,
|
||
mld_stdmelding sm,
|
||
prs_afdeling a,
|
||
prs_kostenplaats k
|
||
WHERE m.mld_stdmelding_key = 321
|
||
AND m.prs_perslid_key_voor = p.prs_perslid_key
|
||
AND P.PRS_PERSLID_KEY = L.PRS_PERSLID_KEY
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND L.PRS_AFDELING_KEY = A.PRS_AFDELING_KEY
|
||
AND A.PRS_KOSTENPLAATS_KEY = K.PRS_KOSTENPLAATS_KEY;
|
||
|
||
|
||
--- overzicht van alle business units en teams:
|
||
---266 treasury/267 Handel en Logistiek/268 ICT services/270 Wonen/271 Consultancy/272 Vastgoed/273 Financi<63>n/274 CRM en Markt/275 Appl. beheer
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_BUSINESS_UNITS
|
||
(
|
||
AFDELING_KEY,
|
||
AFDELING_OMSCHRIJVING
|
||
)
|
||
AS
|
||
SELECT A.PRS_AFDELING_KEY, A.PRS_AFDELING_OMSCHRIJVING
|
||
FROM PRS_AFDELING A
|
||
WHERE A.PRS_AFDELING_KEY IN (266,
|
||
267,
|
||
268,
|
||
270,
|
||
271,
|
||
272,
|
||
273,
|
||
274,
|
||
275)
|
||
AND A.PRS_AFDELING_VERWIJDER IS NULL;
|
||
|
||
-- overzicht van alle BU managers. Functies:
|
||
-- teamleider support en ontwikkeling 3803/Teamleider Consultance 2052/Teamleider Treasury 3806/Unitmanagers 2050/Directeur Wonen 3807
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_MANAGERS_BU
|
||
(
|
||
PERSLID_KEY,
|
||
PERSLID_VOLNAAM
|
||
)
|
||
AS
|
||
SELECT P.PRS_PERSLID_KEY, N.PRS_PERSLID_NAAM_FULL
|
||
FROM PRS_V_PERSLID_FULLNAMES N, PRS_PERSLID P
|
||
WHERE N.PRS_PERSLID_KEY = P.PRS_PERSLID_KEY
|
||
AND P.PRS_SRTPERSLID_KEY IN (3803,
|
||
2052,
|
||
3806,
|
||
2050,
|
||
3807)
|
||
ORDER BY N.PRS_PERSLID_NAAM_FULL;
|
||
|
||
CREATE OR REPLACE PROCEDURE sggr_export_daily_task (p_applname IN VARCHAR2,
|
||
p_applrun IN VARCHAR2,
|
||
p_filedir IN VARCHAR2,
|
||
p_filename IN VARCHAR2)
|
||
AS
|
||
CURSOR c IS
|
||
SELECT *
|
||
FROM fac_tracking t, ins_deel d
|
||
WHERE fac_tracking_refkey = d.ins_deel_key
|
||
AND d.ins_srtdeel_key IN (481, 621) -- pool autos 481 , later samengevoegd: lease/poolauto's
|
||
AND fac_srtnotificatie_key IN (96, 97) -- uitgifte (insout) en inname (insinn)
|
||
ORDER BY ins_deel_key, fac_tracking_datum;
|
||
|
||
v_bestuurder VARCHAR2 (60);
|
||
v_uitgifte DATE;
|
||
v_inname DATE;
|
||
v_reden VARCHAR2 (100);
|
||
v_van VARCHAR2 (100);
|
||
v_naar VARCHAR2 (100);
|
||
v_km_uitgifte NUMBER (10);
|
||
v_km_inname NUMBER (10);
|
||
v_fac_tracking_uitgifte_key NUMBER (10);
|
||
v_fac_tracking_inname_key NUMBER (10);
|
||
v_dummy VARCHAR2 (1000);
|
||
v_search VARCHAR2 (1000);
|
||
BEGIN
|
||
DELETE sggr_autorit_registratie;
|
||
|
||
RETURN; -- GDFS#73348 Autorittenregistratie wordt niet meer gebruikt, geldt ook voor SGGR
|
||
|
||
FOR rec IN c
|
||
LOOP
|
||
BEGIN
|
||
v_search := 'Reden van gebruik:';
|
||
v_dummy := sggr.find_str (rec.fac_tracking_oms, v_search);
|
||
v_reden := sggr.find_nieuw (v_dummy, v_reden);
|
||
v_search := 'Van:';
|
||
v_dummy := sggr.find_str (rec.fac_tracking_oms, v_search);
|
||
v_van := sggr.find_nieuw (v_dummy, v_van);
|
||
v_search := 'Naar:';
|
||
v_dummy := sggr.find_str (rec.fac_tracking_oms, v_search);
|
||
v_naar := sggr.find_nieuw (v_dummy, v_naar);
|
||
v_search := 'Kilometerstand:';
|
||
v_dummy := sggr.find_str (rec.fac_tracking_oms, v_search);
|
||
|
||
IF v_dummy IS NULL
|
||
THEN
|
||
v_km_uitgifte := v_km_inname;
|
||
ELSE
|
||
v_km_uitgifte := sggr.find_oud (v_dummy, v_km_uitgifte);
|
||
v_km_inname := sggr.find_nieuw (v_dummy, v_km_inname);
|
||
END IF;
|
||
|
||
v_search := 'is uitgegeven aan';
|
||
v_dummy :=
|
||
SUBSTR (sggr.find_str (rec.fac_tracking_oms, v_search),
|
||
0,
|
||
60);
|
||
v_bestuurder := v_dummy;
|
||
|
||
|
||
IF rec.fac_srtnotificatie_key = 96
|
||
THEN
|
||
-- Uitgifte
|
||
v_uitgifte := rec.fac_tracking_datum;
|
||
|
||
INSERT INTO sggr_autorit_registratie (
|
||
ins_deel_key,
|
||
bestuurder,
|
||
uitgifte,
|
||
reden,
|
||
van,
|
||
naar,
|
||
km_uitgifte,
|
||
fac_tracking_uitgifte_key)
|
||
VALUES (rec.fac_tracking_refkey,
|
||
v_bestuurder,
|
||
v_uitgifte,
|
||
v_reden,
|
||
v_van,
|
||
v_naar,
|
||
v_km_uitgifte,
|
||
rec.fac_tracking_key);
|
||
|
||
v_fac_tracking_uitgifte_key := rec.fac_tracking_key;
|
||
ELSE
|
||
v_inname := rec.fac_tracking_datum;
|
||
|
||
UPDATE sggr_autorit_registratie
|
||
SET inname = v_inname,
|
||
reden = COALESCE (v_reden, reden),
|
||
van = COALESCE (v_van, van),
|
||
naar = COALESCE (v_naar, naar),
|
||
km_uitgifte = COALESCE (v_km_uitgifte, km_uitgifte),
|
||
km_inname = v_km_inname,
|
||
fac_tracking_inname_key = rec.fac_tracking_key
|
||
WHERE fac_tracking_uitgifte_key =
|
||
v_fac_tracking_uitgifte_key;
|
||
END IF;
|
||
END;
|
||
END LOOP;
|
||
END;
|
||
/
|
||
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_AUTO_REGISTRATIE
|
||
(
|
||
TIMESTAMP,
|
||
MAAND,
|
||
AUTO,
|
||
BESTUURDER,
|
||
FCLT_D_DATUM,
|
||
UITGIFTE_DATUM,
|
||
UITGIFTE_TIJD,
|
||
INNAME_DATUM,
|
||
INNAME_TIJD,
|
||
REDEN,
|
||
VAN,
|
||
NAAR,
|
||
KM_UITGIFTE,
|
||
KM_INNAME,
|
||
KM_VERSCHIL
|
||
)
|
||
AS
|
||
SELECT TO_CHAR (uitgifte, 'yyyymmddhh24mi') timestamp,
|
||
TO_CHAR (uitgifte, 'Month') maand,
|
||
ins_deel_omschrijving auto,
|
||
bestuurder,
|
||
TO_CHAR (uitgifte, 'dd-mm-yyyy') filter,
|
||
TO_CHAR (uitgifte, 'dd-mm-yyyy') uitgifte_datum,
|
||
TO_CHAR (uitgifte, 'hh24:mi') uitgifte_tijd,
|
||
TO_CHAR (inname, 'dd-mm-yyyy') inname_datum,
|
||
TO_CHAR (inname, 'hh24:mi') inname_tijd,
|
||
reden,
|
||
van,
|
||
naar,
|
||
km_uitgifte,
|
||
km_inname,
|
||
km_inname - km_uitgifte km_verschil
|
||
FROM sggr_autorit_registratie a, ins_deel d
|
||
WHERE a.ins_deel_key = d.ins_deel_key;
|
||
|
||
-- SGGR#40017 inzicht in hotelreserveringen
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAPP_HOTELAANVRAGEN
|
||
(
|
||
HTML_AANVRAAG_NR,
|
||
HTML_ANNULERING_NR,
|
||
HTML_WIJZIGING_NR,
|
||
STD_MELDING,
|
||
MLD_MELDING_DATUM,
|
||
MLD_MELDING_ONDERWERP,
|
||
MLD_MELDING_OMSCHRIJVING,
|
||
FCLT_3D_USER_KEY,
|
||
PRS_PERSLID_NAAM_FRIENDLY,
|
||
STATUS,
|
||
AANKOMSTDATUM,
|
||
VERTREKDATUM,
|
||
BESTEMMING,
|
||
HOTEL_VOORKEUR,
|
||
HTML_ANNULERING,
|
||
HTML_WIJZIGING,
|
||
GERESERVEERDE
|
||
)
|
||
AS
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_key_voor,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
aankomstdatum.mld_kenmerkmelding_waarde
|
||
aankomstdatum,
|
||
vertrekdatum.mld_kenmerkmelding_waarde
|
||
vertrekdatum,
|
||
plaats.mld_kenmerkmelding_waarde
|
||
plaats,
|
||
voorkeur.mld_kenmerkmelding_waarde
|
||
hotelvoorkeur,
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '441'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '561'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
'hotel'
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 346
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1381) aankomstdatum
|
||
ON m.mld_melding_key = aankomstdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1382) vertrekdatum
|
||
ON m.mld_melding_key = vertrekdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 835) plaats
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 836) voorkeur
|
||
ON m.mld_melding_key = voorkeur.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 441) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 561) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
UNION ALL
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_key_voor,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
aankomstdatum.mld_kenmerkmelding_waarde
|
||
aankomstdatum,
|
||
vertrekdatum.mld_kenmerkmelding_waarde
|
||
vertrekdatum,
|
||
plaats.mld_kenmerkmelding_waarde
|
||
plaats,
|
||
'',
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '481'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '741'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
'Externe zaal'
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 461
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1483) aankomstdatum
|
||
ON m.mld_melding_key = aankomstdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1484) vertrekdatum
|
||
ON m.mld_melding_key = vertrekdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1481) plaats
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 481) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 741) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
UNION ALL
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_key_voor,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
COALESCE (aankomst.mld_kenmerkmelding_waarde,
|
||
aankomst_auto.mld_kenmerkmelding_waarde,
|
||
aankomst_trein.mld_kenmerkmelding_waarde,
|
||
aankomst_vlucht.mld_kenmerkmelding_waarde)
|
||
aankomstdatum,
|
||
COALESCE (vertrek.mld_kenmerkmelding_waarde,
|
||
vertrek_auto.mld_kenmerkmelding_waarde,
|
||
vertrek_trein.mld_kenmerkmelding_waarde,
|
||
vertrek_vlucht.mld_kenmerkmelding_waarde)
|
||
vertrekdatum,
|
||
COALESCE (plaats.mld_kenmerkmelding_waarde,
|
||
plaats_auto.mld_kenmerkmelding_waarde,
|
||
plaats_trein.mld_kenmerkmelding_waarde,
|
||
plaats_vlucht.mld_kenmerkmelding_waarde)
|
||
locatie,
|
||
COALESCE (voorkeur.mld_kenmerkmelding_waarde, 'nvt')
|
||
hotel_voorkeur,
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '761'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '781'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
LISTAGG (item.item, ', ') WITHIN GROUP (ORDER BY item)
|
||
AS item
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 721
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2021) hotel
|
||
ON m.mld_melding_key = hotel.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2083) aankomst -- aankomst hotel
|
||
ON m.mld_melding_key = aankomst.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2281) aankomst_auto
|
||
ON m.mld_melding_key = aankomst_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2126) aankomst_trein
|
||
ON m.mld_melding_key = aankomst_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2168) aankomst_vlucht
|
||
ON m.mld_melding_key = aankomst_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2084) vertrek --- vertrek hotel
|
||
ON m.mld_melding_key = vertrek.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2322) vertrek_auto
|
||
ON m.mld_melding_key = vertrek_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2130) vertrek_trein
|
||
ON m.mld_melding_key = vertrek_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2171) vertrek_vlucht
|
||
ON m.mld_melding_key = vertrek_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2085) plaats --- locatie hotel
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2301) plaats_auto
|
||
ON m.mld_melding_key = plaats_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2201) plaats_trein
|
||
ON m.mld_melding_key = plaats_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2167) plaats_vlucht
|
||
ON m.mld_melding_key = plaats_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2089) voorkeur
|
||
ON m.mld_melding_key = voorkeur.mld_melding_key
|
||
LEFT JOIN
|
||
((SELECT k.mld_melding_key, 'trein' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2022
|
||
UNION
|
||
SELECT k.mld_melding_key, 'vliegreis' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2041
|
||
UNION
|
||
SELECT k.mld_melding_key, 'hotel' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2021
|
||
UNION
|
||
SELECT k.mld_melding_key, 'poolauto' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2761)) item
|
||
ON m.mld_melding_key = item.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 761) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 781) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
GROUP BY '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_key_voor,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END,
|
||
COALESCE (aankomst.mld_kenmerkmelding_waarde,
|
||
aankomst_auto.mld_kenmerkmelding_waarde,
|
||
aankomst_trein.mld_kenmerkmelding_waarde,
|
||
aankomst_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (vertrek.mld_kenmerkmelding_waarde,
|
||
vertrek_auto.mld_kenmerkmelding_waarde,
|
||
vertrek_trein.mld_kenmerkmelding_waarde,
|
||
vertrek_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (plaats.mld_kenmerkmelding_waarde,
|
||
plaats_auto.mld_kenmerkmelding_waarde,
|
||
plaats_trein.mld_kenmerkmelding_waarde,
|
||
plaats_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (voorkeur.mld_kenmerkmelding_waarde, 'nvt'),
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '761'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '781'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAPP_HOTELAANVRAGEN_ALL
|
||
(
|
||
HTML_AANVRAAG_NR,
|
||
HTML_ANNULERING_NR,
|
||
HTML_WIJZIGING_NR,
|
||
STD_MELDING,
|
||
MLD_MELDING_DATUM,
|
||
MLD_MELDING_ONDERWERP,
|
||
MLD_MELDING_OMSCHRIJVING,
|
||
PRS_PERSLID_NAAM_FRIENDLY,
|
||
STATUS,
|
||
AANKOMSTDATUM,
|
||
VERTREKDATUM,
|
||
PLAATS,
|
||
HOTEL_VOORKEUR,
|
||
HTML_ANNULERING,
|
||
HTML_WIJZIGING,
|
||
GERESERVEERDE
|
||
)
|
||
AS
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
aankomstdatum.mld_kenmerkmelding_waarde
|
||
aankomstdatum,
|
||
vertrekdatum.mld_kenmerkmelding_waarde
|
||
vertrekdatum,
|
||
plaats.mld_kenmerkmelding_waarde
|
||
plaats,
|
||
voorkeur.mld_kenmerkmelding_waarde
|
||
hotelvoorkeur,
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '441'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '561'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
'hotel'
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 346
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1381) aankomstdatum
|
||
ON m.mld_melding_key = aankomstdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1382) vertrekdatum
|
||
ON m.mld_melding_key = vertrekdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 835) plaats
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 836) voorkeur
|
||
ON m.mld_melding_key = voorkeur.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 441) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 561) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
UNION ALL
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
aankomstdatum.mld_kenmerkmelding_waarde
|
||
aankomstdatum,
|
||
vertrekdatum.mld_kenmerkmelding_waarde
|
||
vertrekdatum,
|
||
plaats.mld_kenmerkmelding_waarde
|
||
plaats,
|
||
'',
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '481'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'txt=Gegevens reservering: Plaats '
|
||
|| plaats.mld_kenmerkmelding_waarde
|
||
|| ', aankomstdatum: '
|
||
|| aankomstdatum.mld_kenmerkmelding_waarde
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '741'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
'Externe zaal'
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 461
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1483) aankomstdatum
|
||
ON m.mld_melding_key = aankomstdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1484) vertrekdatum
|
||
ON m.mld_melding_key = vertrekdatum.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 1481) plaats
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 481) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 741) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
UNION ALL
|
||
SELECT '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END
|
||
status,
|
||
COALESCE (aankomst.mld_kenmerkmelding_waarde,
|
||
aankomst_auto.mld_kenmerkmelding_waarde,
|
||
aankomst_trein.mld_kenmerkmelding_waarde,
|
||
aankomst_vlucht.mld_kenmerkmelding_waarde)
|
||
aankomstdatum,
|
||
COALESCE (vertrek.mld_kenmerkmelding_waarde,
|
||
vertrek_auto.mld_kenmerkmelding_waarde,
|
||
vertrek_trein.mld_kenmerkmelding_waarde,
|
||
vertrek_vlucht.mld_kenmerkmelding_waarde)
|
||
vertrekdatum,
|
||
COALESCE (plaats.mld_kenmerkmelding_waarde,
|
||
plaats_auto.mld_kenmerkmelding_waarde,
|
||
plaats_trein.mld_kenmerkmelding_waarde,
|
||
plaats_vlucht.mld_kenmerkmelding_waarde)
|
||
locatie,
|
||
COALESCE (voorkeur.mld_kenmerkmelding_waarde, 'nvt')
|
||
hotel_voorkeur,
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '761'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_annulering,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '781'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END
|
||
html_wijziging,
|
||
LISTAGG (item.item, ', ') WITHIN GROUP (ORDER BY item)
|
||
AS item
|
||
FROM (SELECT mld.*,
|
||
p.prs_perslid_naam_friendly,
|
||
s.mld_stdmelding_omschrijving
|
||
FROM mld_melding mld,
|
||
mld_stdmelding s,
|
||
prs_v_perslid_fullnames_all p
|
||
WHERE mld.mld_stdmelding_key = 721
|
||
AND mld.mld_stdmelding_key = s.mld_stdmelding_key
|
||
AND p.prs_perslid_key = mld.prs_perslid_key_voor) m
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2021) hotel
|
||
ON m.mld_melding_key = hotel.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2083) aankomst -- aankomst hotel
|
||
ON m.mld_melding_key = aankomst.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2281) aankomst_auto
|
||
ON m.mld_melding_key = aankomst_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2126) aankomst_trein
|
||
ON m.mld_melding_key = aankomst_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2168) aankomst_vlucht
|
||
ON m.mld_melding_key = aankomst_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2084) vertrek --- vertrek hotel
|
||
ON m.mld_melding_key = vertrek.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2322) vertrek_auto
|
||
ON m.mld_melding_key = vertrek_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2130) vertrek_trein
|
||
ON m.mld_melding_key = vertrek_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2171) vertrek_vlucht
|
||
ON m.mld_melding_key = vertrek_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2085) plaats --- locatie hotel
|
||
ON m.mld_melding_key = plaats.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2301) plaats_auto
|
||
ON m.mld_melding_key = plaats_auto.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2201) plaats_trein
|
||
ON m.mld_melding_key = plaats_trein.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2167) plaats_vlucht
|
||
ON m.mld_melding_key = plaats_vlucht.mld_melding_key
|
||
LEFT JOIN
|
||
(SELECT k.mld_melding_key, k.mld_kenmerkmelding_waarde
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2089) voorkeur
|
||
ON m.mld_melding_key = voorkeur.mld_melding_key
|
||
LEFT JOIN
|
||
((SELECT k.mld_melding_key, 'trein' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2022
|
||
UNION
|
||
SELECT k.mld_melding_key, 'vliegreis' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2041
|
||
UNION
|
||
SELECT k.mld_melding_key, 'hotel' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2021
|
||
UNION
|
||
SELECT k.mld_melding_key, 'poolauto' item
|
||
FROM mld_kenmerkmelding k, mld_kenmerk n
|
||
WHERE n.mld_kenmerk_key = k.mld_kenmerk_key
|
||
AND k.mld_kenmerk_key = 2761)) item
|
||
ON m.mld_melding_key = item.mld_melding_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 761) annulering
|
||
ON m.mld_melding_key = annulering.mld_melding_start_key
|
||
LEFT JOIN (SELECT a.*
|
||
FROM mld_melding a
|
||
WHERE mld_stdmelding_key = 781) wijziging
|
||
ON m.mld_melding_key = wijziging.mld_melding_start_key
|
||
GROUP BY '<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| m.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (m.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| annulering.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (annulering.mld_melding_key)
|
||
|| '</a>',
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'mld_key='
|
||
|| wijziging.mld_melding_key
|
||
|| '")''>'
|
||
|| HTF.escape_sc (wijziging.mld_melding_key)
|
||
|| '</a>',
|
||
m.mld_stdmelding_omschrijving,
|
||
m.mld_melding_datum,
|
||
m.mld_melding_onderwerp,
|
||
m.mld_melding_omschrijving,
|
||
m.prs_perslid_naam_friendly,
|
||
CASE m.mld_melding_status
|
||
WHEN 1 THEN 'Afgewezen'
|
||
WHEN 2 THEN 'Nieuw'
|
||
WHEN 3 THEN 'Te accepteren'
|
||
WHEN 4 THEN 'In behandeling'
|
||
WHEN 5 THEN 'Afgemeld'
|
||
WHEN 6 THEN 'Historie'
|
||
WHEN 7 THEN 'Uitgegeven'
|
||
END,
|
||
COALESCE (aankomst.mld_kenmerkmelding_waarde,
|
||
aankomst_auto.mld_kenmerkmelding_waarde,
|
||
aankomst_trein.mld_kenmerkmelding_waarde,
|
||
aankomst_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (vertrek.mld_kenmerkmelding_waarde,
|
||
vertrek_auto.mld_kenmerkmelding_waarde,
|
||
vertrek_trein.mld_kenmerkmelding_waarde,
|
||
vertrek_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (plaats.mld_kenmerkmelding_waarde,
|
||
plaats_auto.mld_kenmerkmelding_waarde,
|
||
plaats_trein.mld_kenmerkmelding_waarde,
|
||
plaats_vlucht.mld_kenmerkmelding_waarde),
|
||
COALESCE (voorkeur.mld_kenmerkmelding_waarde, 'nvt'),
|
||
CASE
|
||
WHEN annulering.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '761'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te annuleren')
|
||
|| '</a>'
|
||
WHEN annulering.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END,
|
||
CASE
|
||
WHEN wijziging.mld_melding_key IS NULL
|
||
THEN
|
||
'<a class="details" onclick=''FcltMgr.openDetail("'
|
||
|| 'appl/mld/mld_melding.asp?urole=fe&'
|
||
|| 'start_key='
|
||
|| m.mld_melding_key
|
||
|| '&'
|
||
|| 'mld_defaultstdmelding='
|
||
|| '781'
|
||
|| '")''>'
|
||
|| HTF.escape_sc ('Klik hier om te wijzigen')
|
||
|| '</a>'
|
||
WHEN wijziging.mld_melding_key IS NOT NULL
|
||
THEN
|
||
''
|
||
END;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_METERSTANDEN
|
||
(
|
||
METERNR,
|
||
METEROMSCHR,
|
||
MEETDATUM,
|
||
OPMERKING,
|
||
VERBRUIK,
|
||
METERSTAND,
|
||
VORIGE_STAND,
|
||
BEREKEND_VERBRUIK,
|
||
DEF_VERBRUIK
|
||
)
|
||
AS
|
||
SELECT m.ins_deel_omschrijving,
|
||
m.ins_deel_opmerking,
|
||
c.ins_deelsrtcontrole_datum,
|
||
c.ins_deelsrtcontrole_opmerking,
|
||
verbruik.ins_kmdeelsrtcontr_waarde
|
||
verbr,
|
||
meterstanden.ins_kmdeelsrtcontr_waarde
|
||
meterstand,
|
||
(SELECT MAX (fac.safe_to_number (msp.ins_kmdeelsrtcontr_waarde))
|
||
FROM ins_v_deel_gegevens mp,
|
||
ins_deelsrtcontrole cp,
|
||
ins_kmdeelsrtcontr msp,
|
||
ins_kenmerk km
|
||
WHERE ins_srtgroep_key = 181
|
||
AND mp.ins_deel_key = cp.ins_deel_key
|
||
AND msp.ins_deelsrtcontrole_key =
|
||
cp.ins_deelsrtcontrole_key
|
||
AND mp.ins_deel_key = m.ins_deel_key
|
||
AND msp.ins_kenmerk_key = meterstanden.ins_kenmerk_key
|
||
AND msp.ins_kenmerk_key = km.ins_kenmerk_key
|
||
AND km.ins_srtkenmerk_key = 201 --- alleen meterstanden meenemen
|
||
AND cp.ins_deelsrtcontrole_datum <
|
||
c.ins_deelsrtcontrole_datum)
|
||
AS prev_meterstand,
|
||
( fac.safe_to_number (meterstanden.ins_kmdeelsrtcontr_waarde)
|
||
- (SELECT MAX (
|
||
fac.safe_to_number (msp.ins_kmdeelsrtcontr_waarde))
|
||
FROM ins_v_deel_gegevens mp,
|
||
ins_deelsrtcontrole cp,
|
||
ins_kmdeelsrtcontr msp,
|
||
ins_kenmerk km
|
||
WHERE ins_srtgroep_key = 181
|
||
AND mp.ins_deel_key = cp.ins_deel_key
|
||
AND msp.ins_deelsrtcontrole_key =
|
||
cp.ins_deelsrtcontrole_key
|
||
AND mp.ins_deel_key = m.ins_deel_key
|
||
AND msp.ins_kenmerk_key = meterstanden.ins_kenmerk_key
|
||
AND msp.ins_kenmerk_key = km.ins_kenmerk_key
|
||
AND km.ins_srtkenmerk_key = 201 --- alleen meterstanden meenemen
|
||
AND cp.ins_deelsrtcontrole_datum <
|
||
c.ins_deelsrtcontrole_datum))
|
||
AS berekend_verbruik,
|
||
COALESCE (
|
||
fac.safe_to_number (verbruik.ins_kmdeelsrtcontr_waarde),
|
||
( fac.safe_to_number (meterstanden.ins_kmdeelsrtcontr_waarde)
|
||
- (SELECT MAX (
|
||
fac.safe_to_number (
|
||
msp.ins_kmdeelsrtcontr_waarde))
|
||
FROM ins_v_deel_gegevens mp,
|
||
ins_deelsrtcontrole cp,
|
||
ins_kmdeelsrtcontr msp,
|
||
ins_kenmerk km
|
||
WHERE ins_srtgroep_key = 181
|
||
AND mp.ins_deel_key = cp.ins_deel_key
|
||
AND msp.ins_deelsrtcontrole_key =
|
||
cp.ins_deelsrtcontrole_key
|
||
AND mp.ins_deel_key = m.ins_deel_key
|
||
AND msp.ins_kenmerk_key =
|
||
meterstanden.ins_kenmerk_key
|
||
AND msp.ins_kenmerk_key = km.ins_kenmerk_key
|
||
AND km.ins_srtkenmerk_key = 201 --- alleen meterstanden meenemen
|
||
AND cp.ins_deelsrtcontrole_datum <
|
||
c.ins_deelsrtcontrole_datum)))
|
||
AS def_verbruik
|
||
FROM ins_v_deel_gegevens m,
|
||
ins_deelsrtcontrole c,
|
||
(SELECT msp.*
|
||
FROM ins_kmdeelsrtcontr msp, ins_kenmerk km
|
||
WHERE msp.ins_kenmerk_key = km.ins_kenmerk_key
|
||
AND km.ins_srtkenmerk_key = 201) meterstanden,
|
||
(SELECT msp.*
|
||
FROM ins_kmdeelsrtcontr msp, ins_kenmerk km
|
||
WHERE msp.ins_kenmerk_key = km.ins_kenmerk_key
|
||
AND km.ins_srtkenmerk_key = 202) verbruik
|
||
WHERE ins_srtgroep_key = 181
|
||
AND m.ins_deel_key = c.ins_deel_key
|
||
AND meterstanden.ins_deelsrtcontrole_key(+) =
|
||
c.ins_deelsrtcontrole_key
|
||
AND verbruik.ins_deelsrtcontrole_key(+) =
|
||
c.ins_deelsrtcontrole_key
|
||
ORDER BY m.ins_deel_key, c.ins_deelsrtcontrole_datum DESC;
|
||
|
||
CREATE OR REPLACE FORCE VIEW SGGR_V_LICENCECOUNT
|
||
(
|
||
CNT_CONTRACT_KEY,
|
||
CUST,
|
||
LICENCED_KEYUSER,
|
||
LICENCED_FRONTEND
|
||
)
|
||
AS
|
||
SELECT cnt_contract_key,
|
||
SUBSTR (cnt_contract_omschrijving, 1, 4)
|
||
CUST,
|
||
(SELECT cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract ck
|
||
WHERE cnt_kenmerk_key = 26
|
||
AND cc.cnt_contract_key = ck.cnt_contract_key)
|
||
licenced_keyuser,
|
||
(SELECT cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract ck
|
||
WHERE cnt_kenmerk_key = 27
|
||
AND cc.cnt_contract_key = ck.cnt_contract_key)
|
||
licenced_frontend
|
||
FROM cnt_contract cc
|
||
WHERE ins_discipline_key = 481 -- FACILITOR SaaS
|
||
AND cnt_contract_looptijd_tot > SYSDATE
|
||
ORDER BY cnt_contract_omschrijving;
|
||
|
||
CREATE OR REPLACE VIEW sggr_v_axi_nrs
|
||
(
|
||
mld_melding_key,
|
||
axi_nr
|
||
)
|
||
AS
|
||
SELECT m.mld_melding_key,
|
||
sd.ins_srtdiscipline_prefix || m.mld_melding_key meldingnummer
|
||
FROM mld_melding m,
|
||
mld_stdmelding sm,
|
||
ins_tab_discipline d,
|
||
ins_srtdiscipline sd
|
||
WHERE m.mld_stdmelding_key IN (523, 524)
|
||
AND m.mld_stdmelding_key = sm.mld_stdmelding_key
|
||
AND d.ins_discipline_key = sm.mld_ins_discipline_key
|
||
AND sd.ins_srtdiscipline_key = d.ins_srtdiscipline_key;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_CONTROLE_LEASEDOC
|
||
(
|
||
auto,
|
||
leasecontract,
|
||
leasecontract_van,
|
||
leasecontract_tot,
|
||
contractdocument,
|
||
inzetbevestiging,
|
||
gebruikersovereenkomst,
|
||
gebruikersovk_van,
|
||
gebruikersovk_tot,
|
||
gebruikersoverenkomst_doc,
|
||
toekenningsformulier,
|
||
verklaring_privegebruik
|
||
)
|
||
AS
|
||
SELECT o.ins_deel_omschrijving auto,
|
||
lease.ins_discipline_omschrijving
|
||
|| ' '
|
||
|| lease.cnt_contract_nummer_intern leasecontract,
|
||
lease.cnt_contract_looptijd_van leasecontract_van,
|
||
lease.cnt_contract_looptijd_tot leasecontract_tot,
|
||
lease.contractdocument,
|
||
lease.inzetbevestiging,
|
||
gebruikersovk.ins_discipline_omschrijving
|
||
|| ' '
|
||
|| gebruikersovk.cnt_contract_nummer_intern gebruikersovk,
|
||
gebruikersovk.cnt_contract_looptijd_van gebruikersovk_van,
|
||
gebruikersovk.cnt_contract_looptijd_tot gebruikersovk_tot,
|
||
gebruikersovk.gebruikersovk,
|
||
gebruikersovk.toekenningsform,
|
||
gebruikersovk.verkl_privegebruik
|
||
FROM (SELECT d.ins_discipline_omschrijving,
|
||
co.cnt_ins_deel_key,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_looptijd_tot,
|
||
CASE
|
||
WHEN inzetbevestiging.cnt_kenmerk_key IS NULL
|
||
THEN
|
||
'Niet aanwezig'
|
||
ELSE
|
||
inzetbevestiging.cnt_kenmerkcontract_waarde
|
||
END AS inzetbevestiging,
|
||
CASE
|
||
WHEN contractdocument.cnt_kenmerk_key IS NULL
|
||
THEN
|
||
'Niet aanwezig'
|
||
ELSE
|
||
contractdocument.cnt_kenmerkcontract_waarde
|
||
END AS contractdocument
|
||
FROM cnt_contract c,
|
||
cnt_contract_object co,
|
||
ins_tab_discipline d,
|
||
(SELECT kc.cnt_kenmerkcontract_waarde,
|
||
sk.cnt_srtkenmerk_omschrijving,
|
||
kc.cnt_contract_key,
|
||
kc.cnt_kenmerk_key
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE kc.cnt_kenmerk_key = 761
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||
AND sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
|
||
inzetbevestiging,
|
||
(SELECT kc.cnt_kenmerkcontract_waarde,
|
||
sk.cnt_srtkenmerk_omschrijving,
|
||
kc.cnt_contract_key,
|
||
kc.cnt_kenmerk_key
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE kc.cnt_kenmerk_key = 721
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||
AND sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
|
||
contractdocument
|
||
WHERE c.ins_discipline_key = d.ins_discipline_key
|
||
AND d.ins_discipline_key = 1201
|
||
AND c.cnt_contract_verwijder IS NULL
|
||
AND co.cnt_contract_key = c.cnt_contract_key
|
||
AND TRUNC (c.cnt_contract_looptijd_tot) >= TRUNC (SYSDATE)
|
||
AND inzetbevestiging.cnt_contract_key(+) =
|
||
c.cnt_contract_key
|
||
AND contractdocument.cnt_contract_key(+) =
|
||
c.cnt_contract_key) lease,
|
||
(SELECT d.ins_discipline_omschrijving,
|
||
co.cnt_ins_deel_key,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_looptijd_tot,
|
||
CASE
|
||
WHEN gebruikersovk.cnt_kenmerk_key IS NULL
|
||
THEN
|
||
'Niet aanwezig'
|
||
ELSE
|
||
gebruikersovk.cnt_kenmerkcontract_waarde
|
||
END AS gebruikersovk,
|
||
CASE
|
||
WHEN toekenningsform.cnt_kenmerk_key IS NULL
|
||
THEN
|
||
'Niet aanwezig'
|
||
ELSE
|
||
toekenningsform.cnt_kenmerkcontract_waarde
|
||
END AS toekenningsform,
|
||
CASE
|
||
WHEN verkl_privegebruik.cnt_kenmerk_key IS NULL
|
||
THEN
|
||
'Niet aanwezig'
|
||
ELSE
|
||
verkl_privegebruik.cnt_kenmerkcontract_waarde
|
||
END AS verkl_privegebruik
|
||
FROM cnt_contract c,
|
||
cnt_contract_object co,
|
||
ins_tab_discipline d,
|
||
(SELECT kc.cnt_kenmerkcontract_waarde,
|
||
sk.cnt_srtkenmerk_omschrijving,
|
||
kc.cnt_contract_key,
|
||
kc.cnt_kenmerk_key
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE kc.cnt_kenmerk_key = 762
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||
AND sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
|
||
gebruikersovk,
|
||
(SELECT kc.cnt_kenmerkcontract_waarde,
|
||
sk.cnt_srtkenmerk_omschrijving,
|
||
kc.cnt_contract_key,
|
||
kc.cnt_kenmerk_key
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE kc.cnt_kenmerk_key = 763
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||
AND sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
|
||
toekenningsform,
|
||
(SELECT kc.cnt_kenmerkcontract_waarde,
|
||
sk.cnt_srtkenmerk_omschrijving,
|
||
kc.cnt_contract_key,
|
||
kc.cnt_kenmerk_key
|
||
FROM cnt_kenmerkcontract kc,
|
||
cnt_kenmerk k,
|
||
cnt_srtkenmerk sk
|
||
WHERE kc.cnt_kenmerk_key = 764
|
||
AND kc.cnt_kenmerkcontract_verwijder IS NULL
|
||
AND k.cnt_kenmerk_key = kc.cnt_kenmerk_key
|
||
AND sk.cnt_srtkenmerk_key = k.cnt_srtkenmerk_key)
|
||
verkl_privegebruik
|
||
WHERE c.ins_discipline_key = d.ins_discipline_key
|
||
AND d.ins_discipline_key = 1221
|
||
AND c.cnt_contract_verwijder IS NULL
|
||
AND co.cnt_contract_key = c.cnt_contract_key
|
||
AND TRUNC (c.cnt_contract_looptijd_tot) >= TRUNC (SYSDATE)
|
||
AND gebruikersovk.cnt_contract_key(+) = c.cnt_contract_key
|
||
AND toekenningsform.cnt_contract_key(+) =
|
||
c.cnt_contract_key
|
||
AND verkl_privegebruik.cnt_contract_key(+) =
|
||
c.cnt_contract_key) gebruikersovk,
|
||
ins_deel o
|
||
WHERE o.ins_deel_key = lease.cnt_ins_deel_key
|
||
AND o.ins_deel_key = gebruikersovk.cnt_ins_deel_key;
|
||
|
||
COMMIT;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_CAD_CORONA_WPL
|
||
(
|
||
ALG_RUIMTE_KEY,
|
||
WAARDE
|
||
)
|
||
AS
|
||
SELECT r.alg_ruimte_key,
|
||
CASE WHEN deel.res_deel_key IS NOT NULL THEN 'JA' ELSE 'NEE' END werkplek
|
||
FROM (SELECT r.*, d.ins_alg_ruimte_key
|
||
FROM res_v_aanwezigdeel r, ins_deel d, ins_srtdeel sd
|
||
WHERE d.ins_deel_key = r.res_ins_deel_key
|
||
AND d.ins_alg_ruimte_type = 'R'
|
||
AND sd.ins_srtdeel_key = d.ins_srtdeel_key
|
||
AND sd.ins_srtgroep_key =
|
||
fac.getSetting ('ins_occupationsensors_srtgroep_key'))
|
||
deel,
|
||
alg_ruimte r
|
||
WHERE r.alg_ruimte_key = deel.ins_alg_ruimte_key(+)
|
||
AND ( deel.res_deel_vervaldatum > SYSDATE
|
||
OR deel.res_deel_vervaldatum IS NULL);
|
||
|
||
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_AFDELINGTEAMS
|
||
(
|
||
TEAM_KEY,
|
||
AFDELING_TEAM
|
||
)
|
||
AS
|
||
SELECT t.prs_afdeling_key,
|
||
p.prs_afdeling_omschrijving
|
||
|| ' - '
|
||
|| t.prs_afdeling_omschrijving
|
||
FROM prs_afdeling p, prs_afdeling t
|
||
WHERE t.prs_afdeling_parentkey = p.prs_afdeling_key;
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_RAP_OVERZICHT_BROEKHUIS
|
||
AS
|
||
SELECT berijder.berijder,
|
||
contract.cnt_contract_nummer,
|
||
DECODE (contract.cnt_contract_status, 1, 'actief', 'gesloten')
|
||
contract_status,
|
||
contract.cnt_contract_nummer_intern
|
||
kenteken,
|
||
auto.merk,
|
||
auto.fiscale_waarde,
|
||
auto.bijtelling,
|
||
contract.cnt_contract_termijnkosten
|
||
leasebedrag,
|
||
auto.brandstof_voorschot,
|
||
contract.cnt_contract_looptijd_van
|
||
begin_datum,
|
||
contract.cnt_contract_looptijd_tot
|
||
eind_datum,
|
||
contract.restant_looptijd,
|
||
contract.looptijd,
|
||
contract.jaarkilometrage
|
||
FROM (SELECT c.cnt_contract_nummer,
|
||
c.cnt_contract_key,
|
||
c.cnt_contract_status,
|
||
c.cnt_contract_nummer_intern,
|
||
c.cnt_contract_termijnkosten,
|
||
c.cnt_contract_looptijd_van,
|
||
c.cnt_contract_looptijd_tot,
|
||
ROUND (
|
||
MONTHS_BETWEEN (c.cnt_contract_looptijd_tot,
|
||
TRUNC (SYSDATE)))
|
||
restant_looptijd,
|
||
jaarkilometrage.cnt_kenmerkcontract_waarde
|
||
jaarkilometrage,
|
||
looptijd.cnt_kenmerkcontract_waarde
|
||
looptijd
|
||
FROM cnt_contract c,
|
||
(SELECT kc.cnt_contract_key, cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc
|
||
WHERE kc.cnt_kenmerk_key = 701
|
||
AND cnt_kenmerkcontract_verwijder IS NULL)
|
||
jaarkilometrage,
|
||
(SELECT kc.cnt_contract_key, cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc
|
||
WHERE kc.cnt_kenmerk_key = 702
|
||
AND cnt_kenmerkcontract_verwijder IS NULL)
|
||
looptijd,
|
||
(SELECT kc.cnt_contract_key, cnt_kenmerkcontract_waarde
|
||
FROM cnt_kenmerkcontract kc
|
||
WHERE kc.cnt_kenmerk_key = 703
|
||
AND cnt_kenmerkcontract_verwijder IS NULL)
|
||
leaseklasse
|
||
WHERE c.ins_discipline_key = 1201
|
||
AND c.cnt_contract_verwijder IS NULL
|
||
AND c.cnt_contract_key =
|
||
jaarkilometrage.cnt_contract_key(+)
|
||
AND c.cnt_contract_key = looptijd.cnt_contract_key(+)
|
||
AND c.cnt_contract_key = leaseklasse.cnt_contract_key(+))
|
||
contract,
|
||
(SELECT co.cnt_contract_key,
|
||
co.cnt_ins_deel_key,
|
||
fiscale_waarde.ins_kenmerkdeel_waarde fiscale_waarde,
|
||
bijtelling.ins_kenmerkdeel_waarde || '%' bijtelling,
|
||
merk.ins_kenmerkdeel_waarde
|
||
|| ' '
|
||
|| type_auto.ins_kenmerkdeel_waarde merk,
|
||
brandstof_voorschot.ins_kenmerkdeel_waarde brandstof_voorschot
|
||
FROM cnt_contract_object co,
|
||
ins_deel o,
|
||
(SELECT kd.ins_deel_key, kd.ins_kenmerkdeel_waarde
|
||
FROM ins_kenmerkdeel kd
|
||
WHERE kd.ins_kenmerk_key = 301
|
||
AND ins_kenmerkdeel_verwijder IS NULL)
|
||
fiscale_waarde,
|
||
(SELECT kd.ins_deel_key, kd.ins_kenmerkdeel_waarde
|
||
FROM ins_kenmerkdeel kd
|
||
WHERE kd.ins_kenmerk_key = 302
|
||
AND ins_kenmerkdeel_verwijder IS NULL) bijtelling,
|
||
(SELECT kd.ins_deel_key, kd.ins_kenmerkdeel_waarde
|
||
FROM ins_kenmerkdeel kd
|
||
WHERE kd.ins_kenmerk_key = 305
|
||
AND ins_kenmerkdeel_verwijder IS NULL) merk,
|
||
(SELECT kd.ins_deel_key, kd.ins_kenmerkdeel_waarde
|
||
FROM ins_kenmerkdeel kd
|
||
WHERE kd.ins_kenmerk_key = 306
|
||
AND ins_kenmerkdeel_verwijder IS NULL) type_auto,
|
||
(SELECT kd.ins_deel_key, kd.ins_kenmerkdeel_waarde
|
||
FROM ins_kenmerkdeel kd
|
||
WHERE kd.ins_kenmerk_key = 308
|
||
AND ins_kenmerkdeel_verwijder IS NULL)
|
||
brandstof_voorschot
|
||
WHERE co.cnt_ins_deel_key = o.ins_deel_key
|
||
AND o.ins_srtdeel_key = 621
|
||
AND co.cnt_contract_object_verwijder IS NULL
|
||
AND o.ins_deel_key = fiscale_waarde.ins_deel_key(+)
|
||
AND o.ins_deel_key = bijtelling.ins_deel_key(+)
|
||
AND o.ins_deel_key = merk.ins_deel_key(+)
|
||
AND o.ins_deel_key = type_auto.ins_deel_key(+)
|
||
AND o.ins_deel_key = brandstof_voorschot.ins_deel_key(+))
|
||
auto,
|
||
(SELECT co.cnt_ins_deel_key, p.prs_perslid_naam_full berijder
|
||
FROM cnt_contract c,
|
||
prs_v_perslid_fullnames_all p,
|
||
cnt_contract_object co
|
||
WHERE c.ins_discipline_key = 1221
|
||
AND c.cnt_contract_verwijder IS NULL
|
||
AND c.cnt_contract_status = 1
|
||
AND c.cnt_prs_perslid_key = p.prs_perslid_key
|
||
AND co.cnt_contract_key = c.cnt_contract_key) berijder
|
||
WHERE contract.cnt_contract_key = auto.cnt_contract_key(+)
|
||
AND auto.cnt_ins_deel_key = berijder.cnt_ins_deel_key(+);
|
||
|
||
CREATE OR REPLACE VIEW SGGR_V_NOTI_PROJECTADM
|
||
(
|
||
SENDER,
|
||
RECEIVER,
|
||
TEXT,
|
||
CODE,
|
||
FAC_SRTNOTIFICATIE_KEY,
|
||
KEY,
|
||
XKEY,
|
||
XEMAIL,
|
||
XMOBILE
|
||
)
|
||
AS
|
||
SELECT DISTINCT
|
||
NULL
|
||
sender,
|
||
NULL
|
||
receiver,
|
||
REPLACE (
|
||
n.fac_srtnotificatie_oms,
|
||
'##stdmelding##',
|
||
m.mld_melding_key
|
||
|| DECODE (m.mld_stdmelding_key,
|
||
382, ' aanpassing/uitbreiding project',
|
||
' nieuw project')),
|
||
fac_srtnotificatie_code,
|
||
n.fac_srtnotificatie_key,
|
||
m.mld_melding_key,
|
||
NULL
|
||
xkey,
|
||
'projectadministratie@aareon.nl'
|
||
xemail,
|
||
NULL
|
||
xmobile
|
||
FROM fac_tracking t, mld_melding m, fac_srtnotificatie n
|
||
WHERE t.fac_tracking_refkey = m.mld_melding_key
|
||
AND t.fac_srtnotificatie_key = 21 --- de aanvraag is geaccepteerd
|
||
AND n.fac_srtnotificatie_code = 'CUST09'
|
||
AND m.mld_stdmelding_key IN (382, 384) -- nieuw project en aanpassing/uitbreiding project
|
||
AND t.fac_tracking_datum >
|
||
(SELECT fac_notificatie_job_nextrun
|
||
- fac_notificatie_job_interval / 24
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_PROJECTADM')
|
||
AND t.fac_tracking_datum <
|
||
(SELECT fac_notificatie_job_nextrun
|
||
FROM fac_notificatie_job
|
||
WHERE UPPER (fac_notificatie_job_view) =
|
||
'SGGR_V_NOTI_PROJECTADM');
|
||
|
||
|
||
------ payload end ------
|
||
|
||
SET DEFINE OFF
|
||
|
||
BEGIN
|
||
adm.systrackscriptId (
|
||
'$Id$',
|
||
0);
|
||
END;
|
||
/
|
||
|
||
COMMIT;
|
||
SET ECHO OFF
|
||
SPOOL OFF
|
||
SET DEFINE ON
|
||
PROMPT Logfile of this upgrade is: &fcltlogfile |