public virtual Sign GetDocumentSign(ARCashSale invoice)
        {
            switch (ARInvoiceType.DrCr(invoice.DocType))
            {
            case DrCr.Credit:
                return(Sign.Plus);

            case DrCr.Debit:
                return(Sign.Minus);

            default:
                throw new PXException(Messages.DocTypeNotSupported);
            }
        }
        public virtual TaxDocumentType GetTaxDocumentType(ARCashSale invoice)
        {
            switch (ARInvoiceType.DrCr(invoice.DocType))
            {
            case DrCr.Credit:
                return(TaxDocumentType.SalesInvoice);

            case DrCr.Debit:
                return(TaxDocumentType.ReturnInvoice);

            default:
                throw new PXException(Messages.DocTypeNotSupported);
            }
        }