PDA

Ver la Versión Completa : Cierres X y Z en fiscal Hasar SMH/P330


santiago14
30-04-2013, 16:36:11
Aquí van los cierres X y Z.
Perdón por la demora y gracias por la paciencia

//Cierre X
procedure TFrmPpal.evCierreXEventAlert(Sender: TObject;
EventName: String; EventCount: Integer; var CancelAlerts: Boolean);
var
comando:widestring;
begin
try
abrir_fiscal(archivoINI);
Hasar1.Comenzar;
Hasar1.TratarDeCancelarTodo;
Comando := '9' + #28 + 'X';
Hasar1.Enviar(comando);
hasar1.Finalizar;
CoolTrayIcon1.ShowBalloonHint('Impresora fiscal', 'Cierre X en la Impresora fiscal...',
bitInfo, 10);
except
on e:Exception do
begin
terminarTransaccion;
mErrores(e, 'Error en impresión de Cierre X.', 'Cierre X');
end;
end;
end;

//Cierre Z

procedure TFrmPpal.evCierreZEventAlert(Sender: TObject; EventName: String;
EventCount: Integer; var CancelAlerts: Boolean);
var
comando:widestring;
begin
try
abrir_fiscal(archivoINI);
Hasar1.Comenzar;
Hasar1.TratarDeCancelarTodo;
Comando := '9' + #28 + 'Z';
Hasar1.Enviar(comando);
hasar1.Finalizar;
CoolTrayIcon1.ShowBalloonHint('Impresora fiscal', 'Cierre Z en la Impresora fiscal...',
bitInfo, 10);
except
on e:Exception do
begin
terminarTransaccion;
mErrores(e, 'Error en impresión de Cierre Z.', 'Cierre Z');
end;
end;
end;


Saludos.

jose.ignacio.ve
14-04-2019, 02:09:02
Hola buenas tardes.
Te hago unas consulta, estoy realizando un sistema que se conecta un impresora fiscal hasar f441. Me gustaría informarme mas sobre los reporte de cierre.. por ejemplo cuando hacer uno u otro cierre.. y también una vez que cierro caja.. puedo hacer otra venta? estoy algo confundido con respecto a los cierres y apretura de caja..
P/D: estuve siguiendo todos tus código.. y que es archivoIni?

santiago14
14-04-2019, 23:10:11
El informe de cierre "X" es un reporte emitido por la impresora fiscal el cual contempla el total de los comprobantes fiscales registrados a través de dicho equipo durante un día de trabajo. El mismo sirve para realizar un cuadre de caja durante los cambios de turnos

Al utilizar impresora fiscal, está obligado a imprimir un Cierre Z al finalizar la jornada fiscal. ... El formato en que se imprime el cierre Z depende de la marca y modelo de la impresora fiscal. El programa simplemente le manda el pedido de cierre, y la fiscal es la que se encarga de generarlo e imprimirlo.

Puedes hacer todos los Cierres Z y X que quieras, aún después del cierre de caja. Ellos solo informan lo que se registró durante la Jornada laboral.

En cuanto al "archivo .ini", es un pequeño archivo de configuración, donde se ponen algunas cosas. En este puse ahí el puerto en el que está la Fiscal.

Esto es lo que hay en el archivo "ImpresoraFiscal.ini" de un software para Lubricentros.

[Conexion]
DataBaseName = Lubricentro
IPserver = 127.0.0.1
[fiscal]
puerto = 2
modelofiscal =

A este archivo lo llamo y saco lo que necesito en el momento correspondiente. La función Abrir_Fiscal es:

procedure TFrmPpal.abrir_fiscal(archivo_ini:string);
var
ini:TIniFile;
puerto:string;
begin
try
//Recuperamos los datos desde el archivo .ini
ini:=abrirINI(archivo_ini);
puerto:=leerINI(INI, 'fiscal', 'puerto');
//pto_vta:=leerINI(ini, 'punto_vta', 'punto');
//modelo:=leerINI(ini, 'fiscal', 'modelofiscal');
cerrarINI(ini);
//Es la parte de impresión
Hasar1.Puerto:=StrToInt(puerto);
//Hasar1.Modelo:=MODELO_P330;
Hasar1.Modelo:=MODELO_P441_201;
hasar1.Baudios:=9600;
except
raise;
end;
end;


Espero haber sido claro.