Patch level :4.0

Files correlati     :
Ricompilazione Demo : [ ]
Commento            :errore riporto


git-svn-id: svn://10.65.10.50/trunk@14175 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luca 2006-07-12 10:07:26 +00:00
parent 58d15b8e31
commit d68b45c9da

View File

@ -408,6 +408,8 @@ private:
void put_column(TRectype & statrec,int col, const TSVriep_record& curr); void put_column(TRectype & statrec,int col, const TSVriep_record& curr);
const real fc_um(const TRectype& statrec,const TSVriep_record& rieprec);
void invalid_columns(TRectype & statrec);
void standardize_um(TSVriep_record& rieprec, bool force=FALSE); void standardize_um(TSVriep_record& rieprec, bool force=FALSE);
// generazione del file di output // generazione del file di output
@ -1717,12 +1719,12 @@ void TStampa_stat::standardize_um(TSVriep_record& rieprec, bool force)
if (tipoart==RIGA_MERCE || tipoart==RIGA_OMAGGI) if (tipoart==RIGA_MERCE || tipoart==RIGA_OMAGGI)
{ {
// è un articolo (<M>erce); converto alla UM principale dell'art. // è un articolo (<M>erce); converto alla UM principale dell'art.
_umart->setkey(1); TString key(rieprec.get(SVR_CODART));
_umart->put(UMART_CODART,rieprec.get(SVR_CODART)); key << "|1";
_umart->put(UMART_NRIGA,1); const TRectype& rec_umart = cache().get(LF_UMART, key);
_umart->read();
um = _umart->get(UMART_UM); um = rec_umart.get(UMART_UM);
fc = _umart->get_real(UMART_FC); fc = rec_umart.get_real(UMART_FC);
} }
else else
{ {
@ -1757,19 +1759,20 @@ const real TStampa_stat::fc_um(const TRectype& statrec,const TSVriep_record& rie
{ {
// è un articolo (<M>erce) // è un articolo (<M>erce)
TString80 art = rieprec.get(SVR_CODART); art.trim(); TString80 art = rieprec.get(SVR_CODART); art.trim();
_umart->setkey(2); TLocalisamfile umart(LF_UMART);
_umart->put(UMART_CODART, art); umart.setkey(2);
_umart->put(UMART_UM, um); umart.put(UMART_CODART, art);
if (_umart->read() == NOERR) umart.put(UMART_UM, um);
if (umart.read() == NOERR)
{ {
fc = _umart->get_real(UMART_FC); fc = umart.get_real(UMART_FC);
_umart->put(UMART_UM, statum); umart.put(UMART_UM, statum);
if (_umart->read() == NOERR) if (umart.read() == NOERR)
{ {
// è una UM dell'articolo: uso i fc per convertirla // è una UM dell'articolo: uso i fc per convertirla
um = _umart->get(UMART_UM); um = umart.get(UMART_UM);
fc /= _umart->get_real(UMART_FC); fc /= umart.get_real(UMART_FC);
} }
} }
else else