SKAF#76053 -- Script om voor de mjob-implementatie de xcp-taken te verwerken - deel 1

svn path=/Customer/; revision=60879
This commit is contained in:
Jos Migo
2023-06-21 19:27:18 +00:00
parent 37483ba7d5
commit acf3984bcc

View File

@@ -0,0 +1,133 @@
-- $Id$
--
-- Script om de xcp-taken in te lezen tbv uitrol mjob - DEEL 1
--
--
DEFINE thisfile = 'SKAF#76053_taken_1.SQL'
DEFINE dbuser = '^SKAF'
SET ECHO ON
SET DEFINE ON
COLUMN fcltlogfile NEW_VALUE fcltlogfile NOPRINT;
COLUMN fcltcusterr NEW_VALUE fcltcusterr NOPRINT;
WHENEVER SQLERROR CONTINUE;
SELECT adm.getscriptspoolfile('&thisfile') AS fcltlogfile FROM DUAL;
SPOOL &fcltlogfile
WHENEVER SQLERROR EXIT;
SELECT adm.checkscriptcust('&dbuser') AS fcltcusterr FROM DUAL;
WHENEVER SQLERROR CONTINUE;
PROMPT &fcltcusterr
SET DEFINE OFF
------ payload begin ------
DECLARE
v_errormsg VARCHAR (200);
v_errorhint VARCHAR (200);
oracle_err_num NUMBER;
oracle_err_mes VARCHAR2 (150);
currentversion fac_module.fac_module_version%TYPE;
v_aanduiding VARCHAR (100);
v_count NUMBER;
v_ins_deel_key NUMBER;
v_ins_srtcontrole_key NUMBER;
v_ins_srtcontroledl_xcp_key NUMBER;
CURSOR C
IS
SELECT *
FROM fac_imp_csv
WHERE fac_import_key = (SELECT max(fac_import_key) FROM fac_import WHERE fac_import_app_key = 341 AND fac_import_datum_verwerkt IS NULL) -- GENREICCSV - FIP: Generieke CSV import
AND fac_imp_csv_index > 1
ORDER BY fac_imp_csv_index;
BEGIN
FOR rec IN c
LOOP
BEGIN
v_ins_deel_key := '';
v_ins_srtcontrole_key := '';
v_ins_srtcontroledl_xcp_key := '';
v_errorhint := 'eerst object - ins_deel_key - erbij zoeken';
SELECT MAX(ins_deel_key)
INTO v_ins_deel_key
FROM ins_deel
WHERE ins_deel_upper = UPPER (rec.fac_imp_csv_col01)
AND ins_deel_verwijder IS NULL ;
v_errorhint := 'dan basistaak - ins_srtcontrole_key - erbij zoeken';
SELECT MAX(ins_srtcontrole_key)
INTO v_ins_srtcontrole_key
FROM ins_srtcontrole
WHERE LOWER (ins_srtcontrole_omschrijving) = LOWER (rec.fac_imp_csv_col03)
AND ins_scenario_key = 1;
v_errorhint := 'check of xcp er al in staat, zo ja dan geen import';
SELECT MAX(ins_srtcontroledl_xcp_key)
INTO v_ins_srtcontroledl_xcp_key
FROM ins_srtcontroledl_xcp
WHERE ins_deel_key = v_ins_deel_key AND ins_srtcontrole_key = v_ins_srtcontrole_key ;
v_errorhint := 'nu het xcp-record - ins_srtcontrolexcp_key - aanmaken';
IF v_ins_deel_key IS NOT NULL
AND v_ins_srtcontrole_key IS NOT NULL
AND v_ins_srtcontroledl_xcp_key IS NULL
THEN
INSERT INTO ins_srtcontroledl_xcp (
ins_deel_key,
ins_srtcontrole_key,
ins_srtcontroledl_xcp_eenheid,
ins_srtcontroledl_xcp_periode,
prs_kostenplaats_key,
ins_srtcontroledl_xcp_bits,
ins_srtcontroledl_xcp_uren,
ins_srtcontroledl_xcp_perc,
ins_srtcontroledl_xcp_groep,
ins_srtcontroledl_xcp_opmerk,
ins_srtcontroledl_xcp_startdat,
ins_srtcontroledl_xcp_eind,
ins_srtcontroledl_xcp_aantal,
ins_srtcontroledl_xcp_aanteh,
ins_srtcontroledl_xcp_kosten,
ins_srtcontroledl_xcp_kosten2,
ins_srtcontroledl_xcp_kosten3,
ins_srtcontroledl_xcp_materia)
VALUES (v_ins_deel_key,
v_ins_srtcontrole_key,
rec.fac_imp_csv_col08, -- standaard eenheid (= 4 = jaar) - alleen afwijkende is gevuld
fac.safe_to_number(rec.fac_imp_csv_col09), -- periode
NULL,
NULL,
NULL,
NULL,
rec.fac_imp_csv_col05, -- groep = 'Eerder al verschoven' of NULL
rec.fac_imp_csv_col04, -- 'Aanschaf/installatie: 01-01-2002',
TO_DATE(rec.fac_imp_csv_col10,'dd-mm-yyyy'), -- Startjaar - TO_DATE ('01-01-2023 00:00', 'DD-MM-YYYY HH24:MI'),
NULL,
fac.safe_to_number(rec.fac_imp_csv_col12), -- aantal_afwijkend_object
NULL,
fac.safe_to_number(rec.fac_imp_csv_col11), -- kosten per eenheid
NULL,
NULL,
NULL);
END IF;
END;
END LOOP;
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