102 lines
4.5 KiB
SQL
102 lines
4.5 KiB
SQL
--
|
||
-- $Id$
|
||
--
|
||
-- Customer specific once-script BLCC#83156.SQL.
|
||
DEFINE thisfile = 'BLCC#83156.sql'
|
||
DEFINE dbuser = '^BLCC'
|
||
|
||
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 ------
|
||
|
||
-- BLCC#83156: ACTUAL schoonmaaktarieven (Basic/Premium/Excellent) in ruimte-
|
||
-- kenmerkvelden indexeren met 5%!
|
||
-- [Vermenigvuldigen met 1,05 en afronden op 2 decimalen]
|
||
SET SERVEROUTPUT ON size 1000000;
|
||
|
||
DECLARE
|
||
CURSOR c
|
||
IS
|
||
-- SELECT ok.alg_onrgoed_key,
|
||
-- k.alg_kenmerk_key,
|
||
-- k.alg_kenmerk_omschrijving,
|
||
-- ok.alg_onrgoedkenmerk_key,
|
||
-- fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) waarde_oud,
|
||
-- ROUND (fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) * 1.02, 2) waarde_nieuw, -- Kak, dit had 5% moeten zijn!
|
||
-- k.alg_kenmerk_omschrijving
|
||
-- || ': '
|
||
-- || ok.alg_onrgoedkenmerk_waarde
|
||
-- || ' --> '
|
||
-- || TO_CHAR (ROUND (fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) * 1.02, 2)) -- Kak, dit had 5% moeten zijn!
|
||
-- tracking
|
||
-- FROM alg_v_aanwezigonrgoedkenmerk ok, alg_kenmerk k
|
||
-- WHERE fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) IS NOT NULL
|
||
-- AND ok.alg_onrgoed_niveau = 'R'
|
||
-- AND ok.alg_kenmerk_key = k.alg_kenmerk_key
|
||
-- AND k.alg_kenmerk_key IN (1540, 1541, 1542) -- Schoonmaaktarief Basic/Premium/Excellent
|
||
-- AND EXISTS (SELECT 1 FROM alg_v_aanwezigruimte WHERE alg_ruimte_key = ok.alg_onrgoed_key)
|
||
--ORDER BY 1, 2;
|
||
SELECT ok.alg_onrgoed_key,
|
||
ok.alg_kenmerk_key,
|
||
ok.alg_onrgoedkenmerk_key,
|
||
fac.safe_to_number (SUBSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), 1, INSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), '-->') - 1)) waarde_org,
|
||
fac.safe_to_number (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, '-->') + 3)) waarde_oud,
|
||
TO_CHAR (ROUND (fac.safe_to_number (SUBSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), 1, INSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), '-->') - 1)) * 1.05, 2)) waarde_nieuw,
|
||
SUBSTR (t.fac_tracking_oms, 1, INSTR (t.fac_tracking_oms, ':') - 1)
|
||
|| ': '
|
||
|| TRIM (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, '-->') + 3))
|
||
|| ' --> '
|
||
|| TO_CHAR (ROUND (fac.safe_to_number (SUBSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), 1, INSTR (SUBSTR (t.fac_tracking_oms, INSTR (t.fac_tracking_oms, ':') + 1), '-->') - 1)) * 1.05, 2))
|
||
tracking
|
||
FROM fac_tracking t, alg_v_aanwezigonrgoedkenmerk ok
|
||
WHERE t.fac_srtnotificatie_key = 118 -- ALGRUP
|
||
AND TRUNC (t.fac_tracking_datum) = fac.safe_to_date ('15-04-2024', 'dd-mm-yyyy')
|
||
AND t.fac_tracking_refkey = ok.alg_onrgoed_key
|
||
AND ok.alg_kenmerk_key IN (1540, 1541, 1542) -- Schoonmaaktarief Basic/Premium/Excellent
|
||
AND EXISTS
|
||
(SELECT 1
|
||
FROM alg_kenmerk
|
||
WHERE alg_kenmerk_key = ok.alg_kenmerk_key
|
||
AND alg_kenmerk_omschrijving = SUBSTR (t.fac_tracking_oms, 1, INSTR (t.fac_tracking_oms, ':') - 1))
|
||
ORDER BY 1, 2;
|
||
|
||
v_count NUMBER := 0;
|
||
BEGIN
|
||
FOR rec IN c
|
||
LOOP
|
||
BEGIN
|
||
UPDATE alg_onrgoedkenmerk
|
||
SET alg_onrgoedkenmerk_waarde = TO_CHAR (rec.waarde_nieuw)
|
||
WHERE alg_onrgoedkenmerk_key = rec.alg_onrgoedkenmerk_key;
|
||
fac.trackaction ('ALGRUP', rec.alg_onrgoed_key, NULL, NULL, rec.tracking);
|
||
v_count := v_count + 1;
|
||
END;
|
||
END LOOP;
|
||
|
||
DBMS_OUTPUT.PUT_LINE ('S: ' || TO_CHAR (v_count) || ' schoonmaaktarieven ge<67>ndexeerd');
|
||
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
|