Files
Customer/WDKA/WDKA.sql
Norbert Wassink ecc94c4302 WDKA#68779 -- Inrichten Wedeka
svn path=/Customer/trunk/; revision=57895
2022-11-07 11:47:24 +00:00

2022 lines
98 KiB
SQL

--
-- $Id$
--
-- Script containing customer specific sql statements for the FACILITOR database
-- Voor dbuser invullen: - indien script voor 1 klant is: 'AADS' (de klantcode, zoals vermeld in fac_version_cust)
-- - script is voor meerdere klanten: 'AAXX' (de groepcode, zoals vermeld in fac_version_group)
-- - script is voor meerdere klanten met naam volgens een bepaald patroon: '^AA|^ASMS|^GULU|^NMMS|^RABO|^ZKHM'
-- Ook als het script gedraaid wordt voor de verkeerde cust wordt er een logfile gemaakt.
-- (dit in tegenstelling tot sample_xxxx.sql)
DEFINE thisfile = 'WDKA.SQL'
DEFINE dbuser = 'WDKA'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusttxt NEW_VALUE fcltcusttxt NOPRINT;
WHENEVER SQLERROR CONTINUE;
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;
SELECT adm.checkscriptcust('&dbuser') AS fcltcusttxt FROM DUAL;
WHENEVER SQLERROR CONTINUE;
---------------------------------------
PROMPT &fcltcusttxt
---------------------------------------
SET DEFINE OFF
------ payload begin ------
CREATE OR REPLACE PACKAGE WDKA
AS
PROCEDURE insert_object(p_objectNr IN VARCHAR2, p_mld_melding_key IN NUMBER);
PROCEDURE insert_ctr_kenmerk (p_srtcontrole_key IN NUMBER);
PROCEDURE setKenmerkObject(p_ins_key IN NUMBER, p_ins_srtinstallatie_key IN NUMBER, p_kenmerk_omschrijving IN VARCHAR2, p_kenmerk_waarde IN VARCHAR2);
FUNCTION getSrtControldatum(p_datum IN DATE, p_cyclus IN NUMBER) RETURN DATE;
FUNCTION getCtrGroep(v_taak in VARCHAR2) RETURN NUMBER;
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;
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
WHERE m.mld_melding_key=p_mld_melding_key
AND mkm.mld_melding_key=m.mld_melding_key
AND mkm.mld_kenmerk_key=2; -- D=2, A=201
-- Moeten we een object aanmaken
SELECT mkm.mld_kenmerkmelding_waarde
INTO v_aanmaak
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=3; -- D=3, A=181
-- We halen de alg_ruimte_key op van de locatie Onbekend/ 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';
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='82') 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;
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
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;
fac.trackaction ('MLDUPD', p_mld_melding_key, 3, SYSDATE,
'Object '||v_objectNr||' toegevoegd aan melding.');
END IF;
EXCEPTION WHEN NO_DATA_FOUND THEN
fac.trackaction ('MLDUPD', p_mld_melding_key, 3, SYSDATE,
'Fout bij aanmaken object '||v_objectNr);
END;
-- Aanmaken van resultaat kenmerken bij periodiek taak
PROCEDURE insert_ctr_kenmerk (p_srtcontrole_key IN NUMBER)
AS
v_insrtkenmerk_key NUMBER;
BEGIN
v_insrtkenmerk_key:=-1;
SELECT isk.ins_srtkenmerk_key INTO v_insrtkenmerk_key FROM ins_srtkenmerk isk WHERE isk.ins_srtkenmerk_upper=UPPER('resultaat waardes(50)');
IF v_insrtkenmerk_key>0 THEN
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Aarde (Ohm)',100);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Aarde Resultaat',110);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Lekstroom (mA)',120);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Lekstroom resultaat',130);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Aanraak lekstroom (mA)',140);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Aanraak lekstroom resultaat',150);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Vervangende lekstroom (mA)',160);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Vervangende lekstroom resultaat',170);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Isolatie (MOhm)',180);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Isolatie resultaat',190);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Bedrading',200);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Bedrading resultaat',210);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Gebruikerstest',220);
INSERT INTO ins_kenmerk(ins_srtkenmerk_key,ins_srtinstallatie_key,ins_kenmerk_niveau, ins_kenmerk_toonbaar, ins_kenmerk_omschrijving, ins_kenmerk_volgnummer) values(v_insrtkenmerk_key,p_srtcontrole_key,'C',1,'Gebruikers resultaat',230);
COMMIT;
END IF;
END;
PROCEDURE setKenmerkObject(p_ins_key IN NUMBER, p_ins_srtinstallatie_key IN NUMBER, p_kenmerk_omschrijving IN VARCHAR2, p_kenmerk_waarde IN VARCHAR2)
AS
v_ins_kenmerk_key NUMBER;
BEGIN
v_ins_kenmerk_key:=-1;
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key
FROM ins_kenmerk where UPPER(ins_kenmerk.ins_kenmerk_omschrijving)=UPPER(p_kenmerk_omschrijving)
AND ins_srtinstallatie_key=p_ins_srtinstallatie_key
AND ins_kenmerk_niveau='D'
AND ins_kenmerk_verwijder IS NULL;
IF v_ins_kenmerk_key>-1 THEN
flx.setflex('INS',v_ins_kenmerk_key,p_ins_key,p_kenmerk_waarde);
END IF;
END;
FUNCTION getSrtControldatum(p_datum IN DATE, p_cyclus IN NUMBER) RETURN DATE
AS
v_count NUMBER;
r_datum DATE;
r_datum_str VARCHAR2(10);
BEGIN
v_count:=0;
IF (p_cyclus=12) THEN
r_datum_str := TO_CHAR(p_datum,'DD')||'-'||TO_CHAR(p_datum,'MM')||'-'||TO_CHAR(SYSDATE,'YYYY');
r_datum := TO_DATE(r_datum_str,'DD-MM-YYYY');
IF r_datum > TRUNC(SYSDATE) THEN
r_datum := ADD_MONTHS(r_datum, -12);
END IF;
ELSIF (p_cyclus=36) THEN
IF (EXTRACT(YEAR FROM p_datum) > EXTRACT(YEAR FROM SYSDATE)) THEN
r_datum:=ADD_MONTHS(p_datum,-1*p_cyclus); -- geven laatste gekeurde datum door.
ELSE
v_count:= FLOOR((2022-EXTRACT(YEAR FROM p_datum))*12/p_cyclus);
r_datum:= ADD_MONTHS(p_datum,v_count*p_cyclus);
END IF;
ELSE
r_datum:=p_datum;
END IF;
RETURN r_datum;
END;
FUNCTION getCtrGroep(v_taak IN VARCHAR2) RETURN NUMBER
AS
v_groep NUMBER;
BEGIN
v_groep:=-1;
BEGIN
IF UPPER(v_taak) = '11A - NEN3140'
THEN
SELECT ins_discipline_key INTO v_groep
FROM ctr_discipline
WHERE UPPER(ins_discipline_omschrijving)='NEN3140'
and ins_discipline_verwijder IS NULL;
END IF;
IF UPPER(v_taak) = 'APK KEURING'
THEN
SELECT ins_discipline_key INTO v_groep
FROM ctr_discipline
WHERE UPPER(ins_discipline_omschrijving)='APK KEURING'
and ins_discipline_verwijder IS NULL;
END IF;
IF UPPER(v_taak) = 'REGISTRATIE'
THEN
SELECT ins_discipline_key INTO v_groep
FROM ctr_discipline
WHERE UPPER(ins_discipline_omschrijving)='REGISTRATIE'
and ins_discipline_verwijder IS NULL;
END IF;
IF UPPER(SUBSTR(v_taak,0,3)) = '20A' OR
UPPER(SUBSTR(v_taak,0,3)) = '53A' OR
UPPER(SUBSTR(v_taak,0,3)) = '58A' OR
UPPER(SUBSTR(v_taak,0,3)) = '60A' OR
UPPER(SUBSTR(v_taak,0,3)) = '63A'
THEN
SELECT ins_discipline_key INTO v_groep
FROM ctr_discipline
WHERE UPPER(ins_discipline_omschrijving)='INTERN ONDERHOUD'
and ins_discipline_verwijder IS NULL;
END IF;
IF UPPER(SUBSTR(v_taak,0,3)) = '21' OR
UPPER(SUBSTR(v_taak,0,3)) = '53B' OR
UPPER(SUBSTR(v_taak,0,3)) = '58B' OR
UPPER(SUBSTR(v_taak,0,3)) = '58C' OR
UPPER(SUBSTR(v_taak,0,3)) = '59B' OR
UPPER(SUBSTR(v_taak,0,3)) = '62B' OR
UPPER(v_taak) = 'SKH KEURING'
THEN
SELECT ins_discipline_key INTO v_groep
FROM ctr_discipline
WHERE UPPER(ins_discipline_omschrijving)='EXTERN ONDERHOUD'
and ins_discipline_verwijder IS NULL;
END IF;
IF v_groep<0
THEN
v_groep:=3;
END IF;
RETURN v_groep;
EXCEPTION WHEN NO_DATA_FOUND THEN
v_groep:=3;
RETURN v_groep;
END;
END;
END;
/
CREATE OR REPLACE PROCEDURE WDKA_IMPORT_INSPECTIES(p_import_key IN NUMBER)
AS
c_fielddelimitor VARCHAR2 (1) := ';';
v_newline VARCHAR2 (4000); -- Input line
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
v_aanduiding VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
header_is_valid NUMBER;
v_count NUMBER;
v_ongeldig NUMBER (1);
v_ins_discipline_omschrijving VARCHAR2(1000);
v_ins_srtgroep_omschrijving VARCHAR2(60);
v_ins_srtdeel_code VARCHAR2(50);
v_srttaak_omschrijving VARCHAR2(60);
v_srttaak_periode VARCHAR2(10);
v_srttaak_eenheid VARCHAR2(10);
v_srttaak_mode VARCHAR2(10);
v_srttaak_omschrijving_2 VARCHAR2(60);
v_srttaak_periode_2 VARCHAR2(10);
v_srttaak_eenheid_2 VARCHAR2(10);
v_srttaak_mode_2 VARCHAR2(10);
v_srttaak_omschrijving_3 VARCHAR2(60);
v_srttaak_periode_3 VARCHAR2(10);
v_srttaak_eenheid_3 VARCHAR2(10);
v_srttaak_mode_3 VARCHAR2(10);
CURSOR c
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
v_count := 1;
DELETE fac_imp_inspectie;
FOR rec IN c
LOOP
BEGIN
IF v_count > 1
THEN
v_count:=v_count+1;
v_errormsg := 'Fout FETCH te importeren rij '||v_count;
v_newline := rec.fac_imp_file_line;
v_aanduiding := '';
-- Lees alle veldwaarden
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 1, v_ins_discipline_omschrijving);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 2, v_ins_srtgroep_omschrijving);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 3, v_ins_srtdeel_code);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 4, v_srttaak_omschrijving);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 5, v_srttaak_periode);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 6, v_srttaak_eenheid);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 7, v_srttaak_mode);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 9, v_srttaak_omschrijving_2);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 10, v_srttaak_periode_2);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 11, v_srttaak_eenheid_2);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 12, v_srttaak_mode_2);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 14, v_srttaak_omschrijving_3);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 15, v_srttaak_periode_3);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 16, v_srttaak_eenheid_3);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 17, v_srttaak_mode_3);
IF (UPPER(v_srttaak_omschrijving) != 'REGISTRATIE')
THEN
INSERT INTO fac_imp_inspectie(INS_DISCIPLINE_OMSCHRIJVING,
INS_SRTGROEP_OMSCHRIJVING,
INS_SRTDEEL_CODE,
INS_SRTCONTROLE_EENHEID,
INS_SRTCONTROLE_INFO,
INS_SRTCONTROLE_MODE,
INS_SRTCONTROLE_OMSCHRIJVING,
INS_SRTCONTROLE_PERIODE
)
VALUES (v_ins_discipline_omschrijving,
v_ins_srtgroep_omschrijving,
v_ins_srtdeel_code,
v_srttaak_eenheid,
'',
v_srttaak_mode,
v_srttaak_omschrijving,
v_srttaak_periode);
END IF;
IF ( LENGTH(v_srttaak_omschrijving_2)>0
AND LENGTH(v_srttaak_periode_2)>0
AND LENGTH(v_srttaak_eenheid_2)>0
AND LENGTH(v_srttaak_mode_2)>0
AND v_ins_srtdeel_code != 'Registratie')
THEN
INSERT INTO fac_imp_inspectie(INS_DISCIPLINE_OMSCHRIJVING,
INS_SRTGROEP_OMSCHRIJVING,
INS_SRTDEEL_CODE,
INS_SRTCONTROLE_EENHEID,
INS_SRTCONTROLE_INFO,
INS_SRTCONTROLE_MODE,
INS_SRTCONTROLE_OMSCHRIJVING,
INS_SRTCONTROLE_PERIODE
)
VALUES (v_ins_discipline_omschrijving,
v_ins_srtgroep_omschrijving,
v_ins_srtdeel_code,
v_srttaak_eenheid_2,
'',
v_srttaak_mode_2,
v_srttaak_omschrijving_2,
v_srttaak_periode_2);
END IF;
IF ( LENGTH(v_srttaak_omschrijving_3)>0
AND LENGTH(v_srttaak_periode_3)>0
AND LENGTH(v_srttaak_eenheid_3)>0
AND LENGTH(v_srttaak_mode_3)>0
AND v_ins_srtdeel_code != 'Registratie')
THEN
INSERT INTO fac_imp_inspectie(INS_DISCIPLINE_OMSCHRIJVING,
INS_SRTGROEP_OMSCHRIJVING,
INS_SRTDEEL_CODE,
INS_SRTCONTROLE_EENHEID,
INS_SRTCONTROLE_INFO,
INS_SRTCONTROLE_MODE,
INS_SRTCONTROLE_OMSCHRIJVING,
INS_SRTCONTROLE_PERIODE
)
VALUES (v_ins_discipline_omschrijving,
v_ins_srtgroep_omschrijving,
v_ins_srtdeel_code,
v_srttaak_eenheid_3,
'',
v_srttaak_mode_3,
v_srttaak_omschrijving_3,
v_srttaak_periode_3);
END IF;
ELSE
v_count := v_count+1;
END IF;
EXCEPTION
WHEN OTHERS
THEN
v_errorhint := v_errormsg || ' - ' || v_aanduiding;
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END;
END LOOP;
COMMIT;
END;
/
CREATE OR REPLACE PROCEDURE WDKA_UPDATE_INSPECTIES(p_import_key IN NUMBER)
AS
BEGIN
fac_update_inspectie(p_import_key);
END;
/
CREATE OR REPLACE PROCEDURE WDKA_IMPORT_ASSETS(p_import_key IN NUMBER)
AS
c_fielddelimitor VARCHAR2 (1) := ';';
v_newline VARCHAR2 (4000); -- Input line
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
header_is_valid NUMBER;
v_count NUMBER;
v_ongeldig NUMBER (1);
v_mode NUMBER (1);
v_aanduiding VARCHAR2 (200);
v_all_null BOOLEAN;
v_count_error NUMBER (10);
v_count_tot NUMBER (10);
v_count_import NUMBER (10);
v_gebouw_code VARCHAR2(100);
v_locatie_code VARCHAR2(100);
v_alg_gebouw_code VARCHAR2(100);
v_alg_locatie_code VARCHAR2(100);
v_alg_verdieping_volgnr NUMBER;
v_alg_ruimte_nr VARCHAR2(100);
v_ins_discipline_omschrijving VARCHAR2(100);
d_ins_discipline_omschrijving VARCHAR2(100);
v_ins_srtgroep_omschrijving VARCHAR2(100);
d_ins_srtgroep_omschrijving VARCHAR2(100);
v_ins_srtdeel_code VARCHAR2(100);
v_ins_srtdeel_omschrijving VARCHAR2(100);
d_ins_srtdeel_omschrijving VARCHAR2(100);
v_ins_deel_aantal NUMBER;
v_ins_deel_omschrijving VARCHAR2(100);
v_ins_deel_opmerking VARCHAR2(100);
v_discipline_key NUMBER;
v_srtgroep_key NUMBER;
v_ins_deel_aanmaak DATE;
v_kenmerk1 VARCHAR2(1000);
v_kenmerk2 VARCHAR2(1000);
v_kenmerk3 VARCHAR2(1000);
v_kenmerk4 VARCHAR2(1000);
v_kenmerk5 VARCHAR2(1000);
v_kenmerk6 VARCHAR2(1000);
v_kenmerk7 VARCHAR2(1000);
v_kenmerk8 VARCHAR2(1000);
v_kenmerk9 VARCHAR2(1000);
v_kenmerk10 VARCHAR2(1000);
v_kenmerk11 VARCHAR2(1000);
v_kenmerk12 VARCHAR2(1000);
v_kenmerk13 VARCHAR2(1000);
v_kenmerk14 VARCHAR2(1000);
v_kenmerk15 VARCHAR2(1000);
v_kenmerk16 VARCHAR2(1000);
v_kenmerk17 VARCHAR2(1000);
v_kenmerk18 VARCHAR2(1000);
v_kenmerk19 VARCHAR2(1000);
v_kenmerk20 VARCHAR2(1000);
CURSOR c
IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
DELETE fac_imp_ins;
v_count_import := 0;
FOR rec IN c
LOOP
BEGIN
V_count_import := v_count_import +1;
v_errormsg := 'Fout FETCH te importeren rij';
v_newline := rec.fac_imp_file_line;
IF v_count_import >1 THEN
v_errormsg := 'Fout opvragen K1 te importeren rij '||v_count_import;
v_aanduiding := '';
-- Lees alle veldwaarden
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 11, v_locatie_code);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 12, v_gebouw_code);
v_errormsg := 'Fout opvragen K3 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 13, v_alg_verdieping_volgnr);
v_errormsg := 'Fout opvragen K4 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 14, v_alg_ruimte_nr);
v_errormsg := 'Fout opvragen K2 te importeren rij '||v_count_import;
v_errormsg := 'Fout opvragen K5 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 1, v_ins_discipline_omschrijving);
v_errormsg := 'Fout opvragen K6te importeren rij '||v_count_import;
--fac.imp_getfield_nr (v_newline, c_fielddelimitor, 3, v_ins_srtgroep_code);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 3, v_ins_srtgroep_omschrijving);
v_errormsg := 'Fout opvragen K8 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 4, v_ins_srtdeel_code);
v_errormsg := 'Fout opvragen K9 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 5, v_ins_srtdeel_omschrijving);
v_errormsg := 'Fout opvragen K14 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 22, v_ins_deel_aantal);
v_errormsg := 'Fout opvragen K10 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 6, v_ins_deel_omschrijving);
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 7, v_ins_deel_opmerking);
v_errormsg := 'Fout opvragen K12 te importeren rij '||v_count_import;
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 23, v_kenmerk1); -- beheerder
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 24, v_kenmerk2); -- keuring1
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 25, v_kenmerk3); -- keuring1 datum
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 26, v_kenmerk4); -- keuring2
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 27, v_kenmerk5); -- keuring2 datum
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 28, v_kenmerk6); -- keuring3
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 29, v_kenmerk7); -- keuring3 datum
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 30, v_kenmerk8); -- serienummer
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 31, v_kenmerk9); -- kenteken
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 32, v_kenmerk10); -- type
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 33, v_kenmerk11); -- merk/fabrikant
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 34, v_kenmerk12); -- Garanmtiedatum
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 35, v_kenmerk13); -- Leverancier
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 36, v_kenmerk14); -- Ontvangstdatum
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 37, v_kenmerk15); -- Objectstatus
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 38, v_kenmerk16); -- Storings afhandeling
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 39, v_kenmerk17); -- bouwjaar
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 40, v_kenmerk18); -- extren referentie
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 41, v_kenmerk19); -- Kenmerk
fac.imp_getfield_nr (v_newline, c_fielddelimitor, 42, v_kenmerk20); -- onderhoudsbedrijf
v_count_tot := v_count_tot + 1;
v_errormsg := 'Fout bij toevoegen te impoteren v_ins_discipline_omschrijving: ' || v_ins_srtdeel_code||'(REGEL '||v_count_import||')';
d_ins_discipline_omschrijving:='';
BEGIN
SELECT ins_discipline_key, ins_discipline_omschrijving
INTO v_discipline_key, d_ins_discipline_omschrijving
FROM ins_discipline d
WHERE UPPER(d.ins_discipline_omschrijving) = UPPER(v_ins_discipline_omschrijving) AND d.ins_discipline_verwijder IS NULL;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO ins_tab_discipline (ins_discipline_module,ins_discipline_omschrijving,
ins_discipline_min_level)
VALUES ('INS', v_ins_discipline_omschrijving, 1)
RETURNING ins_discipline_key
INTO v_discipline_key;
INSERT INTO ins_disc_params (ins_discipline_key,
ins_disc_params_autonum)
VALUES (v_discipline_key, 2);
d_ins_discipline_omschrijving:= v_ins_discipline_omschrijving;
END;
v_errormsg := 'Fout bij toevoegen te impoteren v_ins_srtgroep_omschrijving: ' || v_ins_srtdeel_code ||'(REGEL '||v_count_import||')';
d_ins_srtgroep_omschrijving:='';
BEGIN
v_errormsg := 'Fout bij toevoegen te impoteren v_ins_srtgroep_omschrijving(2): ' || v_ins_srtdeel_code ||'(REGEL '||v_count_import||')';
SELECT ins_srtgroep_key,sg.ins_srtgroep_omschrijving
INTO v_srtgroep_key, d_ins_srtgroep_omschrijving
FROM ins_srtgroep sg
WHERE UPPER(sg.ins_srtgroep_omschrijving) = UPPER(v_ins_srtgroep_omschrijving)
AND sg.ins_srtgroep_verwijder IS NULL;
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_errormsg := 'Fout bij toevoegen te impoteren v_ins_srtgroep_omschrijving(3): ' || v_ins_srtdeel_code ||'(REGEL '||v_count_import||')';
INSERT INTO ins_srtgroep (ins_discipline_key,
ins_srtgroep_module,
ins_srtgroep_omschrijving)
VALUES (v_discipline_key, 'INS', v_ins_srtgroep_omschrijving)
RETURNING ins_srtgroep_key
INTO v_srtgroep_key;
d_ins_srtgroep_omschrijving := v_ins_srtgroep_omschrijving;
END;
v_errormsg := 'Fout bij toevoegen te impoteren v_ins_srtdeel_omschrijving: ' || v_ins_srtdeel_code||'(REGEL '||v_count_import||')';
d_ins_srtdeel_omschrijving:='';
BEGIN
SELECT sd.ins_srtdeel_omschrijving
INTO v_ins_srtdeel_omschrijving
FROM ins_srtdeel sd
WHERE sd.ins_srtdeel_code = v_ins_srtdeel_code AND sd.ins_srtdeel_verwijder IS NULL;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO ins_srtdeel (ins_srtgroep_key,
ins_srtdeel_module,
ins_srtdeel_code,
ins_srtdeel_omschrijving,
ins_srtdeel_binding)
VALUES (v_srtgroep_key,
'INS',
v_ins_srtdeel_code,
v_ins_srtdeel_omschrijving,
17);
d_ins_srtdeel_omschrijving := v_ins_srtdeel_omschrijving;
END;
v_errormsg := 'Fout bij toevoegen te impoteren v_alg_ruimte_nr: ' || v_alg_ruimte_nr;
-- v_alg_locatie_code:='';
--v_alg_gebouw_code :='';
--v_alg_verdieping_volgnr:=-4;
BEGIN
SELECT alg_locatie_code, alg_gebouw_upper, alg_verdieping_volgnr INTO v_alg_locatie_code,v_alg_gebouw_code, v_alg_verdieping_volgnr
FROm alg_v_ruimte_gegevens rg
WHERE UPPER(rg.alg_ruimte_nr) = UPPER(v_alg_ruimte_nr) AND rg.alg_gebouw_upper = UPPER(v_gebouw_code) AND rg.alg_verdieping_volgnr=v_alg_verdieping_volgnr;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_alg_locatie_code:= v_locatie_code;
v_alg_gebouw_code := v_gebouw_code;
v_alg_verdieping_volgnr:=0;
v_alg_ruimte_nr:='999999';
END;
v_errormsg := 'Fout bij aanmaken aanmaal datum: ';
v_ins_deel_aanmaak:=SYSDATE;
IF v_ins_deel_aantal IS NULL OR LENGTH(v_ins_deel_aantal)<1
THEN
v_ins_deel_aantal:=1;
END IF;
v_ongeldig:=0;
IF v_ongeldig=0 THEN
v_errormsg:='Fout bij insert regel '||v_count_tot;
INSERT INTO fac_imp_ins (ins_discipline_omschrijving,
ins_srtgroep_omschrijving,
ins_srtdeel_code,
ins_srtdeel_omschrijving,
ins_deel_omschrijving,
ins_deel_opmerking,
alg_locatie_code,
alg_gebouw_code,
alg_verdieping_volgnr,
alg_ruimte_nr,
ins_deel_aanmaak,
ins_deel_aantal,
ins_kenmerkwaarde1, -- Code OP
ins_kenmerkwaarde2, -- Bouwjaar ?
ins_kenmerkwaarde3, -- eenheid ?
ins_kenmerkwaarde4, -- eenheid ?
ins_kenmerkwaarde5, -- eenheid ?
ins_kenmerkwaarde6, -- eenheid ?
ins_kenmerkwaarde7, -- eenheid ?
ins_kenmerkwaarde8, -- eenheid ?
ins_kenmerkwaarde9, -- eenheid ?
ins_kenmerkwaarde10, -- Srt Taak Groep
ins_kenmerkwaarde11, -- Srt Taak
ins_kenmerkwaarde12, -- Periode
ins_kenmerkwaarde13, -- Interval (4=jaarlijks)
ins_kenmerkwaarde14, -- bedrag /matriaal
ins_kenmerkwaarde15, -- Taak opm
ins_kenmerkwaarde16,
ins_kenmerkwaarde17, -- Taak opm
ins_kenmerkwaarde18, -- Taak opm
ins_kenmerkwaarde19, -- Taak opm
ins_kenmerkwaarde20) -- Taak opm
VALUES (SUBSTR(d_ins_discipline_omschrijving, 1,60),
SUBSTR(d_ins_srtgroep_omschrijving, 1, 60),
SUBSTR(v_ins_srtdeel_code,1,10),
SUBSTR(v_ins_srtdeel_omschrijving, 1, 100),
SUBSTR(v_ins_deel_omschrijving, 1, 60),
SUBSTR(v_ins_deel_opmerking, 1, 60),
SUBSTR(v_alg_locatie_code, 1, 10),
SUBSTR(v_alg_gebouw_code, 1, 12),
v_alg_verdieping_volgnr,
SUBSTR(v_alg_ruimte_nr,1,20),
SYSDATE,
to_number(v_ins_deel_aantal),
DECODE(v_kenmerk1, NULL, NULL, 'Beheerder|0='||v_kenmerk1),
v_kenmerk2,
v_kenmerk3,
v_kenmerk4,
v_kenmerk5,
v_kenmerk6,
v_kenmerk7,
DECODE(v_kenmerk8, NULL, NULL, 'Serienummer|0='||v_kenmerk8),
DECODE(v_kenmerk9, NULL, NULL, 'Kenteken|0='||v_kenmerk9),
DECODE(v_kenmerk10, NULL, NULL, 'Type|0='||v_kenmerk10),
DECODE(v_kenmerk11, NULL, NULL, 'Merk/Fabrikant|0='||v_kenmerk11),
DECODE(v_kenmerk12, NULL, NULL, 'Garantiedatum|0='||v_kenmerk12),
DECODE(v_kenmerk13, NULL, NULL, 'Leverancier|0='||v_kenmerk13),
DECODE(v_kenmerk14, NULL, NULL, 'Ontvangstdatum|0='||v_kenmerk14),
DECODE(v_kenmerk15, NULL, NULL, 'Objectstatus|0='||v_kenmerk15),
DECODE(v_kenmerk16, NULL, NULL, 'Storings afhandeling|0='||v_kenmerk16),
DECODE(v_kenmerk17, NULL, NULL, 'Bouwjaar|0='||v_kenmerk17),
DECODE(v_kenmerk18, NULL, NULL, 'Extrene referentie|0='||v_kenmerk18),
DECODE(v_kenmerk19, NULL, NULL, 'Kenmerk|0='||v_kenmerk19),
DECODE(v_kenmerk20, NULL, NULL, 'Onderhoudsbedrijf|0='||v_kenmerk20)
);
-- fac.imp_writelog (p_import_key,
-- 'S',
-- v_errormsg,
-- v_errorhint);
ELSE
v_ongeldig:=0;
END IF;
END IF;
EXCEPTION
WHEN OTHERS
THEN
v_errorhint := v_errormsg || ' - ' || v_aanduiding;
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END;
END LOOP;
--FAC_IMPORT_INS(p_import_key);
END;
/
CREATE OR REPLACE PROCEDURE WDKA_UPDATE_ASSETS(p_import_key IN NUMBER)
AS
CURSOR sel IS
SELECT * FROM fac_imp_ins;
v_errormsg VARCHAR2 (1000);
v_errorhint VARCHAR2 (1000);
v_aanduiding VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_perslidkey NUMBER;
v_ins_srtinstallatie_key NUMBER;
v_ins_srtcontrole_niveau VARCHAR2(10);
v_srtcontrole_key NUMBER;
v_ins_srtcontrole_periode NUMBER;
v_taak1 VARCHAR2(100);
v_taak2 VARCHAR2(100);
v_taak3 VARCHAR2(100);
v_datum1 VARCHAR2(100);
v_datum2 VARCHAR2(100);
v_datum3 VARCHAR2(100);
v_cyclus1 NUMBER;
v_cyclus2 NUMBER;
v_cyclus3 NUMBER;
v_eenheid NUMBER :=3;
v_deel_key NUMBER;
v_count NUMBER;
v_aantal NUMBER;
v_groep NUMBER;
BEGIN
v_count:=1;
fac_update_ins(p_import_key);
v_groep:=3;
FOR rec IN sel
LOOP
BEGIN
v_count:=v_count+1;
v_errormsg := 'Fout FETCH te importeren rij '||v_count;
v_taak1 :='';
v_taak2 :='';
v_taak3 :='';
v_cyclus1 := 0;
v_cyclus2 := 0;
v_cyclus3 := 0;
v_groep:=-1;
v_perslidkey :=0;
BEGIN
SELECT prs_perslid_key INTO v_perslidkey FROM PRS_V_PERSLID_FULLNAMES where PRS_PERSLID_NAAM_FULL=SUBSTR(rec.ins_kenmerkwaarde1,INSTR(rec.ins_kenmerkwaarde1,'=')+1);
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_perslidkey:=-1;
END;
IF v_perslidkey>0
THEN
UPDATE ins_deel set PRS_PERSLID_KEY_BEH=v_perslidkey WHERE ins_deel_omschrijving = rec.ins_deel_omschrijving;
commit;
END IF;
v_taak1 := rec.INS_KENMERKWAARDE2;
v_taak2 := rec.INS_KENMERKWAARDE4;
v_taak3 := rec.INS_KENMERKWAARDE6;
v_datum1 := COALESCE(fac.safe_to_date(rec.INS_KENMERKWAARDE3,'dd-mm-yyyy'), TO_DATE('01-01-2022','DD-MM-YYYY'));
v_datum2 := COALESCE(fac.safe_to_date(rec.INS_KENMERKWAARDE5,'dd-mm-yyyy'), TO_DATE('01-01-2022','DD-MM-YYYY'));
v_datum3 := COALESCE(fac.safe_to_date(rec.INS_KENMERKWAARDE7,'dd-mm-yyyy'), TO_DATE('01-01-2022','DD-MM-YYYY'));
v_errormsg := 'Fout ophalen object('||rec.ins_deel_omschrijving||') te importeren rij '||v_count;
SELECT ins_deel_key
INTO v_deel_key
FROM ins_deel
WHERE ins_deel_omschrijving = rec.ins_deel_omschrijving AND ins_deel_verwijder IS NULL;
IF (v_taak1 ='SKH keuring') THEN
v_cyclus1:=36;
ELSE
v_cyclus1:=12;
END IF;
IF (v_taak2 ='SKH keuring') THEN
v_cyclus2:=36;
ELSE
v_cyclus2:=12;
END IF;
IF (v_taak3 ='SKH keuring') THEN
v_cyclus3:=36;
ELSE
v_cyclus3:=12;
END IF;
v_errormsg := 'Fout FETCH discipline te importeren rij '||v_count;
SELECT ins_discipline_key, 'D'
INTO v_ins_srtinstallatie_key, v_ins_srtcontrole_niveau
FROM ins_tab_discipline
WHERE UPPER (ins_discipline_omschrijving) = UPPER (rec.ins_discipline_omschrijving)
AND ins_discipline_module = 'INS'
AND ins_discipline_verwijder IS NULL;
v_errormsg := 'Fout FETCH GROEP te importeren rij '||v_count;
SELECT ins_srtgroep_key, 'G'
INTO v_ins_srtinstallatie_key, v_ins_srtcontrole_niveau
FROM ins_srtgroep
WHERE UPPER (ins_srtgroep_omschrijving) = UPPER (rec.ins_srtgroep_omschrijving)
AND ins_srtgroep_module = 'INS'
AND ins_srtgroep_verwijder IS NULL
AND ins_discipline_key = v_ins_srtinstallatie_key;
v_errormsg := 'Fout FETCH objectsort te importeren rij '||v_count||'Object '||rec.ins_deel_omschrijving;
SELECT ins_srtdeel_key, 'S'
INTO v_ins_srtinstallatie_key, v_ins_srtcontrole_niveau
FROM ins_srtdeel
WHERE UPPER (ins_srtdeel_code) = UPPER (rec.ins_srtdeel_code)
AND ins_srtdeel_module = 'INS'
AND ins_srtdeel_verwijder IS NULL
AND ins_srtgroep_key = v_ins_srtinstallatie_key;
v_errormsg := 'Fout verwerken Taak1 '||v_count||' Object '||rec.ins_deel_omschrijving;
IF v_taak1 IS NOT NULL
AND v_taak1 <> 'Registratie'
AND v_cyclus1 IS NOT NULL
THEN
v_groep:=wdka.getCtrGroep(v_taak1);
BEGIN
v_errormsg := 'Fout Count srtcontrole Taak1 '||v_ins_srtinstallatie_key||' Object '||rec.ins_deel_omschrijving;
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND UPPER(ins_srtcontrole_omschrijving) = UPPER(v_taak1)
AND ins_srtcontrole_periode=v_cyclus1
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=v_groep;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak1,
v_cyclus1,
v_eenheid,
1,
v_groep
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
IF v_taak1 = '11A - NEN3140'
THEN
wdka.insert_ctr_kenmerk(v_srtcontrole_key);
END IF;
END;
/* IF v_aantal=0
THEN
v_errormsg := 'Fout INSERT srtcontrole te importeren rij taak1 '||v_count;
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak1,
v_cyclus1,
v_eenheid,
1,
3
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
END IF;*/
IF v_datum1 IS NULL
THEN
v_datum1:=TO_DATE(SYSDATE,'DD/MM/YYYY');
ELSE
v_datum1:= wdka.getSrtControldatum(v_datum1, v_cyclus1);
END IF;
/* v_errormsg := 'Fout ophalen srtcontrole taak 1 rij '||v_count||'('||rec.ins_deel_omschrijving||')';
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND ins_srtcontrole_omschrijving = v_taak1
AND ins_srtcontrole_periode=v_cyclus1
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=3;
*/
v_errormsg := 'Fout INSERT deelsrtcontrole te importeren rij taak1 '||v_count||'('||rec.ins_deel_omschrijving||')';
-- v_datum1:= wdka.getSrtControldatum(v_datum1, v_cyclus1);
INSERT INTO ins_deelsrtcontrole(ins_deel_key,
ins_srtcontrole_key,
ins_scenario_key,
ins_deelsrtcontrole_datum,
ins_controlemode_key,
ins_deelsrtcontrole_status,
ins_deelsrtcontrole_datum_org,
ins_deelsrtcontrole_freezecost,
prs_perslid_key)
VALUES(v_deel_key,
v_srtcontrole_key,
1,
v_datum1 ,
10,
6,
v_datum1,
0,
3);
END IF;
v_errormsg := 'Fout verwerken Taak2 '||v_count||' Object '||rec.ins_deel_omschrijving;
IF v_taak2 IS NOT NULL AND v_taak2 <> 'Registratie' AND v_cyclus2 IS NOT NULL
THEN
v_groep:=wdka.getCtrGroep(v_taak2);
BEGIN
v_errormsg := 'Fout Count srtcontrole Taak2 '||v_count||' Object '||rec.ins_deel_omschrijving;
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND ins_srtcontrole_omschrijving = v_taak2
AND ins_srtcontrole_periode=v_cyclus2
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=v_groep;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak2,
v_cyclus2,
v_eenheid,
1,
v_groep
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
IF v_taak2 = '11A - NEN3140'
THEN
wdka.insert_ctr_kenmerk(v_srtcontrole_key);
END IF;
END;
/* IF v_aantal=0
THEN
v_errormsg := 'Fout INSERT srtcontrole te importeren rij taak2 '||v_count;
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak2,
v_cyclus2,
v_eenheid,
1,
3
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
*/
IF v_datum2 IS NULL
THEN
v_datum2:=TO_DATE(SYSDATE,'DD/MM/YYYY');
ELSE
v_datum2:= wdka.getSrtControldatum(v_datum2, v_cyclus2);
END IF;
/* v_errormsg := 'Fout ophalen srtcontrole taak 2 rij '||v_count||'('||rec.ins_deel_omschrijving||')';
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND ins_srtcontrole_omschrijving = v_taak2
AND ins_srtcontrole_periode=v_cyclus2
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=3;
*/
v_errormsg := 'Fout INSERT deelsrtcontrole te importeren rij taak 2'||v_count||'('||rec.ins_deel_omschrijving||')';
INSERT INTO ins_deelsrtcontrole(ins_deel_key,
ins_srtcontrole_key,
ins_scenario_key,
ins_deelsrtcontrole_datum,
ins_controlemode_key,
ins_deelsrtcontrole_status,
ins_deelsrtcontrole_datum_org,
ins_deelsrtcontrole_freezecost,
prs_perslid_key)
VALUES(v_deel_key,
v_srtcontrole_key,
1,
v_datum2,
10,
6,
v_datum2,
0,
3);
END IF;
IF v_taak3 IS NOT NULL
AND v_taak3 <> 'Registratie'
AND v_cyclus3 IS NOT NULL
THEN
v_groep:=wdka.getCtrGroep(v_taak3);
BEGIN
v_errormsg := 'Fout Count srtcontrole Taak3 '||v_count||' Object '||rec.ins_deel_omschrijving;
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND ins_srtcontrole_omschrijving = v_taak3
AND ins_srtcontrole_periode=v_cyclus3
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=v_groep;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak3,
v_cyclus3,
v_eenheid,
1,
v_groep
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
IF v_taak3 = '11A - NEN3140'
THEN
wdka.insert_ctr_kenmerk(v_srtcontrole_key);
END IF;
END;
/* IF v_aantal=0
THEN
v_errormsg := 'Fout INSERT srtcontrole te importeren rij taak 3 '||v_count;
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
ins_srtcontrole_niveau,
ins_srtcontrole_omschrijving,
ins_srtcontrole_periode,
ins_srtcontrole_eenheid,
ins_srtcontrole_mode,
ctr_discipline_key
)
VALUES (v_ins_srtinstallatie_key,
v_ins_srtcontrole_niveau,
v_taak3,
v_cyclus3,
v_eenheid,
1,
3
)
RETURNING ins_srtcontrole_key
INTO v_srtcontrole_key;
*/
--END IF;
IF v_datum3 IS NULL
THEN
v_datum3:=TO_DATE(SYSDATE,'DD/MM/YYYY');
ELSE
v_datum3:= wdka.getSrtControldatum(v_datum3, v_cyclus3);
END IF;
/* v_errormsg := 'Fout ophalen srtcontrole taak 3 rij '||v_count||'('||rec.ins_deel_omschrijving||')';
SELECT ins_srtcontrole_key
INTO v_srtcontrole_key
FROM ins_srtcontrole
where ins_srtinstallatie_key=v_ins_srtinstallatie_key
AND ins_srtcontrole_niveau=v_ins_srtcontrole_niveau
AND ins_srtcontrole_omschrijving = v_taak3
AND ins_srtcontrole_periode=v_cyclus3
AND ins_srtcontrole_eenheid=v_eenheid
AND ins_srtcontrole_mode=1
AND ctr_discipline_key=3; */
v_errormsg := 'Fout INSERT deelsrtcontrole te importeren rij taak3 '||v_count||'('||rec.ins_deel_omschrijving||')';
INSERT INTO ins_deelsrtcontrole(ins_deel_key,
ins_srtcontrole_key,
ins_scenario_key,
ins_deelsrtcontrole_datum,
ins_controlemode_key,
ins_deelsrtcontrole_status,
ins_deelsrtcontrole_datum_org,
ins_deelsrtcontrole_freezecost,
prs_perslid_key)
VALUES(v_deel_key,
v_srtcontrole_key,
1,
v_datum3,
10,
6,
v_datum3,
0,
3);
END IF;
EXCEPTION
WHEN OTHERS
THEN
v_errorhint := v_errormsg || ' - ' || v_aanduiding;
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
v_errormsg := 'error ' || oracle_err_num || '/' || oracle_err_mes;
fac.imp_writelog (p_import_key,
'E',
v_errormsg,
v_errorhint);
END;
END LOOP;
END;
/
CREATE OR REPLACE PROCEDURE WDKA_IMPORT_PAT_DATA(p_import_key IN NUMBER)
AS
c_delim VARCHAR2 (1) := ';';
header_is_valid NUMBER;
v_errormsg VARCHAR2 (1000);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_newline VARCHAR2 (4000);
v_ongeldig NUMBER (1) := 0; -- 0= Goed, 1= Error, 2=Waarschuwing
v_aanduiding VARCHAR2 (1000) := '';
v_count NUMBER;
v_smartwareID VARCHAR2(50);
v_omschrijving VARCHAR2(50);
v_laatste_datum_str VARCHAR2(50);
v_laatste_datum DATE;
v_laatste_resultaat VARCHAR2(50);
v_visueel VARCHAR2(50);
v_aarde VARCHAR2(50);
v_aarde_eenheid VARCHAR2(50);
v_aarde_resultaat VARCHAR2(50);
v_lekstroom VARCHAR2(50);
v_lekstroom_eenheid VARCHAR2(50);
v_lekstroom_resultaat VARCHAR2(50);
v_aanrk_lekstroom VARCHAR2(50);
v_aanrk_lekstroom_eenheid VARCHAR2(50);
v_aanrk_lekstroom_resultaat VARCHAR2(50);
v_verv_lekstroom VARCHAR2(50);
v_verv_lekstroom_eenheid VARCHAR2(50);
v_verv_lekstroom_resultaat VARCHAR2(50);
v_isolatie VARCHAR2(50);
v_isolatie_eenheid VARCHAR2(50);
v_isolatie_resultaat VARCHAR2(50);
v_bedrading VARCHAR2(50);
v_bedrading_eenheid VARCHAR2(50);
v_bedrading_resultaat VARCHAR2(50);
v_gebruikertest VARCHAR2(50);
v_gebruikers_waarde VARCHAR2(50);
v_gebruikers_eenheid VARCHAR2(50);
v_gebruikers_resultaat VARCHAR2(50);
v_volgende_testdatum_str VARCHAR2(50);
v_volgende_testdatum DATE;
v_laatste_vis_test_str VARCHAR2(50);
v_laatste_vis_test DATE;
v_laatste_vis_resultaat VARCHAR2(50);
v_next_vis_test_str VARCHAR2(50);
v_next_vis_test DATE;
CURSOR c1 IS
SELECT *
FROM fac_imp_file
WHERE fac_import_key = p_import_key
ORDER BY fac_imp_file_index;
BEGIN
v_count :=0;
v_aanduiding := 'Start inlees process';
header_is_valid := 0;
DELETE FROM FAC_IMP_CSV;
COMMIT;
FOR rec IN c1
LOOP
BEGIN
v_aanduiding := 'Lees regel';
v_newline := REPLACE(rec.fac_imp_file_line,chr(9),'');
v_aanduiding := 'Lees velden in';
fac.imp_getfield_nr (v_newline, c_delim, 1, v_smartwareID);
fac.imp_getfield_nr (v_newline, c_delim,2, v_omschrijving);
fac.imp_getfield_nr (v_newline, c_delim,3, v_laatste_datum_str);
fac.imp_getfield_nr (v_newline, c_delim,4, v_laatste_resultaat);
-- fac.imp_getfield (v_newline, c_delim, v_visueel);
v_aanduiding := 'Lees velden in 1';
fac.imp_getfield_nr (v_newline, c_delim, 6, v_aarde);
fac.imp_getfield_nr (v_newline, c_delim, 7, v_aarde_eenheid);
fac.imp_getfield_nr (v_newline, c_delim, 8, v_aarde_resultaat);
fac.imp_getfield_nr (v_newline, c_delim, 9, v_lekstroom);
fac.imp_getfield_nr (v_newline, c_delim, 10, v_lekstroom_eenheid);
fac.imp_getfield_nr (v_newline, c_delim, 11, v_lekstroom_resultaat);
v_aanduiding := 'Lees velden in2';
fac.imp_getfield_nr (v_newline, c_delim, 12, v_aanrk_lekstroom);
fac.imp_getfield_nr (v_newline, c_delim, 13, v_aanrk_lekstroom_eenheid);
fac.imp_getfield_nr (v_newline, c_delim, 14, v_aanrk_lekstroom_resultaat);
fac.imp_getfield_nr (v_newline, c_delim, 15, v_verv_lekstroom);
fac.imp_getfield_nr (v_newline, c_delim, 16, v_verv_lekstroom_eenheid);
fac.imp_getfield_nr (v_newline, c_delim, 17, v_verv_lekstroom_resultaat);
v_aanduiding := 'Lees velden in 3';
fac.imp_getfield_nr (v_newline, c_delim, 18, v_isolatie);
fac.imp_getfield_nr (v_newline, c_delim, 19, v_isolatie_eenheid);
fac.imp_getfield_nr (v_newline, c_delim, 20, v_isolatie_resultaat);
fac.imp_getfield_nr (v_newline, c_delim, 21, v_bedrading);
fac.imp_getfield_nr (v_newline, c_delim, 23, v_bedrading_resultaat);
fac.imp_getfield_nr (v_newline, c_delim, 24, v_gebruikertest);
fac.imp_getfield_nr (v_newline, c_delim, 27, v_gebruikers_resultaat);
fac.imp_getfield_nr (v_newline, c_delim, 28, v_volgende_testdatum_str);
-- fac.imp_getfield (v_newline, c_delim, v_bedrading_eenheid);
-- fac.imp_getfield (v_newline, c_delim, v_gebruiker_waarde);
-- fac.imp_getfield (v_newline, c_delim, v_gebruiker_eenheid);
-- fac.imp_getfield (v_newline, c_delim, v_laatste_vis_test_str);
-- fac.imp_getfield (v_newline, c_delim, v_laatste_vis_resultaat);
-- fac.imp_getfield (v_newline, c_delim, v_next_vis_test_str);
v_aanduiding := 'Valideer Headers';
v_count:=v_count+1;
IF (header_is_valid = 0)
THEN
IF UPPER (TRIM (v_smartwareID)) = 'TESTOBJECT NUMMER'
AND UPPER (TRIM (v_omschrijving)) = 'OMSCHRIJVING'
AND UPPER (TRIM (v_laatste_datum_str)) = 'LAATSTE TESTDATUM'
AND UPPER (TRIM (v_laatste_resultaat)) = 'LAATSTE TESTRESULTAAT'
AND UPPER (TRIM (v_aarde)) = 'AARDE'
AND UPPER (TRIM (v_aarde_eenheid)) = 'AARDE EENHEID'
AND UPPER (TRIM (v_aarde_resultaat)) = 'AARDE RESULTAAT'
AND UPPER (TRIM (v_lekstroom)) = 'LEKSTROOM'
AND UPPER (TRIM (v_lekstroom_eenheid)) = 'LEKSTROOM EENHEID'
AND UPPER (TRIM (v_lekstroom_resultaat)) = 'LEKSTROOM RESULTAAT'
AND UPPER (TRIM (v_aanrk_lekstroom)) = 'AANRAAK LEKSTROOM'
AND UPPER (TRIM (v_aanrk_lekstroom_eenheid)) = 'AANRAAK LEKSTROOM EENHEID'
AND UPPER (TRIM (v_aanrk_lekstroom_resultaat)) = 'AANRAAK LEKSTROOM RESULTAAT'
AND UPPER (TRIM (v_verv_lekstroom)) = 'VERVANGENDE LEKSTROOM'
AND UPPER (TRIM (v_verv_lekstroom_eenheid)) = 'VERVANGENDE LEKSTROOM EENHEID'
AND UPPER (TRIM (v_verv_lekstroom_resultaat)) = 'VERVANGENDE LEKSTROOM RESULTAAT'
AND UPPER (TRIM (v_isolatie)) = 'ISOLATIE'
AND UPPER (TRIM (v_isolatie_eenheid)) = 'ISOLATIE EENHEID'
AND UPPER (TRIM (v_isolatie_resultaat)) = 'ISOLATIE RESULTAAT'
AND UPPER (TRIM (v_bedrading)) = 'BEDRADING'
AND UPPER (TRIM (v_bedrading_resultaat)) = 'BEDRADING RESULTAAT'
AND UPPER (TRIM (v_volgende_testdatum_str)) = 'VOLGENDE TESTDATUM'
THEN
header_is_valid := 1;
END IF;
ELSE
v_aanduiding :='Lees regel';
-- v_laatste_datum := fac.safe_to_date (v_laatste_datum_str,'DD-MM-YYYY');
-- v_volgende_testdatum := fac.safe_to_date (v_volgende_testdatum_str,'DD-MM-YYYY');
-- hebben een regel nu wat gaan we dan gebruiken in de wdka_imp_smartware tabel
-- v_smartwareID,v_laatste_datum, v_laatste_resultaat, v_aarde, v_aarde_resultaat,v_aanrk_lekstroom, v_aanrk_lekstroom_resultaat, v_isolatie, v_isolatie_resultaat,v_bedrading_resultaat`, v_laatste_vis_tes,v_laatste_vis_resultaat
INSERT INTO FAC_IMP_CSV(FAC_IMP_CSV_INDEX,
FAC_IMP_CSV_COL01,
FAC_IMP_CSV_COL02,
FAC_IMP_CSV_COL03,
FAC_IMP_CSV_COL04,
FAC_IMP_CSV_COL05,
FAC_IMP_CSV_COL06,
FAC_IMP_CSV_COL07,
FAC_IMP_CSV_COL08,
FAC_IMP_CSV_COL09,
FAC_IMP_CSV_COL10,
FAC_IMP_CSV_COL11,
FAC_IMP_CSV_COL12,
FAC_IMP_CSV_COL13,
FAC_IMP_CSV_COL14,
FAC_IMP_CSV_COL15,
FAC_IMP_CSV_COL16,
FAC_IMP_CSV_COL17,
FAC_IMP_CSV_COL18)
VALUES(v_count,
v_smartwareID,
v_laatste_datum_str,
v_laatste_resultaat,
v_aarde,
v_aarde_resultaat,
v_lekstroom,
v_lekstroom_resultaat,
v_aanrk_lekstroom,
v_aanrk_lekstroom_resultaat,
v_verv_lekstroom,
v_verv_lekstroom_resultaat,
v_isolatie,
v_isolatie_resultaat,
v_bedrading,
v_bedrading_resultaat,
v_gebruikertest,
v_gebruikers_resultaat,
v_volgende_testdatum_str);
/* INSERT INTO WDKA_IMP_SMARTWARE(smartwareid,
test_datum,
test_resultaat,
aarde_waarde,
aarde_resultaat,
lekstroom_waarde,
lekstroom_resultaat,
aanrk_lekstrm_waarde,
aanrk_lekstrm_resultaat,
verv_lekstrm_waarde,
verv_lekstrm_resultaat,
isolatie_waarde,
isolatie_resultaat,
volgende_test)
VALUES(v_smartwareID,
v_laatste_datum,
v_laatste_resultaat,
v_aarde,
v_aarde_resultaat,
v_lekstroom,
v_lekstroom_resultaat,
v_aanrk_lekstroom,
v_aanrk_lekstroom_resultaat,
v_verv_lekstroom,
v_verv_lekstroom_resultaat,
v_isolatie,
v_isolatie_resultaat,
v_volgende_testdatum); */
END IF;
END;
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
v_errormsg
|| 'ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
SUBSTR (v_aanduiding || v_errormsg, 1, 1000),
'Inleesproces PAT Data gaat fout!');
END;
/
CREATE OR REPLACE PROCEDURE WDKA_UPDATE_PAT_DATA(p_import_key IN NUMBER)
AS
CURSOR cs IS
SELECT FAC_IMP_CSV_COL01 smartwareID,
FAC_IMP_CSV_COL02 v_laatste_datum_str,
FAC_IMP_CSV_COL03 test_resultaat,
FAC_IMP_CSV_COL04 aarde_waarde,
FAC_IMP_CSV_COL05 aarde_resultaat,
FAC_IMP_CSV_COL06 lekstroom_waarde,
FAC_IMP_CSV_COL07 lekstroom_resultaat,
FAC_IMP_CSV_COL08 aanrk_lekstrm_waarde,
FAC_IMP_CSV_COL09 aanrk_lekstrm_resultaat,
FAC_IMP_CSV_COL10 verv_lekstrm_waarde,
FAC_IMP_CSV_COL11 verv_lekstrm_resultaat,
FAC_IMP_CSV_COL12 isolatie_waarde,
FAC_IMP_CSV_COL13 isolatie_resultaat,
FAC_IMP_CSV_COL14 bedrading,
FAC_IMP_CSV_COL15 bedrading_resultaat,
FAC_IMP_CSV_COL16 gebruikertest,
FAC_IMP_CSV_COL17 gebruikers_resultaat,
FAC_IMP_CSV_COL18 v_volgende_testdatum_str
FROM fac_imp_csv
ORDER BY FAC_IMP_CSV_INDEX;
v_errormsg VARCHAR (200);
v_errorhint VARCHAR (200);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (200);
v_ins_key NUMBER;
v_ins_discipline_key NUMBER;
v_aanduiding VARCHAR2 (1000) := '';
v_ins_srtcontrole_key NUMBER;
v_deelsrtcontrole_key NUMBER;
v_ins_deelsrtcontrole_key NUMBER;
v_ins_kenmerk_key NUMBER;
v_count NUMBER :=0;
v_ins_count NUMBER :=0;
v_lastdate DATE;
v_newdate DATE;
v_time DATE;
v_perslid_key NUMBER;
v_test_datum DATE;
v_volgende_testdatum DATE;
BEGIN
-- open cursor haal alle regels op unique per smsartwareID en max(datum) (laatste alleen zichtbaar)
-- haal object op babsi van smartware code
-- maak een ins_deelsrtcontrole regele aan met ins_deel_key, strt_controle (bv smartware) en de controle_mode (bv uitgevoerd)
-- maar per waarde een ins_kmdeelsrtcontrl aan met ins_deelsrtcontrole_key, ins_kenmerk_key, waarde.
-- al;s er een fout uis set de notificatie dat er een foute waarde inzat, en waqtbde fout was,
-- update de kenmerk wanneer de laatste import van dit object is (SYSDATE)
-- DBMS_OUTPUT.put_line ('Starting update');
v_aanduiding := 'Geen acties voor SMARTWARE IMPORT';
--v_srtcontrole:=10;
v_ins_kenmerk_key := -1;
v_ins_key:=0;
v_lastdate := NULL;
v_newdate := NULL;
SELECT prs_perslid_key INTO v_perslid_key from fac_import where fac_import_key=p_import_key;
v_count:=1;
FOR rec in cs
LOOP
v_count:=v_count+1;
v_ins_key:=0;
v_ins_count :=0;
v_newdate := NULL;
v_test_datum := fac.safe_to_date (rec.v_laatste_datum_str,'DD-MM-YYYY');
v_volgende_testdatum := fac.safe_to_date (rec.v_volgende_testdatum_str,'DD-MM-YYYY');
SELECT ins_deel_key, ins_discipline_key
INTO v_ins_key, v_ins_discipline_key
FROM ins_v_deel_gegevens
WHERE ins_deel_omschrijving=rec.smartwareid;
IF v_ins_key >0
THEN
v_ins_deelsrtcontrole_key:=0;
v_ins_srtcontrole_key:=0;
BEGIN
v_aanduiding := 'Ophalen ins_srtcontrole_key ('||v_count||')';
SELECT isc.INS_SRTCONTROLE_KEY
INTO v_ins_srtcontrole_key
FROM ins_deel id, ins_srtdeel isd, ins_srtcontrole isc
WHERe id.INS_DEEL_KEY=v_ins_key
AND isd.INS_SRTDEEL_KEY = id.INS_SRTDEEL_KEY
AND isc.INS_SRTINSTALLATIE_KEY=isd.ins_srtdeel_key
AND isc.ins_srtcontrole_omschrijving='11A - NEN3140';
--
EXCEPTION
WHEN NO_DATA_FOUND THEN
v_ins_srtcontrole_key:=-1;
v_ins_deelsrtcontrole_key:=-1;
fac.imp_writelog (p_import_key,
'W',
'Er is geen 11A - NEN3140 Taak voor object met Smartware ID : '||rec.smartwareid ||' gevonden.',
'Smartware data niet verwerkt!');
END;
v_aanduiding := 'Ophalen deelsrtcontrole_key, ins_srtcontrole_key ('||v_count||')';
BEGIN
SELECT idc.ins_deelsrtcontrole_key, idc.ins_srtcontrole_key
INTO v_ins_deelsrtcontrole_key, v_ins_srtcontrole_key
FROM ins_deelsrtcontrole idc, ins_srtcontrole isc
WHERE idc.ins_deel_key=v_ins_key
AND isc.ins_srtcontrole_key = idc.ins_srtcontrole_key
AND isc.ins_srtcontrole_omschrijving='11A - NEN3140'
AND idc.ins_deelsrtcontrole_status IN (0,2); -- 0;Ingepland 2;Gestart/In behandeling dus niet 5;Afgemeld/Gereed gemeld; 6;Afgerond)
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_deelsrtcontrole_key:=-1;
END;
v_count:=0;
IF v_ins_deelsrtcontrole_key=-1 AND v_ins_srtcontrole_key != -1 THEN
v_aanduiding := 'Aanmaken ins_deelcontrole gaat fout ('||v_count||') voor object '||rec.smartwareid;
INSERT INTO ins_deelsrtcontrole(
ins_deel_key,
ins_srtcontrole_key,
ins_scenario_key,
ins_deelsrtcontrole_datum_org
)
VALUES (v_ins_key,
v_ins_srtcontrole_key,
1,
v_test_datum
)
RETURNING ins_deelsrtcontrole_key
INTO v_ins_deelsrtcontrole_key;
END IF;
IF v_ins_deelsrtcontrole_key>0 THEN
v_aanduiding := 'Update deelsrtcontrole ('||v_count||')';
UPDATE ins_deelsrtcontrole
SET ins_deelsrtcontrole_status=6,
ins_deelsrtcontrole_datum=v_test_datum,
ins_controlemode_key=10,
ins_deelsrtcontrole_datum_org=v_test_datum,
ins_deelsrtcontrole_freezecost=0,
prs_perslid_key=v_perslid_key -- persoon die de import heeft gestart.
WHERE ins_deelsrtcontrole_key=v_ins_deelsrtcontrole_key;
v_aanduiding := 'Verwerken resultaten ('||v_count||')';
IF LENGTH(rec.aarde_waarde) > 0
THEN
v_aanduiding := 'Verwerken resultaten 1('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Aarde (Ohm)', rec.aarde_waarde);
--flx.setflex('INS',141,v_ins_key,rec.aarde_waarde);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Aarde (Ohm)';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_aanduiding := 'Kenmerk key Aarde niet gevonden('||v_count||')'||'-'||v_ins_srtcontrole_key;
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
v_aanduiding := 'Fout bij verwerken resultaten 1('||v_count||')-'||v_ins_key;
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.aarde_waarde, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.aarde_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 2('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Aarde Resultaat', rec.aarde_resultaat);
--flx.setflex('INS',142,v_ins_key,rec.aarde_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Aarde Resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.aarde_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.lekstroom_waarde) > 0
THEN
v_aanduiding := 'Verwerken resultaten 3('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Lekstroom (mA)', rec.lekstroom_waarde);
--flx.setflex('INS',143,v_ins_key,rec.lekstroom_waarde);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Lekstroom (mA)';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.lekstroom_waarde, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.lekstroom_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 4('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Lekstroom resultaat', rec.lekstroom_resultaat);
--flx.setflex('INS',144,v_ins_key,rec.lekstroom_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Lekstroom resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.lekstroom_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.aanrk_lekstrm_waarde) > 0
THEN
v_aanduiding := 'Verwerken resultaten 5('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Aanraak lekstroom (mA)', rec.aanrk_lekstrm_waarde);
--flx.setflex('INS',145,v_ins_key,rec.aanrk_lekstrm_waarde);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Aanraak lekstroom (mA)';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.aanrk_lekstrm_waarde, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.aanrk_lekstrm_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 6('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Aanraak lekstroom resultaat', rec.aanrk_lekstrm_resultaat);
--lx.setflex('INS',146,v_ins_key,rec.aanrk_lekstrm_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Aanraak lekstroom resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.aanrk_lekstrm_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.verv_lekstrm_waarde) > 0
THEN
v_aanduiding := 'Verwerken resultaten 7('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Vervangende lekstroom (mA)', rec.verv_lekstrm_waarde);
--flx.setflex('INS',147,v_ins_key,rec.verv_lekstrm_waarde);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Vervangende lekstroom (mA)';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.verv_lekstrm_waarde, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.verv_lekstrm_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 8('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Vervangende lekstroom resultaat', rec.verv_lekstrm_resultaat);
--flx.setflex('INS',148,v_ins_key,rec.verv_lekstrm_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Vervangende lekstroom resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.verv_lekstrm_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.isolatie_waarde) > 0
THEN
v_aanduiding := 'Verwerken resultaten 9('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Isolatie (MOhm)', rec.isolatie_waarde);
--flx.setflex('INS',149,v_ins_key,rec.isolatie_waarde);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Isolatie (MOhm)';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.isolatie_waarde, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.isolatie_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 10('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Isolatie resultaat', rec.isolatie_resultaat);
--flx.setflex('INS',150,v_ins_key,rec.isolatie_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Isolatie resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.isolatie_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.bedrading) > 0
THEN
v_aanduiding := 'Verwerken resultaten 11('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Bedrading', rec.bedrading);
--flx.setflex('INS',150,v_ins_key,rec.bedrading);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Bedrading';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.bedrading, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.bedrading_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 12('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Bedrading resultaat', rec.bedrading_resultaat);
--flx.setflex('INS',150,v_ins_key,rec.bedrading_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Bedrading resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.bedrading_resultaat, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.gebruikertest) > 0
THEN
v_aanduiding := 'Verwerken resultaten 13('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Gebruikerstest', rec.gebruikertest);
--flx.setflex('INS',150,v_ins_key,rec.gebruikertest);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Gebruikerstest';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.gebruikertest, SYSDATE);
END IF;
END IF;
IF LENGTH(rec.gebruikers_resultaat) > 0
THEN
v_aanduiding := 'Verwerken resultaten 14('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Gebruikers resultaat', rec.gebruikers_resultaat);
--flx.setflex('INS',150,v_ins_key,rec.gebruikers_resultaat);
BEGIN
SELECT ins_kenmerk_key INTO v_ins_kenmerk_key FROM ins_kenmerk where ins_srtinstallatie_key=v_ins_srtcontrole_key AND ins_kenmerk_niveau='C' AND ins_kenmerk_omschrijving='Gebruikers resultaat';
EXCEPTION
WHEN NO_DATA_FOUND
THEN
v_ins_kenmerk_key:=-1;
END;
IF v_ins_kenmerk_key>0 THEN
INSERT into ins_kmdeelsrtcontr(ins_deelsrtcontrole_key, ins_kenmerk_key, ins_kmdeelsrtcontr_waarde, ins_kmdeelsrtcontr_aanmaak)
VALUES(v_ins_deelsrtcontrole_key, v_ins_kenmerk_key, rec.gebruikers_resultaat, SYSDATE);
END IF;
END IF;
v_aanduiding := 'Verwerken resultaten test datum en resultaat('||v_count||')-'||v_ins_key;
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Laatste test', TO_CHAR(v_test_datum,'DD-MM-YYYY'));
wdka.setKenmerkObject(v_ins_key, v_ins_discipline_key, 'Laatste resultaat', rec.test_resultaat);
-- flx.setflex('INS', 152, v_ins_key, TO_CHAR(v_test_datum,'DD-MM-YYYY'));
-- flx.setflex('INS', 153, v_ins_key, rec.test_resultaat);
fac.trackaction ('INSUPD', v_ins_key, v_perslid_key, SYSDATE,
'Object geupdate met PAT data.');
ELSE
fac.imp_writelog (p_import_key,
'W',
'Taak voor object met Smartware ID : '||rec.smartwareid ||' is niet gevonden.',
'Smartware data niet verwerkt!');
END IF;
ELSE
fac.imp_writelog (p_import_key,
'W',
'Object met Smartware ID : '||rec.smartwareid ||' is niet bekend in Facilitor.',
'Object niet gevonden!');
END IF;
END LOOP;
EXCEPTION
WHEN OTHERS
THEN
oracle_err_num := SQLCODE;
oracle_err_mes := SUBSTR (SQLERRM, 1, 200);
v_errormsg :=
v_errormsg
|| 'ORACLE (error '
|| oracle_err_num
|| '/'
|| oracle_err_mes
|| ')';
fac.imp_writelog (p_import_key,
'E',
SUBSTR (v_aanduiding || v_errormsg, 1, 1000),
'Inleesproces opdrachtstatusberichten afgebroken!');
END;
/
-- kenmkerdomein-view tbv. Aanvraag Objectensoort!
CREATE OR REPLACE VIEW WDKA_V_INS_SRT
(
FAC_USRDATA_KEY,
FAC_USRDATA_OMSCHR
)
AS
SELECT isd.ins_srtdeel_key, ig.ins_srtgroep_omschrijving||'>'||isd.ins_srtdeel_omschrijving
FROM ins_srtdeel isd, ins_srtgroep ig
WHERE ig.ins_srtgroep_key=isd.ins_srtgroep_key
ORDER BY ig.ins_srtgroep_omschrijving, isd.ins_srtdeel_omschrijving;
CREATE OR REPLACE VIEW WDKA_V_INS_LEVERANCIER
(
fac_usrdata_key,
omschrijving,
vervaldatum
)
AS
SELECT prs_bedrijf_key,prs_bedrijf_naam,NULL
FROM prs_bedrijf
WHERE prs_bedrijf_leverancier=1 AND prs_bedrijf_verwijder IS NULL;
CREATE OR REPLACE VIEW wdka_v_tasks_nextmonth
AS
select id.ins_deel_omschrijving, id.ins_deel_opmerking, al.ALG_LOCATIE_CODE, algv.ALG_GEBOUW_CODE,algv.ALG_RUIMTE_NR,
CASE
WHEN aa.alg_ruimte_omschrijving LIKE '%@wedeka.nl'
THEN aa.alg_ruimte_omschrijving
ELSE (SELECT prs_perslid_email
FROM prs_perslid
WHERE prs_perslid_key=id.prs_perslid_key_beh)
END email,
i.ins_srtcontrole_omschrijving taak,
fac.nextcyclusdatedeel(id.ins_deel_key,i.ins_srtcontrole_key,0) nextdate
FROM ins_srtcontrole i, ins_deel id, alg_ruimte aa, alg_v_onroerendgoed_gegevens algv, alg_locatie al
WHERE (id.ins_deel_vervaldatum<fac.NEXTCYCLUSDATEDEEL(id.ins_deel_key,i.ins_srtcontrole_key,0) OR id.ins_deel_vervaldatum IS NULL)
AND i.ins_srtinstallatie_key = id.ins_srtdeel_key
AND fac.nextcyclusdatedeel(id.ins_deel_key,i.ins_srtcontrole_key,0) BETWEEN TRUNC(SYSDATE) AND SYSDATE+30
AND algv.alg_ruimte_key = aa.alg_ruimte_key
AND al.alg_locatie_key = algv.alg_locatie_key
AND id.ins_alg_ruimte_key=aa.alg_ruimte_key(+) order by email;
CREATE OR REPLACE VIEW wdka_v_alg_locaties
(
fac_usrdata_key,
fac_usrdata_omschr
)
AS
SELECT alg_locatie_key, alg_locatie_omschrijving||'('||alg_locatie_code||')'
FROM alg_locatie
WHERE alg_locatie_verwijder IS NULL;
CREATE OR REPLACE VIEW wdka_v_objectmutatie
AS
SELECT i.ins_deel_omschrijving,
i.ins_deel_opmerking,
i.ins_deel_aanmaak,
(SELECT ft.fac_tracking_datum
FROM fac_tracking ft
WHERE ft.fac_tracking_refkey=i.ins_deel_key
AND ft.fac_srtnotificatie_key=133) wijzigingsdatum,
(SELECT iag.ins_srtgroep_omschrijving
FROM ins_v_aanwezigsrtgroep iag, ins_v_aanwezigsrtdeel iad
WHERE iad.ins_srtdeel_key=i.ins_srtdeel_key
AND iag.ins_srtgroep_key=iad.ins_srtgroep_key) groep,
(SELECT iad.ins_srtdeel_omschrijving
FROM ins_v_aanwezigsrtdeel iad
WHERE iad.ins_srtdeel_key=i.ins_srtdeel_key) objectsoort,
(SELECT p.prs_perslid_naam_friendly
FROM prs_v_perslid_fullnames p
WHERE p.prs_perslid_key=i.prs_perslid_key_beh) beheerder,
(SELECT alg.alg_locatie_omschrijving||'('||alg.alg_locatie_code||')'
FROM alg_v_locatie_gegevens alg
WHERE alg.alg_locatie_key=aag.alg_locatie_key) locatie,
aag.alg_gebouw_naam,
aag.alg_ruimte_nr
FROM ins_deel i, alg_v_allonrgoed_gegevens aag
WHERE aag.alg_ruimte_key=i.ins_alg_ruimte_key
------ payload end ------
SET DEFINE OFF
BEGIN adm.systrackscriptId ('$Id$', 0); END;
/
COMMIT;
SET ECHO OFF
SPOOL OFF
SET DEFINE ON
PROMPT Logfile of this upgrade is: &fcltlogfile