Business Central: Crear reporte de tipo ProcessingOnly


En este artículo mostraré cómo crear procesos dentro de Microsoft Dynamics 365 Business Central para poder realizar tareas de cualquier índole. Normalmente mente este tipo de procedimientos nos ayudar a realizar tareas masivas de algún tipo.

Versión: 2021 Wave 1 (KID: 5004715)

En este artículo modificaremos datos de Movimientos de clientes. Inicialmente la grilla se ve asi:

Agregamos el reporte con el siguiente código:

report 50100 ReporteBlog
{
    Caption = 'Reporte de prueba';
    UsageCategory = Tasks;
    ProcessingOnly = true;
    Permissions = tabledata 21 = rimd;

    dataset
    {
        dataitem(MovimientoClientes; "Cust. Ledger Entry")
        {
            //Por cada elemento del dataitem
            trigger OnAfterGetRecord()
            begin
                //Modificamos el campo en cuestion
                MovimientoClientes."IC Partner Code" := 'PRUEBA';
                //Explicitamente llamamos al metodo modificar
                MovimientoClientes.Modify();
            end;

            trigger OnPostDataItem()
            begin 
                //Preservamos los datos en la base de datos. Solo al final del reporte
                Commit();

                Message('Se procesó el cambio correctamente');
            end;
        }
    }
}

Ejecutamos el reporte:

Completamos algún filtro (en este caso, los movimientos pendientes del cliente):

Luego de completarse el código del reporte veremos el mensaje que colocamos:

Al ejecutar el reporte se procesará el mismo, no va mostrar ningún reporte de manera visual, solo va procesar lo que dijimos que procese.

¡Espero resulte útil!


Ver también