AQQA#51952 -- Implementatie personen import
svn path=/Customer/trunk/; revision=37710
This commit is contained in:
@@ -107,8 +107,19 @@ END;
|
||||
|
||||
CREATE OR REPLACE PROCEDURE aqqa_import_perslid (p_import_key IN NUMBER)
|
||||
AS
|
||||
v_seq_of_columns VARCHAR (255);
|
||||
v_seq_of_columns VARCHAR2(255);
|
||||
v_old_login VARCHAR2(30);
|
||||
|
||||
-- cursor om de tussenvoegsels goed in te kunnen vullen. Deze staan nu achter de achternaam.
|
||||
CURSOR c
|
||||
IS
|
||||
SELECT fac_usrdata_omschr, prs_perslid_oslogin
|
||||
FROM fac_imp_perslid p, fac_usrdata u
|
||||
WHERE UPPER(p.prs_perslid_naam) LIKE UPPER(u.fac_usrdata_omschr) || ' ' || '%'
|
||||
AND fac_usrtab_key = 104
|
||||
ORDER BY p.prs_perslid_oslogin, LENGTH (fac_usrdata_omschr) DESC;
|
||||
BEGIN
|
||||
v_old_login := 'QueQeLeQue';
|
||||
-- AQQA gebruikt de pipe '|' als scheidingsteken. Deze gaan we even omzetten naar onze ';'
|
||||
|
||||
UPDATE fac_imp_file
|
||||
@@ -137,6 +148,22 @@ BEGIN
|
||||
WHERE p.prs_perslid_verwijder IS NULL
|
||||
AND p.prs_perslid_nr = i.prs_perslid_nr);
|
||||
|
||||
FOR rec IN c
|
||||
LOOP
|
||||
BEGIN
|
||||
IF rec.prs_perslid_oslogin <> v_old_login
|
||||
THEN
|
||||
DBMS_OUTPUT.put_line (
|
||||
rec.prs_perslid_oslogin || '-' || rec.fac_usrdata_omschr);
|
||||
v_old_login := rec.prs_perslid_oslogin;
|
||||
UPDATE fac_imp_perslid p
|
||||
SET prs_perslid_tussenvoegsel = rec.fac_usrdata_omschr,
|
||||
prs_perslid_naam = TRIM(SUBSTR (prs_perslid_naam, LENGTH (rec.fac_usrdata_omschr) + 1))
|
||||
WHERE p.prs_perslid_oslogin = rec.prs_perslid_oslogin;
|
||||
END IF;
|
||||
END;
|
||||
END LOOP;
|
||||
|
||||
END aqqa_import_perslid;
|
||||
/
|
||||
|
||||
|
||||
Reference in New Issue
Block a user