Cómo abrir páginas en Business Central mediante AL

Aprende a abrir páginas en Business Central utilizando el lenguaje AL con funciones de apertura normal y modal.

Business Central permite abrir páginas mediante código AL de una forma muy sencilla y eficaz. Antes, abrir la página de ficha de alguna tabla podía ser un proceso tedioso, pero ahora el estándar ha simplificado enormemente esta tarea para que sea mucho más fácil y eficiente. Esto es especialmente útil cuando se necesita mostrar información relevante de un registro específico en un momento determinado dentro de la aplicación.

¡Vamos manos a la obra! 😌

🔍 Abriendo una página de forma normal

procedure OpenRun()
begin
    SalesHeader.SetRange("Document Type", SalesHeader."Document Type"::Order);
    SalesHeader.FindFirst();

    Clear(PageManagement);
    PageManagement.PageRun(SalesHeader);
end;

En esta función, se filtra la tabla Sales Header para seleccionar solo los documentos de tipo “Order”. Posteriormente, con FindFirst(), se obtiene el primer registro que coincida con el filtro. Luego, se limpia la variable PageManagement para asegurarse de que esté vacía antes de su uso. Finalmente, la página se abre utilizando el método PageRun, lo que permite mostrar la información del pedido seleccionado.

🏰 Abriendo una página en modo modal

procedure OpenRunModal()
begin
    SalesHeader.SetRange("Document Type", SalesHeader."Document Type"::Order);
    SalesHeader.FindFirst();

    Clear(PageManagement);
    PageManagement.PageRunModal(SalesHeader);
end;

Esta función sigue el mismo procedimiento que la anterior, pero utiliza PageRunModal en lugar de PageRun. La diferencia clave es que el modo modal bloquea la interacción con otras páginas hasta que el usuario cierre la página modal. Esto es muy útil cuando se requiere una acción específica antes de continuar con otras tareas.

📋 Obteniendo el ID de la página

procedure GetPageID()
begin
    SalesHeader.SetRange("Document Type", SalesHeader."Document Type"::Order);
    SalesHeader.FindFirst();

    Clear(PageManagement);
    Message(format(PageManagement.GetPageID(SalesHeader)));
end;

En esta función se obtiene el ID de la página asociada al registro filtrado en la tabla Sales Header. La función GetPageID devuelve el identificador de la página correspondiente, que se muestra en un mensaje mediante la función Message(format(...)). Esto puede ser útil para depuración o cuando se necesita referenciar la página en otros procesos.

🌟 Beneficios y aplicaciones prácticas

El uso de estas funciones proporciona varios beneficios, tales como:

  • Automatización de la apertura de registros relevantes en la aplicación.
  • Mejora de la experiencia de usuario al guiarlo directamente a la información requerida sin complicaciones innecesarias.
  • Reducción del esfuerzo manual al abrir páginas de tipo ficha gracias a las herramientas del estándar.
  • Uso eficiente de los recursos del sistema mediante la apertura modal cuando se requiere interacción controlada.
  • Facilidad para integrar estas funcionalidades en flujos de trabajo más complejos dentro de Business Central.

🔥 Conclusión

Trabajar con la apertura de páginas en Business Central mediante AL es una herramienta muy poderosa para mejorar la navegación y la eficiencia de los procesos empresariales. Saber cuándo usar una apertura normal o modal puede marcar la diferencia en la usabilidad del sistema.

Si quieres ver el código completo, está en GitHub.

¡Hasta la próxima! 👋

Share your love

Leave a Reply

Your email address will not be published. Required fields are marked *