GRKL#55882 CMDB-export

svn path=/Customer/trunk/; revision=40404
This commit is contained in:
Maarten van der Heide
2019-01-04 15:56:04 +00:00
parent de61a0724b
commit 6e7546fe72

View File

@@ -4,7 +4,6 @@
-- Script containing customer specific db-configuration for GRKL.
DEFINE thisfile = 'GRKL.SQL'
DEFINE dbuser = '^GRKL'
DEFINE custid = 'GRKL'
SET ECHO ON
SET DEFINE ON
@@ -266,12 +265,302 @@ AS
AND nj.fac_notificatie_job_view = 'GRKL_V_NOTI_LEIDINGGEVENDE'
AND m.mld_melding_datum BETWEEN nj.fac_notificatie_job_nextrun - (nj.fac_notificatie_job_interval / 24) AND nj.fac_notificatie_job_nextrun;
-- GRKL#55882: CMDB-export
CREATE OR REPLACE VIEW grkl_v_rap_cmdb
(
disciplineomschrijving,
groepsoortomschrijving,
objectsoortcode,
objectsoortomschrijving,
objectid,
objectmemo,
locatiecode,
gebouwcode,
bouwlaagvolgnummer,
ruimtenr,
afdeling,
persoon,
vervaldatum,
merk,
type,
ingericht_als_tc,
ingericht_als_fc,
serienummer,
mac_adres,
mac_adres_wifi,
leverancier,
aanschafdatum,
aanschafprijs,
outlet,
mer,
switch_poort,
werkplek,
werkplekomschrijving
)
AS
SELECT x.ins_discipline_omschrijving,
x.ins_srtgroep_omschrijving,
x.ins_srtdeel_code,
x.ins_srtdeel_omschrijving,
x.ins_deel_omschrijving,
x.ins_deel_opmerking,
x.alg_locatie_code,
x.alg_gebouw_code,
x.alg_verdieping_volgnr,
x.alg_ruimte_nr,
x.prs_afdeling_naam,
x.prs_perslid_oslogin,
x.ins_deel_vervaldatum,
(SELECT fac_usrdata_code FROM fac_v_aanwezigusrdata WHERE TO_CHAR (fac_usrdata_key) = mrk.ins_kenmerkdeel_waarde), -- Merk
typ.ins_kenmerkdeel_waarde, -- Type
(SELECT fac_usrdata_code FROM fac_v_aanwezigusrdata WHERE TO_CHAR (fac_usrdata_key) = itc.ins_kenmerkdeel_waarde), -- Ingericht als TC
(SELECT fac_usrdata_code FROM fac_v_aanwezigusrdata WHERE TO_CHAR (fac_usrdata_key) = ifc.ins_kenmerkdeel_waarde), -- Ingericht als FC
snr.ins_kenmerkdeel_waarde, -- Serienummer
ma1.ins_kenmerkdeel_waarde, -- MAC-adres
ma2.ins_kenmerkdeel_waarde, -- MAC-adres Wifi
lev.ins_kenmerkdeel_waarde, -- Leverancier
ada.ins_kenmerkdeel_waarde, -- Aanschafdatum
apr.ins_kenmerkdeel_waarde, -- Aanschafprijs
otl.ins_kenmerkdeel_waarde, -- Outlet
mer.ins_kenmerkdeel_waarde, -- MER
swp.ins_kenmerkdeel_waarde, -- Switch/Poort
wp1.ins_kenmerkdeel_waarde, -- Werkplek
wp2.ins_kenmerkdeel_waarde -- Werkplekomschrijving
FROM (SELECT d.ins_deel_key,
td.ins_discipline_omschrijving,
sg.ins_srtgroep_omschrijving,
sd.ins_srtdeel_code,
sd.ins_srtdeel_omschrijving,
d.ins_deel_omschrijving,
d.ins_deel_opmerking,
a.prs_afdeling_naam,
NULL prs_perslid_oslogin,
NULL alg_locatie_code,
NULL alg_gebouw_code,
NULL alg_verdieping_volgnr,
NULL alg_ruimte_nr,
d.ins_deel_vervaldatum
FROM ins_v_aanwezigdeel d,
ins_srtdeel sd,
ins_srtgroep sg,
ins_tab_discipline td,
prs_afdeling a
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = sg.ins_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key
AND td.ins_discipline_key = 501 -- CMDB
AND d.ins_alg_ruimte_type = 'A'
AND d.ins_alg_ruimte_key = a.prs_afdeling_key
UNION ALL
SELECT d.ins_deel_key,
td.ins_discipline_omschrijving,
sg.ins_srtgroep_omschrijving,
sd.ins_srtdeel_code,
sd.ins_srtdeel_omschrijving,
d.ins_deel_omschrijving,
d.ins_deel_opmerking,
NULL prs_afdeling_naam,
p.prs_perslid_oslogin,
NULL alg_locatie_code,
NULL alg_gebouw_code,
NULL alg_verdieping_volgnr,
NULL alg_ruimte_nr,
d.ins_deel_vervaldatum
FROM ins_v_aanwezigdeel d,
ins_srtdeel sd,
ins_srtgroep sg,
ins_tab_discipline td,
prs_perslid p
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = sg.ins_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key
AND td.ins_discipline_key = 501 -- CMDB
AND d.ins_alg_ruimte_type = 'P'
AND d.ins_alg_ruimte_key = p.prs_perslid_key
UNION ALL
SELECT d.ins_deel_key,
td.ins_discipline_omschrijving,
sg.ins_srtgroep_omschrijving,
sd.ins_srtdeel_code,
sd.ins_srtdeel_omschrijving,
d.ins_deel_omschrijving,
d.ins_deel_opmerking,
NULL prs_afdeling_naam,
NULL prs_perslid_oslogin,
l.alg_locatie_code,
g.alg_gebouw_code,
v.alg_verdieping_volgnr,
r.alg_ruimte_nr,
d.ins_deel_vervaldatum
FROM ins_v_aanwezigdeel d,
ins_srtdeel sd,
ins_srtgroep sg,
ins_tab_discipline td,
alg_ruimte r,
alg_verdieping v,
alg_gebouw g,
alg_locatie l
WHERE d.ins_srtdeel_key = sd.ins_srtdeel_key
AND sd.ins_srtgroep_key = sg.ins_srtgroep_key
AND sg.ins_discipline_key = td.ins_discipline_key
AND td.ins_discipline_key = 501 -- CMDB
AND d.ins_alg_ruimte_type = 'R'
AND d.ins_alg_ruimte_key = r.alg_ruimte_key
AND r.alg_verdieping_key = v.alg_verdieping_key
AND v.alg_gebouw_key = g.alg_gebouw_key
AND g.alg_locatie_key = l.alg_locatie_key) x
LEFT JOIN ins_v_aanwezigkenmerkdeel mrk
ON x.ins_deel_key = mrk.ins_deel_key
AND mrk.ins_kenmerk_key = 89 -- Merk
LEFT JOIN ins_v_aanwezigkenmerkdeel typ
ON x.ins_deel_key = typ.ins_deel_key
AND typ.ins_kenmerk_key = 96 -- Type
LEFT JOIN ins_v_aanwezigkenmerkdeel itc
ON x.ins_deel_key = itc.ins_deel_key
AND itc.ins_kenmerk_key = 84 -- Ingericht als TC
LEFT JOIN ins_v_aanwezigkenmerkdeel ifc
ON x.ins_deel_key = ifc.ins_deel_key
AND ifc.ins_kenmerk_key = 83 -- Ingericht als FC
LEFT JOIN ins_v_aanwezigkenmerkdeel snr
ON x.ins_deel_key = snr.ins_deel_key
AND snr.ins_kenmerk_key = 94 -- Serienummer
LEFT JOIN ins_v_aanwezigkenmerkdeel ma1
ON x.ins_deel_key = ma1.ins_deel_key
AND ma1.ins_kenmerk_key = 86 -- MAC-adres
LEFT JOIN ins_v_aanwezigkenmerkdeel ma2
ON x.ins_deel_key = ma2.ins_deel_key
AND ma2.ins_kenmerk_key = 87 -- MAC-adres Wifi
LEFT JOIN ins_v_aanwezigkenmerkdeel lev
ON x.ins_deel_key = lev.ins_deel_key
AND lev.ins_kenmerk_key = 85 -- Leverancier
LEFT JOIN ins_v_aanwezigkenmerkdeel ada
ON x.ins_deel_key = ada.ins_deel_key
AND ada.ins_kenmerk_key = 81 -- Aanschafdatum
LEFT JOIN ins_v_aanwezigkenmerkdeel apr
ON x.ins_deel_key = apr.ins_deel_key
AND apr.ins_kenmerk_key = 82 -- Aanschafprijs
LEFT JOIN ins_v_aanwezigkenmerkdeel otl
ON x.ins_deel_key = otl.ins_deel_key
AND otl.ins_kenmerk_key = 92 -- Outlet
LEFT JOIN ins_v_aanwezigkenmerkdeel mer
ON x.ins_deel_key = mer.ins_deel_key
AND mer.ins_kenmerk_key = 88 -- MER
LEFT JOIN ins_v_aanwezigkenmerkdeel swp
ON x.ins_deel_key = swp.ins_deel_key
AND swp.ins_kenmerk_key = 95 -- Switch/Poort
LEFT JOIN ins_v_aanwezigkenmerkdeel wp1
ON x.ins_deel_key = wp1.ins_deel_key
AND wp1.ins_kenmerk_key = 97 -- Werkplek
LEFT JOIN ins_v_aanwezigkenmerkdeel wp2
ON x.ins_deel_key = wp2.ins_deel_key
AND wp2.ins_kenmerk_key = 98 -- Werkplekomschrijving
;
CREATE OR REPLACE VIEW grkl_v_export_cmdb
(
result,
result_order
)
AS
SELECT 'disciplineomschrijving'
|| ';groepsoortomschrijving'
|| ';objectsoortcode'
|| ';objectsoortomschrijving'
|| ';objectid'
|| ';objectmemo'
|| ';locatiecode'
|| ';gebouwcode'
|| ';bouwlaagvolgnummer'
|| ';ruimtenr'
|| ';afdeling'
|| ';persoon'
|| ';vervaldatum'
|| ';merk'
|| ';type'
|| ';ingericht_als_tc'
|| ';ingericht_als_fc'
|| ';serienummer'
|| ';mac_adres'
|| ';mac_adres_wifi'
|| ';leverancier'
|| ';aanschafdatum'
|| ';aanschafprijs'
|| ';outlet'
|| ';mer'
|| ';switch_poort'
|| ';werkplek'
|| ';werkplekomschrijving',
0
FROM DUAL
UNION ALL
SELECT disciplineomschrijving
|| ';'
|| groepsoortomschrijving
|| ';'
|| objectsoortcode
|| ';'
|| objectsoortomschrijving
|| ';'
|| objectid
|| ';'
|| objectmemo
|| ';'
|| locatiecode
|| ';'
|| gebouwcode
|| ';'
|| bouwlaagvolgnummer
|| ';'
|| ruimtenr
|| ';'
|| afdeling
|| ';'
|| persoon
|| ';'
|| vervaldatum
|| ';'
|| merk
|| ';'
|| type
|| ';'
|| ingericht_als_tc
|| ';'
|| ingericht_als_fc
|| ';'
|| serienummer
|| ';'
|| mac_adres
|| ';'
|| mac_adres_wifi
|| ';'
|| leverancier
|| ';'
|| aanschafdatum
|| ';'
|| REPLACE (aanschafprijs, '.', ',')
|| ';'
|| outlet
|| ';'
|| mer
|| ';'
|| switch_poort
|| ';'
|| werkplek
|| ';'
|| werkplekomschrijving,
ROWNUM
FROM ( SELECT *
FROM grkl_v_rap_cmdb
ORDER BY disciplineomschrijving,
groepsoortomschrijving,
objectsoortcode,
objectsoortomschrijving,
objectid);
------ payload end ------
SET DEFINE OFF
BEGIN adm.systrackscriptId('$Id$', 0); END;
/
BEGIN fac.registercustversion('GRKL', 5); END;
BEGIN adm.systrackscriptId ('$Id$', 0); END;
/
COMMIT;