¿Qué es Nyx?
Proscai reside en un servidor y los usuarios se conectan para usarlo mediante Escritorio Remoto. Pero los recursos de las máquinas de los usuarios no están accesibles al servidor donde se ejecuta Proscai.
Nyx sirve para que Proscai tenga acceso a los recursos de la máquina del usuario.
Esos recursos pueden ser:
- Impresoras de tickets.
- Impresoras de etiquetas.
- PIN pads (terminales bancarias).
- Lectores de huella digital.
- Lectores de banda magnética.
- Básculas.
- Colectores.
Nyx es software que se instala en la máquina del usuario; en el servidor se instala el software concentrador, llamado Nyx Hub.
¿Cómo funciona?
Nyx se conecta al Nyx Hub del servidor en cuanto se abre. Esa conexión se mantiene activa mientas Nyx esté en ejecución.
Cuando Proscai requiere usar un recurso de la máquina del usuario, envía la solicitud a Nyx Hub, quien la reenvía al Nyx correspondiente. Nyx, a su vez, transmite la solicitud al recurso especificado.
Nyx regresa la respuesta a Proscai vía Nyx Hub.
Nyx y Nyx Hub presentan pequeñas ventanas mostrando su estado.
Estas ventanas no tienen menús ni botones porque toda la configuración se hace en Proscai.
El icono en la ventana de Nyx es verde cuando Nyx está conectado.
Instalación de Nyx Hub
Nyx Hub funciona con Windows Server 2008 o posterior (al momento de escribir este manual, la mínima versión soportada por Microsoft es Windows Server 2012). Requiere Microsoft .NET Framework 4.5.2 o posterior. Para pruebas, se puede instalar en una versión personal de Windows.
Nyx Hub está incluido en el paquete de Nyx descargable del portal de Proscai.
Nyx Hub consta sólo de un archivo ejecutable; para instalarlo, basta copiarlo al servidor. Se recomienda ubicarlo en una carpeta dentro de Archivos de Programas.
Es necesario abrir el puerto TCP 57001 en el router y en el firewall del servidor para que los Nyx de los usuarios se puedan conectar a Nyx Hub.
Es recomendable configurar el servidor para que ejecute Nyx Hub automáticamente al arrancar.
En Galio, Nyx Hub, ya está instalado y listo para usarse.
Instalación de Nyx
Nyx funciona con Windows Vista o posterior (como mínimo, se recomienda Windows 8.1, que es la mínima versión soportada por Microsoft al momento de escribir este manual). Nyx requiere Microsoft .NET Framework 4.5.2 o posterior. Para Windows 7 y Windows Vista, se requieren los Service Pack más recientes y todas las actualizaciones.
También es posible usar Nyx con Microsoft .NET Framework 4.0 en Windows XP y versiones no actualizadas de Windows 7 y Windows Vista; consulte con Soporte si requiere usar una de esas versiones.
En el paquete descargable de Nyx se encuentra la carpeta llamada Nyx. Para instalar Nyx, basta copiar dicha carpeta a la máquina del usuario. Se recomienda dejarla en alguna ubicación donde se pueda actualizar. La carpeta contiene el archivo ejecutable Proscai_Nyx, entre otros.
Es recomendable configurar Windows para que ejecute Proscai_Nyx automáticamente al arrancar.
Configuración de Nyx
En el menú Datos Generales hay un submenú llamado Nyx:
La configuración general de Nyx se hace en la ventana que se presenta al seleccionar la opción Configuración.
Esta ventana tiene apariencia complicada, pero eso se debe a que contiene información para su uso; en realidad es muy simple, sólo es necesario registrar un par de datos.
Para activar el uso de Nyx basta marcar la casilla Nyx Activo. La casilla Automático, que está inmediatamente abajo, sirve para facilitar la transición de SIP a Nyx: se usa Nyx si se detecta un Nyx en la máquina del usuario; de lo contrario, se usa SIP. Ello permite ir instalando Nyx paulatinamente en las máquinas de los usuarios que usan SIP (si no se usa SIP, esta opción no tiene ningún efecto).
En el campo URL 1 de Nyx Hub para conexiones de Nyx se debe registrar la dirección del servidor. Ésta es la misma que usan los usuarios para conectarse al servidor mediante Escritorio Remoto. Por ejemplo, “servidor.miempresa.com”. También puede ser una dirección IP, aunque es preferible usar el nombre y dominio.
El campo Puerto 1 de Nyx Hub para conexiones de Nyx es el puerto TCP para la conexión. Se usa “57001” y sólo es necesario cambiarlo cuando la empresa está hospedada en Galio: se usa “57xxx”, donde “xxx” es la identificación de la empresa.
Se debe registrar una contraseña mediante el botón Contraseña. Ésta sirve para que sólo la base de datos autorizada tenga acceso a sus Nyx. Basta registrarla una vez, no será necesario introducirla en ningún otro lugar.
El campo Versión requerida de Nyx permite actualizar los Nyx automáticamente: si un Nyx tiene una versión anterior a la aquí registrada, se actualizará automáticamente cuando el usuario inicie la sesión en Proscai. El número de versión debe existir.
Se puede probar la conexión entre Proscai y Nyx Hub mediante el botón Probar conexión a Nyx Hub.
Los demás campos sólo se requieren cambiar en situaciones especiales y se tratan en Temas Avanzados.
Perfiles
Para que Nyx pueda mandar una impresión, requiere saber cómo conectarse a la impresora. Pero distintas máquinas pueden tener condiciones diferentes, como el modelo de la impresora o cómo está conectada. Eso se resuelve con los perfiles: un perfil sirve para tipificar las condiciones que tengan en común varias máquinas.
Por ejemplo, una empresa podría tener dos modelos de impresoras de tickets en sus tiendas: algunas tiendas con impresoras térmicas conectadas con cable serial y otras con impresoras de impacto (de matriz de puntos) conectadas con cable paralelo. Para esta situación se podrían tener dos perfiles de Nyx, uno para cada tipo de impresora. A cada Nyx se le asocia el perfil que le corresponde. Así, un Nyx en particular sabe si debe enviar la impresión al puerto paralelo o al serial.
La forma de conectarse a la impresora es el principal propósito de la tipificación de un grupo de máquinas en un perfil, pero tiene otros usos. Un perfil sirve también para especificar el modelo de la impresora, el modelo de la báscula, la variante del formato de ticket, el redireccionamiento de los recursos, etc. El modelo de la impresora es importante para el ticket universal (ver el manual correspondiente); los demás se usan en situaciones especiales y se tratan en Temas Avanzados. Por lo tanto, en esta sección se hablará exclusivamente de la conexión a la impresora.
En otras palabras, lo que determinará cuántos perfiles se necesitan son las distintas formas en que se tengan conectadas las impresoras.
Es importante aclarar que Nyx se usa para imprimir en impresoras de tickets e impresoras de etiquetas, no se usa para impresión de reportes en impresoras tamaño carta (láser o inyección de tinta).
Cabe señalar que algunos recursos no requieren ser especificados en un perfil. Por ejemplo, el lector de huella digital, la terminal bancaria o la báscula se usan sin tener que especificar cómo se conectan, por lo que se pueden usar con cualquier perfil.
La segunda opción del menú de Nyx abre la ventana para definir perfiles:
Se pueden dar de alta cuantos perfiles se requieran, pero normalmente bastará con uno o dos. Los perfiles tienen un código y una descripción, que aparecen en la lista de perfiles registrados (lado izquierdo). El perfil con código “DEFAULT” se crea automáticamente y no se puede eliminar.
El dato más importante de un perfil es el Puerto de impresión. Como ya se dijo, es lo que básicamente determinara cuántos perfiles se necesitan. Sólo hay tres tipos de puerto para conectar una impresora:
- COM (serial)
- LPT (paralelo)
- TCP (red)
IMPORTANTE: Nyx no usa los controladores (drivers) de las impresoras, sino que envía la información directamente. Eso es posible con impresoras seriales, paralelas o de red, pero no con impresoras USB; para impresoras conectadas con USB se requiere un puerto serial virtual. Para más información sobre conexiones y configuración de las impresoras, consultar Conexión de Impresoras de Tickets y Etiquetas.
En el caso de los puertos COM y LPT se debe especificar el número del puerto. Nyx permite usar los puertos COM 1 a 20 y los puertos LPT 1 a 4.
En la lista de puertos también aparece la opción “DMP”. Esto no es realmente un puerto, sino que se usa cuando se desea desechar las órdenes de impresión (“DMP” es abreviación de “dump”).
Las dos líneas de campos que siguen al puerto de impresión se usan para detalles específicos de los puertos COM y TCP, respectivamente. Los puertos LPT no requieren de ningún dato adicional.
Para los puertos COM es necesario especificar el Baud o velocidad de transmisión (bits/segundo) y el hand shake o mecanismo de “saludo” entre los dispositivos. Aunque la comunicación serial usa otros parámetros, como data bits, stop bits y parity, estos no se especifican en el perfil porque prácticamente todas las impresoras usan los mismos o se pueden configurar para usar los predeterminados de Nyx, que son: data bits = 8; stop bits = none; parity = none;
El puerto TCP requiere que se especifique la dirección de la impresora de red, ya sea como dirección IP o como URL. Las impresoras de red casi siempre usan el puerto TCP 9100.
La casilla Blocking sirve para especificar que Nyx debe esperar a que la información a imprimir haya sido enviada a la impresora. Si no se marca, Nyx contestará en cuanto reciba la solicitud, antes de intentar imprimir. Eso tiene la ventaja de liberar más rápidamente a Proscai, pero Proscai no recibirá retroalimentación si Nyx encuentra un problema al tratar de imprimir. En general, se recomienda dejarla marcada. Es indispensable cuando Proscai puede enviar dos impresiones seguidas (por ejemplo, dos copias de un ticket) para evitar que se traslapen las instrucciones.
El campo Tipo de miniprinter o impresora de etiquetas es importante para el ticket universal (ver el manual correspondiente).
El resto de los campos, como ya se dijo, se usan en situaciones especiales y se tratan en Temas Avanzados.
Al principio de esta sección se puso el siguiente ejemplo de una empresa que podría tener dos modelos de impresoras de tickets en sus tiendas: algunas tiendas con impresoras térmicas conectadas con cable serial y otras con impresoras de impacto (de matriz de puntos) conectadas con cable paralelo. A continuación se muestra cómo podrían definirse los dos perfiles para ese caso:
El perfil “DEFAULT” se usó para las impresoras térmicas, que están conectadas al puerto serial COM7. Por ser impresora serial, Nyx usará los valores de Baud y Hand shake (en este caso, “9600” y “None”, respectivamente).
Se creó otro perfil, con código “MATRIZ”, para las impresoras de impacto, conectadas a LPT1. Los puertos LPT no requieren parámetros.
Como ejemplo, en el campo Tipo de miniprinter o impresora de etiquetas se registró “T88V” para las impresoras térmicas y “U220” para las impresoras de impacto. Esos son los códigos usados por el ticket universal para las impresoras Epson modelo TM-T88V y TM-U220.
Para ampliar el ejemplo, supongamos que no todas las impresoras térmicas se conectan al puerto COM7, sino que algunas se conectan al puerto COM5. En ese caso, se tendría que registrar otro perfil más, que sería igual al “DEFAULT”, pero con “COM5” en lugar de “COM7”. Aunque la recomendación sería unificar el puerto de las impresoras térmicas, podría resultar más práctico crear el tercer perfil.
Ampliando más el ejemplo, supongamos que todas las impresoras térmicas se conectan al puerto COM7, pero se tienen dos diferentes modelos: Epson TM-T88V y TM-T20II. En este caso también se necesitaría un tercer perfil si se usa ticket universal, porque las impresoras Epson TM-T20II requieren el código “T20II” en el campo Tipo de miniprinter o impresora de etiquetas.
Para terminar con los ejemplos, combinemos las dos variantes anteriores: dos modelos de impresoras térmicas y dos puertos seriales. Se necesitaría el perfil de las impresoras de impacto conectadas a LPT1, más cuatro perfiles de las impresoras térmicas, porque se tienen cuatro combinaciones puertos y códigos para ticket universal:
Los anteriores ejemplos tienen la intención de ayudar a entender qué se debe considerar para decidir qué perfiles se requieren. En resumen, se requerirá un perfil por cada modo de conexión de impresora que se tenga. Con ticket universal, también se tiene que considerar el código de cada impresora (algunos modelos usan un mismo código), por lo que se requiere un perfil por cada combinación modo de conexión + código de impresora.
Un modo de conexión no sólo es el puerto que usa, sino también los parámetros, en caso de tenerlos. Por ejemplo, si se tienen impresoras del mismo modelo y conectadas al mismo puerto COM, pero algunas usan Baud 9600 y otras usan 19200, se requerirán dos perfiles. Lo recomendable es unificar puertos y parámetros de comunicación para usar el mínimo número de perfiles.
Activación de Usuarios
Nyx sirve para que Proscai tenga acceso a los recursos de la máquina del usuario, como la impresora de tickets en la caja de una tienda, pero no siempre se necesita. Por ejemplo, la PC de un usuario de oficinas, digamos del área contable o de compras, no tiene recursos que requiera usar Proscai, así que no tiene caso instalarle Nyx.
La forma en que se activan los usuarios para el uso de Nyx es registrando “1” en el campo Fórmula RD ID, que está hasta el final de la ventana del catálogo de usuarios.
Importante: Nyx debe estar en ejecución en la máquina del usuario si éste ha sido activado para usar Nyx; de lo contrario, al usuario se le mostrará un mensaje avisándole que Nyx no está en ejecución e invitándolo a que lo abra.
Una función adicional de Nyx es impedir o permitir el acceso del usuario a Proscai dependiendo de la máquina desde la que se conecta. Por ejemplo, se puede configurar para que los cajeros sólo puedan entrar a Proscai desde las máquinas de las cajas que les corresponden.
Las restricciones se especifican usando el campo Fórmula RD ID con distintos valores, dependiendo de las restricciones se desee imponer. Es muy versátil. Esta función de Nyx se puede aprovechar aun en máquinas en las que no haya recursos que acceder, como en máquinas de oficinas. Este tema se trata con detalle en Temas Avanzados.
Registro de Nyx
Cuando un usuario se conecta por primera vez a Proscai después de que se le ha instalado Nyx y activado su uso, se le presenta una ventana para que registre su Nyx.
Mediante esta ventana se le pide al usuario que anote algo que permita identificar la máquina desde la que está conectándose. Esto se hace con el propósito de poder identificar la máquina a la que corresponde cada Nyx en el catálogo (ver Catálogo de Nyx). El código del usuario junto con lo que él escriba, se registrará como la descripción del Nyx, pero ésta puede ser modificada posteriormente.
Antes de activar el uso de Nyx, se recomienda avisarles a los usuarios para que sepan de qué se trata.
Si hay más de un perfil registrado, la ventana presentará la lista de perfiles y le solicitará al usuario que elija el que le corresponde.
Se recomienda asignar descripciones a los perfiles que los usuarios puedan discernir. También se recomienda instruir con anticipación a los usuarios para que elijan el perfil correcto. No obstante, el perfil asociado a un Nyx se puede cambiar fácilmente en cualquier momento (ver Catálogo de Nyx).
Catálogo de Nyx
La opción Catálogo del menú de Nyx abre la ventana del catálogo de Nyx, que contiene los Nyx que se han registrado:
Cuando Nyx se ejecuta por primera vez en la máquina del usuario, se crea una identificación única (un UUID) para el Nyx. La terminación de esa identificación aparece en la columna UID y en la ventana de Nyx en la máquina del usuario.
El UID es muy largo y poco manejable, por lo que es posible asignar a los Nyx una identificación corta y entendible, llamada ID (sin la “U”). Esta identificación es particularmente útil cuando se usa redireccionamiento, es decir, cuando se requiere usar el recurso de una máquina desde otra. Ver Temas Avanzados.
En esta ventana aparece el perfil asociado a cada Nyx, su descripción, la fecha y hora en que se contactó (utilizó) por última vez y la fecha y hora en que originalmente se registró. El catálogo se puede ordenar por cualquier columna haciendo clic en el título de la columna; shift-clic ordena descendentemente.
El botón Actualizar carga la información actual de los Nyx que están conectados: tiempo de conexión, dirección IP y versión (el botón y los tres datos están en azul para distinguirlos fácilmente).
El dato Extra está reservado para usos futuros.
El botón Asignar Perfil permite cambiarle el perfil al Nyx seleccionado. Al hacer clic, se presenta la lista de perfiles registrados. En lugar de usar el botón, se puede hacer un doble clic en la línea del perfil; también se puede elegir el perfil deseado con un doble clic, así que se puede cambiar un perfil con sólo dos doble clics.
El botón Probar envía un mensaje de prueba al Nyx. En la ventana del Nyx aparece “Prueba” como Ultima solicitud.
Con el botón Baja se pueden eliminar del catálogo los Nyx que corresponden a máquinas que ya no están en uso o a las que se les quitó Nyx. Si accidentalmente se elimina un Nyx en uso, éste se volverá a registrar cuando el usuario inicie sesión en Proscai.
Cuando se tienen dos o más impresoras conectadas a una máquina, es necesario tener múltiples instancias de Nyx, porque cada Nyx tiene un perfil con la información para la conexión a la impresora. Con el botón Agregar se añade una instancia al Nyx seleccionado. Los últimos dos dígitos del UID es el número de la instancia (el inicial es “00”). Cada instancia es un Nyx totalmente independiente que existe dentro del mismo Nyx. El botón Baja también sirve para eliminar las instancias adicionales. Consulte Temas Avanzados para más información.
Temas Avanzados
- Transición a Nyx
- Impresión de Etiquetas
- Campo Fórmula RD ID
- Redireccionamiento
- Uso sin Nyx de la Sesión
- Básculas en Punto de Venta
- Nyx Hub con Múltiples Servidores de Proscai
- Uso de dos URL para Nyx Hub
- Uso de Certificado Propio para Autentificación de Nyx Hub
- Uso de Formatos de Impresión Alternos
- Campo Especial del Perfil
Transición a Nyx
La transición a Nyx depende del recurso y la técnica usada actualmente:
- Impresoras de Tickets e Impresoras de Etiquetas con SIP. Para las impresoras que se usan actualmente con SIP, basta usar el modo automático (ver Configuración de Nyx). El modo automático funciona bien con los casos especiales SIP_999xx. Por supuesto, el perfil de Nyx debe estar configurado correctamente para la impresora.
- Impresoras de Tickets con controlador (“driver”). El primer paso para usar con Nyx una impresora que actualmente se usa con controlador es encontrar una solución de conectividad. Si la impresora está conectada mediante puerto paralelo o serial, sólo es necesario configurar el perfil de Nyx correctamente; si la impresora está conectada con USB, lo más simple es usar la técnica de recurso de red compartido, pero es más recomendable usar un emulador de puerto serial. Para más información, consulte la Guía para Conexión de Impresoras de Tickets y Etiquetas.
Los formatos de impresión para controlador no se imprimen bien en Nyx, por lo que se recomienda cambiar al ticket universal (ver Ticket Universal). En caso de que no sea posible adoptar el ticket universal, se debe solicitar a un analista la adecuación del formato actual. Para hacer una transición paulatina a Nyx de la impresión vía controlador, es necesario utilizar un formato alterno (consulte a un analista) e ir asignado el nuevo formato a los almacenes conforme se instala Nyx en las tiendas. La alternativa es instalar Nyx en todas las tiendas y hacer el cambio repentinamente modificando los tipos de movimiento. - Impresoras de Tickets con SendClip. Los formatos de impresión para SendClip funcionan con Nyx, pero les sobra la identificación para SendClip hasta arriba. La recomendación es usar el ticket universal, pero se le puede solicitar a un analista que elimine la identificación para SendClip. Para hacer una transición paulatina a Nyx de la impresión vía SendClip, es necesario utilizar un formato alterno (consulte a un analista) e ir asignado el nuevo formato a los almacenes conforme se instala Nyx en las tiendas. La alternativa es instalar Nyx en todas las tiendas y hacer el cambio repentinamente modificando los tipos de movimiento.
- Impresoras de Etiquetas directo a puerto. Usar con Nyx una impresora de etiquetas que actualmente se usa enviando directamente a puerto LPT, COM o TCP es muy fácil: basta replicar la configuración en el perfil de Nyx y registrar “90100” en el campo SIP ID para Etiquetas de Datos Generales. Si se tienen varias impresoras de etiquetas, la transición se deberá hacer simultáneamente en todas, no hay forma de hacerla paulatinamente.
- Lectores de Huella Digital. Sólo funcionan con SIP o Nyx, por lo que la transición es muy fácil: basta usar el modo automático (ver Configuración de Nyx). Si la versión que utiliza de SIP es 3.x o anterior, será necesario actualizar el software del lector a la versión DigitalPersona U.are.U 2.3.1.
- PIN Pad. Los PIN pads en uso se han desarrollado con Nyx, por lo que no se requiere una transición.
- Básculas. Si las básculas se usan actualmente con SIP, basta usar el modo automático (ver Configuración de Nyx). Para más información, consulte Básculas. Si las básculas no se usan con SIP, por favor consulte a un analista.
Impresión de Etiquetas
Para usar impresoras de etiquetas con Nyx, basta anotar “90100” en el campo SIP ID para Etiquetas de Datos Generales; si ya se tiene un número de SIP en ese campo, se puede dejar, porque al activar el modo automático se usará Nyx si está presente.
Lo anterior también aplica para el campo SIP ID para Etiquetas del catálogo de Usuarios. Ese campo es específico por usuario y tiene prioridad sobre el general, pero pierde sentido al usar Nyx, porque se usará el Nyx de la sesión, no hace falta una especificación a nivel usuario, como se hacía con SIP.
Los diseños de las etiquetas se guardan en archivos llamados LPS, que se cargan en la base de datos. Cada marca de impresoras de etiquetas tiene su propio lenguaje, por lo que hay un LPS distinto por cada marca. En la ventana Impresoras de Etiquetas de Datos Generales se gestionan los LPS. Tradicionalmente, sólo hay un LPS activo. Nyx, usa el LPS activo al enviar etiquetas a la impresora. Si se tienen distintas marcas de impresoras, se puede especificar el LPS correspondiente a la impresora en el perfil de Nyx, en el campo Tipo de miniprinter o impresora de etiquetas. Nyx usa el LPS del perfil, si hay uno especificado, lo que evita tener que activarlo en Datos Generales. En ese campo se debe anotar el código de cuatro caracteres que aparece a la izquierda del nombre del LPS en la lista LPSs cargados de la ventana Impresoras de Etiquetas.
Si un mismo usuario requiere mandar etiquetas a distintas impresoras, puede hacerlo fácilmente, independientemente de que las impresoras estén conectadas a su propia máquina, a otras o en red. Ver Redireccionamiento.
Campo Fórmula RD ID
Como se señala en el tema Activación de Usuarios, el campo Fórmula RD ID se puede usar para impedir o permitir el acceso del usuario a Proscai dependiendo de la máquina desde la que se conecta. A continuación se describen los posibles valores para ese campo:
vacío | El usuario no usa Nyx. No se hace ninguna verificación. |
1 | El usuario puede iniciar sesión desde cualquier equipo. |
0 | El usuario no puede iniciar sesión (equivale a desactivarlo). |
* | El usuario puede iniciar sesión si los tres primeros caracteres del ID del Nyx coinciden con el número de tienda (campo Cia) a la que está asignado. |
=fórmula | Fórmula cuya evaluación debe ser “true” para permitir que el usuario inicie sesión. La fórmula debe seguir inmediatamente después del signo igual. Al evaluar la fórmula, el símbolo [ID] se sustituirá por el ID del Nyx presente. En el momento de la evaluación, únicamente están presentes el registro de FCIA y el del usuario. |
@ |
La arroba sirve para usar Nyx sin tener un Nyx de la sesión. Ver el tema avanzado Uso sin el Nyx de la Sesión. |
reservados | Caracteres reservados para usos futuros: + - # $ % & ? @ ~. Estos caracteres no tienen una función asignada todavía, están reservados para usos futuros. Si aparecen como el primer carácter del campo, el usuario no podrá iniciar sesión. |
ID | Cualquier otro valor que no sea uno, cero, asterisco, o que empiece con signo de igual o con uno de los caracteres reservados, se interpretará como el ID de Nyx desde el cual se le permite al usuario iniciar sesión. Se pueden poner dos o más ID separados por doble pipe. |
El valor “0” (cero) le mostrará al usuario un mensaje diciendo que falló la comunicación con Nyx, a pesar de que realmente sí haya funcionado. El usuario no podrá iniciar sesión.
El asterisco es muy útil para permitir que los usuarios de tiendas usen cualquier máquina de la tienda. Una buena práctica es asignar al Nyx de cada tienda un ID igual al número de la tienda a tres dígitos (no se deben usar identificaciones de sólo uno o dos dígitos). Por ejemplo, el Nyx ID de la tienda 25 será “025”. Si se le pone asterisco en Fórmula RD ID a todos los usuarios de tienda, los usuarios que tengan “25” en el campo Cia sólo podrán usar la máquina de la tienda 25, con ID “025”.
Si se tiene más de una máquina por tienda, se deberá agregar algo al ID del Nyx, porque el ID debe ser único. Por ejemplo, se puede agregar una letra o dígito para indicar la caja: “025A”. Esto funciona porque con el asterisco sólo se verifican los tres primeros caracteres del ID.
Si se quiere restringir al usuario a una máquina específica, basta poner el ID de esa máquina. Se recomienda usar códigos de longitud uniforme que identifique el área. Por ejemplo: “ADM01”, “CNT03”, “VTA02”. Para restringir un usuario a la máquina dos de ventas, basta poner “VTA02” en su Fórmula RD ID. Si se desea que el usuario pueda usar las máquinas dos, cuatro y cinco, la fórmula será “VTA02||VTA04||VTA05”.
Se pueden usar fórmulas para especificar condiciones más elaboradas. A la fórmula se le debe anteponer el signo “=”. Por ejemplo, si se quiere que el usuario pueda utilizar cualquier máquina de ventas, la fórmula podría ser:
=mid([ID],1,3)=”VTA”
El símbolo “[ID]” se sustituirá por el ID del Nyx al verificar la condición. Se pueden usar campos del usuario y de datos generales anotándolos entre corchetes. Por ejemplo, la siguiente fórmula requiere que el ID del Nyx sea igual al código del usuario:
=[ID]=[USRCOD]
Las fórmulas pueden ser tan complicadas como se desee, en tanto quepan en el campo. Por favor consulte a un analista si tiene dudas sobre cómo hacer una fórmula.
Redireccionamiento
Uno de los aspectos más poderosos de Nyx es el redireccionamiento, que es la posibilidad de usar los recursos de otros Nyx. Por ejemplo, dos cajas contiguas de una tienda pueden compartir la impresora de tickets, la PIN pad, la báscula y/o el lector de huellas digitales; otro ejemplo es que un mismo usuario puede usar varias impresoras de etiquetas conectadas a distintas máquinas.
Normalmente, el Nyx que se usa es el que está en la máquina del usuario, llamado Nyx de la sesión. Con éste se pueden usar los recursos que están conectados directamente a la máquina. Para usar un recurso que está conectado a otra máquina, es necesario redireccionar hacia el Nyx de esa máquina.
Un caso distinto, pero que también usa redireccionamiento, es cuando se tienen dos o más impresoras conectadas a la misma máquina. Cada impresora requiere de un perfil con la configuración de su conexión y cada Nyx se asocia a un perfil. Por lo tanto, para usar dos impresoras conectadas a una máquina, se necesitan dos Nyx en esa máquina. En realidad, no se usan dos Nyx separados, sino instancias dentro del mismo Nyx.
Dentro de un Nyx pueden existir múltiples instancias. Cada instancia es un Nyx totalmente independiente. Con el botón Agregar de la ventana Catalogo de Nyx se añade una instancia al Nyx seleccionado. Los últimos dos dígitos del UID es el número de la instancia (el Nyx inicial es “00”). Ver Catálogo de Nyx.
Nota: para activar una nueva instancia se debe reiniciar la sesión de Proscai de la máquina donde está el Nyx.
En resumen, es posible redireccionar un recurso al Nyx de otra máquina o a una instancia distinta del Nyx propio (Nyx de la sesión).
El redireccionamiento es por recurso. Por ejemplo, se puede redireccionar sólo la impresora de etiquetas y seguir usando los demás recursos propios.
El redireccionamiento se especifica en la tabla de redireccionamiento del perfil, que tiene una línea por cada recurso:
Para redireccionar un recurso, es necesario que el Nyx destino se pueda identificar. Si se trata de una instancia dentro del Nyx propio, se pueden usar los últimos dos dígitos del UID. Por ejemplo, para enviar la impresión de etiquetas a la instancia “01” del Nyx propio, basta anotar “1” en la segunda línea (no es necesario el cero a la izquierda, pero se puede poner). En otras palabras, si al redireccionar se usa un número entre 0 y 99, se interpreta como una instancia del mismo Nyx (cero equivale a no redireccionar). A eso se refiere “Índice” en el título de la tabla.
Para usar un recurso de otra máquina, se debe dar una identificación única al Nyx de esa máquina. Eso se hace en el Catálogo de Nyx, modificando el campo ID.
Aunque las identificaciones pueden ser cualquier texto, es muy importante seguir una estructura bien definida para poder usar el redireccionamiento fácilmente. Para tiendas, se recomienda usar el número de la tienda a tres dígitos. Por ejemplo, “025” es el ID del Nyx de la tienda 25. Si se tienen dos o más máquinas en algunas tiendas, se debe agregar algo para distinguirlas. Por ejemplo, se pueden asignar letras a las cajas; así, las dos cajas de la tienda 25 tendrán los ID “025A” y “025B”. Otras posibilidades son: “025-A” y “025-B”; “025-1” y “025-2”, etc. Independientemente del esquema que se elija, lo importante es ser consistente.
Nota: aunque se tengan pocas tiendas, no se deben usar identificaciones de sólo uno o dos dígitos (0 a 99) porque se confundirían con instancias del mismo Nyx.
Para las máquinas de oficinas, plantas de producción o bodegas, se pueden usar identificaciones de tres letras por área o departamento, más uno o dos dígitos para identificar la máquina. Por ejemplo, “VTA04” es la cuarta máquina del área de ventas. El esquema de identificación más conveniente depende de cada caso, pero se debe ser consistente.
Si se usan instancias adicionales para redireccionamiento desde otras máquinas, conviene considerarlas como Nyx distintos, es decir, como si fueran otras máquinas. Por ejemplo, la instancia “01” de la caja “B” de la tienda 25 podría tener el ID “025K”. El esquema que se elija depende de cuántas máquinas se tienen, de cómo se usará el redireccionamiento, etc. Cada caso es distinto.
No es necesario ponerle identificación a todos los Nyx, sólo a aquellos que se quieren usar desde otras máquinas.
Cuando un recurso se redirecciona, Proscai usa el perfil del Nyx destino. Por ejemplo, si se redirecciona la impresión, se usará el puerto y demás parámetros del Nyx al que se redireccionó, sin importar la configuración de impresión del perfil original. Eso es lógico porque cada Nyx tiene el perfil adecuado para la impresora local.
Para redireccionar un recurso al Nyx de otra máquina, basta poner el ID del Nyx destino en la tabla de redireccionamiento. Sin embargo, la forma más común es sólo poner la terminación del ID (por eso el título de la tabla dice “sufijo”). La forma en que esto funciona puede parecer un poco complicada al principio, pero se verá que tiene mucho sentido. Básicamente, se arma el ID del Nyx destino a partir del Nyx propio, sustituyendo sólo la parte final. Si se pone un carácter en la tabla de redireccionamiento, se sustituirá un carácter al final del ID del Nyx propio para armar el ID del Nyx destino. Por ejemplo, si el Nyx propio es “025B” y se pone “A” en la tabla de redireccionamiento se sustituirá la “B” por la “A”, por lo que se redireccionará al Nyx “025A”.
Nyx propio Sufijo Nyx destino
025B A 025A
Si en la tabla de redireccionamiento se ponen dos caracteres, se sustituirán los dos últimos caracteres del ID propio, y así sucesivamente.
Funciona de esa manera porque lo más común es redireccionar a un Nyx del mismo grupo. Como ejemplo, supongamos que tenemos tiendas con una o varias cajas. Todas las cajas tienen su propia impresora de tickets, pero sólo una tiene conectada una impresora de etiquetas. El propósito es que todos los cajeros puedan imprimir etiquetas desde su máquina. Primero, se asigna un ID a todas las cajas como se sugiere arriba: el número de la tienda a tres dígitos y una letra a cada caja. Así, en la tienda 25 se tendrán los ID “025A”, “025B”, “025C”, etc. Después, al Nyx de la máquina que tiene la impresora de etiquetas se le agrega una nueva instancia y se le asigna un ID similar, pero con una letra “Q” (escogida arbitrariamente): “025Q”. Ahora, todo lo que se tiene que hacer es anotar “Q” en la línea Impresora de etiquetas de la tabla de redireccionamiento del perfil. Cuando cualquier cajero mande etiquetas, se usará el Nyx “025Q”. Nótese que eso funciona para cualquier tienda, sin importar cuántas cajas tenga: sólo cambia el número de tienda. Incluso, la máquina que tiene conectada la impresora de etiquetas redireccionará a su instancia 01, pero usando el sufijo “Q”, no el índice. Este ejemplo funciona igual, independientemente de que se tengan distintos perfiles de impresoras de tickets y/o de etiquetas.
Se debe tener presente que el sufijo no puede ser uno o dos dígitos (0 a 99), porque eso se interpreta como el índice de una instancia del Nyx propio. Si se desea usar dígitos al final de un ID, se debe anteponer una letra o símbolo. Por ejemplo, se puede usar el ID “025-1” y poner como sufijo “-1”.
A continuación se presentan algunos casos de uso de redireccionamiento que ayudan a entender cómo funciona.
Caso 1: Computadora con dos impresoras, una de tickets y una de etiquetas.
La impresora de tickets se usa con la instancia original del Nyx; se agrega otra instancia para la impresora de etiquetas. Esto es como tener dos Nyx totalmente independientes, uno para cada impresora. Cada instancia tiene el perfil adecuado para su impresora. En la tabla de redireccionamiento del perfil de la impresora de tickets (la instancia original), se anota “1” en la línea del recurso Impresora de etiquetas para que se use la instancia 01 al imprimir etiquetas.
Caso 2: Las tiendas tienen dos cajas, pero sólo una impresora de tickets, que comparten.
Se identifican todos los Nyx de las tiendas con el número de tienda y una letra por caja. Al Nyx de la caja que tiene la impresora se le pone la letra “A”. Se redirecciona el recurso Impresora anotando el sufijo “A”. El mismo perfil se puede usar en ambos Nyx porque es la misma configuración y el mismo redireccionamiento. Nótese que la caja “A” se redirecciona a sí misma, lo cual es perfectamente válido.
Caso 3: Las tiendas tienen dos cajas, cada una con su propia impresora de tickets, pero sólo una caja tiene impresora de etiquetas, que comparte con la otra caja.
Se identifican todos los Nyx de las tiendas con el número de tienda y una letra por caja. Se agrega una instancia al Nyx de la computadora que tiene la impresora de etiquetas. A esa instancia se le pone el número de la tienda y la letra “Q” (es arbitrario). Cada Nyx tiene el perfil adecuado para su impresora (la instancia adicional tiene el perfil adecuado para la impresora de etiquetas). En la tabla de redireccionamiento del perfil de la impresora de tickets, se anota “Q” en la línea del recurso Impresora de etiquetas, para que se use el Nyx con sufijo “Q” al imprimir etiquetas.
Caso 4: Las tiendas tienen dos cajas. Una caja tiene impresora de tickets y la otra caja tiene impresora de etiquetas. Cada caja comparte su impresora con la otra caja.
Se identifican todos los Nyx de las tiendas con el número de tienda y una letra por caja. A la caja con la impresora de tickets se le asigna la letra “A”, mientras que a la caja con la impresora de etiquetas se le asigna la “B”. Cada Nyx tiene el perfil adecuado para su impresora. En cada perfil se redirecciona el recurso que está en la otra máquina usando el sufijo: en el perfil de la caja “A” se pone “B” en el recurso Impresora de etiquetas; en el perfil de la caja “B” se pone “A” en el recurso Impresora.
Caso 5: En la oficina hay una impresora de etiquetas conectada a una máquina; varios usuarios imprimen etiquetas desde sus máquinas.
Al Nyx de la computadora donde está conectada la impresora se le pone el ID “ETQ” y se le asigna un perfil adecuado para la impresora. Se anota “ETQ” en el recurso Impresora de etiquetas de los Nyx de las máquinas de los usuarios que requieren mandar etiquetas. Nótese que las máquinas de los usuarios que requieren mandar etiquetas deben tener Nyx, aunque no tengan recursos directamente, ya que no se puede redireccionar a un Nyx sin tener uno propio. También nótese que en este ejemplo no se usó un sufijo, sino el ID completo “ETQ”, ya que se direcciona a una máquina específica; por lo mismo, los Nyx de los usuarios no necesitan ID. El perfil puede ser el mismo en todas las máquinas (la que tiene la impresora se redireccionará a sí misma).
Caso 6: La empresa tiene varios almacenes y en cada uno hay una impresora de etiquetas conectada a una máquina. La impresora se comparte para que otros usuarios del mismo almacén impriman etiquetas desde sus máquinas.
Se identifican todos los Nyx de cada almacén con las letras “AL”, el número de almacén y una letra por máquina. Por ejemplo, “AL3B” es la máquina “B” del almacén 3. A la máquina que tiene conectada la impresora se le asigna la letra “A” y se le asigna un perfil adecuado para la impresora. En la tabla de redireccionamiento, en el recurso Impresora de etiquetas, se anota “A”. Se puede usar el mismo perfil en todos los Nyx del almacén. Incluso, se puede usar el mismo perfil en todos los almacenes si la impresora de etiquetas es el mismo modelo y está conectada del mismo modo.
Caso 7: Las tiendas tienen dos cajas, pero sólo una caja tiene una impresora de tickets y lector de huella digital. Ambos recursos se comparten con la otra caja.
Este caso es igual al 2, la única diferencia es que también se comparte el lector de huellas digitales. En la tabla de redireccionamiento, a los dos recursos se les anota “A”. Sólo se necesita una instancia y un perfil porque el lector de huellas digitales no requiere ninguna configuración (se usan perfiles distintos cuando se tienen impresoras distintas).
Hasta ahora, se ha hablado del redireccionamiento que se especifica en el perfil. Ese redireccionamiento es adecuado cuando no cambia frecuentemente, pero hay casos en que se requiere que el usuario pueda cambiar el redireccionamiento fácilmente. Por ejemplo, si un usuario usa varias impresoras de etiquetas, debe poder elegir fácilmente qué impresora quiere usar. Eso se puede hacer con la opción Nyx destino del menú Archivo. Esa opción presenta una tabla de redireccionamiento igual a la del perfil, pero con la ventaja de estar accesible en cualquier momento, lo que la hace práctica para cambios frecuentes. El redireccionamiento que se establece ahí tiene prioridad sobre el del perfil, pero es de carácter temporal: se puede cambiar o borrar fácilmente y no subsiste después de cerrar la sesión.
Otros usos de la opción Nyx destino del menú Archivo son: poder registrar desde las oficinas las huellas digitales de usuarios que están en las tiendas; redireccionar la impresión de tickets cuando se descompone una impresora; etc.
Si se usará frecuentemente esa opción, conviene establecer un esquema de ID para que el usuario pueda redireccionar fácilmente. Por ejemplo, si el usuario cambiará entre impresoras de etiquetas, se recomienda que el esquema sea tal que le baste anotar el sufijo de una letra. Si las impresoras son de red, se puede tener una instancia de Nyx por cada una y sólo usar el índice para redireccionar.
Otro lugar donde se puede usar redireccionamiento es en Impresiones adicionales, que está la ventana de Tipos de movimiento. Impresiones adicionales sirve para especificar otros formatos y/o destinos que se deben usar cuando se imprime un documento (ej. un ticket o una factura). Si se usa Nyx, se puede especificar un redireccionamiento (aplica al recurso Impresora).
Uso sin Nyx de la Sesión
Normalmente, para usar Nyx es necesario que esté Nyx corriendo en la máquina del usuario, lo que se verifica al iniciar la sesión en Proscai. Pero hay casos en los que se requiere sólo usar otros Nyx, no el propio. Por lo tanto, es útil poder iniciar la sesión en Proscai con el sistema de Nyx activo aunque no haya un Nyx corriendo en la máquina del usuario. Eso es indispensable cuando la máquina del usuario no puede tener un Nyx por no ser Windows (por ejemplo un iPad o una PC con Linux).
Ese funcionamiento se activa cuando el campo Fórmula RD ID del usuario empieza con “@” (arroba). Es decir, al iniciar la sesión de Proscai se activa el sistema de Nyx sin verificar que esté corriendo Nyx en la máquina del usuario.
Para usar Nyx en esas circunstancias, se deberá usar el redireccionamiento a otro Nyx usando el comando Nyx destino del menú Artchivo (ver Redireccionamiento).
También se puede especificar el ID del Nyx después del “@” en el campo Fórmula RD ID del usuario, ya sea fijo o con fórmulas entre []. Por ejemplo:
@ALA1C
@[mid(DNUM,1,3)]
El redireccionamiento manual usando el comando Nyx destino del menú Artchivo tiene precedencia sobre el que se hubiese especificado en el campo Fórmula RD ID.
Por otro lado, alguna función de Proscai podría usar un Nyx en forma programática con esta modalidad. Por ejemplo, se puede mandar a imprimir un ticket mediante una solicitud (“Request”) proveniente de una aplicación móvil.
Cabe señalar que la arroba no se puede combinar con las opciones del campo Fórmula RD ID para restringir desde qué máquina podrá iniciar sesión el usuario, es decir, el usuario podrá iniciar sesión en cualquier máquina.
Básculas en Punto de Venta
Nyx es la mejor forma de usar básculas en punto de venta. Estas son algunas de las ventajas:
- Es muy eficiente porque la comunicación con la báscula es local.
- Detecta automáticamente la presencia de la báscula, sin importar en qué puerto se encuentre conectada.
- Puede esperar a que el peso sea estable cuando la báscula no tiene esa función.
- Se pueden usar distintos modelos de báscula porque el modelo se especifica en el perfil de Nyx.
- Si hay una falla, Proscai no se bloquea, porque Nyx tiene un tiempo límite para responder.
Para usar las básculas mediante Nyx, se debe tener el Parámetro Especial POS_BAS_SIP_IDS con valor 1, estar Nyx en modo automático y estar presente el Nyx de la sesión.
El documento Tabla de Básculas tiene las marcas y modelos de básculas que soporta Nyx, así como los códigos y la configuración de cada una. El código de la báscula se debe registrar en el perfil, en el campo Tipo de báscula (vacío es para básculas marca Torrey).
Las básculas se conectan mediante puerto serial, ya sea físico o emulado. Algunos modelos tienen conexión USB con emulador de puerto serial integrado.
Algunos modelos de báscula regresan el peso hasta que está estable. Para las básculas que no tienen esa función, Nyx hace lecturas consecutivas para asegurar una lectura estable, es decir, que la báscula no se esté moviendo. Por default, Nyx espera 200 milisegundos entre cada lectura. Ese valor se puede cambiar mediante el Parámetro Especial “POS_BAS_SAME_WAIT”. Un valor más alto mejora las posibilidades de un peso correcto, pero hace más lenta la lectura. No se recomienda un valor superior a 500.
Nyx Hub con Múltiples Servidores de Proscai
Cuando se usa Proscai en varios servidores (llamados servidores frontales) para una misma empresa, se debe usar únicamente un Nyx Hub. Éste se puede ubicar en cualquiera de los servidores (ver Instalación de Nyx Hub). El campo URL de Nyx Hub para peticiones de Proscai de la ventana de configuración de Nyx debe tener la dirección IP del servidor que contiene Nyx Hub. El firewall de ese servidor debe tener abierto el puerto TCP 57002 a la red local.
Uso de dos URL para Nyx Hub
En la ventana de configuración de Nyx hay dos campos para la dirección de Nyx Hub, llamados URL 1 de Nyx Hub y URL 2 de Nyx Hub. Estas son las direcciones que usa Nyx para conectarse. Normalmente, sólo se usa el primer campo para anotar la dirección pública del servidor que contiene a Nyx Hub (ver Configuración de Nyx). Suele ser suficiente con poner la dirección pública del servidor en el primer campo, porque lo más común es que Nyx se use desde afuera, en las tiendas.
Si también se usa Nyx en la red local donde está el servidor (ej. en la oficina), el DNS de esa red debe resolver la dirección pública a la IP local del servidor.
Si no se tiene el DNS de la red debidamente configurado, se puede usar el segundo campo, URL 2 de Nyx Hub, para anotar la IP del servidor. Cuando los dos campos tienen direcciones, Nyx intenta conectarse a la primera dirección; si no lo logra, intenta a la segunda.
La consecuencia de usar ambas direcciones es que la conexión de los Nyx de la red local tardará unos segundos más. Por ello, lo preferible es tener el DNS debidamente configurado.
El puerto TCP default para ambas direcciones es 57001. Se recomienda no cambiarlo. Si fuera necesario cambiar el puerto público porque otros servidores en la misma conexión usan Nyx Hub, lo conveniente es cambiarlo sólo hacia afuera, pero mapearlo al 57001 del servidor.
Dirección TCP Definible en Nyx
Cuando la impresora se conecta a la red, se usa el puerto de impresión TCP, como se explica en Perfiles. En el perfil se especifica la dirección IP o su URL. Como consecuencia, se tiene que registrar un perfil para cada impresora, porque cada una tiene su propia dirección. Eso es razonable cuando se tienen pocas impresoras de red, pero si se tienen varias, no es práctico tener un perfil para cada una. La solución es tener un perfil con un comodín en la dirección y especificar la dirección en cada Nyx.
Un asterisco en el campo Dirección del perfil funciona como comodín, que será reemplazado por un dato obtenido del registro del Nyx. Así, basta un perfil para todas las impresoras de red que sean de un mismo modelo.
Normalmente, se pone el asterisco en lugar del último octeto de la dirección IP, que suele ser el único que cambia en una red local, pero se puede usar el comodín para una mayor parte de la dirección.
El dato que sustituirá al asterisco es la parte inicial de la descripción del Nyx (ver Catálogo de Nyx), hasta donde se encuentre un asterisco. Por ejemplo, la siguiente ilustración presenta un Nyx cuya descripción empieza con “145*”, por lo que se tomaría “145” (sin el asterisco) para sustituir al asterisco del perfil.
Esta técnica también se puede usar cuando se tienen impresoras como recursos compartidos de red que tienen distintos nombres. El perfil puede tener “\\127.0.0.1\” y en cada Nyx se puede poner el nombre de la impresora.
Cuando se usa redireccionamiento, se toma el dato de la descripción del Nyx al que se redirecciona, como es de esperarse.
Uso de Certificado Propio para Autentificación de Nyx Hub
Cuando Nyx se conecta a Nyx Hub, verifica que realmente se trata de Nyx Hub, validando el certificado que trae integrado Nyx Hub. Si se prefiere, se puede usar un certificado propio para garantizar que se trata del Nyx Hub de la empresa.
Para usar un certificado propio se requiere:
- Obtener un certificado de una autoridad certificadora (CA) reconocida.
- El certificado debe identificar al servidor (validación de dominio) y debe coincidir con su URL.
- El certificado debe estar en formato “PFX” y debe incluir la llave privada.
El archivo del certificado se debe poner en la carpeta de Nyx Hub con el nombre “NyxHubCert.pfx”.
La contraseña de la llave privada del certificado se debe agregar al archivo “Config.xml”, que también se ubica en la carpeta de Nyx Hub. Se debe poner con la etiqueta “NyxExternalCertPW”, como en el siguiente ejemplo:
<?xml version="1.0" encoding="UTF-8"?>
<Config>
<NyxExternalCertPW>ABC123DEF456</NyxExternalCertPW>
</Config>
IMPORTANTE: Se debe restringir el acceso a la carpeta de Nyx Hub porque contiene el certificado y la contraseña de su llave privada.
Uso de Formatos de Impresión Alternos
En el perfil de Nyx se pueden especificar formatos de impresión alternos mediante el campo Sufijo de formatos. Si el campo contiene algo, se intentará usar un formato que empiece con el nombre del formato definido en el tipo de movimiento, pero agregándole el signo “+” y lo que esté en el campo. Por ejemplo, si en tipo de movimiento se tiene “QTICKET” y está “EXT” en Sufijo de formatos del perfil, se intentará usar el formato “QTICKET+EXT”.
Esto es semejante al uso de formatos alternos que se especifican en los almacenes, pero depende del perfil, no del almacén. Además, no está limitado a dos variantes, se pueden tener todos los que se necesiten.
Si el formato con sufijo no existe, se usará el normal, sin sufijo. Cabe aclarar que la especificación de formato alterno aplica a la impresión de cualquier tipo de movimiento que vaya vía Nyx y use el perfil, no se pueden aplicar distintos sufijos a distintos tipos de movimiento (pero no se aplicará en los casos que no exista el formato).
Si se usa redireccionamiento, se usa el sufijo del perfil del Nyx al que se redireccionó.
Todos los formatos deben ser desarrollados por Proscai.
Campo Especial del Perfil
El campo Especial del perfil está reservado para usos futuros.
Comentarios
Actualización:
24/10/2022 - Se agregó el tema avanzado Uso sin Nyx de la Sesión.
Inicie sesión para dejar un comentario.