WDKA#68779 -- Inrichten Wedeka
svn path=/Customer/trunk/; revision=58152
This commit is contained in:
264
WDKA/WDKA.sql
264
WDKA/WDKA.sql
@@ -45,58 +45,232 @@ END;
|
||||
|
||||
CREATE OR REPLACE PACKAGE BODY WDKA
|
||||
AS
|
||||
|
||||
|
||||
PROCEDURE insert_object(p_objectNr IN VARCHAR2, p_mld_melding_key IN NUMBER)
|
||||
AS
|
||||
v_objectNr VARCHAR2(20):='';
|
||||
v_objectSoortKey VARCHAR2(10):='';
|
||||
v_aanmaak VARCHAR2(10):='';
|
||||
v_alg_ruimte_key NUMBER:=0;
|
||||
v_aanwezig NUMBER:=0;
|
||||
v_ins_deel_key NUMBER:=0;
|
||||
v_objectNr VARCHAR2(20):='';
|
||||
v_objectSoortKey VARCHAR2(10):='';
|
||||
v_aanmaak VARCHAR2(10):='';
|
||||
v_alg_ruimte_key NUMBER:=0;
|
||||
v_aanwezig NUMBER:=0;
|
||||
v_ins_deel_key NUMBER:=0;
|
||||
v_merk NUMBER:=0;
|
||||
v_leverancier NUMBER:=0;
|
||||
v_type VARCHAR2(50);
|
||||
v_serienummer VARCHAR2(50);
|
||||
v_kenteken VARCHAR2(50);
|
||||
v_bouwjaar VARCHAR2(50);
|
||||
v_garantiedatum VARCHAR2(50);
|
||||
v_investeringsnr VARCHAR2(50);
|
||||
v_aanschafprijs VARCHAR2(50);
|
||||
v_merk_key NUMBER:=231;
|
||||
v_leverancier_key NUMBER:=323;
|
||||
v_type_key NUMBER:=221;
|
||||
v_serienummer_key NUMBER:=42;
|
||||
v_kenteken_key NUMBER:=201;
|
||||
v_bouwjaar_key NUMBER:=24;
|
||||
v_garantiedatum_key NUMBER:=202;
|
||||
v_investeringsnr_key NUMBER:=43161;
|
||||
v_aanschafprijs_key NUMBER:=342;
|
||||
v_level NUMBER:=0;
|
||||
|
||||
BEGIN
|
||||
-- We halen eerts de object identiofocatio op
|
||||
v_objectNr := p_objectNr;
|
||||
--SELECT mkm.mld_kenmerkmelding_waarde INTO v_objectNr from mld_melding m, mld_kenmerkmelding mkm where m.mld_melding_key=p_mld_melding_key AND mkm.mld_melding_key=m.mld_melding_key AND mkm.mld_kenmerk_key=41;
|
||||
|
||||
|
||||
-- Welk objectsoort is er gekozen
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_objectSoortKey
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key=201; -- D=2, A=201
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='OBJECT SOORT'; -- D=2, A=201
|
||||
|
||||
-- Moeten we een object aanmaken
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_aanmaak
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key=181; -- D=3, A=181
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='OBJECT AANMAKEN'; -- D=3, A=181
|
||||
|
||||
-- We halen de alg_ruimte_key op van de locatie Onbekend/ ruimte 999999
|
||||
-- We halen de alg_ruimte_key op van het gebouw wat is gekozen en ruimte 999999
|
||||
SELECT alg_ruimte_key
|
||||
INTO v_alg_ruimte_key
|
||||
FROM ALG_V_ALLONRGOED_GEGEVENS
|
||||
WHERE alg_ruimte_nr='999999'
|
||||
AND alg_gebouw_code='99.9';
|
||||
AND alg_gebouw_key=(SELECT mkm.mld_kenmerkmelding_waarde
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='GEBOUW'); -- A=241
|
||||
-- We gaan wat kenmerken ophalen die bij het object gezet moeten worden
|
||||
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_merk
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='FABRIKANT / MERK';
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_leverancier
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='LEVERANCIER';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_kenteken:=NULL;
|
||||
v_kenteken_key:=-1;
|
||||
END;
|
||||
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_type
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='TYPE';
|
||||
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_serienummer
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='SERIENUMMER';
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_kenteken
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='KENTEKEN';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_kenteken:=NULL;
|
||||
v_kenteken_key:=-1;
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_bouwjaar
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='BOUWJAAR';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_bouwjaar:=NULL;
|
||||
v_bouwjaar_key:=-1;
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_garantiedatum
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='GARANTIEDATUM';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_garantiedatum:=NULL;
|
||||
v_garantiedatum_key:=-1;
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_investeringsnr
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='INVESTERINGS NR';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_investeringsnr:=NULL;
|
||||
v_investeringsnr_key:=-1;
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
SELECT mkm.mld_kenmerkmelding_waarde
|
||||
INTO v_aanschafprijs
|
||||
FROM mld_melding m, mld_kenmerkmelding mkm, mld_kenmerk mk
|
||||
WHERE m.mld_melding_key=p_mld_melding_key
|
||||
AND mkm.mld_melding_key=m.mld_melding_key
|
||||
AND mk.mld_stdmelding_key = m.mld_stdmelding_key
|
||||
AND mkm.mld_kenmerk_key = mk.mld_kenmerk_key
|
||||
AND UPPER(mk.mld_kenmerk_omschrijving)='AANSCHAFPRIJS <20>';
|
||||
EXCEPTION WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_aanschafprijs:=NULL;
|
||||
v_aanschafprijs_key:=-1;
|
||||
END;
|
||||
|
||||
|
||||
SELECT count(*) into v_aanwezig
|
||||
FROm ins_deel
|
||||
WHERE ins_deel_omschrijving=v_objectNr
|
||||
AND ins_deel_verwijder IS NULL;
|
||||
|
||||
|
||||
IF (v_aanwezig = 0 AND v_aanmaak='1501') THEN -- D=82, A=1501
|
||||
|
||||
INSERT INTO ins_deel(ins_deel_omschrijving, ins_deel_aanmaak, ins_srtdeel_key, ins_deel_actief, ins_alg_ruimte_key, ins_alg_ruimte_type)
|
||||
VALUES(v_objectNr, SYSDATE, v_objectSoortKey, 0, v_alg_ruimte_key ,'R')
|
||||
RETURNING ins_deel_key
|
||||
INTO v_ins_deel_key;
|
||||
|
||||
flx.setflex('INS',v_merk_key,v_ins_deel_key,v_merk);
|
||||
flx.setflex('INS',v_type_key,v_ins_deel_key,v_type);
|
||||
flx.setflex('INS',v_leverancier_key,v_ins_deel_key,v_leverancier);
|
||||
flx.setflex('INS',v_serienummer_key,v_ins_deel_key,v_serienummer);
|
||||
|
||||
IF (v_kenteken_key>0) THEN
|
||||
flx.setflex('INS',v_kenteken_key,v_ins_deel_key,v_kenteken);
|
||||
END IF;
|
||||
|
||||
IF (v_bouwjaar_key>0) THEN
|
||||
flx.setflex('INS',v_bouwjaar_key,v_ins_deel_key,v_bouwjaar);
|
||||
END IF;
|
||||
|
||||
IF (v_garantiedatum_key>0) THEN
|
||||
flx.setflex('INS',v_garantiedatum_key,v_ins_deel_key,v_garantiedatum);
|
||||
END IF;
|
||||
|
||||
IF (v_investeringsnr_key>0) THEN
|
||||
flx.setflex('INS',v_investeringsnr_key,v_ins_deel_key,v_investeringsnr);
|
||||
END IF;
|
||||
|
||||
IF (v_aanschafprijs_key>0) THEN
|
||||
flx.setflex('INS',v_aanschafprijs_key,v_ins_deel_key,v_aanschafprijs);
|
||||
END IF;
|
||||
|
||||
|
||||
fac.trackaction ('INSNEW', v_ins_deel_key, 3, SYSDATE,
|
||||
'Object '||v_objectNr||' geregistreerd uit melding '||p_mld_melding_key||'.');
|
||||
IF (v_ins_deel_key>0) THEN
|
||||
v_level:=v_level+1;
|
||||
INSERT INTO mld_melding_object(ins_deel_key, mld_melding_key, mld_melding_object_aanmaak)
|
||||
VALUES(v_ins_deel_key, p_mld_melding_key, SYSDATE);
|
||||
END IF;
|
||||
@@ -1980,6 +2154,32 @@ AS
|
||||
FROM alg_locatie
|
||||
WHERE alg_locatie_verwijder IS NULL;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW wdka_v_alg_gebouw
|
||||
(
|
||||
fac_usrdata_key,
|
||||
fac_usrdata_omschr
|
||||
)
|
||||
AS
|
||||
|
||||
SELECT alg_gebouw_key, alg_gebouw_omschrijving
|
||||
FROM alg_v_aanweziggebouw;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW WDKA_V_InactieveObjecten
|
||||
(
|
||||
fac_usrdata_key,
|
||||
fac_usrdata_omschr
|
||||
)
|
||||
AS
|
||||
SELECT i.ins_deel_key,
|
||||
i.ins_deel_omschrijving||' - '||COALESCE(i.ins_deel_opmerking||' ','')||'('|| isd.ins_srtdeel_omschrijving||')'
|
||||
FROM ins_deel i, ins_srtdeel isd
|
||||
WHERE i.ins_srtdeel_key = isd.ins_srtdeel_key
|
||||
AND i.ins_deel_actief=0
|
||||
AND ins_deel_verwijder IS NULL;
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW wdka_v_objectmutatie
|
||||
AS
|
||||
SELECT i.ins_deel_omschrijving,
|
||||
@@ -2007,6 +2207,38 @@ AS
|
||||
FROM ins_deel i, alg_v_allonrgoed_gegevens aag
|
||||
WHERE aag.alg_ruimte_key=i.ins_alg_ruimte_key
|
||||
|
||||
|
||||
CREATE OR REPLACE VIEW wdka_v_object_taaklijst
|
||||
AS
|
||||
SELECT i.ins_deel_key,
|
||||
i.ins_deel_omschrijving wedeka_nr,
|
||||
i.ins_deel_opmerking beschrijving,
|
||||
(SELECT isg.ins_srtgroep_omschrijving
|
||||
FROM ins_srtgroep isg
|
||||
WHERE isg.ins_srtgroep_key=isd.ins_srtgroep_key) groep,
|
||||
isd.ins_srtdeel_omschrijving ,
|
||||
(SELECT isc.ins_srtcontrole_omschrijving
|
||||
FROM ins_srtcontrole isc
|
||||
WHERE isc.ins_srtcontrole_key=ids.ins_srtcontrole_key) taak ,
|
||||
ids.ins_deelsrtcontrole_datum,
|
||||
INS.NEXTCYCLUSDATE(i.ins_deel_key, ids.ins_srtcontrole_key,1) volgende_datum,
|
||||
a.alg_ruimte_omschrijving,
|
||||
p.prs_perslid_email,
|
||||
p.prs_perslid_key perslid_key
|
||||
FROM ins_deel i,
|
||||
ins_srtdeel isd,
|
||||
ins_deelsrtcontrole ids ,
|
||||
alg_v_aanwezigruimte a ,
|
||||
prs_perslid p
|
||||
WHERE i.ins_deel_verwijder IS NULL
|
||||
AND i.ins_deel_actief=1
|
||||
AND ids.ins_deel_key = i.ins_deel_key
|
||||
AND a.alg_ruimte_key = i.ins_alg_ruimte_key
|
||||
AND isd.ins_srtdeel_key=i.ins_srtdeel_key
|
||||
AND a.alg_ruimte_omschrijving=p.prs_perslid_email(+);
|
||||
|
||||
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
|
||||
Reference in New Issue
Block a user