Filtrar valores de dimensiones no globales en OnLookUp

Cursos de Navision 100% online Foros Foro Dynamics NAV y Business Central Filtrar valores de dimensiones no globales en OnLookUp

Este debate contiene 4 respuestas, tiene 3 mensajes y lo actualizó  Yoselin Barragan hace 1 año, 10 meses.

Viendo 5 publicaciones - del 1 al 5 (de un total de 5)
  • Autor
    Publicaciones
  • #3447

    Yoselin Barragan
    Participante

    Hola Foro!

    Tengo un inconveniente y es lo siguiente:

    Imaginen que para una empresa tengo en la tabla de configuracion de contabilidad configurada las dimensiones de la siguiente manera:

    Global Dimension 1 :CECO
    Global Dimension 2 :PAIS
    Cod. Dim Acceso directo 7: DPTO
    ( todas marcadas como obligatorias, a traves de un campo 50000 creado en la tabla que define que sea obligatoria o no )

    Si se fijan hay un salto, es decir que en su momento no han sido creadas en secuecia evitando dejar algunas en blanco.
    Vale, el requerimiento es el siguiente:

    Me han pedido que en todas las pages de transacciones (diario, linea de ventas, compras etc) se muestren aquellas columnas de dimensiones que sean obligatorias, eso ya lo he hecho, el problema está en que cuando se muestran aquellas que no son globales al hacer el Lookup para elegir los valores que correspondan en este ejemplo a DPTO no he sido capaz de hacerlo y es porque en la propìedad TableRelation el campo en la page funciona bien lo siguiente para las globales:
    «Dimension Value».Code WHERE (Global Dimension No.=CONST(7),Dimension Value Type=CONST(Standard),Blocked=CONST(No))
    pero claro, porque en la tabla 349-Dimension Value se guarda el Global Dimension No. para las globales y no para el resto, si le quito ese filtro aparecen toooodos los dimension values que existen, y lo que necesito es poder filtrar aquellos que solo correspondan a ese Dimension Code.
    Hay una manera de hacerlo?

    #3448

    Laura Nicolàs
    Jefe de claves

    Hola Yoselin,

    El estándard de Navision ya muestra las 8 dimensiones de acceso directo en las pantallas de entrada de datos. (diarios y lineas de documentos).

    Fíjate en la Page 47 Sales Invoice Subform:

    • La dimensión 1 y 2 se muestra a través de los campos «Shortcut Dimension 1 Code» y «Shortcut Dimension 2 Code»
    • Para las dimensiones 3 a 8 se usa una variable de tipo Code, creada como global en la página: ShortcutDimCode
    1. ShortcutDimCode es un Array de 8 posiciones
    2. Hay 6 Textbox con SourceExpr=ShortcutDimCode[3] (i [4], [5], etc.)
    3. En el OnValidate del Textbox, se llama a la función ValidateShortcutDimCode(3,ShortcutDimCode[3]);
    4. (versión 2009) En el OnLookup del Textbox, se llama a la función LookupShortcutDimCode(3,ShortcutDimCode[3]);
    5. (versión 2017) No se usa el lookup, sino este table relation:
      <"Dimension Value".Code WHERE (Global Dimension No.=CONST(4),Dimension Value Type=CONST(Standard),Blocked=CONST(No))
    6. Se usa la propiedad CaptionClass para que cada campo tenga el Caption que le corresponda, según la dimensión.

    Dices:

    pero claro, porque en la tabla 349-Dimension Value se guarda el Global Dimension No. para las globales y no para el resto

    Creo que en tu caso puede ser un problema de datos.
    El Global Dimension No. lo tendría que guardar siempre. Sino no funcionaria el código que usa el estándar…

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #3452

    Cristina Nicolàs
    Jefe de claves

    Creo que en tu caso puede ser un problema de datos.
    El Global Dimension No. lo tendría que guardar siempre. Sino no funcionaria el código que usa el estándar…

    En algunas versiones de NAV hay algún bug que hace que no se informe ese campo «Global Dimension No.». Yo me lo he encontrado en algún cliente (aunque no soy capaz de recordar en qué versiones, pero si tuviera que apostar diria que era NAV2016), y tuve que hacer algún proceso para que se informaran correctamente las que ya existían, y poner algún código para que se informara correctamente este campo cuando se creaban nuevos valores.

    Un saludo,
    Cristina Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #3454

    Laura Nicolàs
    Jefe de claves

    Hola!

    Si es un bug del programa, seguro que en un Cumulative Update posterior ha quedado arreglado.

    Yoselin, baja el último Cumulative y comparalo con el código que tienes ahora. Si tenes que poner código para que se informe… si utilizas el propio código de Microsft será más fácil de cara a futuros mantenimientos/upgrades.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #3456

    Yoselin Barragan
    Participante

    Hola Laura/Cristina.

    Efectivamente estoy en la versión 2016 y eso ha de ser el problema.

    Muchas gracias. Miraré lo del Cumulative.
    Saludos!

Viendo 5 publicaciones - del 1 al 5 (de un total de 5)

Debes estar registrado para responder a este debate.

Members Currently Active: 0
No users are currently active
Keymaster | Moderator | Participant | Spectator | Blocked
Additional Forum Statistics
Threads: 921, Posts: 2.969, Members: 923
Welcome to our newest member, Estela Alfaraz
Most users ever online was 15 on 5 April, 2019 9:31 am