This post is machine-translated. The original post in german language can be found here.

SysOperation-Framework: Force Batch Processing

If you want to make sure that a function implemented via the SysOperation-framework is always executed via batch processing, you can set the SysOperationExecutionMode to ScheduledBatch (e.g. via the MenuItem of the controller - see here).

If this is a function that requires a user dialog, however, the problem is that the "Batch" tab is displayed by default and, for example, the "Batch" check box is not activated there.

Of course you can activate this checkbox by including a call to parmBatchExecute() in the UIBuilder:

public void build()
{
    super();

    this.controller().batchInfo().parmBatchExecute(this.controller().parmExecutionMode() == SysOperationExecutionMode::ScheduledBatch);
}

However, one still has the problem that the user could deactivate the checkbox in the firm conviction that this would not send the function to batch processing.

If you want to prevent this, you can overwrite the method postRun() of the UIBuilder as follows:

public void postRun()
{
    super();
    
    this.controller().batchInfo().fieldBatchExecuteAllowEdit(false);
}

This looks as follows in the dialog. Now the user can see that the function is executed in batch.

Screenshot Dialog

Alternatively you could deactivate the whole register Batch in the postRun(), but then you cannot specify a batch processing group anymore:

public void postRun()
{
    SysOperationDialog sysOperationDialog;
    DialogTabPage dialogTabPage;
    FormRun formRun;

    super();

    sysOperationDialog = this.dialog() as SysOperationDialog;

    formRun = sysOperationDialog.formRun();
    dialogTabPage = sysOperationDialog.batchDialogTabPage();

    formRun.control(formRun.controlId(dialogTabPage.name())).enabled(false);
}

It would look like this:

Screenshot Dialog

These post applies to following version:
Dynamics AX 2012

Add comment
 
 

 

 
 
 
Posts of the actual month
April 2024
MoTuWeThFrSaSu
1234567
891011121314
15161718192021
22232425262728
2930 
 
© 2006-2024 Heinz Schweda | Imprint | Contact | German version | Mobile version
In order to provide you with better service, this site uses cookies. By continuing to browse the site, you are agreeing to our use of cookies.