Hacer campos de solo lectura en ventanas

Anuncio
Hacer campos de solo lectura en ventanas.
Resumen
Modulo
Nivel
Requerimientos
Funciones universales, Sistema B1 Validaciones.
Avanzado.
2.9.0.0 o superior.
Escenario.
El cliente desea que los campos de Teléfono Móvil y Proyecto, en la pestaña General de los Datos Maestros
de Socios de Negocios sean de solo lectura.
<Imagen>
Configuración necesaria.
Para hacer el campo Teléfono Móvil sea de solo lectura:
1. Una función universal de tipo Macro que cambie el foco y deshabilite el campo de Teléfono Móvil.
2. Un sistema de B1 Validación que determine cuando el usuario trata de poner el foco en el campo de
Teléfono Móvil.
Para hacer que el campo de selección del proyecto sea de solo lectura.
1. Una función universal de tipo Macro que cambie el foco a otro campo y deshabilite la casilla de
selección del proyecto.
2. Una función universal de tipo Macro que bloquee el evento.
3. Un sistema B1 Validación que valide cuando el usuario trate de hacer clic en la casilla de selección del
proyecto.
4. Un sistema de B1 Validación cuando el usuario trate de seleccionar algo en la casilla de selección de
proyecto.
Paso 1. Haciendo el campo de teléfono móvil de solo lectura.
El primer paso es hacer que el campo del Teléfono Móvil sea de solo lectura. Para hacer esto debemos crear
una función universal de tipo Macro, que mueva el foco a otro campo y deshabilite el campo de Teléfono
Móvil. Posteriormente utilizaremos el Sistema B1 Validación para disparar nuestra función en el momento
indicado.
Para crear funciones universales ingresar a Gestión > Add-Ons > B1 Usability Package > Configuración de
Módulos > Funciones universales: Configuración.
Iniciamos cambiándonos a modo Crear y seleccionando la Función universal de tipo Macro e ingresamos el
siguiente código:
Focus($[$43.0.0]);
Disable($[$51.0.0]);
Las siguientes pantallas nos muestran la función universal creada, con algunos comentarios informativos:
Para hacerlo más fácil de describir, nombraremos esta función universal ”Teléfono móvil deshabilitado”.
Cuando trabaje con funciones universales similar a la anterior, necesita configurar el Sistema B1 Validación
para determinar el momento específico en el cual se va a utilizar. Mejor dicho cuando el usuario trate de
poner el foco en el campo haciéndole clic en la ventana de Datos Maestros de Socio de Negocios.
Puede encontrar la ventana de Sistema B1 Validación en Gestión > Add-Ons > B1 Usability Package > Módulos
Configuración > Sistema B1 Validación.
En esta ventana, necesita llenar la información correcta de cuando ejecutar la función universal. Como
estamos tratando de hacer de solo lectura el campo en la ventana de Datos Maestro de Socio de Negocios,
necesitamos escribir en Tipo de formulario 132. Puede encontrar el Uid (132) habilitando en Vista la
Información del Sistema.
El campo que haremos de solo lectura es el 51, número que llenaremos en el campo Artículo. Queremos que
esta validación tome lugar en todos los estatus del formulario, por lo cual seleccionaremos Todo en la casilla
de selección de Modo de formulario. Queremos ejecutar esto cuando el campo, en este caso el Teléfono
Móvil, reciba el clic del usuario, así que seleccionamos en BeforeAction la opción de False. El resto de las
opciones de configuración las dejamos de la misma manera, salvo en el campo de selección de la función
universal que se ejecutará cuando la condición se cumpla. Esto se captura en la sección llamada Condición en
donde seleccionaremos la función universal creada con anterioridad. La siguiente pantalla muestra la ventana
con la configuración finalizada.
Paso 2. Haciendo el campo de selección de proyecto de tipo solo lectura.
El segundo paso es hacer el campo de selección de proyecto de solo lectura. Esto requiere un poco más de
esfuerzo, sin embargo, el esfuerzo extra requerido es limitado. Para realizar esto, necesitamos crear dos
funciones universales de tipo Macro y configurar un Sistema B1 Validación para ejecutarlas en el momento
indicado. Como tenemos dos Funciones universales, requerimos dos Sistema B1 Validación.
La primera función universal quedaría de la siguiente manera:
Focus($[$43.0.0]);
Disable($[$222.0.0]);
La imagen que se muestra a continuación muestra la Función Universal terminada con algunos comentarios
informativos.
A esta función universal la llamaremos: ”Deshabilitar proyecto”.
La siguiente Función Universal que se necesita es la siguiente:
Block();
Nuevamente, esta función universal será de tipo Macro. La imagen a continuación muestra cómo se vería
creada incluyendo algunos comentarios de la funcionalidad.
La Función Universal anterior la guardaremos con el nombre Deshabilitar Combobox proyecto.
Una vez que hemos configurados nuestras dos Funciones Universales, configuraremos el Sistema B1
Validación para ejecutarlas en un momento específico. Como comentamos anteriormente, tenemos dos
funciones universales a ejecutar. El formulario sigue siendo 134 (Datos Maestros de Socio de Negocio). El
campo de selección de proyecto es el Uid 222, valor que ingresaremos en el campo Artículo. Seleccionamos
el valor Todo en la casilla Modo de formulario. El evento que validará será el Clic. BeforeAction será True
(verdadero) ya que queremos que se ejecute antes de que acepte el foco en la casilla de selección. El resto de
las opciones las dejaremos por defecto, excepto en la cual elegimos la función universal llamada Deshabilitar
Proyecto la cual se ejecutará. La siguiente pantalla muestra la Sistema B1 Validación con la configuración.
Para ejecutar la función universal que hemos creado para que el campo sea de solo lectura, requerimos una
Sistema B1 Validación adicional. El formulario y el Artículo son los mismos, también ejecutaremos en todos
los Modos del formulario así que seleccionamos el valor Todos. Ponemos el valor true en la casilla
BeforeAction, ya que queremos que se ejecute antes de que puedan seleccionar algo en la casilla. Las demás
opciones se dejan por defecto excepto donde seleccionamos la función universal llamada Deshabilitar
Proyecto2. La siguiente imagen muestra cómo quedaría la configuración mencionada.
Uso de la funcionalidad.
Probar esta funcionalidad es muy sencillo. Solo ingrese a la ventana de Datos Maestros de Socio de Negocios
y trate se ingresar a los campos que acaba de configurar como de solo lectura. Hay un par de maneras
diferentes de ingresar al campo, para estar seguros que funciona como debe de ser, ambos métodos deben
de ser probados.
1. Haciendo clic en el campo.
2. Presionando la tecla TAB hasta llegar al campo.
Estos dos métodos son los básicos para posicionarse en un campo, pero existen otros métodos aun mas
complicados. Diferentes tipos de campos funcionan de manera diferente y deberán ser probados de manera
diferente. El campo de selección de proyecto puede ser seleccionado en los modos Actualizar y Ok, lo que
desbloquea el campo. Después de esto si presiona TAB y selecciona el campo sería posible. Sin embargo si
trata de seleccionar usando el Mouse, lo posicionará en la casilla de Tel.1, y bloqueará el campo de proyecto.
Utilizar el teclado para seleccionar un valor no será posible, ya que el campo está bloqueado antes de ser
seleccionado.
Si estas pruebas son exitosas, sus respectivos campos ahora son de solo lectura.
Descargar