1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| bool update_FRPFBLV()
{
try{
wxSTRING wx_V; // voir wxwidget
char * SQL_SMT ;
SQL_SMT = (char*) malloc(4096);
wx_V = "INSERT INTO TSTFCH.FRPFBLV ";
wx_V += "SELECT RFCSTD, RFCCND, RFCDPO, RFCGIM, RFCPRD, ";
wx_V.Printf("%s%08.0f, %06.0f, ",wx_V.c_str(),xRO999M,xRONBL); // ICI MON PROBLEME
wx_V += "RFNUMC, RFQCND, RFZETQD, RFZETQF ";
wx_V += "FROM TSTFCH.FRFDOM WHERE (" ;
wx_V += " RFZAPL=:xRFZAPL<char[10]> AND ";
wx_V += " RFNUMC=:xRFNUMC<double> AND ";
wx_V += " RFCPRD=:xRFCPRD<char[2]> AND ";
wx_V += " RFCCND=:xRFCCND<char[2]> ) ";
sprintf(SQL_SMT,"%s%",wx_V.c_str());
// buffer size mettre 1 sinon pas de transaction (commit rollback) possible exemple entete detail x art et pied de Bon de livraison mon cas
strmdb_FRPFBLV.open(1,
SQL_SMT // est obligatoirement un *CHAR ou une constante "..."
,
db // connect object
);
return true;
} catch(otl_exception& p){ // intercept OTL exceptions
// fonction interne au programme
F_Erreur(p,wxT("Erreur Fichier Write FRPFBLV (5) appeler Service Informatique"));
strmdb_FRPFBLV.clean(1); // rollback ODBC
return false ;
}
}
........
// mise a jour
strmdb_FRPFBLV<<Vn_ZAPL<<xRFNUMC<<xRFCPRD<<xRFCCND; |
Partager