- case 18 : // it's a PO
- case 25 : // it's a GRN
- return false;
- case 20 : // it's a suppler invoice
- case 21 : // it's a supplier credit note
- case 22 : // it's a supplier payment
+ case ST_PURCHORDER : // it's a PO
+ return _('This transaction type cannot be voided.');
+ break;
+
+ case ST_SUPPRECEIVE : // it's a GRN
+ if (exists_grn_on_invoices($type_no))
+ return _('This GRN cannot be voided because it was already invoiced.');
+ if (!post_void_supp_trans($type, $type_no))
+ return _('Error encountered when voiding transaction.');
+ break;
+
+ 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