Вы находитесь на странице: 1из 32

BIGSYS TEMPLATES

IMPRESORAS FISCALES
Ver 6.15
Por Juan Carlos Rodrguez

1. GENERALIDADES

Este producto tiene el objetivo de simplificar la utilizacin de las impresoras fiscales.


Se diseo para que el programa generado con estas funciones sea compatible con cualquier impresora que el
usuario del sistema utilice sin necesidad de modificarlo. Solo deber cambiar la librera segn la marca de
impresoras utilizada. Esto es debido a que utilizan distintos protocolos de comunicacin con la impresora.
La librera contiene todos los comandos comunes al conjunto de impresoras que existen en el mercado y que son
necesarios para la emisin de los comprobantes ms comunes:
Facturas
Notas de dbito
Notas de crdito
Remitos
Recibos
Cotizaciones
Cupones de tarjetas de crdito
Cupones de obras sociales

Algunas impresoras emiten otro tipo de comprobantes que no son soportados por este template.
Existen configuraciones especiales en cada impresora que dependen del modelo y de la marca, las cuales no
podemos abarcar en esta librera. Estos parmetros generalmente los define el tcnico de la impresora al
inicializarla. Tambin pueden ser modificados por los utilitarios que trae cada modelo y que son provistos por el
fabricante.
El template trabaja con las siguientes versiones de Clarion:
Clarion 5b
Clarion 55h
Clarion 61
Clarion 62
Clarion 63

Solo puede utilizarse en aplicaciones de 32 bits.


Actualmente soporta las marcas de impresoras fiscales:
EPSON
HASAR

Se comercializan impresoras similares a las HASAR y que por lo tanto tambin son soportadas por nuestras
libreras. Estas marcas son:
OLIVETI
NCR

De la misma forma se comercializan impresoras similares a las EPSON y que por lo tanto tambin son soportadas
por nuestras libreras. Estas marcas son:
SAMSUNG

Las impresoras fiscales trabajan con 3 protocolos generales:


Protocolo para impresoras de tiquet
Protocolo para impresoras de tiquet/factura
Protocolo para impresoras de facturas

Estos protocolos no son iguales en Epson y Hasar, por esta razn es que existen dos templates. Uno cubre los 3
protocolos de Epson y el otro los 3 protocolos de Hasar.
Este template trabaja directamente con el puerto serial donde esta conectada la impresora fiscal utilizando las API
de Windows. Por lo tanto no necesita de ningn programa extra (OCX, DLL, etc.) instalado en el sistema operativo.

Se le incorporaron procesos para configurar la impresin y para editar los ttulos fijos de los comprobantes. De esta
forma tratamos que cualquier cambio que realicen los proveedores de las impresoras a su funcionalidad no se
traslade a la aplicacin sino solamente a nuestra rutina evitando tener que re programar los sistemas.
Estas funciones se programaron basndonos en los protocolos de impresin facilitados por EPSON y HASAR. Los
mismos deberan consultarse si se desea conocer con profundidad el manejo de las impresoras. Estos documentos
se encuentran en las siguientes paginas de Internet:
http://www.epson.com.ar
http://www.hasar.com.ar
o en nuestra pgina
http://www.bigsys.com.ar

La documentacin contenida en este manual debe complementarse revisando el ejemplo que va acompaando al
template.

2. ACTUALIZACIONES

El nmero de versin del template consta de dos partes: el nmero de versin y el nmero de revisin.
Un cambio en el nmero de revisin implica un cambio en el funcionamiento interno de la DLL. Por lo tanto no
tendran que cambiar los comandos dentro de la aplicacin ni registrar nuevamente el template. En estos casos solo
ser necesario actualizar los DLLs.
Un cambio de versin supone un cambio en el template y/o en los comandos de impresin. En estos casos si es
necesario recompilar la aplicacin.
Se tratar de minimizar los cambios de versin en el template para que su impacto sea mnimo en las aplicaciones
desarrolladas con nuestro producto.
El template ser permanentemente actualizado para trabajar con las ltimas versiones de Clarion. Actualmente est
programado para las versiones:
Clarion 5b
Clarion 55h
Clarion 6.1
Clarion 6.2
Clarion 6.3

De no tener la ltima versin instalada, el DLL no podr ejecutarse. Para solucionar este problema debe entrar al
sitio de SoftVelocity y bajar el programa de actualizacin correspondiente (www.softvelocity.com).

3. SOPORTE TECNICO

El soporte tcnico lo realizamos telefnicamente o por mail. Nuestros datos son los siguientes:
BIGSYS
Pedro Molina 461, 1ro.C
(5501) Ciudad, Mendoza
Tel.: 0261-423-3684
soporte@bigsys.com.ar
www.bigsys.com.ar

Mensualmente enviaremos a todos los clientes registrados este manual donde en el anexo NOTAS DE NUEVAS
VERSIONES, resumiremos las preguntas que vayan realizando los distintos usuarios para que quede como
informacin aprovechable por todos. Adems incluiremos todas las notas tcnicas que nos vayan llegando sobre las
impresoras.
El aporte de los distintos usuarios para este documento es de vital importancia ya que nosotros no estamos en
posibilidad de probar todas las impresoras del mercado.
Para registrarse deber enviar los siguientes datos a nuestra direccin de correo que le indicamos:
Empresa
Direccin
Telfonos

Contacto / Mail
Contacto / Mail
Producto (Epson/Hasar)
Versin
Proveedor (donde adquiri el producto)

Se adjunta con este template un programa para registrarse y acceder al soporte tcnico (fiscal.exe).
Una vez que recibamos sus datos le enviaremos la confirmacin de su inscripcin y un nmero de licencia que
deber ingresar en el template para que este no funcione en modo de demostracin.
Solo atenderemos consultas de clientes registrados cuyo remitente coincida con los datos enviados.
Al grupo de usuarios registrados le enviaremos las preguntas que no podamos contestar de un usuario en particular
y la respuesta ser documentada en el manual para beneficio del grupo.
En el sitio www.bigsys.com.ar se encontrar la ltima versin de este manual y un ejemplo ejecutable del template.

4. GARANTA

Garantizamos que el template funcione en forma sustancialmente de acuerdo a lo descripto en este manual.
No nos hacemos responsables por el dao que ocasionara el uso o mal uso de este template.
El soporte tcnico solo se compromete a resolver problemas en la ltima versin del template publicada. Esto es as
debido a que contamos solo con la ltima versin desarrollada y no las anteriores.
En el caso de aparecer nuevas impresoras al mercado no garantizamos su funcionamiento ya que nos es imposible
contar con todos los modelos de las distintas marcas para probarlos.
En caso de que un usuario necesite utilizar alguna impresora no soportada por nuestro template, podremos requerir
que nos facilite una impresora para probar y nos reservamos el derecho de cumplir con este trabajo.
El template garantiza las funciones bsicas en el manejo de las impresoras. Todas las caractersticas particulares de
los distintos modelos nos es imposible generalizarlas en nuestro producto. Para utilizarlas, deber hacer uso de las
herramientas que entregue el proveedor de la impresora.
En nuestro sitio de Internet se pude obtener una demostracin del template gratuita que funciona exactamente como
el producto registrado. Esto les garantiza cubrir el 100% de sus expectativas al momento de comprar el producto.
Con esta versin de demostracin se puede programar alguna aplicacin y no va a variar de la definitiva salvo en la
introduccin de la licencia de uso. Este permite desarrollar y poner a punto sistemas antes de adquirir el template.

5. LICENCIA DE USO

El producto podr ser utilizado exclusivamente por la empresa indicada en la licencia, datos que deben indicarse en
la configuracin global de la aplicacin que se desarrolle. Esta informacin es mostrada en el procedimiento de
parametrizacin del template.
Se pueden distribuir libremente los DLLs del template que permiten su funcionamiento.

6. PRECIOS DEL TEMPLATE

Los precios del template son publicados en nuestra pgina web.


Las novedades sobre actualizaciones sern enviadas automticamente a los usuarios registrados y podrn bajarse de
nuestro sitio en Internet.

7. INSTALACION
Instalacin en el disco

Primero se debe instalar el programa en el equipo donde se encuentre cargado la versin de CLARION con la que
se est trabajando.
Debe ejecutar el programa de instalacin del template. El nombre del programa es:
Epson602.exe
Hasar602.exe

Instalador del template para Epson versin 6.02 para todas las versiones de Clarion
Instalador del template para Hasar versin 6.02 para todas las versiones de Clarion

Los archivos que bajar la instalacin son:

INSTALANDO EPSON (Ejemplo con epson600.exe)

\bigsys\bin\fiscal.doc
\bigsys\bin\fiscal.exe

Manual del usuario


Acceso al soporte tcnico

\clarion5\bin\eps6c50b.dll
\clarion5\bin\fis6c50b.dll
\clarion5\lib\eps6c50b.lib
\clarion5\lib\fis6c50b.lib
\clarion5\template\fiscal6.tpl
\clarion5\examples\fiscal\epson6.app
\clarion5\examples\fiscal\epson6.txp

DLL para EPSON


DLL general
LIB para EPSON
LIB general
Template
APP con ejemplo EPSON
TXP con ejemplo EPSON

\c55\bin\eps6c55h.dll
\c55\bin\fis6c55h.dll
\c55\lib\eps6c55h.lib
\c55\lib\fis6c55h.lib
\c55\template\fiscal6.tpl
\c55\examples\fiscal\epson6.app
\c55\examples\fiscal\epson6.txp

DLL para EPSON


DLL general
LIB para EPSON
LIB general
Template
APP con ejemplo EPSON
TXP con ejemplo EPSON

\clarion6\bin\eps6c61.dll
\clarion6\bin\fis6c61.dll
\clarion6\lib\eps6c61.lib
\clarion6\lib\fis6c61.lib
\clarion6\template\fiscal6.tpl
\clarion6\examples\fiscal\epson6.app
\clarion6\examples\fiscal\epson6.txp

DLL para EPSON


DLL general
LIB para EPSON
LIB general
Template
APP con ejemplo EPSON
TXP con ejemplo EPSON

INSTALANDO HASAR (Ejemplo con hasar600.exe)


\bigsys\bin\fiscal.doc
\bigsys\bin\fiscal.exe

Manual del usuario


Acceso al soporte tcnico

\clarion5\bin\has6c50b.dll
\clarion5\bin\fis6c50b.dll
\clarion5\lib\has6c50b.lib
\clarion5\lib\fis6c50b.lib
\clarion5\template\fiscal6.tpl
\clarion5\examples\fiscal\hasar6.app
\clarion5\examples\fiscal\hasar6.txp

DLL para HASAR


DLL general
LIB para HASAR
LIB general
Template
APP con ejemplo HASAR
TXP con ejemplo HASAR

\c55\bin\has6c55h.dll
\c55\bin\fis6c55h.dll
\c55\lib\has6c55h.lib
\c55\lib\fis6c55h.lib
\c55\template\fiscal6.tpl
\c55\examples\fiscal\hasar6.app
\c55\examples\fiscal\hasar6.txp

DLL para HASAR


DLL general
LIB para HASAR
LIB general
Template
APP con ejemplo HASAR
TXP con ejemplo HASAR

\clarion6\bin\has6c61.dll
\clarion6\bin\fis6c61.dll
\clarion6\lib\has6c61.lib
\clarion6\lib\fis6c61.lib
\clarion6\template\fiscal6.tpl
\clarion6\examples\fiscal\hasar6.app
\clarion6\examples\fiscal\hasar6.txp

DLL para HASAR


DLL general
LIB para HASAR
LIB general
Template
APP con ejemplo HASAR
TXP con ejemplo HASAR

Los grupos de libreras se comercializan por separado segn la marca. De esta forma solo encontrar los archivos
DLL y LIB de la impresora que ha adquirido.
Si desea instalar mas de una librera debe instalar cada una de ellas y en el orden que desee.
El nombre del template esta nombrado con el nmero de versin (Ejemplo: fiscal6.tpl para ver 6).
Los nombres de las libreras estn nombrados con el nmero de versin del template y el nmero de versin de
Clarion con la que fueron compilados (Ejemplo: eps6c55h.* para ver 6 y clarion 55h).

La razn de nombrar a los archivos de esta manera es impedir que se superpongan distintos versiones del template
permitiendo registrar versiones nuevas junto a las versiones anteriores simultneamente.

Registracin del template en Clarion

Luego de instalar el template, debe registrarlo en CLARION para que sea pblico a todas las aplicaciones.
Para esto se debe ir a:
SETUP
TEMPLATE REGISTRY
REGISTER
Registrar el template FISCAL6.TPL

Este proceso debe realizarlo cada vez que adquiera una nueva versin del template.

Carga del template en la aplicacin

Cuando se desee agregar a una aplicacin las funciones para impresoras fiscales debe ir a las siguientes opciones:
APPLICATION
GLOBALS PROPERTIES...
EXTENSIONS
INSERT
Seleccionar FISCAL6 (Control de impresoras fiscales)

Una vez cargada la extensin debe seleccionar en la seccin libreras conque grupo de funciones quiere trabajar
en su aplicacin. Aparecern las siguientes posibilidades (suponiendo versin 6 del template y versin 61 de
clarion):
Fiscal: la aplicacin utilizar las libreras FIS6C61.DLL y FIS6C61.LIB.
Epson: la aplicacin utilizar las libreras EPS6C61.DLL y EPS6C61.LIB.
Hasar: la aplicacin utilizar las libreras HAS6C61.DLL y HAS6C61.LIB.
Otro: Permite al programador re nombrar las libreras al nombre que desee.

Si selecciona la opcin fiscal deber copiar la DLL de HASAR o de EPSON sobre el DLL de FISCAL. De esta
forma el sistema podr trabajar con una u otra marca sin necesidad de re compilar la aplicacin. Esto es posible
cuando ha adquirido los dos productos.
Luego en la seccin Licencia deber cargar el nombre de la empresa, contacto y nmero de licencia para que el
sistema no funcione en modo de demostracin.
En modo de demostracin el sistema permite ejecutar 30 comandos por sesin y en caso de que la impresora est
fiscalizada muestra un mensaje indicando este estado en cada comando.

Distribucin de programas que utilicen el template

Con la aplicacin que entrega a los usuarios debe incluir el DLL de impresoras fiscales. Si trabaja con Clarion 61
sern los siguientes:
C:\Clarionx\Bin\FIS6C61.DLL o
C:\Clarionx\Bin\EPS6C61.DLL o
C:\Clarionx\Bin\HAS6C61.DLL

8. FORMATO DE COMANDOS

Los comandos de impresin tienen el siguiente formato:


LP_Imprimir(comando [,param1] [,param2] )

El template incluye en la aplicacin una lista de comandos que pueden utilizarse. Estos son explicados en los
puntos siguientes.
Los parmetros son constantes o expresiones numricas o alfanumricas.
Estos pueden, en algunos casos donde quiera enviarse un valor nulo, omitirse pero debe escribirse la coma
separadora.

Existen algunos comandos que no requieren parmetros.


Los campos numricos no tienen que tener ningn formato especial. En caso de que en la posicin de un campo
numrico se coloque un string, la rutina los transformar automticamente a numricos.
Los campos alfanumricos pueden tener cualquier longitud. La rutina los truncar automticamente para no generar
un error en la impresin.
Algunos comandos no se utilizan en todas los modelos de impresora. En los casos que no afectan al contenido de
los comprobantes, tratamos de no mostrar un error para no detener la aplicacin.
Por ejemplo, los sub totales no se imprimen en los Tiquets. En esos casos no se imprimirn y no se reportar error.
Otra caso podra ser el corte de papel. En las impresoras de Facturas esto no se utiliza, pero de enviarse el comando
no dar error.

9. DETALLE DE COMANDOS DE IMPRESIN


Comando=LP_ImprimirTitulo
Imprime el encabezado de un comprobante.
Parmetros
nombre
nombre2
tipiva

tipdoc

Nrodoc
Bienuso
Domicilio
domicilio2
domicilio3
Remitos
remitos2
TipCom
Copias
Slip

Primera lnea del nombre del cliente.


Segunda lnea del nombre del cliente.
Tipo de iva del cliente (I/R/N/E/M/F) donde:
I= Responsable inscripto
R= Responsable no inscripto
N= No responsable
E= Exento
M= Monotributista
F= Consumidor final
S= Sujeto no categorizado
Tipo de documento. Si se realiza un comprobante A debe colocarse la palabra CUIT. La
impresora fiscal controla que los nmeros de CUIT o CUIL ingresados sean correctos y de no ser as
reportar un error. Los valores posibles son: CUIT, CUIL, DNI (DU/DI/D), CI (C), PAS (P/PA), LC y
LE.
Nmero de documento.
Indica si se facturarn bienes de uso (1=si, 0=no).
Primera lnea del domicilio del cliente.
Segunda lnea del domicilio del cliente.
Tercera lnea del domicilio del cliente.
En facturas: primera lnea del detalle de remitos que incluye el comprobante.
En dbitos y crditos: nmero de las facturas que ajustan.
En recibos: el nmero de recibo a imprimir.
Segunda lnea del detalle
Tipo de comprobante (F= Factura, R= Remito, P= Recibo de pago, D= Nota de dbito, C= Nota de
crdito, Z= Cotizacin). Por defecto se toma factura.
Cantidad de copias a imprimir (0-4). Por defecto toma 0. Hasta el momento solo es utilizado en
impresoras de facturas Hasar.
Utilizar impresora slip, de hoja suelta (1/0). Por defecto toma 0. Hasta el momento solo es utilizado en
impresoras de facturas Hasar con impresora slip.

Notas
Si se estn emitiendo tiquets los parmetros no son necesarios ya que se emite el comprobante a un Consumidor
Final.
En el caso de notas de crdito, los campos de remito son para cargar las facturas que cancela el crdito. Es
obligatorio colocar algn valor.
En el caso de recibos, el campo de remito es para cargar el nmero de recibo que se est imprimiendo. Este nmero
es obligatorio y lo debe generar la aplicacin.
La marca de bienes de uso se utiliza en responsables no inscriptos para indicar que no se realice el segundo importe
del iva. En estos casos se emite una factura B y los precios deben ir con iva incluido.
El campo copias no tiene efecto en las impresoras EPSON LX-300F+ (Manual del protocolo, pag.65).

Comando=LP_ImprimirTexto
Imprime una lnea de observaciones en facturas, tiquet, nota de dbito, nota de crdito o recibo.
Parmetros
Texto

Texto a imprimir.

Notas
Los textos puede emitirse solo en algunas partes de tiquet o factura. La impresora no deja cerrar el tiquet si la
ltima lnea del detalle fue un texto.

Comnado=LP_ImprimirItem
Imprime un tem de la factura tiquet, nota de dbito o nota de crdito.
Parmetros
Descri
Observ
Observ2
Observ3
Cantid
Precio
Bultos
Ivari
Ivarni
Impint
Tippre

Descripcin principal del tem.


Primera lnea de observaciones extra. Se imprimirn antes de la descripcin principal.
Segunda lnea de observaciones extra.
Tercera lnea de observaciones extra.
Cantidad de artculos a facturar. Si el valor es negativo se emite una bonificacin.
Precio unitario del artculo. Si se est emitiendo comprobantes tipo A, este precio no de debe incluir el
iva. En las facturas B o C debe incluir el iva. Si en el campo tippre coloca la letra T el template
tomar el precio en facturas A con iva incluido.
Cantidad de bultos. Esto es utilizado solo en tiquets. En otros comprobantes es ignorado. Al final del
comprobante se muestra el total de bultos.
Porcentaje de iva con que est gravado el artculo que se est facturando.
Porcentaje de iva para responsables no inscriptos con que queda gravado el artculo. En Hasar no es
relevante.
Impuesto interno o parte exenta unitaria que lleva el artculo. El precio no debe incluir este valor.
Un valor T indica que el precio se enva con iva incluido. Un valor B indica que el precio se enva
sin iva incluido. Cualquier otro valor indica que el precio en facturas A no incluye el iva y el precio en
facturas B incluye iva (automtico). En facturas A si se enva T se le sacar el iva al precio que
muestra la factura. En facturas B si se enva B se le agregar el iva al precio que muestra la factura.

Comando=LP_ImprimirAjuste
Imprime un recargo o descuento global al final de los items del comprobante.
Parmetros
Nota
Import
Tippre

Descripcin del ajuste.


Importe del ajuste. Si es positivo se har un recargo y si es negativo se har un descuento.
Un valor T indica que el precio se enva con iva incluido. Un valor B indica que el precio se enva
sin iva incluido. Cualquier otro valor indica que el precio en facturas A no incluye el iva y el precio en
facturas B incluye iva (automtico). En facturas A si se enva T se le sacar el iva al precio que
muestra la factura. En facturas B si se enva B se le agregar el iva al precio que muestra la factura.
Esto funciona solamente en impresoras HASAR y si hay varias tasas de iva en el mismo comprobante
no est documentado como responde la impresora fiscal.

Notas
Los ajustes se imprimen al realizar el cierre del comprobante.

Comando=LP_ImprimirPercepcion
Imprime una percepcin de impuestos.
Parmetros
Periva

Tipo de percepcin (1=percepcin de iva, 0=otra percepcin, %iva=percepcin de iva en HASAR)

Titper
Impper

Descripcin del motivo de la percepcin.


Importe de la percepcin.

Notas
La percepcin debe realizarse despus de los ajustes y antes del detalle de pagos o cierre.

Comando=LP_ImprimirPago
Detalla la forma de pago del cliente.
Parmetros
Nota
Import

Descripcin de la forma de pago.


Importe de la forma de pago. Si es negativo resta a los pagos.

Notas
Para que el comprobante pueda cerrarse tiene que el detalle de pagos igualar o superar el total.
Si no se desea puede omitirse el detalle de pagos y cerrar directamente el comprobante.
Los pagos se imprimen al realizar el cierre del comprobante.

Comando=LP_ImprimirSubtotal
Imprime un sub total parcial de lo facturado hasta el momento.
Parmetros
Ttulo
NoMostrar

Titulo a colocar en el subtotal.


No imprimir el subtotal en el comprobante (1=no imprime, otro=imprime)

Notas
En tiquet este comando es ignorado.
Los parmetros no funcionan en todas las impresoras.
Este comando carga las variables del total del comprobante lo que permite conocer este valor antes de realizar el
cierre.

Comando=LP_ImprimirAnulacin
Anula el comprobante en curso.
Parmetros
Sin parmetros.
Notas
Un comprobante se anula tambin automticamente cuando se apaga y se vuelve a encender la impresora.

Comando=LP_ImprimirCierre
Realiza el cierre del comprobante.
Parmetros
Texto1
Texto2
Texto3

Texto a imprimir al pie del comprobante.


Segunda lnea de texto.
Tercera lnea de texto.

Notas
Cuando se emite el cierre se imprimen los ajustes, percepciones y pagos.

En la variable LP_UltimoComprobante se graba el nmero del comprobante emitido.

Comando=LP_ImprimirCuponOSoc
Emite un cupn para obras sociales inmediatamente despus de un tiquet.
Parmetros
OSocial
Numero
Nombre
Nota1
Nota2
Copias

Nombre de la obra social


Nmero del afiliado
Nombre del afiliado
Primera lnea de notas
Segunda lnea de notas
Cantidad de copias a imprimir de este comprobante (1 si se omite)

Notas
Para poder emitir este comprobante debe especificarse en los parmetros que cuando se imprima el tiquet se
memorice el detalle de la venta y pueda posteriormente emitirse este cupn.
El cupn detallar los datos del ltimo tiquet emitido.

Comando=LP_ImprimirCuponTarj
Emite un cupn para tarjetas de crdito inmediatamente despus de un tiquet.
Parmetros
Tarjeta
Nmero
Nombre
FecVto
NroEst
NroCup
NroAut
TipOpe
Importe
Cuotas
Moneda
NroTer
NroLot
NroTiq

Nombre de la tarjeta de crdito


Nmero de la tarjeta de crdito
Nombre del cliente
Fecha de vencimiento tarjeta (AAMM01)
Nmero de establecimiento
Nmero de cupn
Nmero de autorizacin
Tipo de operacin
Importe de la compra
Cantidad de cuotas
Moneda de la operacin
Nmero de terminal
Nmero de lote
Nmero de tiquet fiscal

Notas
Todos los campos excepto el importe y la fecha son textos de hasta 20 caracteres.
Los campos que se omitan no sern impresos.
Algunas impresoras no tienen este comprobante homologado. En esos casos se imprimirn como comprobantes no
fiscales no homologados.

Comando=LP_ImprimirTituloNF
Inicia la impresin de un comprobante no fiscal.
Parmetros
HojaSuelta

Imprimir comprobante no fiscal en entrada de hoja suelta (1= si, 0= no)

Notas
Este comprobante solo puede tener lneas de texto.
Cada 4 lneas, la impresora imprimir la leyenda NO FISCAL.

Comando=LP_ImprimirTextoNF
Imprime una lnea de texto.
Parmetros
Sin parmetros.

Comando=LP_ImprimirCierreNF
Realiza el cierre del comprobante no fiscal en curso.
Parmetros
Texto1
Texto2
Texto3

Texto a imprimir al pie del comprobante.


Segunda lnea de texto.
Tercera lnea de texto.

Notas
En la variable LP_UltimoComprobante se graba el nmero del comprobante emitido.

Comando=LP_GrabarTitulo
Modifica algn titulo del comprobante.
Parmetros
NumeroTitulo
Titulo
Resaltado
DobleAlto
DobleAncho
Subrayado

Nmero de ttulo que se desea modificar. Puede obtenerse del proceso LP_EditarParametros.
Nuevo texto del ttulo que se grabara.
Letra resaltada (1= si, 0= no)
Letra de doble alto (1= si, 0= no)
Letra de doble ancho (1= si, 0= no)
Letra subrayada (1= si,0= no)

Notas
Los ttulos pueden modificar tambin por el proceso LP_EditarTitulos.

10.

DETALLE DE COMANDOS DE ESTADO

Estos comandos permiten ver el estado del controlador fiscal.

Comando=LP_Estado
Comprueba el estado de la impresora y el controlador fiscal.

Comando=LP_Diagnostico1
Realiza el comando de diagnstico mostrando los datos que la impresora tiene programados para esta instruccin.
Los valores se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_Diagnostico2
Realiza el comando de diagnstico mostrando los datos que la impresora tiene programados para esta instruccin.
Los valores se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_Diagnostico3
Realiza el comando de diagnstico mostrando los datos que la impresora tiene programados para esta instruccin.
Los valores se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_Diagnostico4
Realiza el comando de diagnstico mostrando los datos que la impresora tiene programados para esta instruccin.
Los valores se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_Diagnostico5
Realiza el comando de diagnstico mostrando los datos que la impresora tiene programados para esta instruccin.
Los valores se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

11.

DETALLE DE COMANDOS DE CONTROL FISCAL

Estos comandos permiten realizar los cierres X y Z como tambin imprimir informes sobre ellos.

Comando=LP_CierreX
Realiza el cierre X, totalizando los comprobantes desde el ltimo cierre X o Z.
Los totales se ponen en cero para el prximo cierre X que se realice..
Los resultados se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_CierreZ
Realiza el cierre Z, totalizando los comprobantes desde el ltimo cierre Z.
Es obligacin realizar un cierre Z por da, pudindose realizar mas de uno.
Cada cierre Z se guarda en la memoria fiscal. Si se realiza mas de uno por da la memoria se ocupar en menos tiempo
acortando la vida til de la memoria fiscal.
Los resultados se muestran en pantalla si la variable LP_ResultadoMostrar contiene el valor 1 y no son mostrados si
contiene el valor 0. En ambos casos el resultado tambin es guardado en la variable LP_Resultado.

Comando=LP_CierreZxFecha
Imprime un detalle de los cierres Z realizados entre dos fechas determinadas..
Parmetros
Fecdes
Fecha desde la cual se requiere el informe (AAMMDD).
Fechas
Fechas hasta la cual se requiere el informe (AAMMDD).
Tipinf
Tipo de informe (D= detallados, T= totales).

Comando=LP_CierreZxNumero
Muestra datos sobre el comprobante en curso.
Parmetros
nrodes
Nmero de cierre Z desde el cual se requiere el informe (AAMMDD).
nrohas
Nmero de cierre Z hasta la cual se requiere el informe (AAMMDD).
Tipinf
Tipo de informe (D= detallados, T= totales).

12.

DETALLE DE COMANDOS DE CONTROL DE IMPRESORA

Estos comandos permiten realizar diversas tareas con la impresora fiscal.

Comando=LP_GrabarZonas
Graba las zonas de impresin para papel continuo de 12x25. Esta funcin es vlida solo en impresoras EPSON de
facturas.
Debe realizarse solo inmediatamente despus de un cierre Z.
Si se desea configurar otra zona de impresin diferente deber trabajar con las herramientas que provee EPSON con sus
impresoras.
Las distintas configuraciones de las zonas pueden dejar afuera algunos subttulos. Si alguno de estos contiene algn
dato la impresora reporta error en zonas.

El sistema trunca las descripciones de observaciones y detalles de facturas en los valores dados por las siguientes
variables:
LP_LonObsFac (descripciones extra en items de facturas)
LP_LonLinFac (descripciones de items de facturas)
Si se han definido zonas que cambian estos valores, solo se deben cambiar el contenido de estas variables para que el
sistema tome las descripciones con una nueva longitud.

Comando=LP_CortarPapel
Realiza un corte de papel. Este corte tambin lo realiza automticamente la rutina al terminar de emitir cualquier
comprobante o informe.

Comando=LP_AvanzarPapel
Realiza un salto de tres lneas en la impresora.

Comando=LP_GrabarFechaHora
Graba la fecha y hora del equipo en la impresora. Solo se permite cambiar la hora en un cierto rango. Para cambiarla
mas del rango permitido debe llamarse al agente fiscal.

Comando=LP_LeerFechaHora
Leer la hora y fecha de la impresora. Las carga en las variables "LP_HoraImpresora" y "LP_FechaImpresora"
respectivamente.

Comando=LP_MostrarFechaHora
Muestra la fecha y hora que tiene el reloj interno de la impresora fiscal..

Comando=LP_AbrirCajon1
Abre el cajn de dinero 1.

Comando=LP_AbrirCajon2
Abre el cajn de dinero 2.

13.

DETALLE DE PROCESOS

Existen dos procesos adicionales programados para facilitar el uso de la impresora fiscal y el mantenimiento de nuevas
versiones.

Proceso=LP_EditarParametros
Este proceso permite editar todos los parmetros que utiliza las funciones fiscales.
Estos parmetros quedan grabados en el archivo WIN.INI de cada terminal y pueden leerse o grabarse con las
instrucciones GETINI y PUTINI de CLARION.
Para que el sistema tome inmediatamente un cambio realizado de esta ltima forma debe colocarse la variable
LP_ParametrosLeidos en blanco.
Algunos de estos parmetros no son utilizados en las impresoras de tiquet o tiquet/factura.

Proceso=LP_EditarTitulos
Este proceso permite editar todos los ttulos fijos que llevan los comprobantes que se emiten.
Solo aparecern para editar los ttulos que el modelo de impresora fiscal reconozca. De esta forma los ttulos para editar
en las impresoras de tiquets no sern los mismos que en las impresoras de facturas.
Puede tambin grabarse cada ttulo con el comando LP_Imprimir(LP_GrabarTitulo,) explicado anteriormente.

14.

PANTALLA DE EDICION DE PARAMETROS

A esta pantalla se llega invocando el comando LP_EditarParametros.


Estos parmetros definen la funcionalidad del template.

Los campos que aparecen en ella se describen a continuacin:

Puerto impresora: indica el puerto COM al que esta conectada la impresora.


Configuracin: parmetros del puerto.
Mostrar comandos: si se marca el template mostrar un mensaje antes de enviar cada comando que indica el comando y
los campos que enviar a la impresora. El usuario podr decidir si los enva o los saltea.
Mostrar mensajes error: si se marca el template mostrar un mensaje con los errores que ocurran. Sino se marca los
errores sern devueltos en las variables para este efecto.
Permitir acentos y : si se marca y se envan alguno de estos caracteres a la impresora, el template no los cambiar.
Sino se marca el template los reemplazar por el signo _. En gran cantidad de impresoras estos caracteres
ocasionan que la lnea no se imprima y no reporte error.
Impresora: Identificacin de la impresora que se est utilizando. Es el valor enviado en la variable
LP_NumeroImpresora.
Tipo de iva del emisor: Categora de iva de la empresa que utiliza el controlador fiscal.
Tipo de comprobante a emitir: Tipo de comprobante que emite la impresora. Es fundamental colocar este dato
correctamente ya que cambian los protocolos a utilizar con la impresora.
Cupones Obras Sociales: Datos a mostrar en el cupn de obras sociales que emiten algunas impresoras fiscales.
Cupones tarjetas: Datos a mostrar en el cupn de tarjetas de crdito que emiten algunas impresoras fiscales.
Decimales cantidad: Cantidad de decimales para las cantidades. Si se coloca 0 tomar la cantidad de decimales que
tiene por defecto la impresora. Esto no funciona en todas los modelos de impresora y puede ocasionar un error si
no es compatible con la controlador.
Decimales precio: Idem anterior pero para los precios.
Maxima cantidad: Cantidad mxima que permitir el template que sea enviada a la impresora. Si se coloca valor 0 no se
controlar.
Mximo precio: Idem anterior pero para el precio.
Longitudes mximas: Se indican las longitudes mximas de descripciones o notas que el template enviar a la
impresora. Si se coloca un valor el template truncar en la cantidad indicada los strings enviados. Si se coloca 0
las descripciones se enviarn sin truncar. Algunas impresoras no imprimen las lneas con mas caracteres que los
que permite y pueden no reportar error.
Emite comprobantes: Se indica en estos camposque comprobantes emite la impresora. Si se trata de emitir algn
comprobante que no est permitido el programa reportar error.
Las variables indicadas en esta pantalla pueden leerse desde el programa y pueden servir para incluir en la lgica del
sistema de gestin. Esto permite que el programa sea independiente del modelo de impresora ya que en distintos
modelos, el template le informar al sistema que caractersticas tiene.
Todas estas variables quedan almacenadas en el archivo WIN.INI y pueden leerse y modificarse con las instrucciones
GETINI y PUTINI respectivamente desde el programa sin pasar por esta pantalla.

15.

VARIABLES GLOBALES

Cada vez que se ejecuta un comando, el sistema carga variables globales para poder ser utilizadas por la aplicacin.

Variables de control de error


Las siguientes variables permiten conocer el resultado del comando ejecutado. Se cargan cada vez que se
ejecuta cualquier comando.
LP_Error: Esta variable se coloca en valor 1 si ocurri un error y 0 si se realiz el comando sin error.
LP_ErrorMensaje: Si ocurri un error, en esta variable se muestra un detalle del mismo.
LP_ErrorMostrar: Cuando ocurre un error el sistema muestra automticamente una ventana con el detalle
del error. Si no se desea que se muestre esta ventana y administrar uno mismo el error debe colocarse esta
variable en 0. Por defecto aparece en el valor que se indique los parmetros.

Variables de diagnsticos
Las siguientes variables permiten conocer el resultado del comando ejecutado. Se cargan cada vez que se
ejecuta cualquier comando.
LP_Resultado: Esta variable guarda los resultados de los comandos de diagnstico o cierres X/Z cada vez
que alguno de estos son ejecutados.

LP_ResultadoMostrar: Cada vez que se ejecuta un comando de diagnstico o cierre X/Z, los resultados de
este se ven en una pantalla automticamente. Si no se desea que se muestre esta ventana y administrar
uno mismo los valores obtenidos deben colocar esta variable en 0. Por defecto aparece en 1.

Variables de configuracin de la impresora


Las siguientes variables permiten conocer datos de la impresora fiscal.
LP_NumeroImpresora: Esta variable indica el nmero de impresora del equipo en la cual se est
trabajando. Puede contener cualquier carcter que identifica la impresora, inclusive el carcter blanco. La
funcin de este campo es indicar que conjunto de parmetros leer para manejar distintas impresoras en un
mismo equipo.
LP_SerieImpresora: Esta variable guarda el nmero de serie de la impresora fiscal. Este nmero es nico y
no se repite en dos impresoras diferentes. Puede utilizarse para proteger sistemas. Se carga despus de
ejecutar el primer comando de impresin.
LP_LonObsFac: Indica la longitud de la descripcin en las lneas de observaciones en facturas o tiquets.
LP_LonLinFac: Indica la longitud de la descripcin en las lneas de tems de facturas o tiquets.
LP_LonPagFac: Indica la longitud de la descripcin en las lneas de pagos o ajustes en facturas o tiquets.
LP_LonLinNoF: Indica la longitud de la descripcin en las lneas de texto en comprobantes no fiscales.
LP_LonLinPag: Indica la longitud de la descripcin en las lneas de texto en recibos de pago.
LP_LonLinCot: Indica la longitud de la descripcin en las lneas de texto en cotizaciones.
LP_EmiteFAC: Indica si la impresora emite facturas o tiquet - factura.
LP_EmiteCRE: Indica si la impresora emite notas de crdito.
LP_EmiteRTO: Indica si la impresora emite remitos.
LP_EmitePAG: Indica si la impresora emite recibos de pago.
LP_EmiteCOT: Indica si la impresora emite cotizaciones.
LP_CanMaxima: Indica los valores mximos aceptados para las cantidades en las lneas de facturas.
LP_PreMaxima: Indica los valores mximos aceptados para los precios en las lneas de facturas.

Variables de estado de la impresora


Las siguientes variables permiten conocer el estado de la impresora fiscal.
LP_UltimoComprobante: Esta variable guarda el nmero del ltimo comprobante emitido. Se carga cada
vez que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.
LP_UltimoTotal: Esta variable guarda el importe total del ltimo comprobante emitido Se carga cada vez
que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.
LP_UltimoNeto: Esta variable guarda el importe neto del ltimo comprobante emitido Se carga cada vez
que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.
LP_UltimoIva: Esta variable guarda el importe de iva del ltimo comprobante emitido Se carga cada vez
que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.
LP_UltimoImpInterno: Esta variable guarda el importe del impuesto interno del ltimo comprobante emitido
Se carga cada vez que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.

LP_UltimoPercepcion: Esta variable guarda el importe de la percepcin del ltimo comprobante emitido Se
carga cada vez que se realiza un cierre de comprobante, ya sea fiscal o no fiscal.
LP_Fiscalizada: Esta variable contiene el valor 1 si la impresora ha sido fiscalizada y 0 si est en modo de
entrenamiento. Se carga despus de ejecutar el primer comando de impresin.
LP_CajonAbierto: Esta variable contiene el valor 1 si algn cajn esta abierto y 0 si los cajones se
encuentran cerrados. Se carga despus de ejecutar cada comando.
LP_ParametrosLeidos: Esta variable guarda la fecha y hora de la ltima modificacin de los parmetros.
Se carga luego de ejecutar el primer comando. Si se desea forzar a releer los parmetros debe colocarse
esta variable en blanco y ejecutar un comando.
LP_FechaImpresora: Esta variable contiene la fecha de la impresora. Se carga despus de ejecutar el
comando LP_Imprimir(LP_LeerFechaHora).
LP_HoraImpresora: Esta variable contiene la hora de la impresora. Se carga despus de ejecutar el
comando LP_Imprimir(LP_LeerFechaHora).

16.

LIMITACIONES DEL TEMPLATE

Las libreras del template (DLL) no puede compilarse en forma Local en una aplicacin. Si una aplicacin
contiene estas libreras debe compilarse en modo Standalone.
El template no emite recibos-factura A/B que las impresoras de facturas permiten.

ANEXO I - RESUMEN DE COMANDOS


Secuencia de comandos para emitir comprobantes fiscales
LP_Imprimir(LP_ImprimirTitulo, nombre, nombre2, tipiva, tipdoc, nrodoc, bienuso,
domicilio, domicilio2, domicilio3, remitos, remitos2, tipcom,
copias, slip)
LP_Imprimir(LP_ImprimirItem,descri, observ, observ2, observ3, cantid, precio,
bultos, ivari, ivarni, impint, tippre)
...
LP_Imprimir(LP_ImprimirSubtotal, titulo, nomostrar)
LP_Imprimir(LP_ImprimirAjuste, nota, import, tippre)
...
LP_Imprimir(LP_ImprimirPercepcion, periva, titper, impper)
...
LP_Imprimir(LP_ImprimirPago, nota, import)
...
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)
LP_Imprimir(LP_ImprimirTexto, texto)
LP_Imprimir(LP_ImprimirAnulacion)
LP_Imprimir(LP_GrabarTitulo, NumeroTitulo, Titulo, Resaltado, DobleAlto,
DobleAncho, Subrayado)
En notas de crdito es obligacin colocar sobre que factura est realizando.

Secuencia de comandos para emitir remitos


LP_Imprimir(LP_ImprimirTitulo, nombre, nombre2, tipiva, tipdoc, nrodoc, bienuso,
domicilio, domicilio2, domicilio3, remitos, remitos2, R, copias)
LP_Imprimir(LP_ImprimirItem,descri, observ, observ2, observ3, cantid, precio,
bultos, ivari, ivarni, impint)
...
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)
Los campos precio, bultos, iva e impuesto interno no tienen relevancia.

Secuencia de comandos para emitir cotizaciones


LP_Imprimir(LP_ImprimirTitulo, nombre, nombre2, tipiva, tipdoc, nrodoc, bienuso,
domicilio, domicilio2, domicilio3, NroRecibo, , Z, copias)
LP_Imprimir(LP_ImprimirTexto, texto)
...
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)

Secuencia de comandos para emitir recibos de pago


EN IMPRESORAS EPSON
LP_Imprimir(LP_ImprimirTitulo, nombre, nombre2, tipiva, tipdoc, nrodoc, bienuso,
domicilio, domicilio2, domicilio3, remitos, remitos2, P, copias)
LP_Imprimir(LP_ImprimirItem,descri, observ, observ2, observ3, cantid, precio,
bultos, ivari, ivarni, impint)
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)
Se puede imprimir solo un item.

EN IMPRESORAS HASAR
LP_Imprimir(LP_ImprimirTitulo, nombre, nombre2, tipiva, tipdoc, nrodoc, bienuso,
domicilio, domicilio2, domicilio3, NroRecibo, , P, copias)
LP_Imprimir(LP_ImprimirItem,descri, , , , cantid, precio, , , , )
LP_Imprimir(LP_ImprimirTexto, texto)
LP_Imprimir(LP_ImprimirTexto, texto)
...
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)
El nmero de recibo en el comando LP_ImprimirTitulo es obligatorio.
La impresin del tem le indica a la impresora el importe del recibo.
La impresin del texto le indica a la impresora el concepto del recibo.

Secuencia de comandos para emitir comprobantes no fiscales


LP_Imprimir(LP_ImprimirTituloNF, hojasuelta)
LP_Imprimir(LP_ImprimirTextoNF, texto)
...
LP_Imprimir(LP_ImprimirCierreNF, texto1, texto2, texto3)
LP_Imprimir(LP_ImprimirCuponOSoc, Osocial, Numero, Nombre, Nota1, Nota2, copias)
LP_Imprimir(LP_ImprimirCuponTarj, Tarjeta, Nmero, Nombre, FecVto, NroEst, NroCup, NroAut, TipOpe,
Importe, Cuotas, Moneda, NroTer, NroLot, NroTiq)
LP_Imprimir(LP_ImprimirAnulacion)

Resumen de comandos de estado


LP_Imprimir(LP_Estado)
LP_Imprimir(LP_Diagnostico1)
LP_Imprimir(LP_Diagnostico2)
LP_Imprimir(LP_Diagnostico3)
LP_Imprimir(LP_Diagnostico4)
LP_Imprimir(LP_Diagnostico5)

Resumen de comandos de control fiscal


LP_Imprimir(LP_CierreX)
LP_Imprimir(LP_CierreZ)
LP_Imprimir(LP_CierresZxFecha, fecdes, fechas, tipinf)
LP_Imprimir(LP_CierresZxNumero, nrodes, nrohas, tipinf)

Resumen de comandos de control de impresora


LP_Imprimir(LP_GrabarZonas)
LP_Imprimir(LP_CortarPapel)
LP_Imprimir(LP_AvanzarPapel, lineas)
LP_Imprimir(LP_GrabarFechaHora)
LP_Imprimir(LP_LeerFechaHora)
LP_Imprimir(LP_MostrarFechaHora)
LP_Imprimir(LP_AbrirCajon1)
LP_Imprimir(LP_AbrirCajon2)

Resumen de procesos
LP_EditarParametros
LP_EditarTitulos

Resumen de variables globales


LP_Error
LP_ErrorMensaje
LP_ErrorMostrar

BYTE
CSTRING(255)
BYTE

LP_UltimoComprobante
LP_UltimoTotal
LP_UltimoNeto
LP_UltimoIva
LP_UltimoImpInterno
LP_UltimoPercepcion
LP_SerieImpresora
LP_Fiscalizada
LP_LonObsFac
LP_LonLinFac
LP_LonPagFac
LP_LonLinNoF
LP_LonLinPag
LP_LonLinCot
LP_EmiteFAC
LP_EmiteCRE
LP_EmiteRTO
LP_EmitePAG
LP_EmiteCOT
LP_CanMaxima
LP_PreMaxima
LP_CajonAbierto
LP_ParametrosLeidos
LP_NumeroImpresora
LP_FechaImpresora
LP_HoraImpresora
LP_Resultado
LP_ResultadoMostrar

LONG
DECIMAL(11,2)
DECIMAL(11,2)
DECIMAL(11,2)
DECIMAL(11,2)
DECIMAL(11,2)
STRING(15)
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
BYTE
LONG
LONG
BYTE
STRING(17)
STRING(1)
LONG
LONG
CSTRING(255)
BYTE

ANEXO II - FUNCION PARA CALCULAR DIGITO VERIFICADOR EN CUIT

La siguiente funcin devuelve el nmero de CUIT con el dgito verificador correcto.


El parmetro que recibe es el nmero de CUIT a revisar incluyendo el dgito verificador.
...
CuitCliente='20-15433984-6'
IF Cuit(CuitCliente)=CuitCliente THEN
MESSAGE('Digito verificador correcto')
ELSE
MESSAGE('Dgito verificador incorrecto')
END
...

Cuit
PROCEDURE(cuit1)
cuit2
STRING(255)
digver
LONG
lon
LONG
fac
LONG
car
STRING(1)
CODE
cuit2=cuit1
digver=0
fac=2
lon=LEN(CLIP(cuit2))
LOOP i#=lon-1 TO 1 BY -1
car=SUB(cuit2,i#,1)
IF car<'0' OR car>'9' THEN
CYCLE
.
digver=digver+(car*fac)
fac+=1
IF fac>7 THEN
fac=2
.
.
digver=11-(digver%11)
IF digver>9 THEN
digver=0
.
cuit2=SUB(cuit2,1,lon-1) & FORMAT(digver,@n01)
RETURN(cuit2)

ANEXO III DEFINICION DE ZONAS EN IMPRESORAS EPSON

El siguiente cuadro muestra como quedan definidas las zonas en las impresoras EPSON cuando se ejecuta el
comando LP_GrabarZonas:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66

----------------------------------------------------------------------------------------------|22..,....,....,....,....,....,....,....,... 10..,
|
|24..,....,....,....,....,....,....,....,...
34..,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|26..,....,....,....,....,....,....,....,...
36..,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|42..,....,....,....,....,....,....,....,...
52..,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
|44..,....,....,....,....,....,....,....,...
54..,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,...
....,....,....,....,....,....,....,....,...|
----------------------------------------------------------------------------------------------|
|
|60/61/70.,...., 62..,....,....,....,... 63..,....,...., 64..,...., 65..,...., 66..,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,....,|
|....,....,...., ....,....,....,....,... ....,....,...., ....,...., ....,...., ....,....,60/70|
|90/91....,. 92..,.... 93..,....,. 94/81/83.,.. 82/84...., 95/85....,. 86..,....,. 97..,....,.|
|....,....,. ....,.... ....,....,. ....,....,.. ....,...., ....,....,. ....,....,. ....,....,.|
|....,....,. ....,.... ....,....,. ....,....,.. ....,...., ....,....,. ....,....,. ....,....,.|
|....,....,. ....,.... ....,....,. ....,....,.. ....,...., ....,....,. ....,....,. ....,....,.|
|....,....,. ....,.... ....,....,. ....,....,.. ....,...., ....,....,. ....,....,. ....,....,.|
|....,....,. ....,.... ....,....,. ....,....,.. ....,...94 ....,....,. ....,....95 ....,....90|
----------------------------------------------------------------------------------------------|100/101..,....,....,....,....,....,....,....,. 102.,....,....,....,....,....,....,....,...100|
----------------------------------------------------------------------------------------------|110/111..,....,....,....,....,....,....,....,....,....,....,....,....,....,.. 112.,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,....,|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,.. ....,....,..110|
|120.,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,...|
|....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,....,...|
|142.,....,....,....,....,....,....,....,....,. 144.,....,....,....,....,....,....,....,....,.|
|....,....,....,....,....,....,....,....,....,. ....,....,....,....,....,....,....,....,....,.|
|....,....,....,....,....,....,....,....,....,. ....,....,....,....,....,....,....,....,....,.|
|....,....,....,....,....,....,....,....,....,. ....,....,....,....,....,....,....,....,....,.|
|....,....,....,....,....,....,....,....,....,. ....,....,....,....,....,....,....,....,....,.|
-----------------------------------------------------------------------------------------------

Los items de la factura as definida quedan con descripciones de 24 caracteres y 20 lneas por factura.
Para definir las zonas en el formato indicado anteriormente, el template enva a la impresora los siguientes
comandos:
(5Ah,'P','D','M','F','A','N' )!salida de facturas
(5Ah,'P','P','R','S','U',95,72)!tamao papel
(5Ah,'P','P', 'S','U',95,72)!tamao papel
(5Ah,'P','C','Z','U','010','46','02','50','02')
(5Ah,'P','C','Z','U','022','02','02','44','02')
(5Ah,'P','C','Z','U','024','02','03','44','05')
(5Ah,'P','C','Z','U','026','02','06','44','12')
(5Ah,'P','C','Z','U','034','52','03','94','05')
(5Ah,'P','C','Z','U','036','52','06','94','12')
(5Ah,'P','C','Z','U','042','02','13','44','17')
(5Ah,'P','C','Z','U','044','02','18','44','19')
(5Ah,'P','C','Z','U','052','52','13','94','17')
(5Ah,'P','C','Z','U','054','52','18','94','19')

NroZona; X1, Y1, X2, Y2

(5Ah,'P','C','Z','U','060','02','22','94','41')
(5Ah,'P','C','Z','U','061','02','22','16','41')
(5Ah,'P','C','Z','U','062','18','22','40','41')
(5Ah,'P','C','Z','U','063','42','22','56','41')
(5Ah,'P','C','Z','U','064','58','22','67','41')
(5Ah,'P','C','Z','U','065','69','22','78','41')
(5Ah,'P','C','Z','U','066','80','22','94','41')
(5Ah,'P','C','Z','U','070','02','22','94','41')
(5Ah,'P','C','Z','U','090','02','22','94','47')
(5Ah,'P','C','Z','U','091','02','22','12','47')
(5Ah,'P','C','Z','U','092','14','22','22','47')
(5Ah,'P','C','Z','U','093','24','22','34','47')
(5Ah,'P','C','Z','U','094','36','22','58','47')
(5Ah,'P','C','Z','U','081','36','22','47','47')
(5Ah,'P','C','Z','U','082','49','22','58','47')
(5Ah,'P','C','Z','U','083','36','22','47','47')
(5Ah,'P','C','Z','U','084','49','22','58','47')
(5Ah,'P','C','Z','U','095','60','22','82','47')
(5Ah,'P','C','Z','U','085','60','22','70','47')
(5Ah,'P','C','Z','U','086','72','22','82','47')
(5Ah,'P','C','Z','U','097','84','22','94','47')
(5Ah,'P','C','Z','U','100','02','49','94','49')
(5Ah,'P','C','Z','U','101','02','49','47','49')
(5Ah,'P','C','Z','U','102','49','49','94','49')
(5Ah,'P','C','Z','U','110','02','51','94','57')
(5Ah,'P','C','Z','U','111','02','51','78','57')
(5Ah,'P','C','Z','U','112','80','51','94','57')
(5Ah,'P','C','Z','U','120','02','58','94','60')
(5Ah,'P','C','Z','U','142','02','61','47','65')
(5Ah,'P','C','Z','U','144','49','61','94','65')
(5Ah,'P','C','O','901','0','20')!offset

Para definir zonas diferentes a la que trae el sistema por defecto, se debe utilizar los utilitarios provistos por
EPSON para este fin.

ANEXO IV DIAGNOSTICO DE PROBLEMAS


El puerto COM no se puede inicializar

Una de las razones de que no se pueda inicializar el puerto es que otros programas lo estn utilizando y lo
mantengan como esclavo. Entre los programas que pueden ocasionar esto estn:
Programas que utilizan la impresora fiscal (por ejemplo los que vienen de fbrica).
Drivers de impresoras seriales instalados.

Debe asegurarse que no est instalada en Windows ninguna impresora serial utilizando el puerto de la impresora
fiscal y que no est corriendo ningn otro programa que pudiera estar utilizando el puerto.
Otras de las razones para que no funcione es que el puerto est daado o no est conectado al equipo.

La impresora no entiende los comandos enviados

Existen solo tres razones para que la impresora no reconozca los comandos enviados:
1) El template utilizado debe ser de la marca de la impresora (EPSON o HASAR) ya que tienen protocolos
diferentes. Esto se puede corroborar entrando a los parmetros de impresin, observando el ttulo de la
ventana. Ah sale la marca de impresoras que el template maneja y la versin.
2) La velocidad y los parmetros del puerto deben ser los correctos. El template se instala con los parmetros
ms comunes pero pudiera ser que se tenga que trabajar con algn otro. Esto lo puede contestar el Tcnico
que instala la impresora. Si se desea cambiar estos valores se debe ir a los parmetros de impresin.
3) El modelo de impresora seleccionado no es el correcto. Se debe especificar correctamente si la impresora
es de tiquet, tiquet-factura o factura. Entre estos modelos existen diferencias en los protocolos. Este valor
tambin se modifica en los parmetros de impresin.

Estas son las nicas variables que influyen sobre la comunicacin entre el template y la impresora.

Se desea detectar la fuente de algn problema

Cada vez que exista algn problema y se desee verificar si es el software el que falla o el impresor fiscal se debe
probar con el programa que viene de fbrica con la impresora. Si este funciona correctamente es seguro que hay un
problema con la aplicacin.
Si la aplicacin est fallando y se desea saber si el problema deriva del template o del programa desarrollado se
debe probar con el ejemplo que viene junto al template. Si este funciona correctamente es seguro que hay un
problema en el desarrollo.

ANEXO V - NOVEDADES DE NUEVAS VERSIONES


VERSION 6.15 (26/10/07)

En las impresoras EPSON y HASAR se corrige un error que en algunos casos truncaba la longitud de las
descripciones en los comprobantes.

NOTA (06/09/07)

La impresora HASAR 715F presenta un error al imprimir los ttulos de los comprobantes si estos son de longitud
mayor a la permitida. Ante un error al imprimir los ttulos debe probar enviando datos de menor longitud.

VERSION 6.14 (31/10/06)

Se arregla un error al realizar el comando LP_ImprimirSubtotal en las impresoras HASAR. Los importes que
devolva este comando estaban divididos por 100.
Esta versin est compilada para las versiones de clarion 5b, 55h, 61, 62 y 63.

NOTA (22/09/06)

La impresora HASAR 715F presenta un error al imprimir los ttulos de un comprobante cuando la direccin supera
los 40 caracteres. Esto no lo controla el template, debe controlarse en el programa.

VERSION 6.13 (30/06/06)

Se arregla un problema de clculo en el impuesto interno de las facturas B para impresoras HASAR.

VERSION 6.12 (31/03/06)

Se pasan las libreras de Epson y Hasar a la versin de Clarion 63.


Los programas realizados en Clarion 6 con versiones anteriores (60, 61 62) deben recompilarse nuevamente.

NOTA (23/01/06)

Los campos para indicar decimales en los parmetros del template solo pueden utilizarse en algunas impresoras con
punto flotante. En la mayora debe ir el valor 0 que indica que se tome el formato por defecto que tiene la
impresora. Esta nota se recalca nuevamente por la cantidad de errores que nos consultan de campo invlido al
imprimir tems.
Se prob con xito, por un usuario (Ezequiel Aliano), la impresora HASAR 435. Nos indic que para que funcione
correctamente debe definirse como una impresora de facturas. Por defecto emitir tiquet-factura salvo que se
indique salida por impresora slip. Un dato importante que comenta es que no debe tardarse mas de 30 en colocar
la segunda hoja (si fuese necesario) ya que pasado ese tiempo reporta un error y cancela el comprobante. Gracias
Ezequiel.

VERSION 6.11 (23/01/06)

Se corrige un error en HASAR para la nueva impresora 715 que no permita emitir notas de crdito.
Se corrige un error en HASAR que no permita indicar las observaciones de comprobantes relacionados en facturas
o notas de crdito/dbito en la nueva impresora 715.
Se corrige en HASAR la emisin de percepciones. Si es percepcin de iva debe enviarse ahora en el primer campo
el %iva de los tems a los cuales debe hacerse la percepcin. Si no es percepcin de iva debe enviarse 0. El envo
de un valor 1 se tomaba por error como otras percepciones y no percepcin de iva. Esto sigue igual si se enva
1.
Se agrega en HASAR la devolucin de los totales en las notas de crdito.

NOTA (20/07/05)

Nos reportaron un error de campo invlido en algunos comprobantes que se deba a la inclusin de la palabra
TOTAL dentro del nombre del cliente lo cual no est permitido. Los ejemplos de un nombre que da error son:
NUTRITOTAL y ALBERTO T ALVAREZ. Si la palabra est en minsculas no presenta el error.
La nuevas impresoras ahora obligan a colocar una lnea de descripcin cuando se emite una factura o tiquet-factura.
(aunque sea un consumidor final).

Los campos para indicar decimales en los parmetros del template solo pueden utilizarse en algunas impresoras con
punto flotante. En la mayora debe ir el valor 0 que indica que se tome el formato por defecto que tiene la
impresora. Esta nota se recalca nuevamente por la cantidad de errores que nos consultan de campo invlido al
imprimir tems.

VERSION 6.10 (20//07/05)

Se compila el template para poder ser utilizado en la versin 62 de Clarion.


Se modifica el template en impresoras HASAR para utilizar la nueva impresora SMHP-715F. Con la versin
anterior no permita emitir tiquet-factura A.
Se agrega el tipo de documento CUIL y las categoras de iva: X=Monotributista social, V=Pequeo
contribuyente eventual y W=Pequeo contribuyente eventual social.
Se arregla en impresoras HASAR el clculo del impuesto interno en facturas B. El precio en estos casos debe
indicarse sin incluir el impuesto interno.
Se agrega en impresoras HASAR la posibilidad de indicar al imprimir un ajuste el tipo de valor (con iva o sin iva)
que se est enviando. En EPSON este campo es ignorado.
Se modifica el template para que la nueva impresora EPSON TM220AF+ no obligue a colocar todos los campos
de nombre, direccin y remitos.
Se modifica el template para que la nueva impresora EPSON TM220AF+ devuelva los totales al final del
comprobante.
Se agrega un cartel de aviso cuando se est generando el archivo de auditora. Se hace esto debido a que si se
olvida de deshabilitar la impresin se vuelve muy lenta. Este aviso sale si se tienen ms de 200 comandos grabados
y cada 50 operaciones que se realicen.
El archivo de auditora ahora guarda tambin las respuestas del controlador.
Se agregan dos campos al comando LP_ImprimirSubtotal. El titulo del subtotal (no funciona en todas las
impresoras) y un campo para no imprimir el subtotal, solo calcularlo (no funciona en todas las impresoras).
El comando LP_ImprimirSubtotal carga ahora con valores las variables: LP_UltimoTotal. LP_UltimoNeto,
LP_UltimoIva, LP_UltimoImpInterno y LP_UltimoPercepcion. Este comando no hemos podido probarlo
aun en HASAR, si en EPSON y funciona bien. Esto permite conocer los totales que est calculando el controlador
antes de cerrar el comprobante.

NOTA (24/06/05)

Para cambiar algn parmetro sin tener que pasar por la pantalla de LP_EditarParametros se puede utilizar el
comando PUTINI() e inmediatamente despus colocar la variable LP_ParametrosLeidos en blanco para que en el
prximo comando el template relea la configuracin. Esto de todas formas no es recomendable porque cada vez
que esto se fuerza el template enva varios comandos a la impresora y esto retardara el trabajo.

VERSION 6.09 (21//01/05)

Se corrige un error de la versin anterior que impeda emitir remitos en impresoras HASAR.
Se corrige un error que no permita emitir correctamente la cantidad de copias de una factura en impresoras
HASAR.

VERSION 6.08 (07/01/05)

El nuevo comando en impresoras HASAR que permita leer el nmero de serie de la impresora daba error cuando
la impresora no estaba inicializada y no dejaba utilizarla (comando no valido para el estado fiscal actual). Ahora no
reporta el error y permite utilizarla sin problemas.
Se agrega en impresoras HASAR un campo en la impresin de los encabezados de facturas, que permite indicar si
se desea que la factura se imprima por la salida de papel (slip) y no por la cinta de tiquet. Esto fue realizado para
adaptarse a la funcionalidad de la impresora 425F.

NOTA (05/12/04)

El registro de auditora se graba con instrucciones PUTINI lo cual va retrasando el sistema a medida que ese
archivo crece. Por lo tanto recomendamos no dejarlo marcado permanentemente.
En pruebas realizadas con impresoras HASAR de tiquet-factura comprobamos que emiten hasta solo 2 copias
extras del cupn de obras sociales. En EPSON se pudieron imprimir hasta 4 copias del mismo comprobante.

VERSION 6.07 (29/11/04)

Se agrega un campo para indicar cantidad de copias en el comprobante de obras sociales


LP_ImprimirCuponOSoc. Es equivalente a enviarlo varias veces en EPSON. En HASAR esto daba error por eso
se agreg este campo.
Se modifica el generador de archivos LOG para auditora. Ahora muestra el comando enviado desde el APP y luego
los comandos que gener a la impresora con el resultado de cada uno (OK/Error).

NOTA (15/11/04)

Para agregar texto en una factura existen dos formas:


1) Utilizar el comando LP_Imprimir(LP_GrabarTitulo,) el cual permite grabar texto en el comprobante
el cual quedar fijo para el siguiente. Por lo tanto si es un dato particular del documento que se est
emitiendo debe colocarse en blanco al terminar. Este comando se debe hacer antes de enviar los ttulos a la
impresora o despus del cierre.
2) Enviar el comando LP_Imprimir(LP_ImprimirTexto,...) durante la impresin de los tems de la factura.
Este comando no siempre estar disponible para utilizarse. Segn la impresora se podr utilizar: antes de
cada tem, inmediatamente despus, como mximo 3 lneas, etc. Depende del controlador y debern probar
para conocer su funcionalidad.

VERSION 6.06 (10/11/04)

Se modifica el generador de archivos LOG para auditora. Ahora despus de cada comando muestra el resultado
(OK/Error).
Se agrega al manual el anexo IV que ayuda diagnosticar los problemas con la impresin.
Se corrige un error al enviar la cabecera de un presupuesto (o cotizacin) en impresoras HASAR. Ahora es
obligatorio enviar el nmero de presupuesto en el campo Remitos.
Se obtiene el nmero de serie de la impresora en modelos HASAR. Este valor se carga ahora en la variable
LP_SerieImpresora al igual que en modelos EPSON.

NOTA (15/10/04)

El instalador del template tiene una opcin de instalar un cono en el escritorio para llamar al programa de soporte
tcnico. Para esto utilizamos un comando VBX. En algunos casos los antivirus no dejan que este tipo de comandos
se ejecuten y pueden presentar un error. Tambin puede ocurrir que el Windows no tenga el interprete de scripts
activo y tambin se reporte un error. Esto solo ocasiona que el cono no se instale lo cual no es un problema grave.
En los parmetros de impresin pueden aparecer cargados valores en la seccin Items indicando cantidad de
decimales para cantidades y precios. Esto ocurre en los casos que se actualiza una versin anterior a la versin 6.
Deberan revisar estos valores y colocarlos en cero o estar seguros que la impresora admite el punto flotante. Si
tienen algn valor y la impresora no admite esta funcionalidad devolver el error Campo invlido.

VERSION 6.05 (15/10/04)

Se modifica el template fiscal6.tpl en la definicin de las variables que guardan la cantidad y el preci mximo.
Estaban definidas como BYTE y tenan que estar definidas como LONG. Esto ocasionaba que las cantidades y los
precios mximos en los parmetros no quedasen bien grabados.
Se arregla un problema que exista con el comando LP_GrabarTitulo en impresoras Hasar que truncaba la
descripcin en 38 caracteres. Ahora quedo igual que Epson truncando la descripcin en el valor que contenga la
variable LP_LonLinNoF la cual puede modificarse en la pantalla de parmetros bajo el ttulo No fisc., long.
lineas.
Se est trabajando en la prueba de las siguientes nuevas funciones las cuales estn en fase de desarrollo:
Emisin de cotizaciones
Generacin de un archivo LOG para auditora
Para emitir una cotizacin los comandos a utilizar son los siguientes:
LP_Imprimir(LP_ImprimirTitulo, ..., Z, ...)
LP_Imprimir(LP_ImprimirTexto, texto)
...
LP_Imprimir(LP_ImprimirCierre, texto1, texto2, texto3)

VERSION 6.04 (08-10-04)

Se est trabajando en la prueba de las siguientes nuevas funciones las cuales estn en fase de desarrollo:
Emisin de cotizaciones

Generacin de un archivo LOG para auditora

VERSION 6.03 (06-10-04)

Se agrega en parmetros del sistema una opcin para generar un LOG de los comandos enviados a la impresora que
permite realizar una auditora del sistema. Esto est en fase de prueba. El archivo que se genera es el fiscal.log.
Se corrige la longitud mxima de los ttulos dentro de un tiquet o factura. Ahora l template toma el valor indicado
en parmetros y no 40 caracteres.
Nos reportan que l template Handy Tools FTP Class cambia el nmero de versin del Clarion y puede ocasionar
que nuestro template no se instale por esta razn. Una posible solucin para esto es modificar manualmente l
template para que no controle los nmeros de versin. Para esto debern editar el archivo
\clarionx\template\fiscal6.tpl y eliminar estos controles.
Una diferencia en la forma de calcular una operacin matemtica (mdulo de un valor negativo) entre clarion 55/5
y clarion 61 ocasionaba que algunos nmeros de licencia no funcionasen correctamente. Esto fue corregido.

VERSION 6.02 (17-09-04)

Se corrige un error en el comando LP_ImprimirItem con respecto al nuevo campo que indica el tipo de precio
que se est enviando (con o sin iva). En la versin 6.01 en impresoras Hasar, las facturas B duplicaban el iva en los
precios.
Ahora el campo que indica el tipo de precio queda de la siguiente forma:
Un valor T indica que el precio se enva con iva incluido. Un valor B indica que el precio se enva sin iva
incluido. Cualquier otro valor indica que el precio en facturas A no incluye el iva y el precio en facturas B incluye
iva (automtico). En facturas A si se enva T se le sacar el iva al precio que muestra la factura. En facturas B si
se enva B se le agregar el iva al precio que muestra la factura.

Esta operacin en impresoras HASAR la realiza el controlador. En impresoras EPSON que no tienen esta
funcionalidad la realiza nuestro template.
Otro punto como emitir cotizaciones (EPSON y HASAR) no ha podido ser debidamente probado. Esperamos las
observaciones de los usuarios para modificar estos comandos si no trabajasen correctamente.
Los DLLs de esta versin solo se necesitan instalar encima de los actuales. No se requiere recompilar las
aplicaciones para tomar estas modificaciones.

VERSION 6.01 (10-09-04)

Se corrige un error en el template de impresoras HASAR que ocasionaba que los precios enviados en facturas A
los considerara como importes con iva incluido y les sacara ese importe al facturar.
Se modifica el comando LP_ImprimirItem. Se ha agregado al final un campo para indicar si el precio en facturas
A trae incluido el iva. Por defecto el template asume que el precio no tiene iva. Este parmetro no compromete
las aplicaciones desarrolladas hasta el momento.
En la impresin de tems en facturas A con impresoras HASAR, si al final se enva un valor T, el controlador
fiscal tomar los precios como precios finales que incluyen iva. Esto permite que las diferencias de redondeos que
realizan las impresoras fiscales con respecto a los valores calculados por las aplicaciones se miniminicen. Tiene el
inconveniente que esto no es compatible con impresoras EPSON y en esos casos la conversin la realiza el
template y no el controlador fiscal lo que puede ocasionar algunas diferencias. Esto lo hemos tenido que agregar
para que una aplicacin que utilice este parmetro funcione de la misma forma en EPSON y en HASAR.
Los DLLs de esta versin solo se necesitan instalar encima de los actuales. No se requiere recompilar las
aplicaciones para tomar estas modificaciones.
En los parmetros de impresin pueden aparecer cargados valores en la seccin Items indicando cantidad de
decimales para cantidades y precios. Deberan revisar estos valores y colocarlos en cero o estar seguros que la
impresora admite el punto flotante. Si tienen algn valor y la impresora no admite esta funcionalidad devolver el
error Campo invlido.

VERSION 6.00 (31-08-04)

Se modifica el template para que pueda compilarse en clarion 6.1 (9028).


Se solucionan problemas que existan con las variables que indicaban cantidad de decimales. Esto solo funciona en
algunas impresoras. En caso de que la impresora no admita esto entregar un error de campo invlido y debe
dejarse en cero.
Se modifica el template para que pueda compilarse en clarion 5 personal edicin.

Se corrige en impresoras Hasar el cierre de comprobante que daba un error cuando se impriman tiquet y tiquet factura.
Se agrega la emisin de cotizaciones en impresoras de facturas para EPSON y HASAR.
Se agrega la variable LP_LonLinCot que indica la longitud mxima de los tems en los comprobantes de
cotizaciones.
Se agrega la variable LP_EmiteCot que indica si la impresora emite comprobantes de cotizaciones.
El template ahora pide el nombre de la empresa y el nombre del contacto. Con estos datos se le devolver un
nmero de licencia que debe tambin cargarse. Si esto no se realiza el template se ejecutar en modo de
demostracin.
Estos datos de registracin se pueden ver en la pantalla de parmetros oprimiendo el botn Licencia.
Este cambio de versin requiere instalar el template nuevamente y recompilar las aplicaciones. No basta con
cambiar el DLL.

NOTA (10-06-04)

Se comprob que la nueva impresora HASAR modelo SMH/PL-8F (laser) funciona correctamente con el template.

NOTA (22-03-04)

Las impresoras de tiquet - factura pueden trabajar en dos modos diferentes: como tiquet - factura y como tiquet.
Esta modalidad se programa en los parmetros de impresin (TQ o TF).
Si se trabaja como tiquet se pueden imprimir solo tiquets a consumidores finales.
Se trabaja como tiquet - factura se pueden imprimir tiquet - factura A y tiquet - factura B.
Si una empresa solo trabaja con consumidores finales, puede utilizar la impresora en modo TQ. Si trabaja
atendiendo tanto clientes consumidores finales como responsables inscriptos, la impresora debe estar en modo
tiquet - factura (TF).
En este ltimo caso no es necesario estar cambiando el modo de impresin de TQ a TF. La diferencia de un tiquet a
un tiquet - factura B es muy poca en lo que se refiere al formato de impresin.

NOTA (20-03-04)

Puede ocurrir en algunas impresoras que enviando caracteres menores a CHR(32) o mayores a CHR(128) los tems
no se impriman y no reportar error.
Algunos templates cambian el orden de la cadena de caracteres y esto puede ocasionar el error descripto.
Esto ocurre tambin en algunas impresoras si se envan descripciones mayores a las permitidas por el controlador.

VERSION 5.00 (10-03-04)

Se definen nuevas condiciones de actualizacin de productos y de soporte tcnico. Estas especificaciones estn
detalladas en el manual.
Se agregan las libreras para utilizar el template con Clarion6.
Se permite ahora que las impresoras de Tiquet - Factura EPSON, emitan notas crdito. Se program esta
modificacin especialmente para las impresoras TM-U2002 que permiten ahora esta funcionalidad.
En los parmetros de impresin ahora se pueden definir las cantidades de decimales que utilizarn los precios y
cantidades en los tems de las facturas. Esta modificacin sirve para adaptarse a nuevas impresoras de facturas que
permiten punto flotante.
En los parmetros de impresin ahora se pueden definir los comprobantes que emite el sistema y las longitudes de
descripciones en los comandos.
En los parmetros de impresin ahora se pueden definir precios y cantidades mximas aceptadas. Este permite que
el template reporte un error antes de enviar el comando de impresin si se superan.
Las libreras (DLL y LIB) ahora se nombran con el nmero de versin del template y el nmero de versin de
Clarion (EPSvCccc.DLL, v= template, ccc= clarion),
El template ahora se nombra con el nmero de versin (FISCALv.TPL, v= template).
El template debe ser registrado nuevamente y las aplicaciones compiladas con el nuevo template. Debe incluirse en
la distribucin del sistema las nuevas libreras.
El cambio en los nombres del template y de las libreras permite ahora no sobre escribir versiones anteriores
cuando se instala una nueva versin.

NOTA (01-03-04)

En impresoras EPSON es comn encontrar el error Campo de datos invalido. Campo con error NN. En los
ttulos, NN hace las siguientes referencias:

campo 1: tipo de comprobante


campo 8: categora de iva
campo 9: nombre
campo11: tipo de documentos
campo12: numero de documento
campo13: bien de uso
campo14: domicilio
campo17: facturas que cancelan los crditos o recibos

NOTA (20-02-04)

Las impresoras EPSON TM2002 tienen un error detectado y es que no funcionan en modo Tiquet - Factura hasta
que no son inicializadas. Una vez que esto ocurre funcionan perfectamente. El error que presentan es Comando no
vlido para el estado fiscal actual.

NOTA (22-09-03)

Se agrega en el manual el ANEXO III el cual explica como define las zonas el template en las impresoras EPSON
de facturas cuando se ejecuta el comando LP_GrabarZonas.

NOTA (29-08-03)

Se corrige en el manual el detalle de los comandos para emitir una percepcin. El primer parmetros es el tipo de
percepcin y el segundo parmetro es el ttulo o detalle de la misma.

NOTA (26-05-02)

Las notas de crdito en impresoras EPSON de facturas funcionan correctamente. Las impresoras que permiten esta
posibilidad son las denominadas LX-300F+. Las impresoras LX-300F no soportan esta instruccin aunque la tienen
documentada.
Existe un lote inicial de impresoras que aunque estn etiquetadas como LX-300F+ no son ese modelo y no emiten
notas de crdito. Para asegurarse que este es el problema, se puede probar la emisin con el programa provisto por
EPSON.

VERSION 4.03 (18-11-02)

En Hasar se agrega la posibilidad de imprimir comprobantes fiscales en hoja suelta para las impresoras de tiquet
que cuentan con esta posibilidad.

VERSION 4.02 (17-07-02)

Se corrige en la pantalla de parmetros las opciones de impresin de cupones de obras sociales y tarjetas. Algunos
de estos parmetros no mantenan los cambios que se les realizaba.
En Hasar se corrige la interpretacin del tipo de documento en facturas B. Ahora se puede indicar pasaporte y
cdula de identidad.

VERSION 4.01 (19-04-02)

Cuando se entra a editar parmetros, el nuevo campo Aceptar acentos y queda siempre marcado. Se corrige
este error. No se recomienda utilizar esta opcin porque en casi todos los casos devolver un error NAK la
impresora al enviar caracteres especiales en algn campo de texto.
Al agregar cantidad de copias en el comando LP_ImprimirTitulo, en los programas que no enven ese dato, el
template lo toma como 0 y en impresoras Epson devuelve un error en campo 4. Para solucionarlo, cuando se lea
el valor 0, se cambiar automticamente a 1.
Existe un error conocido al emitir notas de crdito en impresoras Epson que estamos estudiando y que por ahora no
tiene solucin.
Los cambios de versin indican que la aplicacin debe compilarse nuevamente para poder trabajar con el nuevo
DLL.

VERSION 4.00 (10-04-02)

Se cambia el tiempo para esperar una respuesta de la impresora de 5 segundos a 30 segundos.

Se agrega el parmetro Aceptar acentos y dentro de la pantalla de editar parmetros. Esto permite que la rutina
emita caracteres acentuados y letras ee. En algunas impresoras colocar esta opcin puede devolver error al enviar
los caracteres especiales.
En Hasar se corrige un error que impeda emitir recibos a consumidores finales.
En Hasar se corrige la secuencia de comandos para imprimir recibos de pago. La secuencia correcta es:
LP_ImprimirTitulo
LP_ImprimirItem (que da el importe del recibo)
LP_ImprimirTexto (que da el detalle de los comprobantes que cancela)
LP_ImprimirCierre

Se corrige en Hasar el comando LP_GrabarTitulos que daba error.


Se saca los parmetros que indicaban la cantidad de copias a imprimir por comprobante. Ahora se agrega un campo
en la impresin del titulo que indica la cantidad de copias. Esto solo tiene efecto en las impresoras Hasar de
facturas.

VERSION 3.02 (15-10-01)

Se agrega el soporte a las nuevas impresoras de facturas Epson LX300F+. La DLL permite emitir dbitos, crditos,
recibos y remitos.
Permite, en las impresoras Hasar de facturas, emitir recibos a consumidores finales colocando tipo de documento
en blanco.

VERSION 3.01 (07-07-01)

Se agrega la categora de iva "Sujeto no categorizado" que se indica con la letra S.


Se modifica la emisin de facturas a responsables no inscriptos como bienes de uso. En estos casos se hace factura
B y los precios deben incluir iva.
En impresoras EPSON se esperaba 30 segundos a que respondiera la impresora para dar error de timeout. Ahora se
espera 5 segundos.
Se corrige un error que hacia que el template instalado en un DLL funcionara como demostracin. Instalado en un
EXE no presentaba problemas.
Pueden cambiarse la longitud en que trunca las descripciones el sistema cambiando los valores de las variables:
LP_LonObsFac
LP_LonLinFac
LP_LonPagFac
LP_LonLinNoF
LP_LonLinPag
Esto es til especialmente en las impresoras EPSON si se han definido zonas que permiten otras longitudes distintas
al standard que muestra el protocolo.

VERSION 3.00 (29-03-01)

En impresoras EPSON se agrega la impresin de facturas para las nuevas impresoras LX300F y FX880F.
Se agregan datos en los parmetros para configurar las facturas EPSON.
En las nuevas impresoras EPSON no esta todava disponible la emisin de otros comprobantes que no sean
facturas.
Se agrega la funcin "LP_GrabarZonas" que graba las zonas de impresin en las impresoras EPSON de facturas
para papel 12x25.
La DLL para HASAR se prob con impresoras OLIVETI y NCR de facturas y funcion correctamente.
La nueva versin esta ahora disponible para C55.
Se corrige un error en el clculo del impuesto interno en tiquet-factura B de las impresoras HASAR.

VERSION 2.05 (28-12-00)

En impresoras HASAR la tasa del responsable no inscripto no deba tenerse en cuenta cuando facturaba a Resp.No
Inscriptos ya que esa tasa la toma de los parmetros de la impresora a diferencia de EPSON. Esto se corrige.
Se corrige la emisin de cupones de tarjetas de crdito en las impresoras HASAR que no funcionaba. Por ahora lo
imprime en forma de documento no fiscal.

Se agregan las siguientes variables que pueden ser consultadas desde la aplicacin y permiten al programa conocer
datos de la funcionalidad de la impresora con que se trabaja. Ver detalle de variables globales.
LP_LonObsFac
LP_LonLinFac
LP_LonPagFac
LP_LonLinNoF
LP_LonLinPag
LP_EmiteFAC
LP_EmiteCRE
LP_EmiteRTO
LP_EmitePAG

Se agrega en el manual el detalle de una funcin para controlar el dgito verificador en los nmeros de CUIT. Ver
Anexo II.

VERSION 2.04 (06-11-00)

Se recupera la instruccin LP_ImprimirCuponTarj para emitir cupones de tarjetas de crdito. En algunas


impresoras para su compatibilidad se imprime como comprobante no fiscal no homologado.
Se agrega la impresin de remitos en las impresoras HASAR de facturas.
Se agrega la impresin de dbitos en las impresoras HASAR de facturas.
Se devuelve bien el nmero de nota de crdito en impresoras HASAR luego de su impresin.
Se agregan 4 decimales para los precios en las impresoras HASAR de facturas.
Se agregan descripciones de hasta 50 caracteres en las impresoras HASAR de facturas.
Se corrige la emisin de recibos en las impresoras HASAR.
Se corrige el error de clculo en los impuestos internos en impresoras HASAR de facturas.

VERSION 2.03 (19-10-00)

Se retira provisoriamente la instruccin LP_ImprimirCuponTarj para emitir cupones de tarjetas de crdito.


Se corrige la emisin de notas de crdito en las impresoras HASAR.
Se corrige el error de clculo en los impuestos internos en impresoras HASAR.
La realizacin de un cierre Z genera un registro en el archivo local cierres.log con la misma informacin que se
genera en la variable LP_ResultadoMostrar para tener un histrico de los cierres realizados.
Actualmente se conoce el error al imprimir recibos en impresoras HASAR.

VERSION 2.02 (02-10-00)

Se agrega la instruccin LP_ImprimirCuponTarj para emitir cupones de tarjetas de crdito.


Se agregan las variables LP_Resultado y LP_ResultadoMostrar que permiten leer los resultados de los distintos
diagnsticos, cierres X y cierres Z. Esto da la posibilidad de utilizar los resultados en los programas internamente.
A partir de esta versin solamente se soporta Windows de 32 bits.
A la funcin de cerrar comprobantes se le agrega la posibilidad de enviarles observaciones para que se impriman al
pie del comprobante (LP_ImprimirCierre y LP_ImprimirCierreNF).
Se corrige la emisin de Tiquet y Tiquet-factura que qued con problemas al agregar la emisin de facturas en
HASAR.
Se agrega, para las impresoras HASAR de facturas la posibilidad de imprimir notas de crdito y recibos. Para esto
se agreg un parmetro en el comando LP_ImprimirTitulo.
Ya no se graba el archivo CIERRES.LOG que guardaba los resultados de los cierres Z. Ahora el sistema deja
disponible los resultados en la variable LP_Resultado.

VERSION 2.02 (pre-versin)

Se agrega un nuevo protocolo para emitir facturas en las nuevas impresoras HASAR.
Esta versin se distribuy en un solo DLL para HASAR con el fin de ir probando el nuevo protocolo.

VERSION 2.01

Se elimin un error de falta de papel en las funciones de HASAR.


Se complet la carga de los importes netos e iva al cerrar los comprobantes en HASAR.

Se modific la funcionalidad del protocolo de HASAR para resolver algunos problemas que se presentaban.
Se controlan las longitudes de los textos en los distintos comandos de HASAR para que no se pierdan comandos.

NOTA: Si utiliza un programa de DOS para chequear los comandos de las impresoras debe cerrar la sesin DOS antes
de utilizar nuestra rutina en windows. Mientras no se haga esto el DOS no libera el puerto y se le presentar un error al
abrir el puerto (error=5).

VERSION 2.00

Se agrega la opcin de imprimir comprobantes no fiscales en hoja suelta para las impresoras que tengan esta
posibilidad. (LP_ImprimirTituloNF).
Se agrega la librera para utilizar las impresoras HASAR. Esta librera es una versin beta y est en fase de prueba.
En julio se espera tener la versin definitiva.
Se modifica el template para que permita seleccionar las libreras a utilizar.

VERSION 1.04

Se agregan variables globales que dan los totales del ltimo comprobante emitido para que puedan ser utilizadas al
terminar la impresin para conocer como discrimin los impuestos la impresora fiscal.
Se agregan dos variables globales que contienen la fecha y hora de la impresora (LP_FechaImpresora y
LP_HoraImpresora).
Se agrega un comando para realizar la carga de la fecha y hora de la impresora en las variables nombradas en el
prrafo anterior (LP_CargarFechaHora).
Se agrega un comando para imprimir cupones de obras sociales para farmacias (LP_ImprimirCuponOSoc).
Se agrega un comando para poder modificar los ttulos del comprobante en el momento que se est emitiendo
(LP_GrabarTitulo).

VERSION 1.03

Se corrigi un error en el control del estado de impresora y ahora el reporte de los errores es correcto.
Se corrigi un error al imprimir las percepciones.
Las descripciones extras al imprimir un tem en TIQUETS se muestran antes de tem y no despus.
Se agrega un manual de la rutina en el archivo FISCAL.DOC en formato Word97.
Se agrega la variable global LP_ParametrosLeidos que permite forzar una nueva lectura del archivo de
parmetros ponindola en blanco y ejecutando cualquier comando.
Se dejan sin efecto los INCLUDE que haba que colocar en las versiones anteriores y se reemplaza por un template
en EXTENSIONS, GLOBALS.

VERSION 1.02

La rutina ahora controla la longitud de los textos y si supera lo permitido, los trunca automticamente. Antes si se le
enviaba un texto mayor al que la impresora esperaba, no imprima la lnea y no reportaba error.

VERSION 1.01

Se corrigi un error en el calculo del impuesto interno en comprobantes A.


En edicin de parmetros aparece el numero de versin del DLL en el titulo de la ventana.

Вам также может понравиться