Dominando las Vistas en Business Central: Creación y Personalización

En este post, explicaré cómo funcionan las vistas en Business Central y cómo personalizarlas para optimizar la navegación en la página de líneas de ventas.

Las vistas en Business Central son una herramienta clave para mejorar la experiencia del usuario, permitiendo filtrar y organizar la información de manera eficiente. En este post, explicaré cómo funcionan las vistas, cómo crearlas y cómo utilizarlas en la extensión de la página “Sales Lines” para gestionar pedidos de manera más efectiva.

¡Vamos manos a la obra! 😗


🏗️ ¿Qué son las Vistas en Business Central?

Las vistas en Business Central permiten definir filtros y ordenaciones preestablecidas para mostrar registros de una forma específica sin que el usuario tenga que aplicar manualmente los filtros cada vez.

📌 Ventajas de las vistas:

  • Permiten personalizar la presentación de los datos.
  • Ahorran tiempo evitando la configuración manual de filtros.
  • Mejoran la usabilidad y la organización de la información.

En este ejemplo práctico, agregaré dos vistas en la página de líneas de ventas para gestionar pedidos de manera más eficiente.


🔍 Creando Vistas en la Página “Sales Lines”

Para agregar vistas en una PageExtension, se utiliza la propiedad views dentro de la página extendida.

views
{
    addfirst
    {
        view("Orders")
        {
            Caption = 'Orders', Comment = 'ESP="Pedidos"';
            OrderBy = ascending("Sell-to Customer No.", "Document No.");
            Filters = where("Document Type" = const("Order"));
            SharedLayout = false;

            layout
            {
                movefirst(Control1; "Sell-to Customer No.")

                modify("Document Type")
                {
                    Visible = false;
                }
            }
        }
        view("OrdersLastMonthOfTheYear")
        {
            Caption = 'Orders Last Month Of The Year', Comment = 'ESP="Pedidos último mes del año"';
            OrderBy = ascending("Sell-to Customer No.", "Document No.");
            Filters = where("Document Type" = const("Order"), "Posting Date" = filter('<CY-CM>..<CY>'));
            SharedLayout = false;

            layout
            {
                movefirst(Control1; "Sell-to Customer No.")

                modify("Document Type")
                {
                    Visible = false;
                }
            }
        }
    }
}
  1. Vista “Orders” 📄
    • Muestra solo los registros donde el Document Type es “Order”.
    • Ordena los resultados por el número de cliente y el número de documento.
    • Oculta el campo “Document Type” para hacer la vista más clara.
  2. Vista “Orders Last Month Of The Year” 📆
    • Filtra los pedidos del último mes del año.
    • También ordena por cliente y número de documento.
    • Oculta el campo “Document Type”.

📌 ¿Por qué es útil?
Estas vistas permiten acceder rápidamente a los pedidos abiertos o a los pedidos recientes sin necesidad de aplicar filtros manualmente cada vez que se accede a la página.


🎛 Controlando la Visibilidad de las Vistas

En algunas ocasiones, es útil controlar cuándo se muestran ciertas vistas para evitar confusión o sobrecarga de opciones.

Esto se puede hacer utilizando un trigger OnOpenPage() y una variable booleana que determine si se debe mostrar la vista o no.

trigger OnOpenPage()
begin
    ChangeVisibleViewOrders();
end;

local procedure ChangeVisibleViewOrders()
begin
    VisibleViewEmailConfirmation := false;
    if Rec.GetFilter("Document Type") = format(Rec."Document Type"::"Order") then
        VisibleViewEmailConfirmation := true;
end;

var
    VisibleViewEmailConfirmation: Boolean;
  • OnOpenPage() llama a la función ChangeVisibleViewOrders() al abrir la página.
  • ChangeVisibleViewOrders() verifica si la página está filtrada por Document Type = Order.
  • Si es así, activa la variable VisibleViewEmailConfirmation, lo que permite mostrar la vista correspondiente.

🔹 Ejemplo Práctico:
Si un usuario solo trabaja con pedidos, esta lógica hace que las vistas de pedidos solo aparezcan cuando se está filtrando por documentos de tipo “Order”, evitando opciones irrelevantes.


🚀 Beneficios y Aplicaciones Prácticas

Mejor experiencia de usuario: Permite acceder rápidamente a la información relevante sin necesidad de filtrar manualmente.
Mayor productividad: Se reduce el tiempo empleado en buscar registros.
Estructura más clara de la información: Se pueden ocultar columnas irrelevantes en cada vista para mejorar la legibilidad.
Personalización adaptable: Se pueden agregar más vistas según las necesidades del negocio.

En escenarios reales, esta funcionalidad es clave para mejorar la eficiencia en departamentos de ventas, logística y contabilidad dentro de Business Central.


🎯 Conclusión

Las vistas en Business Central son una herramienta poderosa para mejorar la navegación y optimizar la visualización de datos. En este post, se ha aprendido a:
✔️ Crear vistas personalizadas con filtros y ordenaciones específicas.
✔️ Ocultar campos innecesarios en cada vista.
✔️ Controlar la visibilidad de las vistas en función de los datos mostrados.

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

¡Hasta el próximo post!

Share your love

Leave a Reply

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