Tiempo aproximado de lectura 00:05:00 min
Duda
¿Como configurar el posicione en un campo virtual?
Entorno
Cross Segmentos - TOTVS Backoffice (Línea Protheus) - MI - Configurador (SIGACFG)- A partir de la versión 12.1.2310
Solución
Comportamiento relacionado con el uso de campos virtuales que utilizan una posición para presentar información:
Al utilizar un campo virtual con una posición para que se complete su contenido, la función de búsqueda permite habilitar este campo para que se utilice en búsquedas de navegación a través de la opción de búsqueda estándar, además de completar su contenido normalmente según la información enviada.
Al acceder a la configuración de la tabla y activar la opción Buscar y filtros, se mostrará la opción "Habilitar búsqueda con campo virtual"

Para que este campo se muestre en la búsqueda y no solo se rellene su contenido con el valor devuelto por la función Position, se deben tener en cuenta algunas consideraciones al crear esta función Position:
El número de claves enviadas en comparación con el índice utilizado en Position debe cumplir estas condiciones:
- Un campo que contiene toda la información del índice: Position('SA1',1,C5_CAMPO,'A1_NOME') - En este ejemplo, el campo C5_CAMPO contiene la sucursal, el código y la tienda del cliente que se mostrarán.
- La combinación de un campo de sucursal más otro campo que contiene la información restante: Position('SA1',1,xFilial('SA1') + C5_CAMPO,'A1_NOME') - En este ejemplo, el campo C5_CAMPO solo contiene el Código y la Tienda de este cliente.
- La clave de índice completa: Position('SA1',1,xFilial('SA1') + C5_CAMPO1 + C5_CAMPO2,'A1_NOME') - En este ejemplo, el campo C5_CAMPO1 contiene el Código de Cliente y C5_CAMPO2 contiene la Tienda, además de la Sucursal que se recupera a través de la función xFilial.
- Al utilizar la función xFilial, solo debe tener el primer parámetro.
- No utilice la función FwXFilial.
Si Posicione no cumple con estos requisitos, su funcionalidad para mostrar contenido en la columna indicada seguirá funcionando con normalidad, pero sin añadir dicha columna a la búsqueda. Para utilizar esta columna, el uso de Posicione debe adaptarse a las condiciones ya descritas.
0 Comentarios