Epson Fiscal Printer Host ActiveX control

Propiedades Métodos Eventos Errores

Descripción

Este control Activex permite manejar desde cualquier entorno de desarrollo visual, que soporte estos, un controlador fiscal Epson. Fijando las propiedades, métodos y eventos de manera adecuada facilita el desarrollo de aplicaciones para este tipo de dispositivos.

Requerimientos

El control requiere cualquier entorno de desarrollo visual de 32 bits que pueda ser contenedor de estos ( Visual Basic, FoxPro para Windows, Delphi, C++Builder, Optima ++, PowerBuilder, etc. ) , con respecto al sistema operativo, el mismo fue probado exitosamente en Windows 95/98/ME/2000/XP.

Instalación

Notas sobre la instalación del control.

Derechos

Copyright 2002, EPSON Argentina S.A. División S.D. Todos los derechos reservados. Consulte en www.epson.com.ar por más información.


Instalación

Ejecutar el programa de instalación, este copia los archivos necesarios y registra automáticamente  el control en el sistema operativo.  A partir de este momento el control está en condiciones de uso. Consulte al manual de usuario de su entorno de desarrollo para ver de que manera se incluyen los controles ActiveX registrados en su sistema.

Notas sobre entornos visuales Borland ( Delphi y C++ Builder )

En este tipo de entornos para el uso de controles Activex es necesario primero registrarlo en la paleta de componentes. Siga los siguientes pasos :

•	Selecciones del menú principal, Component – Import ActiveX Control

•	Seleccione de la lista de controles disponible EPSONFPHostControlX

•	Personalice las propiedades del control, nombre de la clase, paleta destino, etc.

•	Presione el botón Install.

•	Esta acción agregará los archivos necesarios en el proyecto del Package seleccionado.

•	Ejecute Rebuild  y el control será agregado en la paleta de componentes ActiveX.


Propiedades

Lista de propiedades del control, algunos entornos de desarrollo agregan otras propiedades que no son específicas del mismo.

•	ComPort

•	BaudRate

•	ProtocolType

•	State

•	LastError

•	ExtraFieldsCount

•	Fiscal Status

•	Printer Status

•	Return Code


Métodos

Lista de métodos del control.

•	OpenPort

•	ClosePort

•	Purge

•	AddDataField

•	SendCommand

•	GetExtraField


Eventos

Lista de eventos disponibles del control

•	OnOpen

•	OnClose

•	OnWrite

•	OnRead

•	OnError

•	OnIntermediateAnswer

•	OnFinalAnswer

•	OnAck

•	OnNack


Errores

Listado de errores del control

•	EPF_Success

•	EPF_E_ComInUse

•	EPF_E_InvalidCom

•	EPF_E_ComAlreadyOpen

•	EPF_E_ComAlreadyClose

•	EPF_E_BadInitialization

•	EPF_E_ComClose

•	EPF_E_MaxDataLengthReached

•	EPF_E_InvalidDataInField

•	EPF_E_OperationInProgress

•	EPF_E_WriteError

•	EPF_E_ReadTimeOut

•	EPF_E_NackReceived

•	EFP_E_InvalidIndex


ComPort

Descripción

Selecciona el COM que utilizará el control.

Tipo de dato

Enumerado del tipo TxCommPort

Valor por defecto

Com1

Accesibilidad

Lectura y escritura.

Rango

•	Com1 = 0

•	Com2 = 1

•	Com3 = 2

•	Com4 = 3

•	Com5 = 4

•	Com6 = 5

•	Com7 = 6

•	Com8 = 7

•	Com9 = 8

•	Com10 = 9

•	Com11 = 10

•	Com12 = 11

•	Com13 = 12

•	Com14 = 13

•	Com15 = 14

•	Com16 = 15

•	USB = 16

Observaciones

El valor de esta propiedad puede ser cambiado únicamente en estado EFP_S_Close

Vea también

State


BaudRate

Descripción

Selecciona la velocidad de transferencia de datos que utilizará el control.

Tipo de dato

Enumerado del tipo TxBaudRate

Valor por defecto

br1200

Accesibilidad

Lectura y escritura.

Rango

•	br1200 = 0 ( 1200 baudios )

•	br2400 = 1 ( 2400 baudios )

•	br4800 = 2 ( 4800 baudios )

•	br9600 = 3 ( 9600 baudios )

•	br19200 = 4 ( 19200 baudios )

•	br38400 = 5 ( 38400 baudios )

•	br57600 = 6 ( 57600 baudios )

•	br115200 = 7 ( 115200 baudios )

Observaciones

El valor de esta propiedad puede ser cambiado únicamente en estado EFP_S_Close

Vea también

State


ProtocolType

Descripción

Selecciona el tipo de protocolo que utilizará el control.

Tipo de dato

Enumerado del tipo TxProtocolType

Valor por defecto

protocol_Compatible

Accesibilidad

Lectura y escritura.

Rango

•	protocol_Compatible = 0

•	protocol_Extended = 1

Observaciones

El valor de esta propiedad puede ser cambiado únicamente en estado EFP_S_Idle. Este valor determina de que manera el control envía y recibe las tramas de datos, consulte al manual de especificaciones técnicas de su impresora fiscal para establecer el correcto valor de la misma.

Vea también

State


State

Descripción

Retorna el estado del control.

Tipo de dato

Enumerado del tipo TxFiscalState

Valor por defecto

EPF_S_Close

Accesibilidad

Lectura únicamente.

Rango

•	EFP_S_Close = 0

•	EFP_S_Idle = 1

•	EFP_S_Busy = 2

Observaciones

El valor inicial de esta propiedad se fija en EPF_S_Close, y cambia al valor EFP_S_Idle cuando se ejecuta satisfactoriamente el método OpenPort. Durante el envío y recepción de tramas de datos el valor de la misma es fijado en EFP_S_Busy, indicando de esta manera que existe una transacción en progreso. Cuando se ejecuta el método ClosePort se establece el valor EFP_Close.

Ver también


LastError

Descripción

Permite determinar cual fue el último error ocurrido en el control.

Tipo de dato

Enumerado del tipo TxErrorType

Valor por defecto

EPF_Success

Accesibilidad

Lectura únicamente.

Rango

Para descripción detallada de los errores consulte a la lista de errores.

Ver también


ExtraFieldsCount

Descripción

Retorna la cantidad de campos extras que se recibieron como respuesta a un comando.

Tipo de dato

Entero de 32 bits.

Valor por defecto

0

Accesibilidad

Lectura únicamente.

Observaciones

Existen comandos que devuelven más campos que los fijos. Esta propiedad es utilizada para leer la cantidad de campos que se recibieron más allá de los fijos. Si el comando no posee campos extras el valor de esta propiedad es 0. Consulte al manual de especificaciones técnicas de su impresora fiscal para determinar cuales comandos envían campos extras.


OpenPort

Descripción

Abre el canal de comunicaciones con la impresora fiscal.

Parámetros

Ninguno

Retorno

Booleano

Requerido

Si

Observaciones

Una vez que han sido fijadas las propiedades ComPort, BaudRate y ProtocolType es necesario ejecutar éste método para iniciar el canal de comunicaciones del control. Este método retorna verdadero si la operación finalizó correctamente o falso si algún error ocurrió. Si esto ocurrió consulte el valor de la propiedad LastError para determinar cual fue la causa del error.


ClosePort

Descripción

Cierra el canal de comunicaciones del control.

Parámetros

Ninguno

Retorno

Booleano

Requerido

No

Observaciones

Este método deberá ser llamado en caso de quieran cambiarse los valores de las propiedades ComPort y BaudRate. Este retorna verdadero si la operación finalizó correctamente y falso si ocurrió un error. Consulte a la propiedad LastError para determinar cual fue la causa del error.


Purge

Descripción

Aborta cualquier transacción en progreso con la impresora fiscal.

Parámetros

Ninguno

Retorno

Ninguno

Requerido

No

Observaciones

Este método cancela cualquier operación en progreso con la impresora fiscal. Todos las operaciones con la impresora fiscal son canceladas y llevadas a su estado de inicio. Los datos del comando también son borrados la propiedad LastError  es fijada a condición de no-error.

Ver también


AddDataField

Descripción

Suma un campo al buffer de comandos.

Parámetro

String

Retorno

Booleano

Requerido

Si

Observaciones

Cada comando que recibe la impresora fiscal esta compuesto comúnmente por varios campos separados por un carácter especial que oficia de separador. Cuando el comando así lo requiera ejecute tantas veces este método, con el campo específico como parámetro, para llenar toda la información que requiera el comando. Este método retorna verdadero si los campos especificados en los parámetros son validos, la siguiente regla se aplica según el tipo del protocolo.

•	Protocolo compatible son válidos los caracteres entre el 32 y el 255 de la tabla ASCII

•	Protocolo extendido son válidos los caracteres de toda la tabla ASCII

Si el comando requiere caracteres no imprimibles, utilice la notación específica de su lenguaje de programación para embeber estos.

Visual Basic ejemplo

....

‘Suponer que el comando requiera el primer campo con el valor binario 0A’

Dim MyField As String

MyField = Chr$(&h0A)

MyEpsonFPControl.AddDataField MyField

....


SendCommand

Descripción

Envía un comando a la impresora fiscal

Parámetro

Ninguno

Retorno

Booleano

Requerido

Si

Observaciones

Utilice este método para enviar un comando a la impresora fiscal. Este método retorna verdadero si las condiciones internas del control son válidas para el inicio de la transacción con la impresora fiscal. Si el estado del control indica que esta cerrado o que existe una operación en progreso el retorno es falso.


GetExtraField

Descripción

Obtiene un campo de información adicional.

Parámetros

Parámetro = Entero de 32 bits, utilizado como índice, el número "1" indica el primer campo.

Retorno

String

Requerido

No

Observaciones

Si el comando enviado a la impresora fiscal retorna campos con información adicional, utilice este método para recuperar la información de los mismos. Este método retorna el contenido del campo solicitado, si el índice especificado como parámetro es 0 o inválido, se retorna un string vacio y se asigna EFP_E_InvalidIndex a la propiedad LastError.


OnOpen

Descripción

Este evento es generado cuando el método OpenPort es ejecutado en forma satisfactoria.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control.


OnClose

Descripción

Este evento es generado cuando el método ClosePort  es ejecutado en forma satisfactoria.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control.


OnWrite

Descripción

Este evento es generado cuando se envío en forma satisfactoria una trama completa a la impresora fiscal.

Parámetro

String

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control. El parámetro devuelto por valor de este evento contiene toda la trama enviada. Consulte al manual de especificaciones técnicas de la impresora fiscal para ver el detalle de la trama de comunicación.


OnRead

Descripción

Este evento es generado cuando se recibe una trama completa desde la impresora fiscal.

Parámetro

String

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control. El parámetro devuelto por valor, de este evento contiene toda la trama recibida. Consulte al manual de especificaciones técnicas de la impresora fiscal para ver el detalle de la trama de comunicación.


OnError

Descripción

Este evento es generado cuando se produjo un error durante el envío de un comando o la espera de la respuesta.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento para chequear el resultado de la transferencia de datos con la impresora fiscal. Leyendo el valor de la propiedad LastError  es posible determinar la causa del error.


OnIntermediateAnswer

Descripción

Este evento es generado cuando se recibe una trama de datos por parte de la impresora indicando que la misma se encuentra ejecutando un comando.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control.  Este evento tiene como finalidad registrar los denominados "Estados intermedios" que son enviados por la impresora fiscal para indicar al Host que se esta procesando un comando. El tiempo de envío entre cada uno de estos eventos es de aproximadamente 500 ms.


OnFinalAnswer

Descripción

Este evento es generado cuando la impresora fiscal envía en forma satisfactoria una respuesta final como resultado de un comando recibido.

Parámetros

Ninguno

Requerido

Si

Observaciones

Utilice este evento para determinar la finalización de un comando en progreso. Una vez que este evento es generado se actualizan los valores de las propiedades FiscalStatus, PrinterStatus y ReturnCode.  Consulte al manual de especificaciones técnicas de la impresora fiscal para determinar el significado de las mismas. Este evento es el único requerido, como cada respuesta debe ser analizada, es responsabilidad del programador generar este evento. Si este evento no es generado el control nunca retorna al estado idle.


OnAck

Descripción

Este evento es generado cuando la impresora fiscal acepta una trama de datos.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control. La aceptación de parte de la impresora fiscal de la trama de datos no implica que la misma ejecute exitosamente el comando, si no implica que la trama de datos fue recibida en forma consistente.


OnNack

Descripción

Este evento es generado cuando la impresora fiscal acusa que la trama recibida no es consistente.

Parámetro

Ninguno

Requerido

No

Observaciones

Utilice este evento si quiere llevar un registro de las operaciones sobre el control. Este evento es generado cuando la impresora fiscal informa que la consistencia de los datos recibidos no esta garantizada, con lo cual no puede procesar el comando. Normalmente este tipo de anomalía se debe a problemas en las comunicaciones, si este problema persiste consulte al servicio técnico.


EFP_Success
EFP_Success ( 0 )

Descripción

Indica que la operación finalizó en forma exitosa.


EFP_ComInUse
EFP_E_ComInUse ( 1 )

Descripción

Este error es generado cuando el control intenta abrir un puerto que el sistema operativo indica como activo. Modifique la propiedad ComPort.


EFP_E_InvalidCom
EFP_E_InvalidCom ( 2 )

Descripción

Este error es generado cuando el control intenta abrir un puerto y el sistema operativo informa que ese puerto es inexistente. Modifique la propiedad ComPort


EFP_E_ComAlreadyOpen
EFP_E_ComAlreadyOpen ( 3 )

Descripción

Este error es generado cuando se llama al método OpenPort y el mismo ya se hallaba abierto. Modifique su aplicación.


EFP_E_ComAlreadyClose
EFP_E_ComAlreadyClose ( 4 )

Descripción

Este error es generado cuando se llama al método ClosePort sin antes haber abierto el mismo. Modifique su aplicación.


EFP_E_BadInitialization
EFP_E_BadInitialization ( 5 )

Descripción

Este error es considerado un error interno del control, y se debe a que el mismo no pudo inicializar satisfactoriamente su estructura interna.


EFP_E_ComClose
EFP_E_ComClose ( 6 )

Descripción

Este error es generado cuando se desea enviar un comando a la impresora fiscal y el estado del control indica que no se encuentra abierto.


EFP_E_MaxDataLengthReached
EFP_E_MaxDataLengthReached ( 7 )

Descripción

Este error es generado cuando la trama de un comando supera la máxima permitida. Consulte al manual de especificaciones técnicas de la impresora fiscal para ver cual es máximo valor permitido.


EFP_E_InvalidDataInField
EFP_E_InvalidDataInField ( 8 )

Descripción

Este error es generado cuando se intenta enviar en la trama de un comando un carácter no soportado por el corriente protocolo. Consulte al manual de especificaciones técnicas de la impresora fiscal para determinar cuales son los caracteres válidos por cada protocolo.


EFP_E_OperationInProgress
EFP_E_OperationInProgress ( 9 )

Descripción

Este error es generado cuando se intenta enviar un comando y hay otro en progreso. Sincronice su aplicación chequeando el valor de la propiedad State o a través del evento OnFinalAnswer.


EFP_E_WriteError
EFP_E_WriteError ( 10 )

Descripción

Este error es generado cuando se intento enviar una trama de datos y la impresora fiscal esta desconectada o fuera de línea. Verifique el conexionado con la impresora fiscal.


EFP_E_ReadTimeOut
EFP_E_ReadTimeOut ( 11 )

Descripción

Este error es generado cuando la impresora fiscal no respondió a un comando en el tiempo establecido internamente por el control. Normalmente la impresora fiscal, mientras se encuentra procesando un comando que consume demasiado tiempo, envía periódicamente un tipo de trama que es conocida como "Estado intermedio". Esto informa al control que la misma se encuentra activa, pero procesando. Si el control no recibe ningún tipo de respuesta en un tiempo determinado, da por finalizada la transacción con error.


EFP_E_NackReceived
EFP_E_NackReceived ( 12 )

Descripción

Este error es generado cuando la impresora fiscal rechaza una trama recibida ya que no pudo  garantizar la consistencia de la misma.


Activex
Tipo de control que pude ser embebido dentro de otra aplicación


EFP_E_InvalidIndex
EFP_E_InvalidIndex ( 13 )

Descripción

Este error es generado cuando se intenta obtener un campo extra y el índice suplido es 0 o mayor al esperado.


Fiscal Status

Descripción

Permite determinar el estado fiscal del equipo.

Tipo de dato

Entero de 16 bits.

Accesibilidad

Lectura únicamente.

Observaciones

Consulte al manual de especificaciones técnicas de la impresora fiscal Epson para determinar el significado de este valor.

Ver también


PrinterStatus

Descripción

Permite determinar el estado del impresor.

Tipo de dato

Entero de 16 bits.

Accesibilidad

Lectura únicamente.

Observaciones

Consulte al manual de especificaciones técnicas de su impresora fiscal Epson para determinar el significado de este valor.

Ver también


ReturnCode

Descripción

Permite determinar el código de retorno.

Tipo de dato

Entero de 16 bits.

Accesibilidad

Lectura únicamente.

Observaciones

Consulte al manual de especificaciones técnicas de la impresora fiscal Epson para determinar el significado de este valor.

Ver también