diff --git a/src/cg/cg2100.cpp b/src/cg/cg2100.cpp index 98b6d25b2..6094f0d9c 100755 --- a/src/cg/cg2100.cpp +++ b/src/cg/cg2100.cpp @@ -2655,7 +2655,19 @@ int TPrimanota_application::save_fppro() query << " AND " << where_str; fp_db().sq_set_exec(query); - if(has_f1_db(&msk) && fp_db().sq_items() != 1) + int items = fp_db().sq_items(); + if(items != 1 && has_tot_doc(fppro_keys)) // Controllo se e' sbagliato solo il segno dell'importo + { + const int pos = where_str.find('\'', where_str.find("PQ_IMPTOTDOC")); + where_str.cut(0) << where_str.sub(0, pos + 1) << -tot_doc << where_str.sub(where_str.find('\'', pos + 1)); + TPro_msk::query_string(); + query << "WHERE PZ_KEYPRGINVIO = '" << keyprginvio << "' AND PZ_KEYHEADERFATT = '" << keyheaderfatt << "' AND PZ_KEYBODYFATT = '" << keybodyfatt << "'"; + query << " AND " << where_str; + fp_db().sq_set_exec(query); + items = fp_db().sq_items(); + } + + if(has_f1_db(&msk) && items != 1) { warning_box(TString("Attenzione, ") << "al movimento non è stato abbinato nessun documento elettronico.\n" << "Per consentire una corretta archiviazione sostitutiva si consiglia di provvedere al controllo della registrazione e di procedere\n" <<