Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Impresión (https://www.clubdelphi.com/foros/forumdisplay.php?f=4)
-   -   Impresora Hasar 2G Comando ConsultarEstado (https://www.clubdelphi.com/foros/showthread.php?t=94314)

b_ernesto 23-11-2019 23:59:38

Impresora Hasar 2G Comando ConsultarEstado
 
Hola, estoy tratando de conocer cual es el último numero de ticket impreso con una Hasar 1000, y me esta respondiendo cualquier número.
Me estoy conectando desde delphi 2007 con el OCX actualizado.

Me responde números tipo 1441792


Código Delphi [-]
Function TImprimeFiscalG2Form.ControlarNumero(Tipo_Comprobante_Fiscal:String;Letra_Comp:String):Integer;
Var NumeroTipoComp:TiposComprobante;
      RespConsultarEstado:RespuestaConsultarEstado;
begin
     ConectarImpresora;
     NumeroTipoComp := 0;
     If Tipo_Comprobante_Fiscal='Factura' then Begin
              if Letra_Comp='A' then NumeroTipoComp := FacturaA;
              if Letra_Comp='B' then NumeroTipoComp := FacturaB;
              if Letra_Comp='C' then NumeroTipoComp := FacturaC;
     end;

     RespConsultarEstado := Hasar1.ConsultarEstado(NumeroTipoComp);
     Result := RespConsultarEstado.NumeroUltimoComprobante;
end;

A alguien se le ocurre algo ?

Saludos y Gracias.

b_ernesto 07-12-2019 23:57:14

La Solución a mi problema
 
Buscando por qué me respondía cualquier cosa cuando consultaba el último comprobante, encontré en un foro de PowerBuilder de la web del programador, que se puede obtener las respuestas a los comandos ejecutados en la Hasar 2G escribiendo el comando ObtenerCampoRespuesta y como parámetro, el valor del campo de salida, tal cual figura en el manual.
Con esto obtengo en resultado correcto del ultimo ticket en texto plano.

Código Delphi [-]

Hasar1.ConsultarEstado(NumeroTipoComp);
Respuesta := Hasar1.ObtenerCampoRespuesta('CodigoComprobante');
Respuesta := Hasar1.ObtenerCampoRespuesta('NumeroUltimoComprobante');
Respuesta := Hasar1.ObtenerCampoRespuesta('CantidadCancelados');
Respuesta := Hasar1.ObtenerCampoRespuesta('CantidadEmitidos');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.CodigoBarrasAlmacenadoe');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.DatosClienteAlmacenados');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.MemoriaAuditoriaCasiLlena');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.MemoriaAuditoriaLlena');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.ModoEntrenamiento');
Respuesta := Hasar1.ObtenerCampoRespuesta('EstadoAuxiliar.UltimoComprobanteFueCancelado');

Espero le sirva a alguien.
Saludos

Casimiro Noteví 08-12-2019 14:54:36

^\||/^\||/^\||/


La franja horaria es GMT +2. Ahora son las 22:44:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi