diff --git a/ef/ef0a00.cpp b/ef/ef0a00.cpp index 7b4016120..d55e983b9 100755 --- a/ef/ef0a00.cpp +++ b/ef/ef0a00.cpp @@ -553,19 +553,10 @@ bool TPE_mask::check_bank(TEffetto& effetto, TLog_report& log) const } if (iban.blank()) iban = clifo.get(CLI_IBAN); - if (iban.starts_with("IT")) + if (iban.starts_with("IT") && iban.len() > 15) { - if (real::is_null(abi) || real::is_null(cab)) - { - abi = iban.mid( 5, 5); - cab = iban.mid(10, 5); - } - else - { - TString16 abicab; abicab << abi << cab; - if (iban.mid(5, 10) != abicab) - iban.cut(0); - } + abi = iban.mid( 5, 5); + cab = iban.mid(10, 5); } effetto.put(EFF_CODABI, abi); @@ -655,7 +646,7 @@ void TPE_mask::save_rate() // Trova rata key.add(row->get(sheet.cid2index(F_RATA))); const TRectype& scad = cache().get(LF_SCADENZE, key); -// eff.put(EFF_DATASCAD, scad.get(SCAD_DATASCAD)); + // eff.put(EFF_DATASCAD, scad.get(SCAD_DATASCAD)); TDate datapag(row->get(sheet.cid2index(F_DATAPAG))); if (!datapag.ok()) @@ -666,15 +657,14 @@ void TPE_mask::save_rate() const long codcf = row->get_long(sheet.cid2index(F_CODCF)); TRectype& reff = new_row_effetto(distinta, tipocf, codcf, datapag, rigadist, rigaeff); - reff.put(REFF_ANNO, row->get(sheet.cid2index(F_ANNO))); + reff.put(REFF_ANNO, row->get(sheet.cid2index(F_ANNO))); reff.put(REFF_NUMPART, row->get(sheet.cid2index(F_PARTITA))); - reff.put(REFF_NRIGA, row->get(sheet.cid2index(F_RIGA))); - reff.put(REFF_NRATA, row->get(sheet.cid2index(F_RATA))); + reff.put(REFF_NRIGA, row->get(sheet.cid2index(F_RIGA))); + reff.put(REFF_NRATA, row->get(sheet.cid2index(F_RATA))); - - reff.put(REFF_NFATT, part.get(PART_NUMDOC)); + reff.put(REFF_NFATT, part.get(PART_NUMDOC)); reff.put(REFF_DATAFATT, part.get(PART_DATADOC)); - reff.put(REFF_IMPFATT, part.get(PART_IMPORTO)); + reff.put(REFF_IMPFATT, part.get(PART_IMPORTO)); TString8 abi = scad.get(SCAD_CODABI); TString8 cab = scad.get(SCAD_CODCAB); @@ -682,7 +672,7 @@ void TPE_mask::save_rate() key.format("%c|%ld", tipocf, codcf); const TRectype& clifo = cache().get(LF_CLIFO, key); TString80 iban = clifo.get(CLI_IBAN); - if (atol(abi) == 0 || atol(cab) == 0L) + if (iban.starts_with("IT") || real::is_null(abi) || real::is_null(cab)) { abi = clifo.get(CLI_CODABI); cab = clifo.get(CLI_CODCAB);