
Toevoegen aan fac_usrdata
/* Formatted on 3/4/2013 10:44:51 AM (QP5 v5.136.908.31019) */
DECLARE
   CURSOR c
   IS
      SELECT DISTINCT ins_kenmerkwaarde2
        FROM fac_imp_ins
       WHERE ins_kenmerkwaarde2 IS NOT NULL;

   v_count   NUMBER;
BEGIN
   FOR rec IN c
   LOOP
      BEGIN
         DBMS_OUTPUT.put_line (rec.ins_kenmerkwaarde2);

         SELECT COUNT ( * )
           INTO v_count
           FROM fac_usrdata
          WHERE fac_usrtab_key = 441
            AND fac_usrdata_upper =
                   UPPER (SUBSTR (rec.ins_kenmerkwaarde2, 1, 40));

         IF v_count = 0
         THEN
            INSERT INTO fac_usrdata (fac_usrtab_key,
                                     fac_usrdata_code,
                                     fac_usrdata_omschr)
                VALUES (441,
                        SUBSTR (rec.ins_kenmerkwaarde2, 1, 40),
                        SUBSTR (rec.ins_kenmerkwaarde2, 1, 60));
         END IF;
      END;
   END LOOP;
   COMMIT;
END;

-- toevoegen kenmerk
DECLARE
   CURSOR c
   IS
      SELECT ins_deel_omschrijving, ins_kenmerkwaarde1
        FROM fac_imp_ins
       WHERE ins_kenmerkwaarde1 IS NOT NULL;

   v_deel_key      NUMBER;
   v_usrdata_key   NUMBER;
BEGIN
   FOR rec IN c
   LOOP
      BEGIN
         --DBMS_OUTPUT.put_line (rec.ins_kenmerkwaarde2);
         BEGIN
         SELECT fac_usrdata_key
           INTO v_usrdata_key
           FROM fac_usrdata
          WHERE fac_usrtab_key = 421
            AND fac_usrdata_verwijder IS NULL
            AND upper(fac_usrdata_omschr) =
                   UPPER (SUBSTR (rec.ins_kenmerkwaarde1, 1, 60));
         EXCEPTION WHEN NO_DATA_FOUND THEN
         DBMS_OUTPUT.put_line ('Kenmerkwaarde niet gevonden: ' || rec.ins_kenmerkwaarde1);
         END;
         SELECT ins_deel_key
           INTO v_deel_key
           FROM ins_deel
          WHERE ins_deel_omschrijving = rec.ins_deel_omschrijving
            AND ins_deel_verwijder IS NULL;


         INSERT INTO ins_kenmerkdeel (ins_deel_key,
                                      ins_kenmerk_key,
                                      ins_kenmerkdeel_waarde)
             VALUES (v_deel_key, 41, v_usrdata_key);
      END;
   END LOOP;

   COMMIT;
END;