Search in sources :

Example 16 with FiscalPacket

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

the class HasarFiscalPrinter method printDocument.

public void printDocument(final DNFH dnfh) throws FiscalPrinterStatusError, FiscalPrinterIOException, DocumentException {
    final Customer customer = dnfh.getCustomer();
    FiscalPacket response;
    // Se valida la nota de crédito.
    dnfh.validate();
    try {
        setCancelAllowed(false);
        // ////////////////////////////////////////////////////////////
        // Se setean los datos del comprador.
        // Comando: @SetCustomerData
        loadCustomerData(customer);
        // ////////////////////////////////////////////////////////////
        // Se abre un documento no fiscal homologado.
        // Comando: @OpenDNFH
        execute(cmdOpenDNFH(// no tiene letra
        traduceDocumentType(Document.DT_SHIPMENT, dnfh.getLetter()), "x"));
        setLastDocumentNo("");
        setCancelAllowed(true);
        setDocumentOpened(true);
        // ////////////////////////////////////////////////////////////
        // Se cargan los ítems del remito emitido.
        // Comando: @PrintEmbarkItem
        loadDocumentEmbarkLineItems(dnfh);
        // ////////////////////////////////////////////////////////////
        // Se cierra el comprobante no fiscal homologado.
        // Comando: @CloseDNFH
        response = execute(cmdCloseDNFH(dnfh.getNumberOfCopies()));
        setDocumentOpened(false);
        setCancelAllowed(false);
        // Se obtiene el número del remito emitido.
        setLastDocumentNo(response.getString(3));
        dnfh.setDocumentNo(getLastDocumentNo());
        // si tiene que finalizar la impresión o no
        if (dnfh.isPrintEnded())
            firePrintEnded();
    } catch (FiscalPrinterIOException e) {
        // Si ocurrió algún error se intenta cancelar el documento
        // actual y se relanza la excepción.
        cancelCurrentDocument();
        throw e;
    }
}
Also used : Customer(ar.com.ergio.print.fiscal.document.Customer) FiscalPrinterIOException(ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException) FiscalPacket(ar.com.ergio.print.fiscal.FiscalPacket)

Example 17 with FiscalPacket

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

the class HasarFiscalPrinter method cmdPrintAccountItem.

public FiscalPacket cmdPrintAccountItem(Date date, String docNumber, String description, BigDecimal debitAmount, BigDecimal creditAmount, Integer display) {
    FiscalPacket cmd = createFiscalPacket(CMD_PRINT_ACCOUNT_ITEM);
    int i = 1;
    cmd.setDate(i++, date);
    cmd.setText(i++, docNumber, 20, false);
    cmd.setText(i++, description, 60, false);
    cmd.setNumber(i++, debitAmount, 9, 2, false);
    cmd.setNumber(i++, creditAmount, 9, 2, false);
    cmd.setNumber(i++, display, true);
    return cmd;
}
Also used : FiscalPacket(ar.com.ergio.print.fiscal.FiscalPacket)

Example 18 with FiscalPacket

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

the class HasarFiscalPrinter method cmdOpenDNFH.

public FiscalPacket cmdOpenDNFH(String docType, String identification) {
    FiscalPacket cmd = createFiscalPacket(CMD_OPEN_DNFH);
    int i = 1;
    cmd.setText(i++, docType, false);
    cmd.setText(i++, "T", true);
    cmd.setText(i++, identification, true);
    return cmd;
}
Also used : FiscalPacket(ar.com.ergio.print.fiscal.FiscalPacket)

Example 19 with FiscalPacket

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

the class HasarFiscalPrinter method cmdGetFantasyName.

public FiscalPacket cmdGetFantasyName(int line) {
    FiscalPacket cmd = createFiscalPacket(CMD_GET_FANTASY_NAME);
    int i = 1;
    cmd.setNumber(i++, line, false);
    return cmd;
}
Also used : FiscalPacket(ar.com.ergio.print.fiscal.FiscalPacket)

Example 20 with FiscalPacket

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

the class HasarFiscalPrinter method printDocument.

public void printDocument(CreditNote creditNote) throws FiscalPrinterStatusError, FiscalPrinterIOException, DocumentException {
    Customer customer = creditNote.getCustomer();
    FiscalPacket response;
    // Se valida la nota de crédito.
    creditNote.validate();
    try {
        setCancelAllowed(false);
        // ////////////////////////////////////////////////////////////
        // Se setea el número de comprobante original.
        // Comando: @SetEmbarkNumber
        execute(cmdSetEmbarkNumber(1, creditNote.getOriginalDocumentNo()));
        // ////////////////////////////////////////////////////////////
        // Se setean los datos del comprador.
        // Comando: @SetCustomerData
        loadCustomerData(customer);
        // ////////////////////////////////////////////////////////////
        // Se abre un documento no fiscal homologado.
        // Comando: @OpenDNFH
        execute(cmdOpenDNFH(traduceDocumentType(Document.DT_CREDIT_NOTE, creditNote.getLetter()), "x"));
        setLastDocumentNo("");
        setCancelAllowed(true);
        setDocumentOpened(true);
        // Comando: @PrintFiscalText
        for (String observation : creditNote.getObservations()) {
            execute(cmdPrintFiscalText(observation, null));
        }
        // ////////////////////////////////////////////////////////////
        // Se cargan los ítems de la nota de crédito.
        // Comando: @PrintLineItem
        loadDocumentLineItems(creditNote);
        // ////////////////////////////////////////////////////////////
        // Se carga la percepción de la note de crédito
        loadDocumentPerception(creditNote);
        // ////////////////////////////////////////////////////////////
        // Se cierra el comprobante no fiscal homologado.
        // Comando: @CloseDNFH
        response = execute(cmdCloseDNFH(null));
        setDocumentOpened(false);
        setCancelAllowed(false);
        // Se obtiene el número de la nota de crédito emitida.
        setLastDocumentNo(response.getString(3));
        creditNote.setDocumentNo(getLastDocumentNo());
        // Se indica al manejador de eventos que la impresión ha finalizado.
        firePrintEnded();
    } catch (FiscalPrinterIOException e) {
        // Si ocurrió algún error se intenta cancelar el documento
        // actual y se relanza la excepción.
        cancelCurrentDocument();
        throw e;
    }
}
Also used : Customer(ar.com.ergio.print.fiscal.document.Customer) FiscalPrinterIOException(ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException) FiscalPacket(ar.com.ergio.print.fiscal.FiscalPacket)

Aggregations

FiscalPacket (ar.com.ergio.print.fiscal.FiscalPacket)39 FiscalPrinterIOException (ar.com.ergio.print.fiscal.exception.FiscalPrinterIOException)5 Customer (ar.com.ergio.print.fiscal.document.Customer)4 Payment (ar.com.ergio.print.fiscal.document.Payment)1 FiscalPrinterStatusError (ar.com.ergio.print.fiscal.exception.FiscalPrinterStatusError)1 IOException (java.io.IOException)1 BigDecimal (java.math.BigDecimal)1