Files
Customer/onces/ARAI/ARAI#75066-7.sql
2023-05-11 14:24:43 +00:00

100 lines
2.6 KiB
SQL

--
-- $Id$
--
-- ARAI#75066 deel 7: Bereken de conditiescores
-- LET OP DAT VOOR DEZE STAP EERST CND_INI IS GEDRAAID EN DE GEBREKEN LIJST IS INGELEZEN!
--
DEFINE thisfile = 'ARAI#75066-7.SQL'
DEFINE dbuser = 'ARAI'
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 ------
-- CND scores verwerken
-- Na de import kunnen de scores worden bijgewerkt.
-- Maar dan wel eerst alle gebreken op geaccepteerd zetten, anders krijgt alles een score van 1
DECLARE
CURSOR c1
IS
SELECT DISTINCT m.mld_melding_key, mb.ins_deel_key
FROM mld_melding m, mld_melding_object mb, mld_stdmelding s, mld_discipline md
WHERE m.mld_stdmelding_key = s.mld_stdmelding_key
AND s.mld_ins_discipline_key = md.ins_discipline_key
AND md.INS_SRTDISCIPLINE_KEY = 261
AND m.mld_melding_key = mb.mld_melding_key
ORDER BY ins_deel_key;
CURSOR c2
IS
SELECT DISTINCT mb.ins_deel_key
FROM mld_melding m, mld_melding_object mb, mld_stdmelding s, mld_discipline md
WHERE m.mld_stdmelding_key = s.mld_stdmelding_key
AND s.mld_ins_discipline_key = md.ins_discipline_key
AND md.INS_SRTDISCIPLINE_KEY = 261 -- vakgroeptype key van nen2767 conditiescore
AND m.mld_melding_key = mb.mld_melding_key
ORDER BY ins_deel_key;
CURSOR c3 IS
SELECT m.mld_melding_key mld_key
FROM mld_melding m, mld_stdmelding s, mld_discipline md
WHERE m.mld_stdmelding_key = s.mld_stdmelding_key
AND s.mld_ins_discipline_key = md.ins_discipline_key
AND md.INS_SRTDISCIPLINE_KEY = 261;
BEGIN
FOR REC IN c1
LOOP
BEGIN
UPDATE mld_melding
SET mld_melding_status = 4
WHERE mld_melding_key = rec.mld_melding_key;
END;
COMMIT;
END LOOP;
FOR REC IN c2
LOOP
BEGIN
cnd.update_mjb_scores (rec.ins_deel_key);
END;
COMMIT;
END LOOP;
FOR rec IN c3
LOOP
BEGIN
cnd.process_mjb_score_effects (rec.mld_key, NULL);
END;
COMMIT;
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