Patch level : 4.0 boh patch

Files correlati     :
Ricompilazione Demo : [ ]
Commento            : Corretto trasferimento a PMC (_caus non esiste se cespite)


git-svn-id: svn://10.65.10.50/trunk@14123 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
cris 2006-06-26 14:58:21 +00:00
parent 26ddddc702
commit 1a0ca41a6f

View File

@ -120,13 +120,14 @@ bool TIni2Sql::test_swap_conto(const int gr, const int co, const char sezione) c
bool TIni2Sql::test_swap() const bool TIni2Sql::test_swap() const
{ {
bool s = false; bool s = false;
if (_caus != NULL && *_caus->codice() > ' ') // esiste la causale if (_caus != NULL)
{ if (*_caus->codice() > ' ') // esiste la causale
const char sez = _caus->sezione_clifo(); {
const TipoIVA iva = _caus->iva(); const char sez = _caus->sezione_clifo();
const bool vendite = iva == nessuna_iva ? _doc->tipocf() == 'C' : iva == iva_vendite; const TipoIVA iva = _caus->iva();
s = vendite ^ (sez == 'D'); const bool vendite = iva == nessuna_iva ? _doc->tipocf() == 'C' : iva == iva_vendite;
} s = vendite ^ (sez == 'D');
}
return s; return s;
} }
@ -832,19 +833,25 @@ bool TIni2Sql::search_conto_cespite(TBill& conto, const TRiga_documento& r)
int esc = esercizi.date2esc(r.doc().get_date(DOC_DATADOC)); int esc = esercizi.date2esc(r.doc().get_date(DOC_DATADOC));
TString16 str; TString16 str;
str.format("%04d", esc); str.format("%04d", esc);
const TRectype& curr_ccb = cache().get("CCB", str); TTable tabccb("CCB");
TString80 codtab = curr_ccb.get("CODTAB"); tabccb.put("CODTAB", str);
const char* codgruppo = codtab.sub(5,6); tabccb.read();
const char* codspecie = codtab.sub(7,10); TString80 codtab = tabccb.get("CODTAB");
TToken_string key; if (codtab.sub(0,4) == str)
key.add(codgruppo); {
key.add(codspecie); int codgruppo = atoi(codtab.sub(5,6));
key.add(codcat); const char* codspecie = codtab.sub(7,10);
const TRectype& collces = cache().get(LF_COLLCES, key); TLocalisamfile collces(LF_COLLCES);
gr = collces.get_int(COLLCES_GRUPPOQNO); collces.zero();
co = collces.get_int(COLLCES_CONTOQNO); collces.put(COLLCES_CODGRUPPO, codgruppo);
so = collces.get_int(COLLCES_SOTTOCQNO); collces.put(COLLCES_CODSPECIE, codspecie);
conto.set(gr,co,so); collces.put(COLLCES_CODCAT, codcat);
collces.read();
gr = collces.get_int(COLLCES_GRUPPOQNO);
co = collces.get_int(COLLCES_CONTOQNO);
so = collces.get_int(COLLCES_SOTTOCQNO);
conto.set(gr,co,so);
}
return (conto.ok()); return (conto.ok());
} }
@ -913,6 +920,8 @@ void TIni2Sql::write_sqlinsert()
const int nriga = build_nriga(*paragrafo); const int nriga = build_nriga(*paragrafo);
if (nriga <= _doc->rows()) if (nriga <= _doc->rows())
{ {
if (_caus != NULL)
_caus = NULL;
_rigadoc = new TRiga_documento((*_doc)[nriga]); _rigadoc = new TRiga_documento((*_doc)[nriga]);
if (is_cespite) if (is_cespite)
ok = search_conto_cespite(_conto, (*_rigadoc)); ok = search_conto_cespite(_conto, (*_rigadoc));