Salut , Voici mon code si cela peut vous aider et me permettre de trouver ensemble une solution.
REQ1,REQ2,REQ3,REQ4 sont des Sources de Données numconnexion est un entier cleparcours est une chaîne ressql est un booléen strsqld,strsqlc,strsqlctva,strsqlchtva sont des chaînes montanttva,montanthtva,montantttc,montantregl,montantcaution sont des réels soucheperi est une chaîne=DateVersChaine(DateDuJour(),"AAAA-MM") souchepericomplet est une chaîne=DateVersChaine(DateDuJour(),"AAAA-MM-JJ") souchepiece est une chaîne=DateVersChaine(DateDuJour(),"MMAA") //pour les factures deja transferées on met leur etat a la valeur 4 //gestion des cas de selection //strsqlctva="insert into f_ecriturec(jo_num,jm_date,ec_jour,ec_date,ec_piece,ec_intitule,cg_num,ec_montant,ec_sens) " //strsqlctva+= "VALUES('JV','{d "+soucheperi+"01}' ,' "+val(droite(DateDuJour(),2))+"','{d " +souchepericomplet+"}','01"+souchepiece+" ',' Facturation Internet','44610000'," +montanttva+ " ' 1 ')" //info(strsqlctva) //retour SI choix=1 ALORS cleparcours=HFiltre(facture,facture.date_creation,ExtraitChaîne(SCSélectionPériode,1),ExtraitChaîne(SCSélectionPériode,2)) SI cleparcours<>"" ALORS HLitPremier(facture,cleparcours) TANTQUE PAS HEnDehors() montantttc+=facture.montant_facture montanthtva+=facture.montant_facture/(1+facture.tva/100) // facture.etat_facture="4" // HModifie(facture) HLitSuivant(facture,cleparcours) FIN montanttva=montantttc-montanthtva montanttva=Arrondi(montanttva,0) montantttc=Arrondi(montantttc,0) montanthtva=Arrondi(montanthtva,0) FIN HDésactiveFiltre(facture) SINON SI choix=2 ALORS cleparcours=HFiltre(reglement,reglement.date_operation,ExtraitChaîne(SCSélectionPériode,1),ExtraitChaîne(SCSélectionPériode,2)) SI cleparcours<>"" ALORS HLitPremier(reglement,cleparcours) TANTQUE PAS HEnDehors() montantregl+=reglement.montant HLitSuivant(reglement,cleparcours) FIN FIN HDésactiveFiltre(reglement) SINON SI choix=3 ALORS cleparcours=HFiltre(caution,caution.date_paiement,ExtraitChaîne(SCSélectionPériode,1),ExtraitChaîne(SCSélectionPériode,2)) SI cleparcours<>"" ALORS HLitPremier(caution,cleparcours) TANTQUE PAS HEnDehors() montantcaution+=caution.montant HLitSuivant(caution,cleparcours) FIN FIN HDésactiveFiltre(caution) FIN
//connexion à SAGE SAARI COMPTA 100 VIA ODBC //numconnexion=SQLConnecte("Logatel","<Administrateur>","dm73"," ","ODBC") numconnexion = SQLConnecte("test", "", "", "", "ODBC")
SI numconnexion<>0 ALORS Info("Connexion réussie") //ec_sens 0 pour le debit et 1 pour le credit //jm_date le jour est tjrs à 01 {d AAAA-MM-JJ} //insert into f_jmouv(jo_num,jm_date,jm_cloture,jm_impression) values() //insert into f_ecriturec(jo_num,ec_no,jm_date,ec_jour,ec_date,ec_piece,cg_num,ec_montant,ec_sens) SI choix=1 ALORS SQLChangeConnexion(numconnexion) strsqlctva="insert into f_ecriturec(jo_num,jm_date,ec_jour,ec_date,ec_piece,ec_intitule,cg_num,ec_montant,ec_sens) " strsqlctva+= "VALUES('JV','{d "+soucheperi+"01}' ,' "+Val(Droite(DateDuJour(),2))+"','{d " +souchepericomplet+"}','01"+souchepiece+" ',' Facturation Internet','44610000'," +montanttva+ ", ' 1 ')" strsqlchtva="insert into f_ecriturec(jo_num,jm_date,ec_jour,ec_date,ec_piece,ec_intitule,cg_num,ec_montant,ec_sens) " strsqlchtva+= "VALUES('JV','{d "+soucheperi+"01}' ,' "+Val(Droite(DateDuJour(),2))+"','{d " +souchepericomplet+"}','01"+souchepiece+" ',' Facturation Internet','72010000'," +montanthtva+ ", ' 1 ')" strsqlc="insert into f_ecriturec(jo_num,jm_date,ec_jour,ec_date,ec_piece,ec_intitule,cg_num,ec_montant,ec_sens,ct_num) " strsqlc+= "VALUES('JV','{d "+soucheperi+"01}' ,' "+Val(Droite(DateDuJour(),2))+"','{d " +souchepericomplet+"}','01"+souchepiece+" ',' Facturation Internet','41000000'," +montantttc+ ", ' 0 ','411CLINT')" //SQLExec(strsqlctva,REQ1) Info(strsqlc) // SQLExec(strsqlchtva,REQ2) // SQLExec(strsqlc,REQ3) HExécuteRequêteSQL(REQ1,strsqlctva) HExécuteRequêteSQL(REQ2,strsqlchtva) HExécuteRequêteSQL(REQ3,strsqlc) // SQLFerme(REQ1) /// SQLFerme(REQ3) // SQLFerme(REQ4) Info("Fin") FIN SINON Info("echec") FIN
SQLDeconnecte() |