DVON#41120 -- DVON2a

svn path=/Customer/trunk/; revision=38363
This commit is contained in:
Robin Stoker
2018-06-29 15:46:39 +00:00
parent 8ce18d809b
commit c88b09068d

View File

@@ -146,14 +146,14 @@ END dvon_update_prs;
CREATE OR REPLACE VIEW dvon_v_rap_voorraad
(
OBJECT_GROEP,
OBJECT_SOORT,
MAAT,
AANTAL,
LOCATIE,
GEBOUW,
VERDIEPINGCODE,
RUIMTENR
object_groep,
object_soort,
maat,
aantal,
locatie,
gebouw,
verdiepingcode,
ruimtenr
)
AS
SELECT iv.groep,
@@ -172,6 +172,8 @@ SELECT iv.groep,
AND iv.ins_kenmerk_key = ik.ins_kenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE iv.deel_key = maat.ins_deel_key(+)
AND maat.fac_usrdata_omschr IS NOT NULL
AND iv.uitgeleend NOT LIKE 'ja'
GROUP BY maat.fac_usrdata_omschr,
iv.groep,
iv.soort,
@@ -200,12 +202,90 @@ GROUP BY maat.fac_usrdata_omschr,
AND ikd.ins_kenmerk_key = ik.ins_kenmerk_key
AND ik.ins_srtkenmerk_key = isk.ins_srtkenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%')
AND iv.uitgeleend NOT LIKE 'ja'
GROUP BY iv.groep,
iv.soort,
iv.locatie_omschrijving,
iv.gebouw,
iv.verdiepingcode,
iv.ruimtenr;
CREATE OR REPLACE VIEW dvon_v_rap_voorraad_auth
(
fclt_3d_discipline_key,
object_groep,
object_soort,
maat,
aantal,
locatie,
gebouw,
verdiepingcode,
ruimtenr
)
AS
SELECT i.ins_discipline_key,
iv.groep,
iv.soort,
maat.fac_usrdata_omschr,
COALESCE (COUNT (maat.fac_usrdata_omschr), 0),
iv.locatie_omschrijving,
iv.gebouw,
iv.verdiepingcode,
iv.ruimtenr
FROM ins_v_udr_deel iv,
ins_discipline i,
(SELECT f.fac_usrdata_omschr, iv.ins_deel_key
FROM fac_usrdata f, ins_v_srtdeel_kenmerkdeel iv, ins_kenmerk ik, ins_srtkenmerk isk
WHERE f.fac_usrdata_key = iv.ins_kenmerkdeel_waarde
AND ik.ins_srtkenmerk_key = isk.ins_srtkenmerk_key
AND iv.ins_kenmerk_key = ik.ins_kenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE iv.deel_key = maat.ins_deel_key(+)
AND maat.fac_usrdata_omschr IS NOT NULL
AND i.ins_discipline_omschrijving = iv.discipline
AND i.ins_discipline_verwijder IS NULL
AND iv.uitgeleend NOT LIKE 'ja'
GROUP BY maat.fac_usrdata_omschr,
iv.groep,
iv.soort,
iv.locatie_omschrijving,
iv.gebouw,
iv.verdiepingcode,
iv.ruimtenr,
i.ins_discipline_key
UNION ALL
SELECT i.ins_discipline_key,
iv.groep,
iv.soort,
'NVT',
COUNT (iv.deel_key),
iv.locatie_omschrijving,
iv.gebouw,
iv.verdiepingcode,
iv.ruimtenr
FROM ins_v_udr_deel iv,
ins_discipline i
WHERE NOT EXISTS
(SELECT 1
FROM ins_kenmerk ik,
ins_srtkenmerk isk,
ins_kenmerkdeel ikd,
ins_srtdeel isd
WHERE isd.ins_srtdeel_code_upper = iv.soortcode
AND iv.deel_key = ikd.ins_deel_key
AND ikd.ins_kenmerk_key = ik.ins_kenmerk_key
AND ik.ins_srtkenmerk_key = isk.ins_srtkenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%')
AND i.ins_discipline_omschrijving = iv.discipline
AND i.ins_discipline_verwijder IS NULL
AND iv.uitgeleend NOT LIKE 'ja'
GROUP BY iv.groep,
iv.soort,
iv.locatie_omschrijving,
iv.gebouw,
iv.verdiepingcode,
iv.ruimtenr,
i.ins_discipline_key;
CREATE OR REPLACE VIEW dvon_v_rap_bes_voorraad
(
@@ -229,75 +309,145 @@ CREATE OR REPLACE VIEW dvon_v_rap_bes_voorraad
bestopdr_key
)
AS
SELECT DISTINCT
bo.bes_bestelopdr_id,
b.bes_bestelling_key,
'A-' || b.bes_bestelling_key bestelaanvraagnr,
b.bes_bestelling_datum besteldatum,
(SELECT bes_bestellingstatuses_omschr
FROM bes_bestellingstatuses bs
WHERE bs.bes_bestellingstatuses_key = b.bes_bestelling_status)
status,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key)
besteller,
d.ins_discipline_omschrijving catalogus,
sg.bes_srtgroep_omschrijving groep,
sd.bes_srtdeel_omschrijving productomschrijving,
sd.bes_srtdeel_nr productcode,
COALESCE (
(SELECT f.fac_usrdata_omschr
FROM fac_usrdata f, bes_srtkenmerk bsk
WHERE f.fac_usrdata_key =
fac.safe_to_number (bki.bes_kenmerkbesteli_waarde)
AND BK.BES_SRTKENMERK_KEY = bsk.bes_srtkenmerk_key
AND bsk.bes_srtkenmerk_upper LIKE '%MAAT%'),
'NVT')
maat,
bi.bes_bestelling_item_aantal aantal,
lcl.l ('lcl_bestelopdr_flag' || bo.bes_bestelopdr_flag),
dv.aantal op_voorraad,
COALESCE (dv.locatie, 'Niet opgegeven') voorraad_locatie,
bo.bes_bestelopdr_opmerking,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key_voor)
besteld_voor,
bo.bes_bestelopdr_key
FROM bes_bestelling b,
bes_bestelling_item bi,
bes_bestelopdr_item boi,
bes_bestelopdr bo,
bes_kenmerkbesteli bki,
bes_kenmerk bk,
dvon_v_rap_voorraad dv,
ins_tab_discipline d,
bes_srtdeel sd,
bes_srtgroep sg
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
AND bki.bes_bestelling_item_key = bi.bes_bestelling_item_key
AND bki.bes_kenmerk_key = bk.bes_kenmerk_key
AND bi.bes_srtdeel_key = sd.bes_srtdeel_key
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
AND sg.ins_discipline_key = d.ins_discipline_key
AND dv.object_soort(+) = sd.bes_srtdeel_omschrijving
AND bo.bes_bestelopdr_key IS NOT NULL
AND dv.ruimtenr = 'MAGAZIJN'
AND (dv.maat IS NULL
OR dv.maat =
COALESCE (
(SELECT f.fac_usrdata_omschr
FROM fac_usrdata f, bes_srtkenmerk bsk
WHERE f.fac_usrdata_key =
fac.safe_to_number (
bki.bes_kenmerkbesteli_waarde)
AND BK.BES_SRTKENMERK_KEY =
bsk.bes_srtkenmerk_key
AND bsk.bes_srtkenmerk_upper LIKE '%MAAT%'),
'NVT'));
SELECT
bo.bes_bestelopdr_id,
b.bes_bestelling_key,
'A-' || b.bes_bestelling_key bestelaanvraagnr,
b.bes_bestelling_datum besteldatum,
(SELECT bes_bestellingstatuses_omschr
FROM bes_bestellingstatuses bs
WHERE bs.bes_bestellingstatuses_key = b.bes_bestelling_status)
status,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key)
besteller,
d.ins_discipline_omschrijving catalogus,
sg.bes_srtgroep_omschrijving groep,
sd.bes_srtdeel_omschrijving productomschrijving,
sd.bes_srtdeel_nr productcode,
COALESCE (maat.fac_usrdata_omschr, 'NVT') maat,
bi.bes_bestelling_item_aantal aantal,
lcl.l ('lcl_bestelopdr_flag' || bo.bes_bestelopdr_flag),
COALESCE (dv.aantal, 0) op_voorraad,
COALESCE (dv.locatie, 'Niet beschikbaar') voorraad_locatie,
bo.bes_bestelopdr_opmerking,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key_voor)
besteld_voor,
bo.bes_bestelopdr_key
FROM bes_bestelling b,
bes_bestelling_item bi,
bes_bestelopdr_item boi,
bes_bestelopdr bo,
bes_kenmerkbesteli bki,
bes_kenmerk bk,
dvon_v_rap_voorraad dv,
ins_tab_discipline d,
bes_srtdeel sd,
bes_srtgroep sg,
(SELECT f.fac_usrdata_omschr,
f.fac_usrdata_key,
bsk.bes_srtkenmerk_key
FROM fac_usrdata f, bes_srtkenmerk bsk
WHERE bsk.bes_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
AND bki.bes_bestelling_item_key(+) = bi.bes_bestelling_item_key
AND bki.bes_kenmerk_key = bk.bes_kenmerk_key(+)
AND bk.bes_srtkenmerk_key = maat.bes_srtkenmerk_key(+)
AND bi.bes_srtdeel_key = sd.bes_srtdeel_key
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
AND sg.ins_discipline_key = d.ins_discipline_key
AND maat.fac_usrdata_key(+) =
fac.safe_to_number (bki.bes_kenmerkbesteli_waarde)
AND dv.object_soort(+) = sd.bes_srtdeel_omschrijving
AND bo.bes_bestelopdr_key IS NOT NULL
AND dv.maat(+) = maat.fac_usrdata_omschr;
CREATE OR REPLACE VIEW dvon_v_rap_bes_voorraad_auth
(
fclt_3d_discipline_key,
bestelopdrachtnummer,
bestellingkey,
bestelaanvraagnr,
besteldatum,
status,
besteller,
catalogus,
groep,
productomschrijving,
productcode,
maat,
aantal,
kleurbolletje,
op_voorraad,
voorraad_locatie,
opmerking,
besteld_voor,
bestopdr_key
)
AS
SELECT
d.ins_discipline_key,
bo.bes_bestelopdr_id,
b.bes_bestelling_key,
'A-' || b.bes_bestelling_key bestelaanvraagnr,
b.bes_bestelling_datum besteldatum,
(SELECT bes_bestellingstatuses_omschr
FROM bes_bestellingstatuses bs
WHERE bs.bes_bestellingstatuses_key = b.bes_bestelling_status)
status,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key)
besteller,
d.ins_discipline_omschrijving catalogus,
sg.bes_srtgroep_omschrijving groep,
sd.bes_srtdeel_omschrijving productomschrijving,
sd.bes_srtdeel_nr productcode,
COALESCE (maat.fac_usrdata_omschr, 'NVT') maat,
bi.bes_bestelling_item_aantal aantal,
lcl.l ('lcl_bestelopdr_flag' || bo.bes_bestelopdr_flag),
COALESCE (dv.aantal, 0) op_voorraad,
COALESCE (dv.locatie, 'Niet beschikbaar') voorraad_locatie,
bo.bes_bestelopdr_opmerking,
(SELECT prs_perslid_naam_full
FROM prs_v_perslid_fullnames_all pf
WHERE pf.prs_perslid_key = b.prs_perslid_key_voor)
besteld_voor,
bo.bes_bestelopdr_key
FROM bes_bestelling b,
bes_bestelling_item bi,
bes_bestelopdr_item boi,
bes_bestelopdr bo,
bes_kenmerkbesteli bki,
bes_kenmerk bk,
dvon_v_rap_voorraad dv,
ins_tab_discipline d,
bes_srtdeel sd,
bes_srtgroep sg,
(SELECT f.fac_usrdata_omschr,
f.fac_usrdata_key,
bsk.bes_srtkenmerk_key
FROM fac_usrdata f, bes_srtkenmerk bsk
WHERE bsk.bes_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE b.bes_bestelling_key = bi.bes_bestelling_key
AND bi.bes_bestelopdr_item_key = boi.bes_bestelopdr_item_key
AND boi.bes_bestelopdr_key = bo.bes_bestelopdr_key
AND bki.bes_bestelling_item_key(+) = bi.bes_bestelling_item_key
AND bki.bes_kenmerk_key = bk.bes_kenmerk_key(+)
AND bk.bes_srtkenmerk_key = maat.bes_srtkenmerk_key(+)
AND bi.bes_srtdeel_key = sd.bes_srtdeel_key
AND sd.bes_srtgroep_key = sg.bes_srtgroep_key
AND sg.ins_discipline_key = d.ins_discipline_key
AND maat.fac_usrdata_key(+) =
fac.safe_to_number (bki.bes_kenmerkbesteli_waarde)
AND dv.object_soort(+) = sd.bes_srtdeel_omschrijving
AND bo.bes_bestelopdr_key IS NOT NULL
AND dv.maat(+) = maat.fac_usrdata_omschr;
CREATE OR REPLACE VIEW dvon_v_rap_gelev_nbev
(
@@ -343,16 +493,146 @@ AS
prs_perslid p
WHERE b.prs_kostenplaats_key = pk.prs_kostenplaats_key
AND b.bes_bestelling_leverdatum IS NOT NULL
AND b.bes_bestelling_status = 6;
CREATE OR REPLACE VIEW DVON_V_NOTI_BES_DEEL
AND b.bes_bestelling_status = 6;
CREATE OR REPLACE VIEW dvon_v_rap_bezit_extra
(
CODE,
SENDER,
RECEIVER,
TEXT,
KEY,
XKEY
perslid_key,
deel_key,
fclt_3d_discipline_key,
deel_soort,
deel_oms,
maat,
uitgegeven,
eigenaar,
locatie
)
AS
SELECT (SELECT pf.prs_perslid_key
FROM prs_v_perslid_fullnames pf
WHERE i.ins_alg_ruimte_key = pf.prs_perslid_key
AND i.ins_alg_ruimte_type = 'P')
perslid_key,
i.ins_deel_key,
i.ins_discipline_key,
isrt.ins_srtdeel_omschrijving,
i.ins_deel_omschrijving,
maat.fac_usrdata_omschr,
DECODE (i.ins_alg_ruimte_key_org, NULL, 'Nee', 'Ja') uitgegeven,
(SELECT pf.prs_perslid_naam_friendly
FROM prs_v_perslid_fullnames pf
WHERE i.ins_alg_ruimte_key = pf.prs_perslid_key
AND i.ins_alg_ruimte_type = 'P')
persoon,
(SELECT ar.alg_ruimte_upper_nr
FROM alg_ruimte ar
WHERE i.ins_alg_ruimte_key = ar.alg_ruimte_key
AND i.ins_alg_ruimte_type = 'R')
locatie
FROM ins_deel i,
ins_srtdeel isrt,
(SELECT f.fac_usrdata_omschr, iv.ins_deel_key
FROM fac_usrdata f,
ins_v_srtdeel_kenmerkdeel iv,
ins_kenmerk ik,
ins_srtkenmerk isk
WHERE f.fac_usrdata_key = iv.ins_kenmerkdeel_waarde
AND ik.ins_srtkenmerk_key = isk.ins_srtkenmerk_key
AND iv.ins_kenmerk_key = ik.ins_kenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE i.ins_deel_key = maat.ins_deel_key(+)
AND i.ins_srtdeel_key = isrt.ins_srtdeel_key
AND i.ins_deel_verwijder IS NULL;
CREATE OR REPLACE VIEW dvon_v_rap_bezit_extra_print
(
perslid_key,
deel_key,
fclt_3d_discipline_key,
discipline,
deel_soort,
deel_oms,
maat,
uitgegeven,
eigenaar,
locatie
)
AS
SELECT (SELECT pf.prs_perslid_key
FROM prs_v_perslid_fullnames pf
WHERE i.ins_alg_ruimte_key = pf.prs_perslid_key
AND i.ins_alg_ruimte_type = 'P')
perslid_key,
i.ins_deel_key,
i.ins_discipline_key,
idc.ins_discipline_omschrijving,
isrt.ins_srtdeel_omschrijving,
i.ins_deel_omschrijving,
maat.fac_usrdata_omschr,
DECODE (i.ins_alg_ruimte_key_org, NULL, 'Nee', 'Ja') uitgegeven,
(SELECT pf.prs_perslid_naam_friendly
FROM prs_v_perslid_fullnames pf
WHERE i.ins_alg_ruimte_key = pf.prs_perslid_key
AND i.ins_alg_ruimte_type = 'P')
persoon,
(SELECT ar.alg_ruimte_upper_nr
FROM alg_ruimte ar
WHERE i.ins_alg_ruimte_key = ar.alg_ruimte_key
AND i.ins_alg_ruimte_type = 'R')
locatie
FROM ins_deel i,
ins_srtdeel isrt,
ins_discipline idc,
(SELECT f.fac_usrdata_omschr, iv.ins_deel_key
FROM fac_usrdata f,
ins_v_srtdeel_kenmerkdeel iv,
ins_kenmerk ik,
ins_srtkenmerk isk
WHERE f.fac_usrdata_key = iv.ins_kenmerkdeel_waarde
AND ik.ins_srtkenmerk_key = isk.ins_srtkenmerk_key
AND iv.ins_kenmerk_key = ik.ins_kenmerk_key
AND isk.ins_srtkenmerk_upper LIKE '%MAAT%') maat
WHERE i.ins_deel_key = maat.ins_deel_key(+)
AND i.ins_srtdeel_key = isrt.ins_srtdeel_key
AND i.ins_deel_verwijder IS NULL
AND i.ins_discipline_key = idc.ins_discipline_key;
CREATE OR REPLACE VIEW dvon_v_rap_art_voorraad
(
fclt_3d_discipline_key,
catalogus,
groep,
productomschrijving,
maat,
aantal_besteld,
op_voorraad,
onvoldoende_voorraad
)
AS
SELECT fclt_3d_discipline_key,
catalogus,
groep,
productomschrijving,
maat,
SUM (aantal) besteld,
op_voorraad,
CASE WHEN op_voorraad - SUM (aantal) < 0 THEN '!' ELSE 'V' END
FROM dvon_v_rap_bes_voorraad_auth
GROUP BY fclt_3d_discipline_key,
catalogus,
groep,
productomschrijving,
maat,
op_voorraad;
CREATE OR REPLACE VIEW dvon_v_noti_bes_deel
(
code,
sender,
receiver,
text,
key,
xkey
)
AS
SELECT DISTINCT