Lección 2.4 – Comandos predeterminados y definidos por el usuario

Objetivo:Conocer las posibilidades aportadas por los comandos de teclado del punto de venta


Comandos predeterminados

Seguramente ya observó que existe una tabla de comandos de teclado que realizan las funciones disponibles en el punto de venta sin necesidad de utilizar el mouse.

También es probable que haya notado que al pulsar sobre el botón “Funciones” del punto de venta haya observado la tabla completa de funciones y sus comandos asociados.


Teclas de función (Hot Keys)

|Tecla|Acción|Comando| |Alt+I|Imprimir Ticket|+04| |Alt+P|Leer peso desde la bascula|| |Alt+E|Quitar Producto|-| |Alt+D|Descuentos|| |Alt+S|Saldo de cliente|| |Shift+F2|Calculadora|| |Shift+F2|Cambiar precio|| |Alt+N|Nuevo ticket|| |F1|Ayuda|| |F2|Cambiar Ticket|| |F3|Liberar Ticket|+02| |F6|Venta de Contado|**| |F7|Venta a Crédito|+09| |F8|Facturar|+08| |F9|Cancelaciones|+10| |F11|Cotizar|+05| |F12|Ver existencias|| |Alt+0|Abrir Cajón|| |Alt+1|Recepción de Cobros|| |Alt+2|Pagos|| |Alt+3|Ingresos|| |Alt+4|Retiros|| |Alt+5|Arqueo|| |Alt+6|Corte de Caja|| |Alt+7|Configuración|| |Alt+f4|Cerrar la aplicación|| |Enter|Aceptar||

Comandos de teclado de MaxiComercio

La barra de comandos permite realizar las principales funciones de la caja punto de venta tecleando sencillos códigos que se ilustran en la siguiente tabla:

|Comando|Acción| |**|Cobrar venta| |++|Incrementar en una unidad la cantidad del último producto marcado o el que esté seleccionado| |+{Digito}|Incrementar en el dígito la cantidad del último producto marcado. {Digito} es un número entre el 1 y el 9.| |+00 {Cliente}|Cambiar el cliente. {Cliente} es el código del cliente a seleccionar.| |+01 {Vendedor}|Cambiar el vendedor. {Vendedor} es el código del vendedor.| |+02|Liberar ticket| |+03|Seleccionar ticket| |+04|Imprimir ticket| |+05|Ticket a cotización| |+06|Cotización a ticket| |+07|Leer peso desde báscula| |+08|Facturar ticket| |+09|Ticket a crédito| |+10|Cancelar ticket actual| |+22|Catálogo de Requisiciones| |+11|Cancelaciones y devoluciones| |+12 --- +98|Configurables por el usuario| |+99{Producto}|Información de productos. {Producto} es el código del producto.| |-|Disminuir en una unidad el último producto marcado| |-{Num}|Disminuir en {Num} el último producto marcado| |--|Quitar el último producto marcado| |{Alfa}*{Num}|Alfa=Código de producto Num=Cantidad| |*{Num}|Cambiar la cantidad del último producto marcado por {Num}|

Ejemplo de uso de comandos predeterminados

Supongamos que está implantando el sistema en una tienda que maneja una especie de membresía para sus clientes, de tal suerte que antes de pagar les solicita una credencial con código de barras para que el sistema los identifique.

¿Cómo podemos implementar esta funcionalidad?

Si observa el comando +00 permite introducir el código del cliente para que se seleccione en la venta actual.

Así que lo único que necesitamos es imprimir el código de barras de las credenciales con la secuencia 00 y el código de cada cliente. Si el código de un cliente es 1543, el código impreso en la credencial deberá ser: 001543.

Lo único que resta por hacer es dar indicaciones al cajero para que pulse la tecla + antes de leer la credencial con el lector y de esta manera la secuencia +001543 seguida de ENTER (que incluye la lectura con el scanner de código de barras) sería suficiente para cubrir el requerimiento.


Comandos definidos por el usuario

MaxiComercio permite que defina sus propias secuencias de comandos (o elementos seleccionables desde el botón “Funciones”) para que implemente características a la medida de los requerimientos del usuario final.

Para incluir un nuevo comando deberá modificar el programa pos_usercommands.js que se encuentra en la raíz del repositorio. Ejemplo de configuración de nuevo comando: function main() { //MainForm.AddUserCommand("Comando", "Accion", "Descripcion", "function", Negritas t/f,Color fuente); //Comandos definibles por el usuario: +12 ... +98 MainForm.AddUserCommand("+12", "Accion", "Descripcion", "pos_usercmds.mifuncion", false,0xC000); } //EJEMPLO: Carga un sub programa y ejecuta un método function mifuncion(){ if (!loadScript("us_brw_ejemplo")) { eBasic.eMsgbox("Error al cargar el script"); return 0; } Application.Eval("us_brw_ejemplo.ShowBrowser()"); }

Ejemplo de comando definido por el usuario

Suponga que el usuario final desea agregar productos desde el punto de venta directamente, al mismo tiempo no quiere el formulario completo con todas las propiedades del producto sino algo simplificado que sea fácil y rápido de llenar. A esta nueva funcionalidad le llamaremos “Alta rápida”. Para este ejercicio se requieren los archivos de programa Javascript y xml que previamente hemos preparado. Descargar aquí: http://www.induxsoft.net/download/gexecom/tools/maxi2010/captura_rapida_productos.zip Archivo xml que define la interfaz del formulario Archivo Javascript que controla el comportamiento del formulario. Estos archivos se han generado con el diseñador de formularios del Backoffice de MaxiComercio. Se trata con todo el detalle necesario la utilización de estas herramientas en el Curso de desarrollador de aplicaciones. Instrucciones 1. Coloque los archivos uform_CRProducto.xml y uform_CRProducto.js en la carpeta XMLForms del repositorio. Copie también el archivo us_form_CRProducto.js en la raíz del repositorio. 2. Abra el archivo pos_usercmds.js y realice las siguientes modificaciones: function main() { //agregué un comando al menú funciones: MainForm.AddUserCommand("+12", "Accion", "Descripción", "pos_usercmds.mifuncion", false,0xC000); } //EJEMPLO: Carga un sub programa y ejecuta un método //Indique el archivo javascript que contiene la funcionalidad del nuevo formulario: function mifuncion() { if (!loadScript("us_form_CRProducto")) { eBasic.eMsgbox("Error al cargar el script"); return 0; } //Ejecutar método para agregar Nuevo producto Application.Eval("us_form_CRProducto.Dlg_AddNew()"); } 3. Pruebe el resultado. Abra el punto de venta y ejecute el nuevo comando desde el menú funciones o escriba +12 Enter. Como podrá observar ahora puede dar de alta productos con un formulario simplificado y con un comando de teclado definido por usted.

Resumen

Usted aprendió: * Conoce más acerca de los programas del repositorio y sus funciones * La importancia y potencia de los comandos predeterminados y definidos por el usuario * Cómo agregar un comando definido por el usuario