RWSN#54743 KTO Meldingen rapportage (aanpassingen Marijn)
svn path=/Customer/trunk/; revision=41386
This commit is contained in:
347
RWSN/rwsn.sql
347
RWSN/rwsn.sql
@@ -3430,6 +3430,7 @@ CREATE OR REPLACE PACKAGE RWSN AS
|
||||
FUNCTION bepaal_dienst (p_prs_perslid_key IN number) RETURN VARCHAR2;
|
||||
FUNCTION bepaal_dienst2 (p_prs_perslid_key IN number) RETURN VARCHAR2;
|
||||
FUNCTION afgehandelddoor (p_mld_melding_key IN number) RETURN VARCHAR2;
|
||||
FUNCTION format_string_voor_rap (p_string IN VARCHAR2, p_lengte IN NUMBER) RETURN VARCHAR2;
|
||||
FUNCTION bepaal_doorlooptijd (p_sla number, p_ingevoerd date, p_uitgevoerd date) RETURN NUMBER;
|
||||
FUNCTION bepaal_rws_kantooruren (van_date IN DATE, tot_date IN DATE) RETURN NUMBER;
|
||||
PROCEDURE rap_maand_cdbreed (user_key IN NUMBER, p_datum_van IN VARCHAR2, p_datum_tot IN VARCHAR2, p_cursor OUT t_cursor);
|
||||
@@ -3607,6 +3608,28 @@ AS
|
||||
END;
|
||||
END afgehandelddoor;
|
||||
|
||||
FUNCTION format_string_voor_rap (p_string IN VARCHAR2, p_lengte IN NUMBER)
|
||||
RETURN VARCHAR2
|
||||
AS
|
||||
v_result VARCHAR2(4000);
|
||||
BEGIN
|
||||
v_result := REPLACE(p_string, CHR(13));
|
||||
v_result := REPLACE(v_result, CHR(10));
|
||||
v_result := REPLACE(v_result, CHR(34), '*');
|
||||
v_result := REPLACE(v_result, CHR(39), '*');
|
||||
v_result := REPLACE(v_result, ' ', ' ');
|
||||
v_result := REPLACE(v_result, ' ', ' ');
|
||||
v_result := REPLACE(v_result, ' ', ' ');
|
||||
v_result := TRIM(REPLACE(v_result, ' ', ' '));
|
||||
IF LENGTH(v_result) > p_lengte
|
||||
THEN
|
||||
v_result := SUBSTR(v_result, 1, p_lengte) || '...';
|
||||
END IF;
|
||||
|
||||
RETURN v_result;
|
||||
|
||||
END format_string_voor_rap;
|
||||
|
||||
FUNCTION bepaal_doorlooptijd (p_sla NUMBER, p_ingevoerd DATE, p_uitgevoerd DATE)
|
||||
RETURN NUMBER
|
||||
IS
|
||||
@@ -15092,16 +15115,19 @@ END;
|
||||
CREATE OR REPLACE VIEW rwsn_v_kto_melding
|
||||
(
|
||||
nummer,
|
||||
aangemaakt,
|
||||
email,
|
||||
prs_perslid_voornaam,
|
||||
naam,
|
||||
vakgroep,
|
||||
melding,
|
||||
organisatie_1,
|
||||
organisatie_2,
|
||||
organisatie_3,
|
||||
regio,
|
||||
district,
|
||||
locatie,
|
||||
eenheid,
|
||||
aangemaakt,
|
||||
afgehandeld,
|
||||
afm_persoon,
|
||||
afm_org_3,
|
||||
@@ -15109,214 +15135,129 @@ CREATE OR REPLACE VIEW rwsn_v_kto_melding
|
||||
afm_org_5,
|
||||
omschrijving,
|
||||
afhandeling,
|
||||
opmerking_1,
|
||||
groep,
|
||||
bedrijf,
|
||||
meldingkey,
|
||||
onderwerp,
|
||||
vakgroep_omschrijving,
|
||||
opmerking,
|
||||
meedoen_in_kto,
|
||||
email_extern,
|
||||
kandidaatnummer,
|
||||
uitvoeringoptijd,
|
||||
afspraakoptijd
|
||||
afspraakoptijd,
|
||||
meedoen_in_kto,
|
||||
onderwerp,
|
||||
behandelgroep,
|
||||
email_extern,
|
||||
kandidaatnummer
|
||||
)
|
||||
AS
|
||||
SELECT m.mld_melding_key,
|
||||
m.mld_melding_datum,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_voornaam,
|
||||
p.prs_perslid_naam,
|
||||
afda.prs_afdeling_naam3, --afdelingen melder
|
||||
afdb.prs_afdeling_naam,
|
||||
afdc.prs_afdeling_naam,
|
||||
reg.alg_regio_omschrijving,
|
||||
dist.alg_district_omschrijving,
|
||||
loc.alg_locatie_omschrijving,
|
||||
m.mld_melding_einddatum,
|
||||
behandelaar_info.PRS_PERSLID_OSLOGIN,
|
||||
behandelaar_info.AFDELING_NAAM1,
|
||||
behandelaar_info.AFDELING_NAAM2,
|
||||
behandelaar_info.AFDELING_NAAM3,
|
||||
--behandelaar_info.PRS_AFDELING_NAAM_2,
|
||||
-- afh.prs_perslid_oslogin,
|
||||
-- afdd.prs_afdeling_naam, --afdelingen afhandelaar
|
||||
-- afde.prs_afdeling_naam,
|
||||
-- afdf.prs_afdeling_naam,
|
||||
SUBSTR (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
TRIM (m.mld_melding_omschrijving),
|
||||
CHR (13),
|
||||
''),
|
||||
CHR (10),
|
||||
''),
|
||||
CHR (34),
|
||||
'*'),
|
||||
CHR (39),
|
||||
'*'),
|
||||
' ',
|
||||
''),
|
||||
' ',
|
||||
''),
|
||||
0,
|
||||
500),
|
||||
SUBSTR (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
TRIM (
|
||||
stdm.mld_stdmelding_omschrijving),
|
||||
CHR (13),
|
||||
''),
|
||||
CHR (10),
|
||||
''),
|
||||
CHR (34),
|
||||
'*'),
|
||||
CHR (39),
|
||||
'*'),
|
||||
' ',
|
||||
''),
|
||||
' ',
|
||||
''),
|
||||
0,
|
||||
500),
|
||||
SUBSTR (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (TRIM (m.mld_melding_opmerking),
|
||||
CHR (13),
|
||||
''),
|
||||
CHR (10),
|
||||
''),
|
||||
CHR (34),
|
||||
'*'),
|
||||
CHR (39),
|
||||
'*'),
|
||||
' ',
|
||||
''),
|
||||
' ',
|
||||
''),
|
||||
0,
|
||||
500), -- afhandelveld??
|
||||
mg.mld_stdmeldinggroep_naam, -- naam groep melding
|
||||
afda.prs_afdeling_naam, --valsspelen??
|
||||
m.mld_melding_key,
|
||||
m.mld_melding_onderwerp,
|
||||
disc.ins_discipline_omschrijving,
|
||||
SUBSTR (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (
|
||||
REPLACE (TRIM (m.mld_melding_opmerking),
|
||||
CHR (13),
|
||||
''),
|
||||
CHR (10),
|
||||
''),
|
||||
CHR (34),
|
||||
'*'),
|
||||
CHR (39),
|
||||
'*'),
|
||||
' ',
|
||||
''),
|
||||
' ',
|
||||
''),
|
||||
0,
|
||||
500),
|
||||
(SELECT ud.fac_usrdata_omschr
|
||||
FROM mld_v_aanwezigkenmerkmelding km,
|
||||
mld_kenmerk k,
|
||||
fac_v_aanwezigusrdata ud
|
||||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = 1
|
||||
AND fac.safe_to_number (km.mld_kenmerkmelding_waarde) =
|
||||
ud.fac_usrdata_key
|
||||
AND km.MLD_MELDING_KEY = m.mld_melding_key) -- Meedoen in KTO
|
||||
meedoen,
|
||||
(SELECT km.mld_kenmerkmelding_waarde
|
||||
FROM mld_v_aanwezigkenmerkmelding km, mld_kenmerk k
|
||||
WHERE km.MLD_MELDING_KEY = m.mld_melding_key
|
||||
AND km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = 20) -- Email
|
||||
email,
|
||||
(SELECT km.mld_kenmerkmelding_waarde
|
||||
FROM mld_v_aanwezigkenmerkmelding km, mld_kenmerk k
|
||||
WHERE km.MLD_MELDING_KEY = m.mld_melding_key
|
||||
AND km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = 11151) -- Email
|
||||
kandidaatnummer,
|
||||
DECODE (
|
||||
SIGN (
|
||||
m.mld_melding_einddatum_std
|
||||
- fac.gettrackingdate ('MLDAFM', m.mld_melding_key)),
|
||||
-1, 'nee',
|
||||
'ja')
|
||||
uitvoering_volgens_sla,
|
||||
DECODE (
|
||||
SIGN (
|
||||
m.mld_melding_einddatum
|
||||
- fac.gettrackingdate ('MLDAFM', m.mld_melding_key)),
|
||||
-1, 'nee',
|
||||
'ja')
|
||||
afspraak_volgens_sla
|
||||
FROM mld_melding m,
|
||||
prs_perslid p,
|
||||
prs_afdeling a,
|
||||
prs_v_afdeling_boom ab,
|
||||
prs_v_afdeling afda,
|
||||
prs_v_afdeling afdb,
|
||||
prs_v_afdeling afdc,
|
||||
alg_locatie loc,
|
||||
alg_district dist,
|
||||
alg_regio reg,
|
||||
-- prs_perslid afh,
|
||||
-- prs_v_afdeling_boom ab2,
|
||||
-- prs_v_afdeling afdd,
|
||||
-- prs_v_afdeling afde,
|
||||
--prs_v_afdeling afdf,
|
||||
(SELECT afh.prs_perslid_key , afh.prs_perslid_oslogin, afdd.PRS_AFDELING_NAAM afdeling_naam1, --afdelingen afhandelaar
|
||||
afde.prs_afdeling_naam afdeling_naam2 ,afdf.prs_afdeling_naam afdeling_naam3
|
||||
FROM prs_perslid afh, prs_v_afdeling_boom ab2, prs_v_afdeling afdd, prs_v_afdeling afde, prs_v_afdeling afdf
|
||||
WHERE afh.prs_afdeling_key = ab2.prs_afdeling_key
|
||||
AND ab2.prs_afdeling_key3 = afdd.prs_afdeling_key(+)
|
||||
AND ab2.prs_afdeling_key4 = afde.prs_afdeling_key(+)
|
||||
AND ab2.prs_afdeling_key5 = afdf.prs_afdeling_key(+)
|
||||
) behandelaar_info,
|
||||
mld_stdmelding stdm,
|
||||
mld_stdmeldinggroep mg,
|
||||
mld_discipline disc
|
||||
WHERE m.mld_melding_status IN (5, 6)
|
||||
AND m.prs_perslid_key = p.prs_perslid_key
|
||||
AND p.prs_afdeling_key = a.prs_afdeling_key
|
||||
AND p.prs_afdeling_key = ab.prs_afdeling_key
|
||||
AND ab.prs_afdeling_key1 = afda.prs_afdeling_key
|
||||
AND ab.prs_afdeling_key2(+) = afdb.prs_afdeling_key
|
||||
AND ab.prs_afdeling_key3(+) = afdc.prs_afdeling_key
|
||||
AND m.mld_alg_locatie_key = loc.alg_locatie_key
|
||||
AND loc.alg_district_key = dist.alg_district_key
|
||||
AND dist.alg_regio_key = reg.alg_regio_key
|
||||
AND m.mld_melding_behandelaar_key = behandelaar_info.PRS_PERSLID_KEY(+)
|
||||
--AND afh.prs_afdeling_key = ab2.prs_afdeling_key
|
||||
-- AND ab2.prs_afdeling_key3 = afdd.prs_afdeling_key(+)
|
||||
--AND ab2.prs_afdeling_key4 = afde.prs_afdeling_key(+)
|
||||
-- AND ab2.prs_afdeling_key5 = afdf.prs_afdeling_key(+)
|
||||
AND stdm.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mg.mld_stdmeldinggroep_key(+) = stdm.mld_stdmeldinggroep_key
|
||||
AND stdm.mld_ins_discipline_key = disc.ins_discipline_key
|
||||
AND m.mld_melding_datum > TRUNC (ADD_MONTHS (SYSDATE, -12), 'mm');
|
||||
SELECT sd.ins_srtdiscipline_prefix || m.mld_melding_key nummer,
|
||||
p.prs_perslid_email email,
|
||||
p.prs_perslid_voornaam,
|
||||
p.prs_perslid_naam naam,
|
||||
disc.ins_discipline_omschrijving vakgroep,
|
||||
rwsn.format_string_voor_rap (stdm.mld_stdmelding_omschrijving, 500) melding,
|
||||
afd1_m.prs_afdeling_omschrijving organisatie_1,
|
||||
afd2_m.prs_afdeling_omschrijving organisatie_2,
|
||||
afd3_m.prs_afdeling_omschrijving organisatie_3,
|
||||
COALESCE(lm.alg_regio_omschrijving, lwp.alg_regio_omschrijving) regio,
|
||||
COALESCE(lm.alg_district_omschrijving, lwp.alg_district_omschrijving) district,
|
||||
COALESCE(lm.alg_locatie_omschrijving, lwp.alg_locatie_omschrijving) locatie,
|
||||
sd.ins_srtdiscipline_omschrijving eenheid,
|
||||
m.mld_melding_datum aangemaakt,
|
||||
t.fac_tracking_datum afgehandeld,
|
||||
p_afm.prs_perslid_oslogin afm_persoon,
|
||||
afd3_afm.prs_afdeling_omschrijving afm_org_3,
|
||||
afd4_afm.prs_afdeling_omschrijving afm_org_4,
|
||||
afd5_afm.prs_afdeling_omschrijving afm_org_5,
|
||||
rwsn.format_string_voor_rap (m.mld_melding_omschrijving, 500) omschrijving,
|
||||
rwsn.format_string_voor_rap (m.mld_melding_opmerking, 500) afhandeling,
|
||||
mg.mld_stdmeldinggroep_naam groep,
|
||||
b.prs_bedrijf_naam bedrijf,
|
||||
m.mld_melding_key meldingkey,
|
||||
DECODE ( SIGN (m.mld_melding_einddatum_std - t.fac_tracking_datum), -1, 'nee', 'ja') uitvoering_volgens_sla,
|
||||
DECODE ( SIGN (m.mld_melding_einddatum - t.fac_tracking_datum), -1, 'nee', 'ja') afspraak_volgens_sla,
|
||||
(SELECT MAX (ud.fac_usrdata_omschr)
|
||||
FROM mld_v_aanwezigkenmerkmelding km,
|
||||
mld_kenmerk k,
|
||||
fac_v_aanwezigusrdata ud
|
||||
WHERE km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = 1
|
||||
AND fac.safe_to_number (km.mld_kenmerkmelding_waarde) =
|
||||
ud.fac_usrdata_key
|
||||
AND km.MLD_MELDING_KEY = m.mld_melding_key) -- Meedoen in KTO
|
||||
meedoen,
|
||||
m.mld_melding_onderwerp,
|
||||
bg.mld_behandelgroep_naam behandelgroep,
|
||||
(SELECT MAX (km.mld_kenmerkmelding_waarde) -- Kenmerken komen soms op stdmelding en vakgroep voor.
|
||||
FROM mld_v_aanwezigkenmerkmelding km, mld_kenmerk k
|
||||
WHERE km.mld_melding_key = m.mld_melding_key
|
||||
AND km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_kenmerk_verwijder IS NULL
|
||||
AND k.mld_srtkenmerk_key = 20) -- Email
|
||||
email,
|
||||
(SELECT km.mld_kenmerkmelding_waarde
|
||||
FROM mld_v_aanwezigkenmerkmelding km, mld_kenmerk k
|
||||
WHERE km.MLD_MELDING_KEY = m.mld_melding_key
|
||||
AND km.mld_kenmerk_key = k.mld_kenmerk_key
|
||||
AND k.mld_srtkenmerk_key = 11151) -- Kandidaatnummer
|
||||
kandidaatnummer
|
||||
FROM mld_melding m,
|
||||
prs_perslid p,
|
||||
prs_v_afdeling_boom ab_m,
|
||||
prs_afdeling afd1_m,
|
||||
prs_afdeling afd2_m,
|
||||
prs_afdeling afd3_m,
|
||||
alg_v_locatie_gegevens lm,
|
||||
alg_v_locatie_gegevens lwp,
|
||||
prs_perslid p_afm,
|
||||
prs_v_afdeling_boom ab_afm,
|
||||
prs_afdeling afd3_afm,
|
||||
prs_afdeling afd4_afm,
|
||||
prs_afdeling afd5_afm,
|
||||
(SELECT prs_perslid_key, alg_locatie_key
|
||||
FROM prs_v_perslidwerkplek_gegevens pwg
|
||||
WHERE NOT EXISTS
|
||||
(SELECT pwg2.prs_perslidwerkplek_key
|
||||
FROM prs_v_perslidwerkplek_gegevens pwg2
|
||||
WHERE pwg2.prs_perslidwerkplek_key <
|
||||
pwg.prs_perslidwerkplek_key
|
||||
AND pwg.prs_perslid_key = pwg2.prs_perslid_key)) melder_wp,
|
||||
(SELECT mt.mld_melding_key, MAX(fac_tracking_key) fac_tracking_key
|
||||
FROM mld_melding mt, fac_tracking t, fac_srtnotificatie sn
|
||||
WHERE mt.mld_melding_key = t.fac_tracking_refkey
|
||||
AND t.fac_srtnotificatie_key = sn.fac_srtnotificatie_key
|
||||
AND sn.fac_srtnotificatie_code = 'MLDAFM'
|
||||
AND mt.mld_melding_datum > TRUNC (ADD_MONTHS (SYSDATE, -12), 'mm')
|
||||
GROUP BY mt.mld_melding_key)afm,
|
||||
mld_stdmelding stdm,
|
||||
mld_stdmeldinggroep mg,
|
||||
ins_tab_discipline disc,
|
||||
ins_srtdiscipline sd,
|
||||
fac_tracking t,
|
||||
prs_bedrijf b,
|
||||
mld_disc_params dp,
|
||||
mld_behandelgroep bg
|
||||
WHERE m.mld_melding_status IN (5, 6)
|
||||
AND m.prs_perslid_key = p.prs_perslid_key
|
||||
AND m.mld_melding_key = afm.mld_melding_key(+)
|
||||
AND afm.fac_tracking_key = t.fac_tracking_key(+)
|
||||
AND t.prs_perslid_key = p_afm.prs_perslid_key(+)
|
||||
AND m.prs_perslid_key = melder_wp.prs_perslid_key(+)
|
||||
AND p.prs_afdeling_key = ab_m.prs_afdeling_key(+)
|
||||
AND ab_m.prs_afdeling_key1 = afd1_m.prs_afdeling_key(+)
|
||||
AND ab_m.prs_afdeling_key2 = afd2_m.prs_afdeling_key(+)
|
||||
AND ab_m.prs_afdeling_key3 = afd3_m.prs_afdeling_key(+)
|
||||
AND ab_m.prs_bedrijf_key = b.prs_bedrijf_key(+)
|
||||
AND m.mld_alg_locatie_key = lm.alg_locatie_key(+)
|
||||
AND melder_wp.alg_locatie_key = lwp.alg_locatie_key(+)
|
||||
AND p_afm.prs_afdeling_key = ab_afm.prs_afdeling_key(+)
|
||||
AND ab_afm.prs_afdeling_key3 = afd3_afm.prs_afdeling_key(+)
|
||||
AND ab_afm.prs_afdeling_key4 = afd4_afm.prs_afdeling_key(+)
|
||||
AND ab_afm.prs_afdeling_key5 = afd5_afm.prs_afdeling_key(+)
|
||||
AND m.mld_stdmelding_key = stdm.mld_stdmelding_key(+)
|
||||
AND stdm.mld_stdmeldinggroep_key = mg.mld_stdmeldinggroep_key(+)
|
||||
AND stdm.mld_ins_discipline_key = disc.ins_discipline_key(+)
|
||||
AND disc.ins_srtdiscipline_key = sd.ins_srtdiscipline_key(+)
|
||||
AND disc.ins_discipline_key = dp.mld_ins_discipline_key(+)
|
||||
AND dp.mld_behandelgroep_key = bg.mld_behandelgroep_key(+)
|
||||
AND m.mld_melding_datum > TRUNC (ADD_MONTHS (SYSDATE, -12), 'mm');
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user