PDA

Ver la Versión Completa : Impresora Fiscal


wgandalf
08-12-2005, 16:29:15
Hola, estoy trabajando con una impresora fiscal (Hasar 320F) necesitaria que me orientación como manipular la impresora, como enviar la información a imprimir. como es el metodo. si es como una impresora normal si tengo que mandar todo la información (información y coordenada para la hoja)

desde ya muchas gracias.

Casimiro Notevi
08-12-2005, 21:28:08
Una búsqueda por los foros (http://www.clubdelphi.com/foros/search.php?searchid=382961) nunca viene mal

brandolin
13-12-2005, 02:11:12
La impresora fiscal maneja un protocolo de comunicaciones que hay que mandar por medio del puerto serial del CPU para que el Controlador Fiscal haga una accion y devuelva una respuesta.
Existen componentes (OCX) que hacen esto por vos. Deberias buscarlos en la pagina de Hasar (www.hasar.com.ar). Creo que para tener ese componente debes ser una empresa reguistrada en Hasar ya que con dicho componente tenes acceso a la memoria fiscal y al protocolo de comunicaicones.

Avisame si necesitas algo.

pipecato
13-12-2005, 02:22:34
programe la impresora fiscal IBM TF6y baje componente para manejar el puerto rs232. he enviaba la informacion y la recibia .

no se si te sirve mucoo , te doy una idea

ptt
13-12-2005, 05:27:13
En esta página (http://www.grupohasar.com/default.asp?seccion=pro&id_categorias=274&cod=2690) podes encontrar el OCX y el manual para enviar los comandos a la impresora.

fabianbbg
11-01-2006, 14:09:26
hola.. me "engancho" en este hilo para preguntar:
wgandalf : has podido imprimir documentos fiscales con la impresora? Te cuento a que viene mi pregunta: yo estoy mandando a imprimir en la hasar 715 F .
No puedo hacer que imprima Facturas A, y queria saber si era porque no estaba inicializada o porque le estoy mandando mal los datos.
Espero podamos compartir "experiencias fiscales"
Saludos..
Fabián

brandolin
11-01-2006, 15:10:14
Hola, eso de "experiencias fiscales" espero que sean mejor que las mias.

Respondiendo a tu pregunta, los CF son operativos 100% cuando estan en "modo entrenamiento" (sin inicializar) por lo que debe imprimir las facturas si o si. Debes estar mandando mal algun dato. Para que te podamos ayudar deberias darnos mas datos, que le estas mandando, que utilizas RS232 u OCX, etc, etc

fabianbbg
11-01-2006, 16:31:59
Trabajo con la OCX de hasar, ni siquiera pudimos sacar un ticket factura A de prueba..
te pego el codigo.. y contame que te parece



HASAR1.DatosCliente('MAIER RENE', '20058013421', TIPO_CUIT,RESPONSABLE_INSCRIPTO);

HASAR1.AbrirComprobanteFiscal( TICKET_FACTURA_A);

HASAR1.PrecioBase:=false;

HASAR1.ImprimirItem('Nombre del producto',1,10,21,1);

hasar1.Subtotal(false);

HASAR1.ImprimirPago('Efectivo',10);

hasar1.CerrarComprobanteFiscal;




Hasar1 es el componente de hasar que bajamos de la web

Te agradeceria que me muestres un ejemplito valido.

brandolin
12-01-2006, 00:41:56
Creo que la cosa podria ser mejor asi...

HASAR1.DatosCliente('MAIER RENE', '20058013421', TIPO_CUIT,RESPONSABLE_INSCRIPTO, 'Direccion');
Hasar1.Puerto = 1;
Hasar1.Comenzar;
Hasar1.TratardeCancelarTodo;
HASAR1.AbrirComprobanteFiscal( TICKET_FACTURA_A );

HASAR1.PrecioBase:=false;

HASAR1.ImprimirItem('Nombre del producto', 1, 10.00, 21.00,0); //impuesto interno si no tiene debe ser cero. Sino ver Formula K

hasar1.Subtotal(false);

HASAR1.ImprimirPago('Efectivo',10.00);

hasar1.CerrarComprobanteFiscal;
haser1.finalizar;

Creo que con esto deberia funcionar. Avisame cualquier cosa.

ptt
12-01-2006, 18:40:31
Sería bueno saber cual es el error y en que momento se produce. Con los datos que das no se puede saber si es un problema de comunicación, de estado de la impresora, de los datos que envías, etc.

fabianbbg
13-01-2006, 23:01:09
Hola.. MUCHAS GRACIAS brandolin.. te cuento:
La semana que viene me pasan la impre fiscal de nuevo.. asi que voy a poder probarla recien ahi, te mantengo al tanto de lo que pase.

Hola PTT:
Lo que hacia la impresora.. es simplemente no imprimir.. y arrojaba error fiscal, que es el resultado (boolean) de la funcion :huboerrorfiscal

Bueno.. les mantengo al tanto de la situación.. les pido sigan siendo tan amables
gracias de nuevo.. fabián

fabianbbg
18-01-2006, 19:30:52
Estimado BRANDOLIN:

No funcionó! .. lo que hice fue copiar tu codigo tal cual en un form con un botón, pero me tira un error que dice :
"error no espedificado" en un dialogo..


Creo que la cosa podria ser mejor asi...

HASAR1.DatosCliente('MAIER RENE', '20058013421', TIPO_CUIT,RESPONSABLE_INSCRIPTO, 'Direccion');
Hasar1.Puerto = 1;
Hasar1.Comenzar;
Hasar1.TratardeCancelarTodo;
HASAR1.AbrirComprobanteFiscal( TICKET_FACTURA_A );

HASAR1.PrecioBase:=false;

HASAR1.ImprimirItem('Nombre del producto', 1, 10.00, 21.00,0); //impuesto interno si no tiene debe ser cero. Sino ver Formula K

hasar1.Subtotal(false);

HASAR1.ImprimirPago('Efectivo',10.00);

hasar1.CerrarComprobanteFiscal;
haser1.finalizar;

Creo que con esto deberia funcionar. Avisame cualquier cosa.

Esto me esta preocupando.. si vos decis que tiene que andar y no anda.. no será que la impresora tiene algun problema?

tal vez deberia llevarla a donde la compraron para que la revisen ..
En fin.. queria que sepas como me fue..
Una abrazo
PD: otra cosa que me parece raro: en los tickets B no salen los datos del comprador... solo consumidor final.. ¿alguna sugerencia?

GRACIAS POR TODO

brandolin
18-01-2006, 19:43:25
Pregunto... ¿hasta donde avanza el programa? Deberias ir paso a pasa para ver en que linea salta el error. Es posible que este trabado el CF por varios temas, podes revisar...
1) Saca Z. Recorda que se debe hacer cada 24 hs sino no te dejara emitir nada.
2) Que no tengas ticket abiertos.
3) Revisa que tengas el OCX correcto para la version de p715, hay varios OCX dando vuelta y no todos soportan todas las impresoras.
4) Deberias controlar las respuestas fiscales para cada linea. Recorda que para cada comando hay una respuesta del estado fiscal y el estado del printer esto lo debes analizar para ver si seguis con el programa o tomas alguna medida al respecto.

PD 1: Igual particularmente no uso los OCX, no confio en ellos ya que dan muchos errores inexplicables, para mis programas desarrolle mi Dll para la comunicacion y soy yo el que toco el protocolo directamente en el RS232.

PD 2: Para las facturas B tambien debes mandar los datos del cliente, obviamente con los parametros correctos sino te rechaza el comando de "EnviarCliente" y no se cargan los datos.

ptt
18-01-2006, 20:20:19
Lo primero que te recomiendo es que revises el manual que viene con el OCX de Hasar, si no lo tenes bajalo de la página (http://www.companiahasar.com.ar/)

Es importante leer también el manual del protocolo, te va a aclarar que hace cada comando y que condiciones se tienen que cumplir para que no se produzca un error, ademá de darte información sobre la forma de trabajo del controlador fiscal .


Estimado BRANDOLIN:

No funcionó! .. lo que hice fue copiar tu codigo tal cual en un form con un botón, pero me tira un error que dice :
"error no espedificado" en un dialogo..



Ejecutar el programa paso a paso, viendo los mensajes podes saber en que momento da el error. No es lo mismo un error de configuración que uno de apertura de comprobante.


Estimado BRANDOLIN:
Esto me esta preocupando.. si vos decis que tiene que andar y no anda.. no será que la impresora tiene algun problema?
tal vez deberia llevarla a donde la compraron para que la revisen ..


Sin conocer el error no es posible saberlo.


Estimado BRANDOLIN:
PD: otra cosa que me parece raro: en los tickets B no salen los datos del comprador... solo consumidor final.. ¿alguna sugerencia?


esto es parte de lo que tenes que aprender leyendo el manual del protocolo: si el tipo de comprobante es Ticket se supone que es a Consumidor Final y no lleva mas datos que los que imprime. Distinto es el caso de los Tique Factura A o B

PD.:
Revisa si funciona hacer un Cierre Z , si lo hace la impresora esta en buen estado.
Si lo que no sale es el Tique Factura A y el resto si, revisa si tiene puesta la dirección del vendedor en el encabezado.

Estimado BRANDOLIN:
hola.. me "engancho" en este hilo para preguntar:


PD2.: cuando tengas una pregunta creá un hilo nuevo, no continúes uno existente porque no aparece como nuevo al entrar al foro y es mas dificil que alguien vea tu pregunta, solo nos llega el aviso a los que contestamos alguna vez en este hilo.

fabianbbg
23-01-2006, 21:08:49
Estimado Brandolin:
He podido solucionar mi problema y aqui te pego el codigo


function Imprimir_fiscal(sender:Tfmenu):Boolean;
var
nom,dni,cuit,fs,comando:WideString;
tipodoc,tipoiva:TOleEnum;
Descuento,TOTAL:currency;
begin
WITH SENDER do
begin

HASAR1.TratarDeCancelarTodo;
fs:=#28;
nom:=uppercase(trim(SP_VentaConsulcliente.AsString));
nom:=ansireplacestr(nom,'Ñ','N');
dni:=trim(SP_VentaConsuldni.AsString);
cuit:=AnsiReplaceStr(TRIM(SP_VentaConsulcuit.AsString),'-','');

if (lowercase(trim(SP_VentaConsulTipoForma.AsString))='a') then
begin
tipoiva:=RESPONSABLE_INSCRIPTO;
if (lowercase(trim(SP_VentaConsulsit_impositiva.AsString))='inscripto') then
tipoiva:=RESPONSABLE_INSCRIPTO
else
if (lowercase(trim(SP_VentaConsulsit_impositiva.AsString))='exento') then
tipoiva:=RESPONSABLE_EXENTO;

comando := #98 + FS + 'Cliente: '+ nom + FS + cuit + FS + 'I' + FS + 'C' + FS + 'Domicilio...';
HASAR1.Enviar(comando);
HASAR1.AbrirComprobanteFiscal(TICKET_FACTURA_A);
hasar1.PrecioBase:=TRUE;
end

SP_DetalleVtas_Consul.First;
TOTAL:=0;
while not SP_DetalleVtas_Consul.Eof do
begin
hasar1.ImprimirItem(SP_DetalleVtas_Consulconcepto.AsString,
SP_DetalleVtas_Consulpre_unitario.AsFloat,
SP_DetalleVtas_Consulcant.AsFloat,
SP_DetalleVtas_Consulporciva.AsFloat,0);
TOTAL:=total+SP_DetalleVtas_Consulmonto.AsCurrency ;
SP_DetalleVtas_Consul.Next;
end;

descuento:=0;
if SP_VentaConsuldescuento.AsCurrency>0 then
begin
descuento:=(SP_VentaConsuldescuento.AsCurrency*total)/100;
descuento:=roundto(descuento,-2);
HASAR1.DescuentoGeneral( 'DESCUENTO',descuento,TRUE); /// TERCER PARAMETRO IDENTIFICA SI ES DESCUENTO O RECARGO TRUE:DESCUENTO FALSE:RECARGO;
end;

if SP_VentaConsulmontocontado.AsCurrency>0 then
HASAR1.ImprimirPago('EFECTIVO',strtocurr(formatfloat('#.00',SP_VentaConsulmontocontado.AsCurrency))) ;

hasar1.CerrarComprobanteFiscal;
result:=hasar1.HuboErrorFiscal;

end;

end;





Lo que dice SP es un Store procedure , por los nombres de los campos, esta bastante claro..

Aqui te pegue el codigo para los ticket factura A, usando la ocx provista por hasar.

Muchas gracias por ayudarme, espero alguna vez devolverte el favor..
Saludos..

Fabián

Carlos Lesca
25-10-2007, 03:28:55
Lo primero que te recomiendo es que revises el manual que viene con el OCX de Hasar, si no lo tenes bajalo de la página (http://www.companiahasar.com.ar/)

Es importante leer también el manual del protocolo, te va a aclarar que hace cada comando y que condiciones se tienen que cumplir para que no se produzca un error, ademá de darte información sobre la forma de trabajo del controlador fiscal .




Ejecutar el programa paso a paso, viendo los mensajes podes saber en que momento da el error. No es lo mismo un error de configuración que uno de apertura de comprobante.




Sin conocer el error no es posible saberlo.




esto es parte de lo que tenes que aprender leyendo el manual del protocolo: si el tipo de comprobante es Ticket se supone que es a Consumidor Final y no lleva mas datos que los que imprime. Distinto es el caso de los Tique Factura A o B

PD.:
Revisa si funciona hacer un Cierre Z , si lo hace la impresora esta en buen estado.
Si lo que no sale es el Tique Factura A y el resto si, revisa si tiene puesta la dirección del vendedor en el encabezado.



PD2.: cuando tengas una pregunta creá un hilo nuevo, no continúes uno existente porque no aparece como nuevo al entrar al foro y es mas dificil que alguien vea tu pregunta, solo nos llega el aviso a los que contestamos alguna vez en este hilo.

Disculpame, algo para la Epson no tenes??? porque me estoy volviendo loco con la funcion OpenInvoice que me devuleve un error.

Saludos y gracias.

fabianbbg
25-10-2007, 12:51:58
Hola Carlos:

Disculpame, algo para la Epson no tenes??? porque me estoy volviendo loco con la funcion OpenInvoice que me devuleve un error.


Por ahi Seria mejor que inicies un hilo nuevo, porque veniamos con las Hasar y ahora se plantea el tema Epson. (Ademas no queremos que nadie se enoje)

Pero como la idea es ver si nos ayudamos te pregunto:
*¿Que modelo de Epson es?
Porque yo habia hecho algo para las Epson Lx 300 F . Las cuales tienen un OCX y creo que podria ayudarte.

*La funcion OpenInvoice tiene muchos parametros, vos decis que te da un error. ¿Que error te da?

Te dejo un saludo fiscal sin iva

hasta la proxima

Carlos Lesca
25-10-2007, 19:47:38
Hola Carlos:



Por ahi Seria mejor que inicies un hilo nuevo, porque veniamos con las Hasar y ahora se plantea el tema Epson. (Ademas no queremos que nadie se enoje)

Pero como la idea es ver si nos ayudamos te pregunto:
*¿Que modelo de Epson es?
Porque yo habia hecho algo para las Epson Lx 300 F . Las cuales tienen un OCX y creo que podria ayudarte.

*La funcion OpenInvoice tiene muchos parametros, vos decis que te da un error. ¿Que error te da?

Te dejo un saludo fiscal sin iva

hasta la proxima


Ok Armo un nuevo hilo.

ledesmarc
26-06-2008, 13:23:54
Fabian he visto tu ejemplo para la impresora fiscal, yo estoy programando para una Hasar 715f tambien, baje el ocx de la pagina de HASAR pero al pegar el objeto 'DRIVERFISCAL1' no tengo las mismas funciones que vos usas sino que las mismas estan todas en ingles por eso queria por favor si me podes pasar la OCX que estas usando...

Muchas Gracias!!!

Marcos

fabianbbg
26-06-2008, 15:29:12
si .. no problem.. a que correo?
Saludos

ledesmarc
26-06-2008, 16:00:38
este es mi correo ledesmarc@gmail.com
desde ya muchas gracias...

ledesmarc
27-06-2008, 13:58:01
Fabian, te comento que ya consegui la ocx de hasar,sin embargo no puedo probar el codigo porque no tengo la impresora fiscal, busque un emulador fiscal y no funciona osea cuando ejecuto la accion me dice 'Controlador no Detectado', no se si sera que este emulador no funciona o si no se usarlo..
alguna sugerencia??

ledesmarc
27-06-2008, 14:30:35
Listo encontre, el error, desabilite el puerto com1, y lo active en el emulador..

pborges36
03-07-2008, 22:03:45
... busque un emulador fiscal y no funciona ...

hola ledesmarc. Una consulta. Conseguiste un emulador? Porque yo estoy buscando desde hacetiempo y nada.
Donde lo conseguiste?
Gracias.

ledesmarc
04-07-2008, 11:24:22
Si lo consegui en una de las mejores paginas www.taringa.net (http://www.taringa.net) en la busqueda pones emulador fiscal y te sale un emulador con crack incluido. saludos

pborges36
11-07-2008, 16:10:15
Muchas gracias Ledesmarc. Lo pruebo y te aviso...

pborges36
19-07-2008, 14:02:39
Que bueno!! Realmente funciona muy bien. Altamente recomendado si necesitan hacer pruebas en impresoras fiscales.
saludos.