diff --git a/cg/cg2100.cpp b/cg/cg2100.cpp index 29278d34a..1eb3199e3 100755 --- a/cg/cg2100.cpp +++ b/cg/cg2100.cpp @@ -1001,6 +1001,8 @@ void TPrimanota_application::genera_incasso(const char* causimm) const TString16 datareg = m.get(F_DATAREG); long num = m.get_long(F_NUMREG); + inc.destroy_rows(num); + TRectype& r = inc.cg(0); r.zero(); r.put("NUMREG", num); @@ -1035,8 +1037,8 @@ void TPrimanota_application::genera_incasso(const char* causimm) for (int i = 2; i < 5; i++) { const int sid = i == 2 ? I_SEZIONE2 : (i == 3 ? I_SEZIONE3 : I_SEZIONE4); - const char* imp = m.get(sid+1); - if (*imp == '\0') break; + const TString& imp = m.get(sid+1); + if (imp.empty()) break; TRectype& r = inc.cg(i-1); r.zero(); @@ -1077,7 +1079,7 @@ void TPrimanota_application::genera_incasso(const char* causimm) _saldi.set_anno_es(m.get_int(F_ANNOES)); _saldi.set_num_ulmov(_lastreg); _saldi.set_data_ulmov((TDate)m.get(F_DATAREG)); - for (int r = 0; r < i; r++) + for (int r = 0; r < inc.cg_items(); r++) { const TRectype& rec = inc.cg(r); TBill c; c.get(rec);