BVB1#73074 -- MJOP inrichten voor BVB
svn path=/Customer/; revision=56562
This commit is contained in:
605
onces/BVB1/BVB1#73074.sql
Normal file
605
onces/BVB1/BVB1#73074.sql
Normal file
@@ -0,0 +1,605 @@
|
||||
-- $Id$
|
||||
--
|
||||
-- Init voor inrichten MJOB
|
||||
|
||||
DEFINE thisfile = 'BVB1#73074.SQL'
|
||||
DEFINE dbuser = '^BVB1'
|
||||
|
||||
SET ECHO ON
|
||||
SET DEFINE ON
|
||||
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
|
||||
WHENEVER SQLERROR EXIT;
|
||||
SELECT adm.scriptspoolfile('&dbuser', '&thisfile') AS fcltlogfile FROM DUAL;
|
||||
WHENEVER SQLERROR CONTINUE;
|
||||
SPOOL &fcltlogfile
|
||||
SET DEFINE OFF
|
||||
|
||||
------ payload begin ------
|
||||
|
||||
|
||||
-- Lees de csv file in
|
||||
-- Plaats volgnummers bij objecten die niet uniek zijn
|
||||
DECLARE
|
||||
CURSOR c IS
|
||||
SELECT *
|
||||
FROM fac_imp_csv
|
||||
WHERE fac_imp_csv_col03 IN
|
||||
( SELECT fac_imp_csv_col03
|
||||
FROM ( SELECT fac_imp_csv_col03, fac_imp_csv_col06
|
||||
FROM fac_imp_csv
|
||||
GROUP BY fac_imp_csv_col03, fac_imp_csv_col06)
|
||||
GROUP BY fac_imp_csv_col03
|
||||
HAVING COUNT (fac_imp_csv_col03) > 1)
|
||||
ORDER BY fac_imp_csv_col03, fac_imp_csv_col06;
|
||||
|
||||
v_prev_code VARCHAR2 (100);
|
||||
v_prev_oms VARCHAR2 (100);
|
||||
v_index NUMBER;
|
||||
BEGIN
|
||||
v_prev_code := '-1';
|
||||
v_prev_oms := '-1';
|
||||
v_index := 1;
|
||||
|
||||
FOR rec IN c
|
||||
LOOP
|
||||
IF rec.fac_imp_csv_col03 <> v_prev_code
|
||||
THEN
|
||||
v_index := 1;
|
||||
ELSE
|
||||
IF rec.fac_imp_csv_col06 <> v_prev_oms
|
||||
THEN
|
||||
v_index := v_index + 1;
|
||||
END IF;
|
||||
END IF;
|
||||
|
||||
UPDATE fac_imp_csv
|
||||
SET fac_imp_csv_col03 = fac_imp_csv_col03 || '_' || v_index
|
||||
WHERE fac_imp_csv_key = rec.fac_imp_csv_key;
|
||||
|
||||
v_prev_code := rec.fac_imp_csv_col03;
|
||||
v_prev_oms := rec.fac_imp_csv_col06;
|
||||
END LOOP;
|
||||
END;
|
||||
/
|
||||
|
||||
-- Dan blijven er toch nog dubbelen over. Bijvoorbeeld brandblussers die als een object benoemd staan
|
||||
-- maar waarvan ieder jaar er een aantal vervangen worden.
|
||||
DECLARE
|
||||
CURSOR c IS
|
||||
select fac_imp_csv_col03, fac_imp_csv_col06, fac_imp_csv_col08, count(*) from fac_imp_csv where coalesce(fac_imp_csv_col16,'0') <> '0'
|
||||
group by fac_imp_csv_col03, fac_imp_csv_col06, fac_imp_csv_col08 having count(*) > 1;
|
||||
|
||||
CURSOR c_sub(c_col03 VARCHAR2, c_col08 VARCHAR2) IS
|
||||
SELECT * FROM fac_imp_csv
|
||||
WHERE fac_imp_csv_col03 = c_col03
|
||||
AND fac_imp_csv_col08 = c_col08;
|
||||
|
||||
v_prev_code VARCHAR2 (100);
|
||||
v_prev_taak VARCHAR2 (100);
|
||||
v_index NUMBER;
|
||||
BEGIN
|
||||
v_prev_code := '-1';
|
||||
v_prev_taak := '-1';
|
||||
|
||||
FOR rec1 IN c
|
||||
LOOP
|
||||
v_index := 1;
|
||||
FOR rec IN c_sub(rec1.fac_imp_csv_col03, rec1.fac_imp_csv_col08)
|
||||
LOOP
|
||||
IF rec.fac_imp_csv_col03 <> v_prev_code
|
||||
THEN
|
||||
v_index := 1;
|
||||
ELSE
|
||||
v_index := v_index + 1;
|
||||
END IF;
|
||||
|
||||
UPDATE fac_imp_csv
|
||||
SET fac_imp_csv_col03 = fac_imp_csv_col03 || '_' || CHR(64 + v_index)
|
||||
WHERE fac_imp_csv_key = rec.fac_imp_csv_key;
|
||||
|
||||
v_prev_code := rec.fac_imp_csv_col03;
|
||||
v_prev_taak := rec.fac_imp_csv_col08;
|
||||
END LOOP;
|
||||
END LOOP;
|
||||
END;
|
||||
/
|
||||
|
||||
DELETE fac_imp_ins;
|
||||
|
||||
-- Plaats de data uit de csv file in de fac_imp_ins tabel
|
||||
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_aantal,
|
||||
ins_kenmerkwaarde1,
|
||||
ins_kenmerkwaarde2,
|
||||
ins_kenmerkwaarde3,
|
||||
ins_kenmerkwaarde4,
|
||||
ins_kenmerkwaarde5,
|
||||
ins_kenmerkwaarde6,
|
||||
ins_kenmerkwaarde7,
|
||||
ins_kenmerkwaarde8,
|
||||
ins_kenmerkwaarde9,
|
||||
ins_deel_aanmaak)
|
||||
SELECT 'MJOB',
|
||||
fac_imp_csv_col04, -- ins_srtgroep_omschrijving
|
||||
fac_imp_csv_col05, -- ins_srtdeel_code
|
||||
fac_imp_csv_col05, -- ins_srtdeel_omschrijving
|
||||
fac_imp_csv_col03, -- ins_deel_omschrijving
|
||||
fac_imp_csv_col06,
|
||||
'BVB', -- alg_locatie_code
|
||||
'BVB', -- alg_gebouw_upper
|
||||
COALESCE (
|
||||
(SELECT alg_verdieping_volgnr
|
||||
FROM alg_v_ruimte_gegevens rg
|
||||
WHERE UPPER (rg.alg_ruimte_nr) = UPPER (fac_imp_csv_col23)),
|
||||
1),
|
||||
COALESCE (
|
||||
(SELECT alg_ruimte_nr
|
||||
FROM alg_v_ruimte_gegevens rg
|
||||
WHERE UPPER (rg.alg_ruimte_nr) = UPPER (fac_imp_csv_col23)),
|
||||
'K.1.001'),
|
||||
-- fac_imp_csv_col09, -- aantal
|
||||
fac.safe_to_number (REPLACE (fac_imp_csv_col09, ',', '.')),
|
||||
DECODE (fac_imp_csv_col10,
|
||||
NULL, NULL,
|
||||
'Eenheid|0=' || fac_imp_csv_col10), -- Eenheid
|
||||
DECODE (fac_imp_csv_col22,
|
||||
NULL, NULL,
|
||||
'Fonds|0=' || fac_imp_csv_col22), -- Fonds
|
||||
DECODE (fac_imp_csv_col23,
|
||||
NULL, NULL,
|
||||
'Ruimtenummer|0=' || fac_imp_csv_col23), -- Ruimtenummer
|
||||
DECODE (fac_imp_csv_col24,
|
||||
NULL, NULL,
|
||||
'Locatie|0=' || fac_imp_csv_col24), -- Locatie
|
||||
DECODE (fac_imp_csv_col26,
|
||||
NULL, NULL,
|
||||
'Toelichting|0=' || fac_imp_csv_col26), -- Toelichting
|
||||
DECODE (fac_imp_csv_col30,
|
||||
NULL, NULL,
|
||||
'Conditie|0=' || fac_imp_csv_col30), -- Conditie
|
||||
DECODE (fac_imp_csv_col31,
|
||||
NULL, NULL,
|
||||
'Type|0=' || fac_imp_csv_col31), -- Type
|
||||
DECODE (fac_imp_csv_col32,
|
||||
NULL, NULL,
|
||||
'Fabricaat|0=' || fac_imp_csv_col32), -- Fabricaat
|
||||
DECODE (fac_imp_csv_col54,
|
||||
NULL, NULL,
|
||||
'Groepering|0=' || fac_imp_csv_col54), -- Groepering (fase01, fase02)
|
||||
DECODE (
|
||||
fac_imp_csv_col33,
|
||||
NULL, SYSDATE,
|
||||
COALESCE (
|
||||
fac.safe_to_date ('0101' || fac_imp_csv_col33, 'ddmmyyyy'),
|
||||
SYSDATE))
|
||||
FROM fac_imp_csv
|
||||
WHERE fac_imp_csv_col08 <> 'Handeling';
|
||||
|
||||
-- controleer of de volgnummers in de fac_imp_ins tabel staan.
|
||||
|
||||
-- Zet de srtgroep omschrijving goed.
|
||||
DECLARE
|
||||
CURSOR c IS
|
||||
SELECT distinct ins_srtgroep_omschrijving
|
||||
FROM fac_imp_ins;
|
||||
|
||||
v_groep VARCHAR2 (50);
|
||||
BEGIN
|
||||
FOR rec IN c
|
||||
LOOP
|
||||
BEGIN
|
||||
SELECT groep
|
||||
INTO v_groep
|
||||
FROM (SELECT '11 - bodemvoorzieningen' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '13 - vloeren op grondslag' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '16 - funderingsconstructie' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '17 - paalfundering' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '19 - onderhoud algemeen' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '21 - buitenwanden' groep FROM DUAL
|
||||
UNION
|
||||
SELECT '22 - binnenwanden' FROM DUAL
|
||||
UNION
|
||||
SELECT '23 - vloeren, galerijen' FROM DUAL
|
||||
UNION
|
||||
SELECT '24 - trappen en hellingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '25 - binnenzijde gevelconstructie' FROM DUAL
|
||||
UNION
|
||||
SELECT '26 - vloerconstructie' FROM DUAL
|
||||
UNION
|
||||
SELECT '27 - daken' FROM DUAL
|
||||
UNION
|
||||
SELECT '28 - hoofddraagkonstrukties' FROM DUAL
|
||||
UNION
|
||||
SELECT '29 - draagconstructie' FROM DUAL
|
||||
UNION
|
||||
SELECT '31 - buitenwandopeningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '32 - binnenwandopeningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '33 - vloeropeningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '34 - balustrades en leuningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '35 - plafonds' FROM DUAL
|
||||
UNION
|
||||
SELECT '37 - dakopeningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '38 - inbouwpakketten' FROM DUAL
|
||||
UNION
|
||||
SELECT '39 - afbouw' FROM DUAL
|
||||
UNION
|
||||
SELECT '41 - buitenwandafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '42 - binnenwandafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '43 - vloerafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '44 - trap- en hellingafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '45 - plafondafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '46 - schilderwerk' FROM DUAL
|
||||
UNION
|
||||
SELECT '47 - dakafwerkingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '48 - afwerkingspakketten' FROM DUAL
|
||||
UNION
|
||||
SELECT '49 - afwerking algemeen' FROM DUAL
|
||||
UNION
|
||||
SELECT '51 - warmte-opwekking' FROM DUAL
|
||||
UNION
|
||||
SELECT '52 - afvoeren' FROM DUAL
|
||||
UNION
|
||||
SELECT '53 - water' FROM DUAL
|
||||
UNION
|
||||
SELECT '54 - gas' FROM DUAL
|
||||
UNION
|
||||
SELECT '55 - koude-opwekking' FROM DUAL
|
||||
UNION
|
||||
SELECT '56 - warmtedistributie' FROM DUAL
|
||||
UNION
|
||||
SELECT '57 - luchtbehandeling' FROM DUAL
|
||||
UNION
|
||||
SELECT '58 - regeling klimaat en sanitair' FROM DUAL
|
||||
UNION
|
||||
SELECT '59 - mechanische installaties' FROM DUAL
|
||||
UNION
|
||||
SELECT '61 - centrale elektrotechnische voorzieningen'
|
||||
FROM DUAL
|
||||
UNION
|
||||
SELECT '62 - kracht' FROM DUAL
|
||||
UNION
|
||||
SELECT '63 - verlichting' FROM DUAL
|
||||
UNION
|
||||
SELECT '64 - communicatie' FROM DUAL
|
||||
UNION
|
||||
SELECT '65 - beveiliging' FROM DUAL
|
||||
UNION
|
||||
SELECT '66 - transport' FROM DUAL
|
||||
UNION
|
||||
SELECT '67 - gebouwbeheersysteem' FROM DUAL
|
||||
UNION
|
||||
SELECT '69 - electrische installaties algemeen' FROM DUAL
|
||||
UNION
|
||||
SELECT '71 - vaste verkeersvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '72 - vaste gebruikersvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '73 - vaste keukenvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '74 - vaste sanitaire voorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '75 - vaste onderhoudsvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '76 - vaste opslagvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '79 - vaste inrichtingen' FROM DUAL
|
||||
UNION
|
||||
SELECT '80 - losse inrichting' FROM DUAL
|
||||
UNION
|
||||
SELECT '81 - losse inventaris voor verkeersruimten'
|
||||
FROM DUAL
|
||||
UNION
|
||||
SELECT '82 - losse inventaris voor gebruiksruimten'
|
||||
FROM DUAL
|
||||
UNION
|
||||
SELECT '83 - losse keukeninventaris' FROM DUAL
|
||||
UNION
|
||||
SELECT '84 - losse sanitaire inventaris' FROM DUAL
|
||||
UNION
|
||||
SELECT '85 - losse schoonmaakinventaris' FROM DUAL
|
||||
UNION
|
||||
SELECT '86 - losse opberginventaris' FROM DUAL
|
||||
UNION
|
||||
SELECT '89 - losse inventaris' FROM DUAL
|
||||
UNION
|
||||
SELECT '90 - terrein' FROM DUAL
|
||||
UNION
|
||||
SELECT '91 - grondvoorzieningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '92 - opstallen' FROM DUAL
|
||||
UNION
|
||||
SELECT '93 - omeheiningen' FROM DUAL
|
||||
UNION
|
||||
SELECT '94 - terreinafwerking' FROM DUAL
|
||||
UNION
|
||||
SELECT '95 - terreininstallaties, werktuigkundig'
|
||||
FROM DUAL
|
||||
UNION
|
||||
SELECT '96 - terreininstallaties, elektrotechnisch'
|
||||
FROM DUAL
|
||||
UNION
|
||||
SELECT '97 - terreininrichting standaard' FROM DUAL
|
||||
UNION
|
||||
SELECT '98 - terreininrichting bijzonder' FROM DUAL
|
||||
UNION
|
||||
SELECT '99 - terrein algemeen' FROM DUAL) grp
|
||||
WHERE grp.groep LIKE rec.ins_srtgroep_omschrijving || '%';
|
||||
|
||||
UPDATE fac_imp_ins
|
||||
SET ins_srtgroep_omschrijving = v_groep
|
||||
WHERE ins_srtgroep_omschrijving = rec.ins_srtgroep_omschrijving;
|
||||
|
||||
DBMS_OUTPUT.put_line (
|
||||
rec.ins_srtgroep_omschrijving || ' ### ' || v_groep);
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
DBMS_OUTPUT.put_line (
|
||||
rec.ins_srtgroep_omschrijving
|
||||
|| ' $$$ '
|
||||
|| 'Niet gevonden');
|
||||
END;
|
||||
END LOOP;
|
||||
END;
|
||||
/
|
||||
|
||||
-- Lees de importsheet in in de database
|
||||
DECLARE
|
||||
begin fac_update_ins(101);
|
||||
end;
|
||||
/
|
||||
|
||||
-- Maak de taken aan
|
||||
DECLARE
|
||||
CURSOR c IS
|
||||
SELECT TRIM (fac_imp_csv_col03) ins_deel_omschrijving,
|
||||
TRIM (fac_imp_csv_col05) ins_srtdeel_code,
|
||||
TRIM (fac_imp_csv_col08) ins_srtcontrole_omschrijving, -- taak
|
||||
fac_imp_csv_col16 ins_srtcontroledl_xcp_materia, -- prijs/stuk
|
||||
fac_imp_csv_col17 ins_srtcontrole_periode, -- cyclus
|
||||
FAC.safe_to_date(fac_imp_csv_col25 || '0101', 'yyyymmdd') ins_srtcontroledl_xcp_startdat, -- startjaar
|
||||
fac_imp_csv_col14 ins_srtcontroledl_xcp_aantal, -- taak aantal
|
||||
TRIM (fac_imp_csv_col15) ins_srtcontroledl_xcp_aanteh, -- taak_eenheid
|
||||
TRIM (fac_imp_csv_col54) ins_srtcontroledl_xcp_groep, -- fasering
|
||||
TRIM (fac_imp_csv_col22) prs_kostenplaats_nr -- fasering
|
||||
FROM fac_imp_csv
|
||||
WHERE COALESCE(fac_imp_csv_col16, '0') <> '0';
|
||||
|
||||
oracle_err_num NUMBER;
|
||||
oracle_err_mes VARCHAR2 (200);
|
||||
v_errormsg VARCHAR2 (200);
|
||||
v_errorhint VARCHAR2 (200);
|
||||
v_aanduiding VARCHAR2 (100);
|
||||
|
||||
v_deel_key NUMBER;
|
||||
v_srtdeel_key NUMBER;
|
||||
v_srtcontrole_key NUMBER;
|
||||
v_srtcontroledl_xcp_key NUMBER;
|
||||
v_taakcat_key NUMBER;
|
||||
v_srtcontrole_periode INS_SRTCONTROLE.INS_SRTCONTROLE_PERIODE%TYPE;
|
||||
v_srtcontrole_materiaal INS_SRTCONTROLE.INS_SRTCONTROLE_MATERIAAL%TYPE;
|
||||
v_srtcontrole_percentage INS_SRTCONTROLE.INS_SRTCONTROLE_PERCENTAGE%TYPE;
|
||||
v_srtcontrole_level INS_SRTCONTROLE.INS_SRTCONTROLE_LEVEL%TYPE;
|
||||
v_percentage NUMBER;
|
||||
v_materiaal INS_SRTCONTROLEDL_XCP.INS_SRTCONTROLEDL_XCP_MATERIA%TYPE;
|
||||
v_kostenplaats_key PRS_KOSTENPLAATS.PRS_KOSTENPLAATS_KEY%TYPE;
|
||||
v_aantal INS_SRTCONTROLEDL_XCP.INS_SRTCONTROLEDL_XCP_AANTAL%TYPE;
|
||||
v_stopdat INS_SRTCONTROLEDL_XCP.INS_SRTCONTROLEDL_XCP_EIND%TYPE;
|
||||
v_periode INS_SRTCONTROLEDL_XCP.INS_SRTCONTROLEDL_XCP_PERIODE%TYPE;
|
||||
BEGIN
|
||||
--fac_update_ins(p_import_key);
|
||||
|
||||
FOR rec IN c
|
||||
LOOP
|
||||
BEGIN
|
||||
v_aanduiding := rec.ins_deel_omschrijving;
|
||||
-- zoek het object
|
||||
v_errorhint := 'Zoek het object';
|
||||
|
||||
SELECT ins_deel_key, ins_srtdeel_key
|
||||
INTO v_deel_key, v_srtdeel_key
|
||||
FROM ins_deel
|
||||
WHERE ins_deel_omschrijving = rec.ins_deel_omschrijving;
|
||||
|
||||
-- zoek de taakcategorie
|
||||
v_errorhint := 'Zoek de taakcategorie';
|
||||
v_taakcat_key := 4;
|
||||
|
||||
-- SELECT ins_discipline_key
|
||||
-- INTO v_taakcat_key
|
||||
-- FROM ctr_discipline
|
||||
-- WHERE UPPER (ins_discipline_omschrijving) =
|
||||
-- UPPER (rec.ins_kenmerkwaarde3);
|
||||
|
||||
v_errorhint := 'Bepaal materiaalkosten';
|
||||
v_materiaal :=
|
||||
FAC.safe_to_number (
|
||||
REPLACE (rec.ins_srtcontroledl_xcp_materia, ',', '.')) * 1.04 * 1.04;
|
||||
|
||||
v_aantal :=
|
||||
FAC.safe_to_number (
|
||||
REPLACE (rec.ins_srtcontroledl_xcp_aantal, ',', '.'));
|
||||
|
||||
BEGIN
|
||||
v_errorhint := 'Bepaal percentage';
|
||||
v_percentage := NULL;
|
||||
|
||||
-- IF rec.ins_kenmerkwaarde7 <> 1
|
||||
-- AND rec.ins_kenmerkwaarde7 IS NOT NULL
|
||||
-- THEN
|
||||
-- v_percentage := rec.ins_kenmerkwaarde7 * 100;
|
||||
-- END IF;
|
||||
v_percentage := 100;
|
||||
|
||||
|
||||
-- zoek de taak
|
||||
v_errorhint := 'Zoek de taak';
|
||||
|
||||
SELECT ins_srtcontrole_key,
|
||||
ins_srtcontrole_periode,
|
||||
ins_srtcontrole_materiaal,
|
||||
ins_srtcontrole_percentage
|
||||
INTO v_srtcontrole_key,
|
||||
v_srtcontrole_periode,
|
||||
v_srtcontrole_materiaal,
|
||||
v_srtcontrole_percentage
|
||||
FROM ins_srtcontrole
|
||||
WHERE ins_srtinstallatie_key = v_srtdeel_key
|
||||
AND ins_srtcontrole_omschrijving = SUBSTR(rec.ins_srtdeel_code || ' - ' || rec.ins_srtcontrole_omschrijving,1,60)
|
||||
AND ins_srtcontrole_niveau = 'S'
|
||||
AND ctr_discipline_key = v_taakcat_key;
|
||||
EXCEPTION
|
||||
WHEN NO_DATA_FOUND
|
||||
THEN
|
||||
v_errorhint := 'Bepalen level';
|
||||
v_srtcontrole_level := 100;
|
||||
|
||||
|
||||
v_errorhint := 'Aanmaken srtcontrole';
|
||||
|
||||
-- We vullen de controle altijd met een bedrag van 0 euro. De overrule heeft dan het juiste
|
||||
-- bedrag. Hiermee voorkomen we een controle met een bepaald bedrag waarbij er voor een bepaald object
|
||||
-- die taak niet voorkomt.
|
||||
INSERT INTO ins_srtcontrole (ins_srtinstallatie_key,
|
||||
ins_srtcontrole_niveau,
|
||||
ins_srtcontrole_omschrijving,
|
||||
ctr_discipline_key,
|
||||
ins_Srtcontrole_periode,
|
||||
ins_srtcontrole_eenheid,
|
||||
ins_srtcontrole_level,
|
||||
ins_srtcontrole_materiaal)
|
||||
VALUES (
|
||||
v_srtdeel_key,
|
||||
'S',
|
||||
SUBSTR( rec.ins_srtdeel_code || ' - '
|
||||
|| rec.ins_srtcontrole_omschrijving,1,60),
|
||||
4,
|
||||
0,
|
||||
4,
|
||||
v_srtcontrole_level,
|
||||
0)
|
||||
RETURNING ins_srtcontrole_key
|
||||
INTO v_srtcontrole_key;
|
||||
|
||||
END;
|
||||
|
||||
BEGIN
|
||||
SELECT prs_kostenplaats_key
|
||||
INTO v_kostenplaats_key
|
||||
FROM prs_kostenplaats
|
||||
WHERE prs_kostenplaats_nr = rec.prs_kostenplaats_nr;
|
||||
EXCEPTION WHEN OTHERS THEN
|
||||
v_kostenplaats_key := NULL;
|
||||
END;
|
||||
|
||||
-- dan moeten we een dl_xcp record aanmaken
|
||||
v_errorhint := 'Aanmaken xcp ' || rec.ins_deel_omschrijving || ' bedrag: ' || v_materiaal || '#' || v_srtcontrole_key ||'-' || v_deel_key;
|
||||
|
||||
v_stopdat := NULL;
|
||||
v_periode := rec.ins_srtcontrole_periode;
|
||||
|
||||
IF v_periode = 0
|
||||
THEN
|
||||
v_stopdat := add_months(rec.ins_srtcontroledl_xcp_startdat, 12);
|
||||
v_periode := 1;
|
||||
END IF;
|
||||
|
||||
INSERT INTO ins_srtcontroledl_xcp (
|
||||
ins_srtcontrole_key,
|
||||
ins_srtcontroledl_xcp_periode,
|
||||
ins_srtcontroledl_xcp_materia,
|
||||
ins_srtcontroledl_xcp_startdat,
|
||||
ins_srtcontroledl_xcp_eind,
|
||||
ins_srtcontroledl_xcp_aantal,
|
||||
ins_srtcontroledl_xcp_aanteh,
|
||||
ins_srtcontroledl_xcp_groep,
|
||||
-- prs_kostenplaats_key,
|
||||
ins_deel_key)
|
||||
VALUES (v_srtcontrole_key,
|
||||
v_periode,
|
||||
v_materiaal,
|
||||
rec.ins_srtcontroledl_xcp_startdat,
|
||||
v_stopdat,
|
||||
v_aantal,
|
||||
rec.ins_srtcontroledl_xcp_aanteh,
|
||||
rec.ins_srtcontroledl_xcp_groep,
|
||||
-- v_kostenplaats_key,
|
||||
v_deel_key)
|
||||
RETURNING ins_srtcontroledl_xcp_key
|
||||
INTO v_srtcontroledl_xcp_key;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg :=
|
||||
'OTHERS (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog ('KMMO.import MJOB',
|
||||
'E',
|
||||
v_aanduiding || ': ' || v_errormsg,
|
||||
v_errorhint);
|
||||
END;
|
||||
END LOOP;
|
||||
EXCEPTION
|
||||
WHEN OTHERS
|
||||
THEN
|
||||
oracle_err_num := SQLCODE;
|
||||
oracle_err_mes := SUBSTR (SQLERRM, 1, 100);
|
||||
v_errormsg :=
|
||||
'OTHERS (error '
|
||||
|| oracle_err_num
|
||||
|| '/'
|
||||
|| oracle_err_mes
|
||||
|| ')';
|
||||
fac.writelog ('BVB1.import MJOB',
|
||||
'E',
|
||||
v_aanduiding || ': ' || v_errormsg,
|
||||
v_errorhint);
|
||||
END;
|
||||
/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
------ payload end ------
|
||||
|
||||
SET DEFINE OFF
|
||||
BEGIN adm.systrackscriptId ('$Id$', 1); END;
|
||||
/
|
||||
|
||||
COMMIT;
|
||||
SET ECHO OFF
|
||||
SPOOL OFF
|
||||
SET DEFINE ON
|
||||
PROMPT Logfile of this upgrade is: &fcltlogfile
|
||||
Reference in New Issue
Block a user