WEND#74425 -- IT en splitsing mobiel en sim-kaarten - oncescript eenmalig koppelen SIM-kaarten aan Mobiles

svn path=/Customer/; revision=57475
This commit is contained in:
Jos Migo
2022-10-03 19:07:30 +00:00
parent 811aec181b
commit 1fff532fda

92
onces/WEND/WEND#74425.sql Normal file
View File

@@ -0,0 +1,92 @@
--
-- $Id$
--
-- Script om de SIM-kaarten te koppelen aan de Mobiele objecten. Bij aanvang Facilitor was splitsing losgelaten, maar afgelopen week toch weer doorgevoerd.
-- Gezien aanzienlijke aantallen (+/- 350) met klant afgesproken om dit tegen betaling eenmalig geautomatiseerd te laen lopen ipv handmatige actie via voorkant
--
-- Voor dbuser invullen: - indien script voor 1 klant is: 'AADS' (de klantcode, zoals vermeld in fac_version_cust)
-- - script is voor meerdere klanten: 'AAXX' (de groepcode, zoals vermeld in fac_version_group)
-- - script is voor meerdere klanten met naam volgens een bepaald patroon: '^AA|^ASMS|^GULU|^NMMS|^RABO|^ZKHM'
--
DEFINE thisfile = 'WEND#74425.SQL'
DEFINE dbuser = 'WEND'
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;
CURSOR c
IS
SELECT mob.ins_deel_key ins_deel_key_mob, sim.ins_deel_key ins_deel_key_sim, sim.ins_deel_upper ins_deel_upper_sim
FROM (SELECT v.ins_deel_key,
v.ins_deel_upper,
flx.getflex ('INS', 184, v.ins_deel_key) gekoppelde_simkaart
FROM ins_v_deel_gegevens v, ins_deel d
WHERE v.ins_discipline_key = 41 -- IT
AND v.ins_srtdeel_key = 5 -- Mobiele telefoons
AND v.ins_deel_key = d.ins_deel_key
AND d.ins_deel_verwijder IS NULL
AND ( d.ins_deel_vervaldatum IS NULL
OR TRUNC (d.ins_deel_vervaldatum) > TRUNC (SYSDATE))) mob,
(SELECT v.ins_deel_key,
v.ins_deel_upper,
flx.getflex ('INS', 201, v.ins_deel_key) mob_nr_27092022
FROM ins_v_deel_gegevens v, ins_deel d
WHERE v.ins_discipline_key = 421 -- IT-Intern
AND v.ins_srtdeel_key = 121 -- SIM-kaarten
AND v.ins_deel_key = d.ins_deel_key
AND d.ins_deel_verwijder IS NULL
AND ( d.ins_deel_vervaldatum IS NULL
OR TRUNC (d.ins_deel_vervaldatum) > TRUNC (SYSDATE))) sim
WHERE sim.mob_nr_27092022 = mob.ins_deel_upper
AND mob.gekoppelde_simkaart IS NULL;
BEGIN
FOR rec IN c
LOOP
BEGIN
-- v_errorhint := 'Kenmerkveld Sim-kaart vullen bij Mobiel object ;
INSERT INTO ins_kenmerkdeel(ins_deel_key,ins_kenmerk_key,ins_kenmerkdeel_waarde) VALUES (rec.ins_deel_key_mob, 184, TO_CHAR(rec.ins_deel_key_sim)) ;
-- Nete logging, key 3 is Facilitor
BEGIN fac.trackaction('INSUPD', rec.ins_deel_key_mob, 3, NULL, 'Object gewijzigd SIM-kaart: (leeg) --> ' || TO_CHAR(rec.ins_deel_upper_sim)); END;
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