Search in sources :

Example 1 with Document

use of ar.com.ergio.print.fiscal.document.Document in project lar_361 by comitsrl.

the class FiscalDocumentPrint method doPrintDocument.

// // TODO - Review the parameters
// public boolean printDocument(final PO document, final Document documentPrintable, final MDocType docType, final MInvoice originalInvoice) {
// // Se valida que el tipo de documento exista
// if(docType == null) {
// throw new IllegalArgumentException("Error: No document type");
// }
// 
// // Se obtiene el tipo de documento a emitir por la impresora.
// String fiscalDocument = (String) docType.get_Value("fiscaldocument");
// setPrinterDocType(fiscalDocument);
// 
// // Se asigna el documento OXP.
// setOxpDocument(document);
// 
// // Se obtiene el controlador fiscal para chequear el status
// //MFiscalPrinter cFiscal = MFiscalPrinter.getOfDocType(docType.get_ID());
// 
// // Ejecutar la acción
// boolean ok = execute(Actions.ACTION_PRINT_DOCUMENT,
// new Object[] { document, documentPrintable, originalInvoice });
// 
// // Se actualizan los datos del documento oxp.
// //updateOxpDocument((MInvoice)document, !ok);
// 
// // reset documento oxp y tipo de doc de la impresora
// //setOxpDocument(null);
// setPrinterDocType(null);
// return ok;
// }
/**
 * Realiza la impresión de la factura con los parámetros correspondientes.
 *
 * @param args
 * @throws Exception
 */
// TODO - Review the parameters: object array with differents t
private void doPrintDocument(final Object[] args) throws Exception {
    // Argumentos
    // MInvoice document = (MInvoice) args[0];
    Document documentPrintable = null;
    MInvoice originalInvoice = null;
    // Factura imprimible por la impresora creada a partir del documento oxp
    if (args.length > 1) {
        documentPrintable = (Document) args[1];
    }
    // necesario para notas de crédito
    if (args.length > 2) {
        originalInvoice = (MInvoice) args[2];
    }
    // Se manda a imprimir el documento según el tipo de documento
    // de las impresoras fiscales asignado al tipo de documento de oxp
    fireActionStarted(FiscalDocumentListener.AC_PRINT_DOCUMENT);
    // Emisión de una factura.
    if (getPrinterDocType().equals(LAR_MDocType.FISCALDOCUMENT_Invoice)) {
        printInvoice(documentPrintable);
    // Emisión de una nota de crédito.
    } else if (getPrinterDocType().equals(LAR_MDocType.FISCALDOCUMENT_CreditNote)) {
        printCreditNote(documentPrintable, originalInvoice);
    // Emisión de una nota de débito.
    } else if (getPrinterDocType().equals(LAR_MDocType.FISCALDOCUMENT_DebitNote)) {
        printDebitNote(documentPrintable);
    }
    // Se dispara el evento de impresión finalizada.
    fireDocumentPrintEndedOk();
// Se actualiza la secuencia del tipo de documento emitido.
// updateDocTypeSequence(document);
}
Also used : MInvoice(org.compiere.model.MInvoice) Document(ar.com.ergio.print.fiscal.document.Document) NonFiscalDocument(ar.com.ergio.print.fiscal.document.NonFiscalDocument)

Aggregations

Document (ar.com.ergio.print.fiscal.document.Document)1 NonFiscalDocument (ar.com.ergio.print.fiscal.document.NonFiscalDocument)1 MInvoice (org.compiere.model.MInvoice)1