X-Git-Url: https://delta.frontaccounting.com/gitweb/?a=blobdiff_plain;f=admin%2Fdb%2Fvoiding_db.inc;h=5711a0e41eb3ffb3a1f8f95c08e018cf20135c16;hb=561f438a3a1f7b5753d2b09238871418710e687f;hp=62165c1fbf2206d48a1bb7c10dfb22291f40a80e;hpb=46c5f7a65a7659a44ae8254c63152074363d3987;p=fa-stable.git diff --git a/admin/db/voiding_db.inc b/admin/db/voiding_db.inc index 62165c1f..5711a0e4 100644 --- a/admin/db/voiding_db.inc +++ b/admin/db/voiding_db.inc @@ -29,23 +29,27 @@ function void_transaction($type, $type_no, $date_, $memo_) void_journal_trans($type, $type_no); break; - case ST_BANKPAYMENT : // it's a payment case ST_BANKDEPOSIT : // it's a deposit case ST_BANKTRANSFER : // it's a transfer + if (!check_void_bank_trans($type, $type_no)) + return false; + case ST_BANKPAYMENT : // it's a payment if (!exists_bank_trans($type, $type_no)) return false; void_bank_trans($type, $type_no); break; + case ST_CUSTPAYMENT : // it's a customer payment + if (!check_void_bank_trans($type, $type_no)) + return false; case ST_SALESINVOICE : // it's a customer invoice case ST_CUSTCREDIT : // it's a customer credit note - case ST_CUSTPAYMENT : // it's a customer payment case ST_CUSTDELIVERY : // it's a customer dispatch if (!exists_customer_trans($type, $type_no)) return false; if ($type == ST_CUSTDELIVERY) // added 04 Oct 2008 by Joe Hunt. If delivery note has a not voided invoice, then NO. { - $childs = get_sales_child_trans($type_no, $type); + $childs = get_sales_child_lines($type, $type_no, false); // 2011-03-17 This had been changed. Joe if ($childs && db_num_rows($childs)) return false; } @@ -65,8 +69,11 @@ function void_transaction($type, $type_no, $date_, $memo_) break; case ST_PURCHORDER : // it's a PO - case ST_SUPPRECEIVE : // it's a GRN return false; + + case ST_SUPPRECEIVE : // it's a GRN + if (exists_grn_on_invoices($type_no)) + return false; case ST_SUPPINVOICE : // it's a suppler invoice case ST_SUPPCREDIT : // it's a supplier credit note case ST_SUPPAYMENT : // it's a supplier payment @@ -105,8 +112,8 @@ function void_transaction($type, $type_no, $date_, $memo_) // only add an entry if it's actually been voided add_audit_trail($type, $type_no, $date_, _("Voided.")."\n".$memo_); - add_voided_entry($type, $type_no, $date_, $memo_); $Refs->restore_last($type, $type_no); + add_voided_entry($type, $type_no, $date_, $memo_); return true; }