AAXX#86360 Compliance verklaring systematiek toevoegen aan de omgeving Workspaces - Systematiek generiek maken voor alle heyday-omgevingen
svn path=/Customer/trunk/; revision=68328
This commit is contained in:
483
AA/aaxx.sql
483
AA/aaxx.sql
@@ -22436,6 +22436,489 @@ AS
|
||||
AND d.ins_deel_key = gm.ins_deel_key(+)
|
||||
;
|
||||
|
||||
-- Compliance verklaring (ticket AAXX#86360)
|
||||
CREATE OR REPLACE VIEW AAXX_V_RAP_TAKEN_COMPLIANCE
|
||||
(
|
||||
TOEPASSING, -- Compliance_toepassing - keuzelijst eigen tabel
|
||||
UITGEVOERD,
|
||||
JAAR, -- Jaar laatste uitvoer
|
||||
DATUM, -- Laatste uitvoerdatum OF datum waarop het uitgevoerd had moeten worden
|
||||
JAAR_NEXTCYCLUS,
|
||||
DATUM_NEXTCYCLUS,
|
||||
JAAR_COMPLIANCE, -- SYSDATE - 1
|
||||
CATEGORIE,
|
||||
TAAKSOORT,
|
||||
SRTCONTROLE__KEY,
|
||||
OP_COMPLIANCE, -- In basistaak_info-veld opgenomen of de taak wel/niet in de compliance meegenomen moet worden
|
||||
DEELSOORTCONTROLE_KEY, -- Laatste uitvoer_key
|
||||
STATUS,
|
||||
INS_DEEL_KEY,
|
||||
INLO_SUBACCOUNT,
|
||||
LOCATIE_PLAATS,
|
||||
REGIO,
|
||||
DISTRICT,
|
||||
LOCATIE,
|
||||
LOCATIE_CODE,
|
||||
GEBOUW_NAAM,
|
||||
GEBOUWFUNCTIE,
|
||||
VERVALDATUM_GEBOUW,
|
||||
HEYDAY_GEBOUWVERANTW,
|
||||
HEYDAY_GEBOUWVERANTW_MAIL,
|
||||
HEYDAY_GEBOUWVERANTW_TEL,
|
||||
OMSCHRIJVING,
|
||||
OBJECTIDENTIFICATIE,
|
||||
VERVALDATUM_OBJECT,
|
||||
OBJECT_VERVAL_FILTER,
|
||||
TAAKOMSCHRIJVING,
|
||||
FREQUENCY,
|
||||
PERIODE,
|
||||
AANTAL_X_UITGEVOERD, -- In Compliancejaar (sysdate-jaar minus 1)
|
||||
AANTAL_X_UITGEVOERD_TOT, -- In totaal
|
||||
ACTIE, -- 1, 0.5, 0 of -1 (1 = voltooid 0.5 = afgemeld 0 = ingepland, -1 is nog niet gestart/uitgevoerd in geselecteerde jaar
|
||||
DEMARCATIE,
|
||||
OPMERKING_UITVOER,
|
||||
OPMERKING_OBJECTTAAK,
|
||||
DIENST,
|
||||
DIENST_LEV_BDL,
|
||||
DIENST_LEV_BDL_AANTAL
|
||||
)
|
||||
AS -- Uitgevoerd t/m datum van uitdraai...
|
||||
SELECT ud.fac_usrdata_upper,
|
||||
'ja' uitgevoerd,
|
||||
TO_CHAR (dc.ins_deelsrtcontrole_datum, 'YYYY')
|
||||
jaar,
|
||||
dc.ins_deelsrtcontrole_datum
|
||||
datum, -- datum laatste uitvoering
|
||||
TO_CHAR(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1),'YYYY')
|
||||
jaar_nextcyclus,
|
||||
fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1)
|
||||
datum_nextcyclus,
|
||||
CASE WHEN ud.fac_usrdata_key = ut.key_vj THEN TO_CHAR(sysdate,'YYYY')-1 ELSE TO_CHAR(sysdate,'YYYY')-0 END -- key van compliance voorgaand jaar
|
||||
jaar_compliance,
|
||||
cd.ins_discipline_omschrijving,
|
||||
CASE
|
||||
WHEN cdp.ctr_disc_params_controle_type = 1
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_insp')
|
||||
WHEN cdp.ctr_disc_params_controle_type = 2
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_repl')
|
||||
WHEN cdp.ctr_disc_params_controle_type = 3
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_cert')
|
||||
END
|
||||
taaksoort,
|
||||
t.ins_srtcontrole_key,
|
||||
CASE
|
||||
WHEN INSTR(UPPER(sc.ins_srtcontrole_info), 'NIET OP COMPLIANCE')>0
|
||||
THEN 'nee'
|
||||
ELSE 'ja'
|
||||
END
|
||||
op_compliance,
|
||||
t.laatste_uitvoer_key,
|
||||
DECODE (dc.ins_deelsrtcontrole_status,
|
||||
0, 'Ingepland',
|
||||
2, 'In behandeling',
|
||||
5, 'Afgemeld',
|
||||
6, 'Voltooid')
|
||||
status,
|
||||
d.ins_deel_key,
|
||||
v.inlo_subaccount,
|
||||
l.alg_locatie_plaats || ' ' || l.alg_locatie_adres,
|
||||
r.alg_regio_omschrijving,
|
||||
di.alg_district_omschrijving,
|
||||
l.alg_locatie_omschrijving,
|
||||
l.alg_locatie_code,
|
||||
g.alg_gebouw_naam || ' (' || g.alg_gebouw_code || ')'
|
||||
alg_gebouw_naam,
|
||||
sg.alg_srtgebouw_omschrijving
|
||||
gebouwfunctie,
|
||||
TO_CHAR(g.alg_gebouw_vervaldatum,'dd-mm-yyyy'),
|
||||
CASE WHEN p.prs_perslid_tussenvoegsel IS NULL THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam
|
||||
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_tussenvoegsel || ' ' || p.prs_perslid_naam
|
||||
END
|
||||
heyday_gebouwverantw,
|
||||
p.prs_perslid_email
|
||||
heyday_gebouwverantw_mail,
|
||||
CASE WHEN p.prs_perslid_telefoonnr IS NOT NULL THEN p.prs_perslid_telefoonnr
|
||||
WHEN p.prs_perslid_telefoonnr IS NULL AND p.prs_perslid_mobiel IS NOT NULL THEN p.prs_perslid_mobiel
|
||||
WHEN p.prs_perslid_telefoonnr IS NULL AND p.prs_perslid_mobiel IS NULL THEN 'n.b.'
|
||||
ELSE NULL
|
||||
END
|
||||
heyday_gebouwverantw_tel,
|
||||
d.ins_deel_opmerking,
|
||||
d.ins_deel_omschrijving,
|
||||
TO_CHAR(d.ins_deel_vervaldatum, 'dd-mm-yyyy'),
|
||||
CASE WHEN d.ins_deel_vervaldatum IS NULL THEN 'actueel'
|
||||
WHEN d.ins_deel_vervaldatum IS NOT NULL AND d.ins_deel_vervaldatum <= sysdate THEN 'vervallen'
|
||||
WHEN d.ins_deel_vervaldatum IS NOT NULL AND d.ins_deel_vervaldatum > sysdate THEN 'vervallen - toekomst'
|
||||
ELSE '<?>'
|
||||
END
|
||||
object_verval_filter,
|
||||
sc.ins_srtcontrole_omschrijving,
|
||||
DECODE (
|
||||
COALESCE (x.ins_srtcontroledl_xcp_eenheid,
|
||||
sc.ins_srtcontrole_eenheid),
|
||||
0, 'Uurlijks',
|
||||
1, 'Dagelijks',
|
||||
2, 'Wekelijks',
|
||||
3, 'Maandelijks',
|
||||
4, 'Jaarlijks',
|
||||
'Onbekend')
|
||||
frequentie,
|
||||
COALESCE (x.ins_srtcontroledl_xcp_periode,
|
||||
sc.ins_srtcontrole_periode)
|
||||
periode,
|
||||
(SELECT count(*)
|
||||
FROM ins_deelsrtcontrole dc
|
||||
WHERE dc.ins_deel_key = d.ins_deel_key
|
||||
AND dc.ins_srtcontrole_key = t.ins_srtcontrole_key
|
||||
AND TO_CHAR(dc.ins_deelsrtcontrole_datum,'yyyy') = to_char(sysdate,'yyyy') - DECODE(ud.fac_usrdata_key,ut.key_vj,1,0)
|
||||
) aantal_x_uitgevoerd_c, -- in compliance-jaar uitgevoerd
|
||||
t.aantal_x_uitgevoerd
|
||||
aantal_x_uitgevoerd_tot,
|
||||
CASE
|
||||
WHEN
|
||||
INSTR (LOWER (x.ins_srtcontroledl_xcp_groep), 'nee') > 0 AND ud.fac_usrdata_key = ut.key_vj -- compliance voorgaand jaar
|
||||
AND (
|
||||
LOWER (dc.ins_deelsrtcontrole_status) NOT IN (6) -- uitleg: Als demarcatie is nee (geen taak HEYDAY) en laatste taak is niet of niet succesvol uitgevoerd, dan op verklaring altijd nvt vermelden
|
||||
OR
|
||||
(LOWER (dc.ins_deelsrtcontrole_status) IN (6) -- uitleg: Ook als laatste uitvoerdatum nog voor compliance jaar ligt en voltooid was en de nextcycli_datum is in compliance-jaar (of ervoor) ligt, dan wordt status op nvt gezet
|
||||
AND TO_NUMBER(TO_CHAR(dc.ins_deelsrtcontrole_datum, 'YYYY')) < TO_NUMBER(TO_CHAR(sysdate,'YYYY')-1)
|
||||
AND TO_NUMBER(TO_CHAR(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1),'YYYY')) <= TO_NUMBER(TO_CHAR(sysdate,'YYYY')-1)
|
||||
)
|
||||
)
|
||||
THEN
|
||||
'nvt'
|
||||
WHEN -- uitleg: Als demarcatie is nee (geen taak HEYDAY) en laatste uitvoerdatum nog voor compliance jaar ligt en nextcycli_datum is in compliance-jaar (of ervoor) en is kleiner dan datum uitdraai, dan status nvt (= nog uitvoeren)
|
||||
INSTR (LOWER (x.ins_srtcontroledl_xcp_groep), 'nee') > 0 AND ud.fac_usrdata_key = ut.key_lj -- compliance lopend jaar
|
||||
AND TO_NUMBER(TO_CHAR(dc.ins_deelsrtcontrole_datum, 'YYYY')) < TO_NUMBER(TO_CHAR(sysdate,'YYYY'))
|
||||
AND TO_NUMBER(TO_CHAR(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1),'YYYY')) <= TO_NUMBER(TO_CHAR(sysdate,'YYYY'))
|
||||
AND TRUNC(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1)) <= TRUNC(SYSDATE)
|
||||
THEN
|
||||
'nvt'
|
||||
WHEN -- uitleg: Als demarcatie is ja (is taak HEYDAY) en laatste uitvoerdatum nog voor compliance jaar ligt en nextcycli_datum is in compliance-jaar (of ervoor) en is kleiner dan datum uitdraai, dan status -1 (= nog uitvoeren)
|
||||
INSTR (LOWER (COALESCE(x.ins_srtcontroledl_xcp_groep,'leeg')), 'nee') = 0
|
||||
AND TO_NUMBER(TO_CHAR(dc.ins_deelsrtcontrole_datum, 'YYYY')) < TO_NUMBER(TO_CHAR(sysdate,'YYYY')-DECODE(ud.fac_usrdata_key,ut.key_vj,1,0)) -- compliance voorgaand jaar
|
||||
AND TO_NUMBER(TO_CHAR(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1),'YYYY')) <= TO_NUMBER(TO_CHAR(sysdate,'YYYY')-DECODE(ud.fac_usrdata_key,ut.key_vj,1,0))
|
||||
AND TRUNC(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1)) <= TRUNC(SYSDATE)
|
||||
THEN '-1'
|
||||
ELSE
|
||||
DECODE (dc.ins_deelsrtcontrole_status,
|
||||
6, '1', -- Voltooid
|
||||
5, '0.5', -- Afgemeld
|
||||
2, '0', -- In behandeling
|
||||
0, '0', -- Ingepland
|
||||
'-1')
|
||||
END
|
||||
actie,
|
||||
x.ins_srtcontroledl_xcp_groep
|
||||
demarcatie,
|
||||
dc.ins_deelsrtcontrole_opmerking
|
||||
opmerking_uitvoer, -- opmerking bij laatste uitvoering
|
||||
x.ins_srtcontroledl_xcp_opmerk
|
||||
opmerking_basistaak,
|
||||
die.prs_dienst_omschrijving,
|
||||
bdl.lev_max
|
||||
dienst_lev_bdl,
|
||||
bdl.aantal_leveranciers
|
||||
dienst_lev_bdl_aantal
|
||||
FROM ins_v_deel_gegevens d,
|
||||
ins_srtcontrole sc,
|
||||
prs_dienst die,
|
||||
ins_srtcontroledl_xcp x,
|
||||
ins_srtdeel ds,
|
||||
ins_srtgroep dg,
|
||||
ctr_discipline cd,
|
||||
ctr_disc_params cdp,
|
||||
( SELECT dc.ins_deel_key,
|
||||
dc.ins_srtcontrole_key,
|
||||
MAX (ins_deelsrtcontrole_key)
|
||||
laatste_uitvoer_key,
|
||||
COUNT (ins_deelsrtcontrole_key)
|
||||
aantal_x_uitgevoerd
|
||||
FROM ins_deelsrtcontrole dc, ins_deel d
|
||||
WHERE d.ins_deel_key = dc.ins_deel_key
|
||||
AND d.ins_deel_verwijder IS NULL
|
||||
GROUP BY dc.ins_deel_key,
|
||||
dc.ins_srtcontrole_key
|
||||
) t,
|
||||
ins_deelsrtcontrole dc,
|
||||
alg_gebouw g,
|
||||
prs_perslid p,
|
||||
(SELECT g.alg_gebouw_key,
|
||||
fud.fac_usrdata_upper,
|
||||
fud.fac_usrdata_omschr
|
||||
inlo_subaccount
|
||||
FROM alg_gebouw g, alg_onrgoedkenmerk k, fac_usrdata fud
|
||||
WHERE g.alg_gebouw_key = k.alg_onrgoed_key
|
||||
AND k.alg_onrgoed_niveau = 'G'
|
||||
AND alg_kenmerk_key = DECODE (aaxx_get_user, 'INLO', 1100, NULL)
|
||||
AND fac.safe_to_number(k.alg_onrgoedkenmerk_waarde) = fud.fac_usrdata_key
|
||||
) v,
|
||||
alg_locatie l,
|
||||
alg_district di,
|
||||
alg_regio r,
|
||||
alg_srtgebouw sg,
|
||||
(SELECT ut.fac_usrtab_key, ut.fac_usrtab_naam , ud.fac_usrdata_key, ud.fac_usrdata_upper
|
||||
FROM fac_usrdata ud, fac_usrtab ut
|
||||
WHERE ud.fac_usrtab_key = ut.fac_usrtab_key
|
||||
AND ut.fac_usrtab_naam = 'ASSET_COMPLIANCE'
|
||||
AND ut.fac_usrtab_verwijder IS NULL
|
||||
AND ud.fac_usrdata_verwijder IS NULL AND ud.fac_usrdata_vervaldatum IS NULL
|
||||
) ud,
|
||||
(SELECT ut.fac_usrtab_key,
|
||||
(SELECT ud.fac_usrdata_key FROM fac_usrdata ud WHERE ud.fac_usrtab_key = ut.fac_usrtab_key AND ud.fac_usrdata_upper = 'COMPLIANCE VOORGAAND JAAR')
|
||||
key_vj,
|
||||
(SELECT ud.fac_usrdata_key FROM fac_usrdata ud WHERE ud.fac_usrtab_key = ut.fac_usrtab_key AND ud.fac_usrdata_upper = 'COMPLIANCE LOPEND JAAR')
|
||||
key_lj
|
||||
FROM fac_usrtab ut
|
||||
WHERE ut.fac_usrtab_naam = 'ASSET_COMPLIANCE'
|
||||
AND ut.fac_usrtab_verwijder IS NULL
|
||||
) ut,
|
||||
(
|
||||
SELECT d.prs_dienst_key, d.prs_dienst_omschrijving, g.alg_gebouw_key, MAX (b.prs_bedrijf_naam) lev_max, MIN (b.prs_bedrijf_naam) lev_min, count(*) aantal_leveranciers
|
||||
FROM prs_bedrijfdienstlocatie bdl,
|
||||
prs_dienst d,
|
||||
prs_bedrijf b,
|
||||
alg_gebouw g,
|
||||
alg_locatie l
|
||||
WHERE d.prs_dienst_key = bdl.prs_dienst_key
|
||||
AND b.prs_bedrijf_key = bdl.prs_bedrijf_key
|
||||
AND bdl.alg_gebouw_key IS NOT NULL
|
||||
AND bdl.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND g.alg_locatie_key = l.alg_locatie_key
|
||||
GROUP BY d.prs_dienst_omschrijving, d.prs_dienst_key, g.alg_gebouw_key
|
||||
) bdl
|
||||
WHERE d.ins_deel_key = t.ins_deel_key
|
||||
AND d.ins_discipline_omschrijving = 'Gebouwobjecten'
|
||||
AND t.ins_srtcontrole_key = sc.ins_srtcontrole_key
|
||||
AND sc.prs_dienst_key = die.prs_dienst_key (+)
|
||||
AND sc.ctr_discipline_key = cd.ins_discipline_key
|
||||
AND cdp.ctr_disc_params_controle_type = 3 -- Taaksoort Certificering
|
||||
AND cd.ins_discipline_key = cdp.ctr_ins_discipline_key
|
||||
AND t.ins_deel_key = x.ins_deel_key
|
||||
AND t.ins_srtcontrole_key = x.ins_srtcontrole_key
|
||||
AND x.ins_scenario_key = 1
|
||||
AND t.laatste_uitvoer_key = dc.ins_deelsrtcontrole_key
|
||||
AND sc.ins_srtinstallatie_key = ds.ins_srtdeel_key
|
||||
AND sc.ins_srtcontrole_niveau = 'S'
|
||||
AND ds.ins_srtgroep_key = dg.ins_srtgroep_key
|
||||
-- AND dg.ins_srtgroep_key NOT IN (321) -- Groep 01 Algemeen uitsluiten
|
||||
AND d.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND g.prs_perslid_key_verantw = p.prs_perslid_key (+)
|
||||
AND g.alg_locatie_key = l.alg_locatie_key
|
||||
AND l.alg_district_key = di.alg_district_key
|
||||
AND di.alg_regio_key = r.alg_regio_key
|
||||
AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key
|
||||
AND g.alg_gebouw_key = bdl.alg_gebouw_key (+)
|
||||
AND g.alg_gebouw_key = v.alg_gebouw_key
|
||||
AND sc.prs_dienst_key = bdl.prs_dienst_key (+)
|
||||
UNION -- Nog niet uitgevoerd in geselecteerde jaar
|
||||
SELECT ud.fac_usrdata_upper,
|
||||
CASE WHEN TO_NUMBER(TO_CHAR(t.deelsrtcontrole_datum, 'yyyy')) < TO_NUMBER (TO_CHAR (SYSDATE, 'yyyy')) THEN 'nee - verleden'
|
||||
WHEN TO_NUMBER(TO_CHAR(t.deelsrtcontrole_datum, 'yyyy')) = TO_NUMBER (TO_CHAR (SYSDATE, 'yyyy')) THEN 'nee - lopend jaar'
|
||||
WHEN TO_NUMBER(TO_CHAR(t.deelsrtcontrole_datum, 'yyyy')) > TO_NUMBER (TO_CHAR (SYSDATE, 'yyyy')) THEN 'nee - toekomst'
|
||||
ELSE '<?>'
|
||||
END
|
||||
uitgevoerd,
|
||||
t.jaar,
|
||||
t.deelsrtcontrole_datum
|
||||
datum, -- datum waarop het uitgevoerd had moeten worden..
|
||||
TO_CHAR(fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1),'YYYY')
|
||||
jaar_nextcyclus,
|
||||
fac.nextcyclusdatedeel (d.ins_deel_key, sc.ins_srtcontrole_key,1)
|
||||
datum_nextcyclus,
|
||||
CASE WHEN ud.fac_usrdata_key = ut.key_vj THEN TO_CHAR(sysdate,'YYYY')-1 ELSE TO_CHAR(sysdate,'YYYY')-0 END
|
||||
jaar_compliance,
|
||||
cd.ins_discipline_omschrijving,
|
||||
CASE
|
||||
WHEN cdp.ctr_disc_params_controle_type = 1
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_insp')
|
||||
WHEN cdp.ctr_disc_params_controle_type = 2
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_repl')
|
||||
WHEN cdp.ctr_disc_params_controle_type = 3
|
||||
THEN
|
||||
lcl.l ('lcl_ins_srtcontrole_cert')
|
||||
END
|
||||
taaksoort,
|
||||
t.ins_srtcontrole_key,
|
||||
CASE
|
||||
WHEN INSTR(UPPER(sc.ins_srtcontrole_info), 'NIET OP COMPLIANCE')>0
|
||||
THEN 'nee'
|
||||
ELSE 'ja'
|
||||
END
|
||||
op_compliance,
|
||||
NULL
|
||||
deelsrtcontrole_key,
|
||||
NULL
|
||||
status,
|
||||
d.ins_deel_key,
|
||||
v.inlo_subaccount,
|
||||
l.alg_locatie_plaats || ' ' || l.alg_locatie_adres,
|
||||
r.alg_regio_omschrijving,
|
||||
di.alg_district_omschrijving,
|
||||
l.alg_locatie_omschrijving,
|
||||
l.alg_locatie_code,
|
||||
g.alg_gebouw_naam || ' (' || g.alg_gebouw_code || ')'
|
||||
alg_gebouw_naam,
|
||||
sg.alg_srtgebouw_omschrijving gebouwfunctie,
|
||||
TO_CHAR(g.alg_gebouw_vervaldatum,'dd-mm-yyyy'),
|
||||
CASE WHEN p.prs_perslid_tussenvoegsel IS NULL THEN p.prs_perslid_voornaam || ' ' || p.prs_perslid_naam
|
||||
ELSE p.prs_perslid_voornaam || ' ' || p.prs_perslid_tussenvoegsel || ' ' || p.prs_perslid_naam
|
||||
END
|
||||
heyday_gebouwverantw,
|
||||
p.prs_perslid_email
|
||||
heyday_gebouwverantw_mail,
|
||||
CASE WHEN p.prs_perslid_telefoonnr IS NOT NULL THEN p.prs_perslid_telefoonnr
|
||||
WHEN p.prs_perslid_telefoonnr IS NULL AND p.prs_perslid_mobiel IS NOT NULL THEN p.prs_perslid_mobiel
|
||||
WHEN p.prs_perslid_telefoonnr IS NULL AND p.prs_perslid_mobiel IS NULL THEN 'n.b.'
|
||||
ELSE NULL
|
||||
END
|
||||
heyday_gebouwverantw_tel,
|
||||
d.ins_deel_opmerking,
|
||||
d.ins_deel_omschrijving,
|
||||
TO_CHAR(d.ins_deel_vervaldatum, 'dd-mm-yyyy'),
|
||||
CASE WHEN d.ins_deel_vervaldatum IS NULL THEN 'actueel'
|
||||
WHEN d.ins_deel_vervaldatum IS NOT NULL AND d.ins_deel_vervaldatum <= sysdate THEN 'vervallen'
|
||||
WHEN d.ins_deel_vervaldatum IS NOT NULL AND d.ins_deel_vervaldatum > sysdate THEN 'vervallen - toekomst'
|
||||
ELSE '<?>'
|
||||
END
|
||||
object_verval_filter,
|
||||
sc.ins_srtcontrole_omschrijving,
|
||||
DECODE (
|
||||
COALESCE (x.ins_srtcontroledl_xcp_eenheid,
|
||||
sc.ins_srtcontrole_eenheid),
|
||||
0, 'Uurlijks',
|
||||
1, 'Dagelijks',
|
||||
2, 'Wekelijks',
|
||||
3, 'Maandelijks',
|
||||
4, 'Jaarlijks',
|
||||
'Onbekend')
|
||||
frequentie,
|
||||
COALESCE (x.ins_srtcontroledl_xcp_periode,
|
||||
sc.ins_srtcontrole_periode)
|
||||
periode,
|
||||
0 aantal_x_uitgevoerd,
|
||||
0 aantal_x_uitgevoerd_c,
|
||||
CASE
|
||||
WHEN INSTR (LOWER (x.ins_srtcontroledl_xcp_groep), 'nee') > 0
|
||||
THEN 'nvt'
|
||||
WHEN INSTR (LOWER (COALESCE(x.ins_srtcontroledl_xcp_groep,'leeg')), 'nee') = 0
|
||||
AND TRUNC(t.deelsrtcontrole_datum) > TRUNC(SYSDATE) -- taak voor toekomst
|
||||
THEN '-0.5'
|
||||
ELSE '-1'
|
||||
END
|
||||
actie,
|
||||
x.ins_srtcontroledl_xcp_groep demarcatie,
|
||||
NULL
|
||||
opmerking_uitvoer,
|
||||
x.ins_srtcontroledl_xcp_opmerk
|
||||
opmerking_basistaak,
|
||||
die.prs_dienst_omschrijving,
|
||||
bdl.lev_max
|
||||
dienst_lev_bdl,
|
||||
bdl.aantal_leveranciers
|
||||
dienst_lev_bdl_aantal
|
||||
FROM ins_v_deel_gegevens d,
|
||||
ins_srtcontrole sc,
|
||||
prs_dienst die,
|
||||
ins_srtcontroledl_xcp x,
|
||||
ins_srtdeel ds,
|
||||
ins_srtgroep dg,
|
||||
ctr_discipline cd,
|
||||
ctr_disc_params cdp,
|
||||
( SELECT v.deel_key,
|
||||
v.srtcontrole_key
|
||||
ins_srtcontrole_key,
|
||||
MAX(TO_CHAR (v.deelsrtcontrole_datum, 'YYYY'))
|
||||
jaar,
|
||||
MAX (v.deelsrtcontrole_datum)
|
||||
deelsrtcontrole_datum
|
||||
FROM aaxx_v_dwh_inspectie_2 v
|
||||
WHERE v.deelsrtcontrole_key IS NULL -- Of wel de basistaak uit deze view
|
||||
AND v.taaksoort = 'Certificering'
|
||||
AND NOT EXISTS
|
||||
(SELECT dc.ins_deelsrtcontrole_key FROM ins_deelsrtcontrole dc
|
||||
WHERE dc.ins_deel_key = v.deel_key
|
||||
AND dc.ins_srtcontrole_key = v.srtcontrole_key)
|
||||
GROUP BY v.deel_key,
|
||||
v.srtcontrole_key
|
||||
) t,
|
||||
alg_gebouw g,
|
||||
prs_perslid p,
|
||||
(SELECT g.alg_gebouw_key,
|
||||
fud.fac_usrdata_upper,
|
||||
fud.fac_usrdata_omschr
|
||||
inlo_subaccount
|
||||
FROM alg_gebouw g, alg_onrgoedkenmerk k, fac_usrdata fud
|
||||
WHERE g.alg_gebouw_key = k.alg_onrgoed_key
|
||||
AND k.alg_onrgoed_niveau = 'G'
|
||||
AND alg_kenmerk_key = DECODE (aaxx_get_user, 'INLO', 1100, NULL)
|
||||
AND fac.safe_to_number(k.alg_onrgoedkenmerk_waarde) = fud.fac_usrdata_key
|
||||
) v,
|
||||
alg_locatie l,
|
||||
alg_district di,
|
||||
alg_regio r,
|
||||
alg_srtgebouw sg,
|
||||
(SELECT ut.fac_usrtab_key, ut.fac_usrtab_naam , ud.fac_usrdata_key, ud.fac_usrdata_upper
|
||||
FROM fac_usrdata ud, fac_usrtab ut
|
||||
WHERE ud.fac_usrtab_key = ut.fac_usrtab_key
|
||||
AND ut.fac_usrtab_naam = 'ASSET_COMPLIANCE'
|
||||
AND ut.fac_usrtab_verwijder IS NULL
|
||||
AND ud.fac_usrdata_verwijder IS NULL AND ud.fac_usrdata_vervaldatum IS NULL
|
||||
) ud,
|
||||
(SELECT ut.fac_usrtab_key,
|
||||
(SELECT ud.fac_usrdata_key FROM fac_usrdata ud WHERE ud.fac_usrtab_key = ut.fac_usrtab_key AND ud.fac_usrdata_upper = 'COMPLIANCE VOORGAAND JAAR')
|
||||
key_vj,
|
||||
(SELECT ud.fac_usrdata_key FROM fac_usrdata ud WHERE ud.fac_usrtab_key = ut.fac_usrtab_key AND ud.fac_usrdata_upper = 'COMPLIANCE LOPEND JAAR')
|
||||
key_lj
|
||||
FROM fac_usrtab ut
|
||||
WHERE ut.fac_usrtab_naam = 'ASSET_COMPLIANCE'
|
||||
AND ut.fac_usrtab_verwijder IS NULL
|
||||
) ut,
|
||||
(
|
||||
SELECT d.prs_dienst_key, d.prs_dienst_omschrijving, g.alg_gebouw_key, MAX (b.prs_bedrijf_naam) lev_max, MIN (b.prs_bedrijf_naam) lev_min, count(*) aantal_leveranciers
|
||||
FROM prs_bedrijfdienstlocatie bdl,
|
||||
prs_dienst d,
|
||||
prs_bedrijf b,
|
||||
alg_gebouw g,
|
||||
alg_locatie l
|
||||
WHERE d.prs_dienst_key = bdl.prs_dienst_key
|
||||
AND b.prs_bedrijf_key = bdl.prs_bedrijf_key
|
||||
AND bdl.alg_gebouw_key IS NOT NULL
|
||||
AND bdl.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND g.alg_locatie_key = l.alg_locatie_key
|
||||
GROUP BY d.prs_dienst_omschrijving, d.prs_dienst_key, g.alg_gebouw_key
|
||||
) bdl
|
||||
WHERE d.ins_deel_key = t.deel_key
|
||||
AND d.ins_discipline_omschrijving = 'Gebouwobjecten'
|
||||
AND t.ins_srtcontrole_key = sc.ins_srtcontrole_key
|
||||
AND sc.prs_dienst_key = die.prs_dienst_key (+)
|
||||
AND t.deel_key = x.ins_deel_key
|
||||
AND t.ins_srtcontrole_key = x.ins_srtcontrole_key
|
||||
AND x.ins_scenario_key = 1
|
||||
AND sc.ctr_discipline_key = cd.ins_discipline_key
|
||||
AND cdp.ctr_disc_params_controle_type = 3 -- Taaksoort Certificering
|
||||
AND cd.ins_discipline_key = cdp.ctr_ins_discipline_key
|
||||
AND sc.ins_srtinstallatie_key = ds.ins_srtdeel_key
|
||||
AND sc.ins_srtcontrole_niveau = 'S'
|
||||
AND ds.ins_srtgroep_key = dg.ins_srtgroep_key
|
||||
-- AND dg.ins_srtgroep_key NOT IN (321) -- Groep 01 Algemeen uitsluiten
|
||||
AND d.alg_gebouw_key = g.alg_gebouw_key
|
||||
AND g.prs_perslid_key_verantw = p.prs_perslid_key (+)
|
||||
AND g.alg_locatie_key = l.alg_locatie_key
|
||||
AND l.alg_district_key = di.alg_district_key
|
||||
AND di.alg_regio_key = r.alg_regio_key
|
||||
AND g.alg_srtgebouw_key = sg.alg_srtgebouw_key
|
||||
AND g.alg_gebouw_key = bdl.alg_gebouw_key (+)
|
||||
AND g.alg_gebouw_key = v.alg_gebouw_key
|
||||
AND sc.prs_dienst_key = bdl.prs_dienst_key (+)
|
||||
;
|
||||
|
||||
|
||||
CREATE OR REPLACE PROCEDURE aaxx_import_ins_assetman (p_import_key IN NUMBER)
|
||||
IS
|
||||
c_delim VARCHAR2 (1) := ';';
|
||||
|
||||
Reference in New Issue
Block a user