Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Cada dispositivo de hardware de POS for .NET se representa mediante una interfaz abstracta, como la clase CashDrawer y una clase Basic, como CashDrawerBasic. Las clases Basic derivan de la interfaz subyacente y contienen compatibilidad funcional básica con el dispositivo. POS for .NET proporciona compatibilidad genérica con la apertura, la reclamación y la habilitación del dispositivo, las estadísticas del dispositivo y con la administración de la entrega de eventos a la aplicación. Además, cada clase Basic contiene un conjunto de métodos heredados y protegidos que el objeto de servicio puede implementar. En este tema se proporciona información resumida sobre las clases Basic que se pueden usar con objetos de servicio que derivan de la clase Basic del dispositivo, en lugar de aprovechar la clase Base del dispositivo más implementada.
Constructor
Cada clase Basic incluye un constructor que crea una instancia de la clase e inicializa las estadísticas de la versión de UPOS, la categoría del dispositivo y la fecha de instalación.
Propiedades y métodos comunes
Cada clase Basic proporciona definiciones de métodos y propiedades PosCommon invalidados. Para cada una de estas propiedades y métodos, la clase Basic controla la validación del estado (es decir, la comprobación de que la aplicación ha abierto, reclamado o habilitado el dispositivo) y, luego, llama a la implementación de POS for .NET de esa propiedad o método. Para más información sobre la clase PosCommon, consulte PosCommon.
El objeto de servicio puede usar la clase CommonProperties para actualizar las propiedades PosCommon designadas como de solo lectura para la aplicación, o para actualizar esas propiedades sin preocuparse por la validación del estado.
Métodos Dispose
Cada clase Basic incluye dos métodos Dispose implementados para su uso por el objeto de servicio. Para información sobre cómo funcionan, consulte la documentación de .NET Framework relativa a la clase IDisposable.
Apertura, reclamación y habilitación de dispositivos
Cada clase Basic proporciona la funcionalidad básica para abrir, reclamar y habilitar dispositivos. Sin embargo, normalmente, los objetos de servicio quieren invalidar estos métodos para agregar su propio procesamiento personalizado.
Métodos y eventos protegidos para desarrolladores de objetos de servicio
Cada clase Basic contiene un grupo de métodos y eventos para el desarrollador de objetos de servicio.
Las siguientes propiedades protegidas se definen de la siguiente manera:
- Propiedad CommonProperties, que devuelve una instancia de CommonProperties con valores get y set para todas las propiedades PosCommon. El objeto de servicio puede usar CommonProperties para actualizar las propiedades sin preocuparse por la validación del estado o de si la propiedad se designa de solo lectura para la aplicación.
- Propiedad ExternallyClaimed, qué objetos de servicio se pueden recuperar para determinar si se ha reclamado otra instancia del dispositivo (en cuyo caso, la propiedad se establece en true).
- Propiedad ErrorCount. Cuando el objeto de servicio consulta el valor de ErrorCount, la clase básica comprueba la cola de eventos y registra el número de eventos ErrorEvent encontrados. A continuación, devuelve ese recuento como el valor de ErrorCount.
- Propiedad DataCount. POS for .NET comprueba que el dispositivo se ha abierto y, luego, devuelve el número de eventos DataEvent actualmente en cola para el dispositivo.
Se definen los métodos protegidos siguientes:
- StateChangedEvent y delega StateChangedEventHandler (clase EventArgs). El objeto de servicio puede implementarlos para recibir notificaciones cuando la propiedad State del dispositivo ha cambiado.
- Métodos protegidos PreFireEvent para cada tipo de evento admitido por el dispositivo. Cada clase básica proporciona una implementación genérica predeterminada de PreFireEvent que devuelve resultados inmediatamente. Si el objeto de servicio necesita actualizar su estado interno antes de que se envíe un evento a la aplicación, dicho objeto puede invalidar la implementación predeterminada de PreFireEvent y proporcionar su propia implementación del tipo de evento en cuestión.
- Métodos protegidos QueueEvent para cada tipo de evento admitido por el dispositivo. El objeto de servicio llama a QueueEvent para agregar un evento a la cola de eventos. La clase Basic comprueba que el dispositivo está habilitado y, luego, agrega el evento a la cola de eventos que se va a entregar a la aplicación. Inmediatamente antes de la entrega, la clase Basic llama al valor PreFireEvent adecuado para dar al objeto de servicio una oportunidad para actualizar su estado interno. Cuando PreFireEvent devuelve resultados, la clase Basic entrega el evento a la aplicación.
- Métodos protegidos QueueEventAndWait. El objeto de servicio llama a QueueEventAndWait para agregar un evento ErrorEvent o un evento DirectIOEvent a la cola de eventos, desde la que el objeto de servicio espera una respuesta de la aplicación. La clase Basic comprueba que el dispositivo esté habilitado y, luego, agrega el evento a la cola de eventos que se va a entregar a la aplicación cuando las condiciones sean las correctas. Inmediatamente antes de la entrega, la clase Basic llama al valor PreFireEvent para dar al objeto de servicio una oportunidad para actualizar su estado interno. Cuando PreFireEvent devuelve resultados, la clase Basic entrega el evento a la aplicación.
- Método VerifyState, que toma dos valores booleanos, mustBeClaimed y mustBeEnabled. El objeto de servicio puede llamar a la implementación de POS for .NET de este método para realizar la validación de estado necesaria del dispositivo, antes de una llamada a un método o una propiedad.
- Método CreateStatistic. El objeto de servicio debe usar estos métodos para crear estadísticas personalizadas (es decir, específicas del fabricante). POS for .NET controla la creación y administración de todas las estadísticas definidas por UPOS.
- Los métodos SetStatisticValue e IncrementStatistic permiten al objeto de servicio actualizar una estadística especificada incluso si no se define como que se puede restablecer (es decir, estos métodos omiten las reglas impuestas por los métodos PosCommonResetStatistic(String) y UpdateStatistic(String, Object)).
- Método SetStatisticHandlers(String, GetStatistic, SetStatistic), que permite a los objetos de servicio proporcionar funciones de devolución de llamada externas para la recuperación y configuración de estadísticas basadas en hardware. Si no se define una propiedad get, la clase Basic asume que la estadística está basada en software y su valor se mantiene en el archivo XML de estadísticas. Si se definen las propiedades get y set, la clase Basic llama a estas funciones siempre que sea necesario actualizar o restablecer la estadística. Corresponde al objeto de servicio proporcionar código para actualizar la estadística en el hardware.
- Método ClearInput. POS for .NET borra las colas de eventos del dispositivo y, luego, llama a la implementación del objeto de servicio de ClearInputImpl.
- Método ClearInputImpl. El objeto de servicio debe implementar este método para borrar los búferes de hardware del dispositivo.