如何在批处理中检查Batch Promt操作选项?

时间:2018-04-03 09:31:49

标签: dialog batch-processing axapta x++ dynamics-ax-2012

在方法RunBaseBatch中的customClass extends main中,我需要检查在 Batch Promt 中选择的选项(如果是如果选择标记批处理,则确定取消)。

BatchDialog

server public static void main(Args _args = null)
{
    MyCustomClass_BATCH localMyCustomClass_BATCH;

    localMyCustomClass_BATCH= new MyCustomClass_BATCH ();

    if (localMyCustomClass_BATCH.prompt() )
    {
        localMyCustomClass_BATCH.run();
    }   

    // HERE I want to check the action selected, if it's OK or Cancel.
}

谢谢大家。

1 个答案:

答案 0 :(得分:4)

如果prompt返回true,则按下OK并且它不是批量的。 如果按下取消或选择批次,则返回false。

“确定/取消”不属于“批处理”窗格,而是属于runbase对话框。

您可以测试是否选择了批处理,但我没有看到一个很好的用例。

server public static void main(Args _args)
{
    MyCustomClass_BATCH myThing = new MyCustomClass_BATCH();    
    if (myThing.prompt())
        myThing.run(); // OK, not in batch
    else if (myThing.batchInfo().parmBatchExecute())
        info("We will go batch");
    else
        info("Action cancelled");
}

如果按下取消,myThing.batchInfo().parmBatchExecute() 返回false,即使在对话框中选中了“批处理”。检查RunBaseBatch.prompt的来源以了解原因。