如何使用active()方法x ++

问题描述 投票:1回答:1

有人可以教我如何使用active()方法吗?我想在用户每次更改其实际行时都使用此代码,但是它只运行一次并应用于我的所有行。也许还有另一种方法?

[ExtensionOf(formStr(ProdParmReportFinished))]
final class ProdParmReportFinishedWG_Extension
{
public void init()
{

    next init();

    ProdTable prodTable;


    if(ProdTable.InventRefId != ProdTable.ProdId)
    {
        select  RecId from prodTable where
             prodTable.InventRefType != InventRefType::None && ProdTable.InventRefId !=ProdTable.ProdId;

        Info("ok");

    }

    else if(ProdTable.InventRefType == InventRefType::None)
    {

        select firstOnly RecId from prodTable
        where prodTable.InventRefType != InventRefType::None
           && prodTable.InventRefId == prodTable.ProdId
           && prodTable.ProdStatus != ProdStatus::ReportedFinished;


        warning ("@SRM:SRM00049");
        Ok.enabled(false);
    }
}
}
axapta microsoft-dynamics x++ dynamics-365-operations
1个回答
0
投票

“我想在用户每次更改其实际行时都使用此代码,但是它只运行一次并应用于我的所有行。

使用selectionChanged()方法代替active()。

事实上,在大多数情况下,您认为应该使用active(),您可能正在寻找selectionChanged()(或用于处理程序的OnSelectionChanged事件)。

© www.soinside.com 2019 - 2024. All rights reserved.