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);
}
Aggregations