/* DB49TO45_POST.SRC
 *
 * Uitgevoerd *na* de recreate zodat we op de nieuwe fac.notifytracking kunnen rekenen
 *
 * LET OP: De makefile detecteert timestamp van dit bestand niet
 *
 * $Revision$
 * $Id$
 */

/////////////////////////////////////////////////////////////////////////////////////////// FCLT#85545

-- Kijk in fac_v_orderqueue_OLD wat nog een laatste keer een notificatie
-- naar een systeemadres moet krijgen
-- Afgekeken van mld_t_mld_opdr_B_IU
BEGIN
    FOR bedrijfrec
        IN (SELECT b.prs_bedrijf_key,
                   COALESCE (l1.alg_locatie_key, l2.alg_locatie_key)               alg_locatie_key,
                   COALESCE (l1.alg_locatie_email, l2.alg_locatie_email)           alg_locatie_email,
                   o.mld_melding_key || '/' || o.mld_opdr_bedrijfopdr_volgnr reference,
                   d.prs_bedrijf_key                                               persoon_bedrijf_key, -- van de melder, niet de uitvoerende
                   fac_srtnotificatie_key,
                   o.mld_opdr_key,
                   o.mld_typeopdr_key
              FROM mld_melding         m,
                   mld_adres           ma,
                   alg_locatie         l1,
                   alg_locatie         l2,
                   prs_perslid         p,
                   prs_v_afdeling      d,
                   prs_bedrijf         b,
                   fac_v_orderqueue_OLD q,
                   mld_opdr            o,
                   fac_srtnotificatie  fsn
             WHERE     q.xmlnode = 'opdracht'
                   AND q.key = o.mld_opdr_key
                   AND b.prs_bedrijf_key = o.mld_uitvoerende_keys
                   AND o.mld_melding_key = m.mld_melding_key
                   AND m.mld_adres_key = ma.mld_adres_key(+)
                   AND ma.alg_locatie_key = l1.alg_locatie_key(+)
                   AND m.mld_alg_locatie_key = l2.alg_locatie_key(+)
                   AND d.prs_afdeling_key = p.prs_afdeling_key
                   AND p.prs_perslid_key = m.prs_perslid_key
                   AND fac_srtnotificatie_code = 'ORDUPD') -- hardcoded ORDUPD, het gaat uiteindelijk vooral om de XMLnode 'opdracht' in putorders
    LOOP
        DBMS_OUTPUT.PUT_LINE('Notificeer opdracht ' || bedrijfrec.mld_opdr_key);
        fac.notifybedrijf (pbedrijf_key         => bedrijfrec.prs_bedrijf_key,
                           pbedrijfadres_type   => 'O',
                           prefkey              => bedrijfrec.mld_opdr_key,
                           ptrackingkey         => NULL,
                           psrtnoti_key         => bedrijfrec.fac_srtnotificatie_key,
                           preference           => bedrijfrec.reference,
                           ptypeopdr_key        => bedrijfrec.mld_typeopdr_key,
                           plocatie_key         => bedrijfrec.alg_locatie_key,
                           psender              => bedrijfrec.alg_locatie_email);
    END LOOP;
END;
/

// En nu kan hij echt weg
DROP VIEW fac_v_orderqueue_OLD;

REGISTERONCE('$Id$')

COMMIT;
