103 lines
3.9 KiB
SQL
103 lines
3.9 KiB
SQL
--
|
||
-- $Id$
|
||
--
|
||
-- Customer specific once-script BLCC#77700.SQL.
|
||
DEFINE thisfile = 'BLCC#77700.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#77700: ACTUAL schoonmaaktarieven (Basic/Premium/Excellent) in ruimte-
|
||
-- kenmerkvelden indexeren met 2%!
|
||
-- [Vermenigvuldigen met 1,02 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,
|
||
k.alg_kenmerk_omschrijving
|
||
|| ': '
|
||
|| ok.alg_onrgoedkenmerk_waarde
|
||
|| ' --> '
|
||
|| TO_CHAR (ROUND (fac.safe_to_number (ok.alg_onrgoedkenmerk_waarde) * 1.02, 2))
|
||
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
|
||
ORDER BY 1, 2;
|
||
|
||
v_count NUMBER := 0;
|
||
BEGIN
|
||
FOR rec IN c
|
||
LOOP
|
||
BEGIN
|
||
UPDATE alg_v_aanwezigonrgoedkenmerk
|
||
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;
|
||
/
|
||
|
||
-- BLCC#77700: FROZEN schoonmaaktarieven (Basic/Premium/Excellent) in de foto
|
||
-- gemaakt op 1-4-2023 indexeren met 2%!
|
||
-- [Vermenigvuldigen met 1,02 en afronden op 2 decimalen]
|
||
/*
|
||
SELECT basic_tarief,
|
||
DECODE (basic_tarief, NULL, NULL, ROUND (basic_tarief * 1.02, 2))
|
||
basic2,
|
||
premium_tarief,
|
||
DECODE (premium_tarief, NULL, NULL, ROUND (premium_tarief * 1.02, 2))
|
||
premium2,
|
||
excellent_tarief,
|
||
DECODE (excellent_tarief, NULL, NULL, ROUND (excellent_tarief * 1.02, 2))
|
||
excellent2
|
||
FROM blcc_alg_freeze
|
||
WHERE TRUNC (freeze_datum) = fac.safe_to_date ('01-04-2023', 'dd-mm-yyyy')
|
||
AND (fac.safe_to_number (basic_tarief) IS NOT NULL OR fac.safe_to_number (premium_tarief) IS NOT NULL OR fac.safe_to_number (excellent_tarief) IS NOT NULL)
|
||
ORDER BY freeze_datum, alg_ruimte_key;
|
||
*/
|
||
UPDATE blcc_alg_freeze
|
||
SET basic_tarief = DECODE (basic_tarief, NULL, NULL, ROUND (basic_tarief * 1.02, 2)),
|
||
premium_tarief = DECODE (premium_tarief, NULL, NULL, ROUND (premium_tarief * 1.02, 2)),
|
||
excellent_tarief = DECODE (excellent_tarief, NULL, NULL, ROUND (excellent_tarief * 1.02, 2))
|
||
WHERE TRUNC (freeze_datum) = fac.safe_to_date ('01-04-2023', 'dd-mm-yyyy')
|
||
AND (fac.safe_to_number (basic_tarief) IS NOT NULL OR fac.safe_to_number (premium_tarief) IS NOT NULL OR fac.safe_to_number (excellent_tarief) IS NOT NULL);
|
||
|
||
------ 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
|