AAGB#74170 -- Implementatie Alliance Automotive Groep Benelux B.V.

svn path=/Customer/trunk/; revision=58176
This commit is contained in:
Arthur Egberink
2022-11-30 11:50:38 +00:00
parent 3d7d64e492
commit 9c7861cb01

108
AAGB/aagb.sql Normal file
View File

@@ -0,0 +1,108 @@
--
-- $Id$
--
-- Script containing customer specific sql statements for the FACILITOR database
DEFINE thisfile = 'AAGB.SQL'
DEFINE dbuser = 'AAGB'
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 AAGB
AS
PROCEDURE tsk_ins_index (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2);
END;
/
CREATE OR REPLACE PACKAGE BODY AAGB
AS
PROCEDURE tsk_ins_index (p_applname IN VARCHAR2,
p_applrun IN VARCHAR2)
AS
CURSOR c IS
SELECT d.ins_deel_key, kbedrag.ins_kenmerkdeel_key, kbedrag.ins_kenmerk_key, kbedrag.waarde bedrag, kindex.waarde indexatie
FROM ins_deel d,
(SELECT kd.ins_kenmerkdeel_waarde waarde,
kd.ins_kenmerkdeel_key,
kd.ins_deel_key
FROM ins_kenmerk k, ins_kenmerkdeel kd
WHERE k.ins_kenmerk_key = kd.ins_kenmerk_key
AND k.ins_srtkenmerk_key = 224 -- indexatiedatum
) kdatum,
(SELECT kd.ins_kenmerkdeel_waarde waarde,
kd.ins_kenmerkdeel_key,
kd.ins_deel_key
FROM ins_kenmerk k, ins_kenmerkdeel kd
WHERE k.ins_kenmerk_key = kd.ins_kenmerk_key
AND k.ins_srtkenmerk_key = 223 -- indexatie
) kindex,
(SELECT kd.ins_kenmerkdeel_waarde waarde,
k.ins_kenmerk_key,
kd.ins_kenmerkdeel_key,
kd.ins_deel_key
FROM ins_kenmerk k, ins_kenmerkdeel kd
WHERE k.ins_kenmerk_key = kd.ins_kenmerk_key
AND k.ins_srtkenmerk_key = 226 -- bedrag
) kbedrag
WHERE d.ins_deel_key = kdatum.ins_deel_key
AND d.ins_deel_key = kindex.ins_deel_key
AND d.ins_deel_key = kbedrag.ins_deel_key
AND FAC.SAFE_TO_DATE(kdatum.waarde, 'dd-mm-yyyy') = TRUNC(SYSDATE)
AND FAC.SAFE_TO_NUMBER(kbedrag.waarde) <> 0
ORDER BY ins_deel_key;
v_deel_key_prev NUMBER;
BEGIN
v_deel_key_prev := -1;
FOR rec IN c
LOOP
FLX.setflex ('INS', rec.ins_kenmerk_key, rec.ins_deel_key, rec.bedrag * (1 + rec.indexatie/100));
IF v_deel_key_prev <> rec.ins_deel_key
THEN
fac.trackaction ('INSUPD', rec.ins_deel_key, 3, SYSDATE, 'Object ge<67>ndexeerd met ' || rec.indexatie || '%');
v_deel_key_prev := rec.ins_deel_key;
END IF;
END LOOP;
END;
END;
/
CREATE OR REPLACE PROCEDURE aagb_daily
AS
BEGIN
-- indexering van de objecten
AAGB.tsk_ins_index('INS_INDEXERING', 'SYSDATE');
END;
/
------ 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