/****************************************************************************** * Product: Adempiere ERP & CRM Smart Business Solution * * Copyright (C) 1999-2007 ComPiere, Inc. All Rights Reserved. * * This program is free software, you can redistribute it and/or modify it * * under the terms version 2 of the GNU General Public License as published * * by the Free Software Foundation. This program is distributed in the hope * * that it will be useful, but WITHOUT ANY WARRANTY, without even the implied * * warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along * * with this program, if not, write to the Free Software Foundation, Inc., * * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. * * For the text or an alternative of this public license, you may reach us * * ComPiere, Inc., 2620 Augustine Dr. #245, Santa Clara, CA 95054, USA * * or via info@compiere.org or http://www.compiere.org/license.html * *****************************************************************************/ package ar.com.ergio.print.fiscal.hasar; import java.math.BigDecimal; import java.util.Date; import ar.com.ergio.print.fiscal.FiscalPacket; /** * Comandos que interpretan las impresoras fiscales Hasar. * @author Franco Bonafine * @date 21/01/2008 */ public interface HasarCommands { /////////////////////////////////////////////////////////////////////// // Códigos de los comandos /////////////////////////////////////////////////////////////////////// // Comandos de configuración y consulta /** Consultar estado. (0x2A) */ public int CMD_STATUS_REQUEST = 0x2A; /** Consultar estado intermedio. (0xA1) */ public int CMD_STATPRN = 0xA1; /** Consultar versión del controlador fiscal. (0x7F) */ public int CMD_GET_FISCAL_DEVICE_VERSION = 0x7F; /** Dar de baja la memoria fiscal. (0xB1) */ public int CMD_KILL_FISCAL_MEMORY = 0xB1; /** Cambiar velocidad de comunicación. (0xA0) */ public int CMD_SET_COM_SPEED = 0xA0; /** Cambiar fecha y hora. (0x58) */ public int CMD_SET_DATE_TIME = 0x58; /** Consultar fecha y hora. (0x59) */ public int CMD_GET_DATE_TIME = 0x59; /** Cargar configuración, comando nuevo. (0x95) */ public int CMD_SET_GENERAL_CONFIGURATION = 0x95; /** Consultar configuración, comando nuevo. (0x96) */ public int CMD_GET_GENERAL_CONFIGURATION = 0x96; /** Cargar configuración, comando viejo. (0x65) */ public int CMD_SET_CONFIGURATION_BY_BLOCK = 0x65; /** Consultar configuración, comando viejo. (0x66) */ public int CMD_GET_CONFIGURATION_BY_BLOCK = 0x66; /** Cargar configuración por parámetro. (0x64) */ public int CMD_SET_CONFIGURATION_BY_ONE = 0x64; /** Consultar datos de inicialización. (0x73) */ public int CMD_GET_INIT_DATA = 0x73; /** Cambiar responsabilidad frente al IVA. (0x63) */ public int CMD_CHANGE_IVA_RESPONSIBILITY = 0x63; /** Cambiar número de Ingresos Brutos. (0x6E) */ public int CMD_CHANGE_IB_NUMBER = 0x6E; /** Cargar nombre de fantasía del propietario. (0x5F) */ public int CMD_SET_FANTASY_NAME = 0x5F; /** Consultar nombre de fantasía del propietario. (0x92) */ public int CMD_GET_FANTASY_NAME = 0x92; /** Cargar encabezamiento y pie de documentos. (0x5D) */ public int CMD_SET_HEADER_TRAILER = 0x5D; /** Consultar encabezamiento y pie de documentos. (0x5E) */ public int CMD_GET_HEADER_TRAILER = 0x5E; /** Cargar logotipo del cliente. (0x90) */ public int CMD_STORE_LOGO_DATA = 0x90; /** Borrar logotipo del cliente. (0x91) */ public int CMD_RESET_LOGO_DATA = 0x91; // Comandos de control fiscal /** Consultar capacidad restante de registros diarios. (0x37) */ public int CMD_GET_HISTORY_CAPACITY = 0x37; /** Cerrar jornada fiscal imprimiendo reporte. (0x39) */ public int CMD_DAILY_CLOSE = 0x39; /** Imprimir reporte de auditoría por fecha. (0x3A) */ public int CMD_DAILY_CLOSE_BY_DATE = 0x3A; /** Imprimir reporte de auditoría por número de Z. (0x3B) */ public int CMD_DAILY_CLOSE_BY_NUMBER = 0x3B; /** Consultar registro diario. (0x3C) */ public int CMD_GET_DAILY_REPORT = 0x3C; /** Consultar memoria de trabajo. (0x67) */ public int CMD_GET_WORKING_MEMORY = 0x67; /** Iniciar consulta de la información de IVA. (0x70) */ public int CMD_SEND_FIRST_IVA = 0x70; /** Continuar consulta de la información de IVA. (0x71) */ public int CMD_NEXT_TRANSMISSION = 0x71; // Comandos comunes a varios tipos de documentos /** Cancelar documento. (0x98) */ public int CMD_CANCEL_DOCUMENT = 0x98; /** Reimprimir el último documento emitido. (0x99) */ public int CMD_REPRINT_DOCUMENT = 0x99; /** Cargar código de barras. (0x5A) */ public int CMD_SET_BAR_CODE = 0x5A; /** Cargar datos del cliente. (0x62) */ public int CMD_SET_CUSTOMER_DATA = 0x62; /** Cargar información de remito o de comprobante original. (0x93) */ public int CMD_SET_EMBARK_NUMBER = 0x93; /** Consultar información de remito o de comprobante original. (0x94) */ public int CMD_GET_EMBARK_NUMBER = 0x94; /** Avanzar papel de ticket. (0x50) */ public int CMD_FEED_TICKET = 0x50; /** Avanzar papel de auditoría. (0x51) */ public int CMD_FEED_JOURNAL = 0x51; /** Avanzar papeles de ticket y auditor�a. (0x52) */ public int CMD_FEED_TICKET_AND_JOURNAL = 0x52; // Comandos de documentos fiscales /** DF: Abrir documento fiscal. (0x40) */ public int CMD_OPEN_FISCAL_RECEIPT = 0x40; /** DF: Imprimir texto fiscal. (0x41) */ public int CMD_PRINT_FISCAL_TEXT = 0x41; /** DF: Imprimir ítem. (0x42) */ public int CMD_PRINT_LINE_ITEM = 0x42; /** DF: Descuento o recargo sobre el último ítem. (0x55) */ public int CMD_LAST_ITEM_DISCOUNT = 0x55; /** DF: Descuento general. (0x54) */ public int CMD_GENERAL_DISCOUNT = 0x54; /** DF: Devolución de envases, bonificaciones y recargos. (0x6D) */ public int CMD_RETURN_RECHARGE = 0x6D; /** DF: Recargo de IVA a responsable no inscripto. (0x61) */ public int CMD_CHARGE_NON_REGISTERED_TAX = 0x61; /** DF: Percepciones sobre el IVA. (0x60) */ public int CMD_PERCEPTIONS = 0x60; /** DF: Consultar subtotal. (0x43) */ public int CMD_SUBTOTAL = 0x43; /** DF: Definir líneas de texto en recibos. (0x97) */ public int CMD_RECEIPT_TEXT = 0x97; /** DF: Imprimir total y pago. (0x44) */ public int CMD_TOTAL_TENDER = 0x44; /** DF: Cerrar documento fiscal. (0x45) */ public int CMD_CLOSE_FISCAL_RECEIPT = 0x45; // Comandos de documentos no fiscales /** DNF: Abrir documento no fiscal en impresora Ticket. (0x48) */ public int CMD_OPEN_NON_FISCAL_RECEIPT = 0x48; /** DNF: Abrir documento no fiscal en impresora Slip. (0x47) */ public int CMD_OPEN_NFD_SLIP = 0x47; /** DNF: Imprimir texto no fiscal. (0x49) */ public int CMD_PRINT_NON_FISCAL_TEXT = 0x49; /** DNF: Cerrar documento no fiscal. (0x4A) */ public int CMD_CLOSE_NON_FISCAL_RECEIPT = 0x4A; /** DNF: Cortar documento no fiscal. (0x4B) */ public int CMD_CUT_NFD = 0x4B; // Comandos de documentos no fiscales homologados /** DNFH: Abrir documento no fiscal homologado. (0x80) */ public int CMD_OPEN_DNFH = 0x80; /** DNFH: Imprimir ítem en remito u orden de salida. (0x82) */ public int CMD_PRINT_EMBARK_ITEM = 0x82; /** DNFH: Imprimir ítem en resumen de cuenta o en cargo a la habitaci�n. (0x83) */ public int CMD_PRINT_ACCOUNT_ITEM = 0x83; /** DNFH: Imprimir ítem en cotización. (0x84) */ public int CMD_PRINT_QUOTATION_ITEM = 0x84; /** DNFH: Cerrar documento no fiscal homologado. (0x81) */ public int CMD_CLOSE_DNFH = 0x81; /** Imprimir documento no fiscal homologado para farmacias. (0x68) */ public int CMD_PRINT_PHARMACY_NFHD = 0x68; /** Imprimir documento no fiscal homologado para reparto. (0x69) */ public int CMD_PRINT_DELIVERY_NFHD = 0x69; // Comandos de documentos voucher /** Voucher: Iniciar carga de datos del voucher. (0x6A) */ public int CMD_SET_VOUCHER_DATA_1 = 0x6A; /** Voucher: Finalizar carga de datos del voucher. (0x6B) */ public int CMD_SET_VOUCHER_DATA_2 = 0x6B; /** Voucher: Imprimir voucher. (0x6C) */ public int CMD_PRINT_VOUCHER = 0x6C; // Otros comandos /** Abrir cajón de dinero. (0x7B) */ public int CMD_OPEN_DRAWER = 0x7B; /** Escribir en visor. (0xB2) */ public int CMD_WRITE_DISPLAY = 0xB2; /** Seleccionar fuente de doble ancho para imprimir la línea */ public int CMD_DOUBLE_WIDTH = 0xF4; /////////////////////////////////////////////////////////////////////// // Comandos de inicialización, baja y configuración. /////////////////////////////////////////////////////////////////////// /** * Comando que establece la velocidad de comunicación entre el host y * el controlador fiscal. * @param speed: velocidad de comunicación * <ul> * <li>2400 : 2.400 bps</li> * <li>4800 : 4.800 bps</li> * <li>9600 : 9.600 bps</li> * <li>19200 : 19.200 bps</li> * <li>38400 : 38.400 bps</li> * <li>57600 : 57.600 bps</li> * <li>115200 : 115.200 bps</li> * </ul> * @return String que representa el comando para la impresora. **/ public FiscalPacket cmdSetComSpeed(Long speed); /** * Comando que configura en bloque los parámetros de funcionamiento * del controlador. * @param printConfigReport: Iiprimir el reporte de configuración. * @param loadDefaultData: carga los valores por defecto de los * parámetros ausentes. * @param finalConsumerLimit: monto límite a partir del cual las facturas * y notas de débito a consumidor final deben llevar obligatoriamente * los datos del comprador. * @param ticketInvoiceLimit: límite de Ticket-Factura. * @param ivaNotInscript: porcentaje a aplicar a consumidores responsables * no inscriptos. * @param copies: cantidad máxima de copias que se imprimen de cada * documento. * @param printChange: imprime las leyendas 'CAMBIO $0.00'. * @param printLabels: imprime los datos de Ingresos Brutos, leyenda * 'A CONSUMIDOR FINAL' y las líneas en blanco. * @param ticketCutType: tipo de corte que el troquelador realizará una * vez impreso el comprobante. * @param printFramework: impresión de marco de los documentos. * @param reprintDocuments: reimpresión automática de documentos cancelados * por corte de energía. * @param balanceText: texto a imprimir como saldo de medio de pago. * @param paperSound: emitir señal sonora que indica la falta de papel. * @param paperSize: tamaño de la hoja. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetGeneralConfiguration(boolean printConfigReport, boolean loadDefaultData, BigDecimal finalConsumerLimit, BigDecimal ticketInvoiceLimit, BigDecimal ivaNonInscript, Integer copies, Boolean printChange, Boolean printLabels, String ticketCutType, Boolean printFramework, Boolean reprintDocuments, String balanceText, Boolean paperSound, String paperSize); /** * Comando que cambia el valor de responsabilidad frente al IVA * almacenado en la memoria fiscal del controlador. * @param ivaResponsability: nueva responsabilidad frente al IVA. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdChangeIVAResponsibility(String ivaResponsability); /////////////////////////////////////////////////////////////////////// // Comandos de diagnóstico y consulta /////////////////////////////////////////////////////////////////////// /** * Comando que consulta el estado en que se encuentra el controlador * fiscal, el hardware del impresor y los documentos emitidos. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdStatusRequest(); /** * Comando que consulta el estado en que se encuentra el controlador fiscal * y el hardware del impresor aún cuando la impresora no ha terminado de * procesar el comando. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSTATPRN(); /** * Comando que consulta la configuración del controlador. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetGeneralConfigurationData(); /////////////////////////////////////////////////////////////////////// // Comandos de control fiscal /////////////////////////////////////////////////////////////////////// /** * Comando para cierre de jornada fiscal. * @param docType: tipo de cierre a realizar. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdDailyClose(String docType); /** * Comando que consulta los datos guardados en la memoria de trabajo * durante la jornada fiscal. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetWorkingMemory(); /** * Comando para iniciar el envió de montos asociados a porcentajes de IVA, * impuestos internos y percepciones. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSendFirstIVA(); /** * Continúa el envió de montos asociados a porcentajes de IVA, impuestos * internos y percepciones. Es el complementdo de {@link #cmdSendFirstIVA()} * ya que permite obtener los importes de impuestos calculados por cada tasa * de IVA, luego percepciones e impuestos internos. * @return <code>FiscalPacket</code> que representa el comando para la * impresora. */ public FiscalPacket cmdNextIVATransmission(); /////////////////////////////////////////////////////////////////////// // Comandos de comprobante fiscal y nota de crédito /////////////////////////////////////////////////////////////////////// /** * Comando para abrir un comprobante fiscal. * @param docType: tipo del documento. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdOpenFiscalReceipt(String docType); /** * Comando para imprimir texto fiscal. * @param text: texto fiscal a imprimir. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintFiscalText(String text, Integer display); /** * Comando para imprimir un item fiscal. * @param description: descripción del item. * @param quantity: cantidad del item. * @param price: precio unitario del item. * @param ivaPercent: porcentaje del IVA que se aplica al item. * @param substract: imputación del item. * <code>True</code> resta en el comprobante fiscal. * <code>False</code> suma en el comprobante fiscal. * @param internalTaxes: impuestos internos. * @param basePrice: indica si el precio tiene el IVA incluído o no. * <code>True</code> indica que el precio no tiene IVA incluído. * <code>False</code> indica que el precio tiene IVA incluído. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintLineItem(String description, BigDecimal quantity, BigDecimal price, BigDecimal ivaPercent, boolean substract, BigDecimal internalTaxes, boolean basePrice, Integer display); /** * Comando para aplicar un decuento/recargo sobre el último item vendido. * @param description: descripción del descuent/recargo. * @param amount: monto a aplicar. * @param substract: Imputación del monto. * <code>True</code> resta en el comprobante fiscal. * <code>False</code> suma en el comprobante fiscal. * @param baseAmount: Indica si el monto tiene el IVA incluído o no. * <code>True</code> indica que el monto no tiene IVA incluído. * <code>False</code> indica que el monto tiene IVA incluído. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdLastItemDiscount(String description, BigDecimal amount, boolean substract, boolean baseAmount, Integer display); /** * Comando para aplicar un descuento o recargo general. * @param description: descripción del descuento/recargo. * @param amount: monto a aplicar. * @param substract: imputación del monto. * <code>True</code> resta en el comprobante fiscal. * <code>False</code> suma en el comprobante fiscal. * @param baseAmount: indica si el monto tiene el IVA incluído o no. * <code>True</code> indica que el monto no tiene IVA incluído. * <code>False</code> indica que el monto tiene IVA incluído. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGeneralDiscount(String description, BigDecimal amount, boolean substract, boolean baseAmount, Integer display); /** * Comando para generar percepciones. * @param description: Descripción. * @param amount: monto de la percepción. * @param alicuotaIVA: alícuota del IVA. Si no se indica ningun porcentaje * (<code>null</code>) la percepción es general. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPerceptions(String description, BigDecimal amount, BigDecimal alicuotaIVA); /** * Comando para calcular el subtotal del comprobante abierto. * @param print: imprime texto y monto. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSubtotal(boolean print, Integer display); /** * Comando para calcular el total del comprobante abierto. * @param description: descripción. * @param amount: monto total. * @param cancel: cancela el comprobante fiscal abierto. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdTotalTender(String description, BigDecimal amount, boolean cancel, Integer display); /** * Comando para cerrar un comprobante fiscal. * @param copies: Cantidad de copias a imprimir. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdCloseFiscalReceipt(Integer copies); /** * Comando para realizar Devolución de envases, Bonificaciones y Recargos * @param description: descripción del descuent/recargo. * @param amount: monto a aplicar. * @param ivaPercent: porcentaje del IVA que se aplica al item. * @param substract: Imputación del monto. * <code>True</code> resta en el comprobante fiscal. * <code>False</code> suma en el comprobante fiscal. * @param internalTaxes: impuestos internos. * @param baseAmount: Indica si el monto tiene el IVA incluído o no. * <code>True</code> indica que el monto no tiene IVA incluído. * <code>False</code> indica que el monto tiene IVA incluído. * @param display: tipo de impresión. * @param operation: "B" descuento / recargo, otro caracter para devolución de envases * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdReturnRecharge(String description, BigDecimal amount, BigDecimal ivaPercent, boolean subtract, BigDecimal internalTaxes, boolean baseAmount, Integer display, String operation); /////////////////////////////////////////////////////////////////////// // Comandos de comprobante no fiscal /////////////////////////////////////////////////////////////////////// /** * Comando para abrir un comprobante no fiscal. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdOpenNonFiscalReceipt(); /** * Comando para imprimir un texto no fiscal dentro de un comprobante * no fiscal. * @param text: texto a imprimir. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintNonFiscalText(String text, Integer display); /** * Comando para cerrar un comprobante no fiscal. * @param copies: Cantidad de copias a imprimir. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdCloseNonFiscalReceipt(Integer copies); /////////////////////////////////////////////////////////////////////// // Comandos de documentos no fiscales homologados /////////////////////////////////////////////////////////////////////// /** * Comando para abrir un documento no fiscal homologado. * @param docType: tipo del documento. * @param identification: identificación del documento. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdOpenDNFH(String docType, String identification); /** * Comando para imprimir una línea dividida en dos campos (descripción y * cantidad) en un documento no fiscal homologado. * @param description: descriptión del item. * @param quantity: cantidad del item. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintEmbarkItem(String description, BigDecimal quantity, Integer display); /** * Comando para imprimir item en resumen de cuenta o cargo a la habitación. * @param date: fecha del comprobante. * @param docNumber: número del comprobante. * @param description: descripción de venta o servicio. * @param debitAmount: monto del debe. * @param creditAmount: monto del haber. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintAccountItem(Date date, String docNumber, String description, BigDecimal debitAmount, BigDecimal creditAmount, Integer display); /** * Comando para imprimir un item en una cotización. * @param description: descipción del item. * @param display: tipo de impresión. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdPrintQuotationItem(String description, Integer display); /** * Comando para cerrar un documento no fiscal homologado. * @param copies: Cantidad de copias a imprimir. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdCloseDNFH(Integer copies); /////////////////////////////////////////////////////////////////////// // Comandos comunes a varios tipos de documentos /////////////////////////////////////////////////////////////////////// /** * Comando para cancelación del documento abierto. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdCancelDocument(); /** * Comando para reimpremir el último documento emitido. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdReprint(); /** * Comando para almacenar los datos de un código de barras e imprimirlo * automáticamente. * @param codeType: tipo del código de barras. * <ul> * <li><code>HasarFiscalPrinter.EAN_13</code></li> * <li><code>HasarFiscalPrinter.EAN_8</code></li> * <li><code>HasarFiscalPrinter.UPCA</code></li> * <li><code>HasarFiscalPrinter.ITS</code></li> * </ul> * @param data: número del código de barras. * @param printNumbers: imprimir números. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdBarCode(Integer codeType, String data, boolean printNumbers); /////////////////////////////////////////////////////////////////////// // Comandos de fecha, hora, encabezamiento y cola de documentos /////////////////////////////////////////////////////////////////////// /** * Comando para asignar la fecha y hora al controlador. * @param dateTime: fecha y hora. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetDateTime(Date dateTime); /** * Comando para consultar la fecha y hora del controlador. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetDateTime(); /** * Comando para programar el texto del nombre de fantasía del propietario. * @param line: número de línea del nombre de fantasía. * @param text: texto. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetFantasyName(int line, String text); /** * Comando para consultar el texto del nombre de fantasía del propietario. * @param line: número de línea del nombre de fantasía. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetFantasyName(int line); /** * Comando para programar texto de encabezamiento y cola de documentos. * @param line: número de línea de encabezamiento o cola. * @param text: texto de la línea. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetHeaderTrailer(int line, String text); /** * Comando para consultar el texto de encabezamiento y cola de documentos. * @param line: número de línea de encabezamiento o cola. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetHeaderTrailer(int line); /** * Comando para setear los datos del comprador de la factura. * @param name: nombre del comprador. * @param customerDocNumber: nro. de documento / CUIT. * @param ivaResponsibility: responsabilidad frente al IVA * <ul> * <li><code>HasarFiscalPrinter.RESPONSABLE_NO_INSCRIPTO</code></li> * <li><code>HasarFiscalPrinter.EXENTO</code></li> * <li><code>NO_RESPONSABLE</code></li> * <li><code>HasarFiscalPrinter.CONSUMIDOR_FINAL</code></li> * <li><code>HasarFiscalPrinter.RESPONSABLE_NO_INSCRIPTO_BIENES_DE_USO</code></li> * <li><code>HasarFiscalPrinter.RESPONSABLE_MONOTRIBUTO</code></li> * <li><code>HasarFiscalPrinter.MONOTRIBUTISTA_SOCIAL</code></li> * <li><code>HasarFiscalPrinter.PEQUENO_CONTRIBUYENTE_EVENTUAL</code></li> * <li><code>HasarFiscalPrinter.PEQUENO_CONTRIBUYENTE_EVENTUAL_SOCIAL</code></li> * <li><code>HasarFiscalPrinter.NO_CATEGORIZADO</code></li> * </ul> * @param docType: tipo de documento * <ul> * <li><code>HasarFiscalPrinter.CUIT</code></li> * <li><code>HasarFiscalPrinter.CUIL</code></li> * <li><code>HasarFiscalPrinter.LIBRETA_DE_ENROLAMIENTO</code></li> * <li><code>HasarFiscalPrinter.LIBRETA_CIVICA</code></li> * <li><code>HasarFiscalPrinter.DNI</code></li> * <li><code>HasarFiscalPrinter.PASAPORTE</code></li> * <li><code>HasarFiscalPrinter.CEDULA</code></li> * <li><code>HasarFiscalPrinter.SIN_CALIFICADOR</code></li> * </ul> * @param location: domicilio comercial. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetCustomerData(String name, String customerDocNumber, String ivaResponsibility, String docType, String location); /** * Comando para cargar información del remito, comprobante original * o crédito. * @param line: número de línea del remito o comprobante original. * @param text: texto de la línea. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdSetEmbarkNumber(int line, String text); /** * Comando para consultar información del remito o comprobante original. * @param line: número de línea a consultar. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdGetEmbarkNumber(int line); /////////////////////////////////////////////////////////////////////// // Comandos para tipos de letra /////////////////////////////////////////////////////////////////////// /** * Comando para establecer a tamaño doble el tipo de letra para * imprimir la línea. * @return <code>FiscalPacket</code> que representa el comando para la impresora. */ public FiscalPacket cmdDoubleWidth(); }