return: text lang: plpgsql src: | DECLARE result TEXT; _module_pmsimco TEXT; BEGIN -- Fusion des fournisseurs UPDATE eco.p_commandes SET fournisseur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE p_commandes.fournisseur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.p_commandes SET fournisseur_distributeur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE p_commandes.fournisseur_distributeur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.p_lignes_commandes SET fournisseur_distributeur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE p_lignes_commandes.fournisseur_distributeur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.p_mouvements_articles SET fournisseur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE p_mouvements_articles.fournisseur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.p_facture SET fournisseur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE p_facture.fournisseur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.t_profils SET fournisseur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE t_profils.fournisseur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.t_articles SET fournisseur_principal_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE t_articles.fournisseur_principal_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; UPDATE eco.t_article_fournisseur SET fournisseur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE t_article_fournisseur.fournisseur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL AND (t_article_fournisseur.article_id::text||'-'||fusionner_vers_fournisseur_id::text) NOT IN (SELECT (t_article_fournisseur2.article_id::text||'-'||t_article_fournisseur2.fournisseur_id::text) FROM eco.t_article_fournisseur t_article_fournisseur2) ; UPDATE eco.t_article_fournisseur SET fournisseur_distributeur_id = fusionner_vers_fournisseur_id FROM eco.t_fournisseurs WHERE t_article_fournisseur.fournisseur_distributeur_id = t_fournisseurs.oid AND fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL ; DELETE FROM eco.p_oids WHERE code_table = 'fournisseurs' AND oid IN (SELECT t_fournisseurs.oid FROM eco.t_fournisseurs WHERE fusionner_vers_fournisseur_id <> 0 AND fusionner_vers_fournisseur_id IS NOT NULL) ; RETURN 'OK'; END;