self.set("balance", balance);
// Propose partial reconciliation if necessary
- if (lines_selected_num === 1 && self.st_line.amount * balance > 0 && ! mv_lines_selected[0].partial_reconcile) {
+ if (lines_selected_num === 1 &&
+ self.st_line.amount * balance > 0 &&
+ self.st_line.amount * (mv_lines_selected[0].debit - mv_lines_selected[0].credit) < 0 &&
+ ! mv_lines_selected[0].partial_reconcile) {
+
mv_lines_selected[0].propose_partial_reconcile = true;
self.updateAccountingViewMatchedLines();
+ } else if (lines_selected_num === 1) {
+ mv_lines_selected[0].propose_partial_reconcile = false;
+ self.updateAccountingViewMatchedLines();
}
},