Spostata la funzione di ricalcolo del documento e corretta

la funzione di scrittura dei movimenti.


git-svn-id: svn://10.65.10.50/trunk@3437 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1996-08-26 08:09:32 +00:00
parent 5ac0b14c3c
commit 59292187e6

View File

@ -226,7 +226,7 @@ int TMovimentoPN_VE::set_cg_rec(int n, const TImporto& imp, TBill& conto,
rec.put(RMV_GRUPPO,conto.gruppo());
rec.put(RMV_CONTO,conto.conto());
rec.put(RMV_SOTTOCONTO,conto.sottoconto());
rec.put(RMV_DESCR,conto.descrizione());
//rec.put(RMV_DESCR,conto.descrizione());
if (tipo == 'T') // Calcolo contropartita
{
@ -696,6 +696,8 @@ void TContabilizzazione_app::build_num_sheet()
(tipon3.empty() || n3<0) && (tipon4.empty() || n4<0) &&
(tipon5.empty() || n5<0))
_num_sheet->disable_row(pos);
else
_num_sheet->enable_row(pos);
}
}
}
@ -832,8 +834,8 @@ error_type TContabilizzazione_app::search_costo_ricavo(TBill& conto, const TRiga
{
if (skip_clifo) continue;
gr = cli_file.get_int(CLI_GRUPPORIC);
co = cli_file().get_int(CLI_CONTORIC);
so = cli_file().get_long(CLI_SOTTOCRIC);
co = cli_file.get_int(CLI_CONTORIC);
so = cli_file.get_long(CLI_SOTTOCRIC);
conto.set(gr,co,so);
if (conto.ok()) break; // se lo trova esce (tutti != 0)
}
@ -1236,13 +1238,13 @@ error_type TContabilizzazione_app::create_total_doc_row()
}
}
TBill zio;
TString descr;
_caus->bill(1,zio);
descr = zio.descrizione();
descr = head.get(MOV_DESCR);// La descrizione della riga di totale documento la prende dalla testata
// se ancora non e' stato trovato piglia quello della causale
if (gruppo == 0 || conto == 0)
{
TBill zio;
_caus->bill(1,zio);
gruppo = zio.gruppo();
conto = zio.conto();
}
@ -1270,8 +1272,6 @@ error_type TContabilizzazione_app::create_total_doc_row()
error_type TContabilizzazione_app::compile_rows_mov()
// Compila le righe
{
// A questo punto il documento e' gia stato calcolato, percio' non c'e' bisogno di
// chiamare la compile_summary() del documento.
const int rows = _doc->rows();
const TArray& sum_arr = _doc->summary_array();
@ -1467,13 +1467,13 @@ error_type TContabilizzazione_app::write_scadenze()
error_type TContabilizzazione_app::write_all()
// Scrive il movimento e le scadenze, gestendo la rinumerazione se il movimento e' gia presente
{
// N.B: _error non viene settato, per non stampare il messaggio di errore 2 volte,
// N.B: _error non viene settato, per non stampare il messaggio di errore 2 volte.
// basta solo ritornare qualcosa di != da no_error, per evitare le operazioni successive
// a write_all
TRectype& head = _movimento->lfile().curr();
long numreg = head.get_long(MOV_NUMREG);
while (_movimento->write() == _isreinsert)
numreg++;
head.put(MOV_NUMREG,++numreg);
if (_movimento->status() != NOERR)
{
error_box("Errore %d scrivendo il movimento %ld.",_movimento->status(),numreg);
@ -1585,6 +1585,8 @@ void TContabilizzazione_app::display_error()
void TContabilizzazione_app::contabilize_document()
{
_movimento = new TMovimentoPN_VE;
_doc->compile_summary(); // ricalcola il documento
compile_head_mov();
if (good()) compile_rows_mov();