FactureDejaIntegre est un booléen = Faux BIgnore est un booléen = Faux POUR TOUT LIGNE SELECTIONNEE DE Table_FACTURES_FOURNISSEUR SI Table_FACTURES_FOURNISSEUR.CFactureComptabilise = 1 ALORS FactureDejaIntegre = True SORTIR FIN FIN SI FactureDejaIntegre = True ALORS TitreSuivant("Confirmation") //1 : Intégrer //2 : Ne pas intégrer //3 : Annuler SELON Dialogue("Que faire des Factures déja intrégrées ?") CAS 2 BIgnore = True CAS 3 RepriseSaisie(BTN_Comptabiliser) FIN FIN POUR TOUT LIGNE SELECTIONNEE DE Table_FACTURES_FOURNISSEUR HLitRecherchePremier(FACTUREFSEUR,IDFACTUREFSEUR,Table_FACTURES_FOURNISSEUR.CIDFactureFseur) SI HTrouve(FACTUREFSEUR) ALORS SI (FACTUREFSEUR.FactureFseurComptabilise = 1 ET BIgnore = Faux ) OU FACTUREFSEUR.FactureFseurComptabilise = 0 ALORS SI PG_GenererPasserelle_FactureFournisseur() = True ALORS FACTUREFSEUR.FactureFseurComptabilise = 1 FACTUREFSEUR.ModifieLe = PG_DateHeureServeur() FACTUREFSEUR.ModifiePar = IdentifiantUtilisateur HModifie(FACTUREFSEUR) FIN FIN FIN FIN OperationAutorisee = Faux TitreSuivant("Information") Info("Factures fournisseur intégrées avec succès !") ExécuteTraitement(BTN_Rech,trtClic) PROCEDURE PG_GenererPasserelle_FactureFournisseur(bSuppression est un booléen = Faux ) Brenvoyer est un booléen = Faux PG_InitailiserLesvariables_SAGE() Vs_LibelleEcriture = "FACTURE N° "+FACTUREFSEUR.NumeroFactureFseur si FACTUREFSEUR.IDFAMILLEPRODUIT > 0 alors HLitRecherchePremier(FAMILLEPRODUIT,IDFAMILLEPRODUIT,FACTUREFSEUR.IDFAMILLEPRODUIT) si htrouve(FAMILLEPRODUIT) = true alors Vs_LibelleEcriture = Vs_LibelleEcriture + " - "+FAMILLEPRODUIT.LibelleFamilleProduit FIN FIN SI bSuppression = True ALORS Vs_LibelleEcriture = "SUPPRESSION " +Vs_LibelleEcriture FIN Vs_DatePiece = DateVersChaîne(FACTUREFSEUR.DateFacture,"JJMMAA") Vs_DateEcheance = DateVersChaîne(FACTUREFSEUR.DateEcheanceFactureFseur,"JJMMAA") Mont_Marchandise est une monetaire = FACTUREFSEUR.TotalHT Mont_Preach est une monetaire = FACTUREFSEUR.MontantPreach Mont_FraisExp est une monetaire = FACTUREFSEUR.MontantFraisExp Mont_AssuranceMaritime est une monetaire = FACTUREFSEUR.MontantAssurance Mont_TVA est une monetaire = FACTUREFSEUR.TotalTaxe Mont_transit est une monetaire = FACTUREFSEUR.MontantFraisTransit NumFact est une chaine = FACTUREFSEUR.NumeroFactureFseur Montant_Total est une monetaire = FACTUREFSEUR.TotalTTC Vs_MontantTTC = Montant_Total Vs_MontantFraisExp = Mont_FraisExp Vs_MontantFraisAssurance = Mont_AssuranceMaritime Vs_MontantPreacheminement = Mont_Preach Vs_MontantMarchandise = Mont_Marchandise Vs_MontantTVA = Mont_TVA Vs_MontantFraisTransit = Mont_transit SI bSuppression = True ALORS Vs_MontantTTC = -1 * Montant_Total Vs_MontantFraisExp = - 1 * Mont_FraisExp Vs_MontantFraisAssurance = -1 * Mont_AssuranceMaritime Vs_MontantPreacheminement = -1 * Mont_Preach Vs_MontantMarchandise = -1 * Mont_Marchandise Vs_MontantTVA = - 1 * Mont_TVA Vs_MontantFraisTransit = - 1 * Mont_transit FIN HLitRecherchePremier(BONLIVRAISON,IDBONLIVRAISON,FACTUREFSEUR.IDBONLIVRAISON) si htrouve(BONLIVRAISON) = true alors Vs_NumeroDocument = BONLIVRAISON.NumeroBonLivraison Vs_AgenceClient = BONLIVRAISON.AgenceReceptionnee Vs_ReferenceDocument = ExtraitChaîne(BONLIVRAISON.NumeroConteneurOuVol,1,";") SAGE_IDModeExp = BONLIVRAISON.IDMODEEXPEDITION FIN si BONLIVRAISON.IDFOURNISSEUR > 0 alors HLitRecherchePremier(FOURNISSEUR,IDFOURNISSEUR,FACTUREFSEUR.IDFOURNISSEUR) si htrouve(FOURNISSEUR) = true alors Vs_CompteTiers = FOURNISSEUR.CompteTiersFournisseur FIN FIN SAGE_IDElement = FACTUREFSEUR.IDFACTUREFSEUR SAGE_TypeDoc = 7 SAGE_IDMotif = 0 SAGE_IDBuro = FACTUREFSEUR.IDBUREAUACHAT SAGE_IDFamille = FACTUREFSEUR.IDFAMILLEPRODUIT Vs_TypeJournal = C_TYPE_ECRITURE_FACTUREFSEUR Brenvoyer = PG_INTEGRATION_SAGE() RENVOYER Brenvoyer