是否可以为2个formDataSourceStr创建1个事件处理程序? X ++

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

现在,我有2个Initvalue事件处理程序。两者均为1形式。但是我想初始化来自不同表的字段的值。因此,此刻我仅将代码复制到第二个事件。这里没有CoC选项,因为我在这里拨打电话时遇到错误。

[FormDataSourceEventHandler(formDataSourceStr(PurchCreateOrder, PurchTable), FormDataSourceEventType::initvalue)]
public static void PurchTable_Oninitvalue(FormDataSource sender, FormDataSourceEventArgs e)

我需要在此处为​​LogisticsPostalAddress初始化值。

axapta microsoft-dynamics x++
1个回答
0
投票

为了避免代码重复,请在事件处理程序类中创建一个静态方法,然后将代码放在此处

public static void initLogisticsPostalAddress(...parameters...)
{
    put your logic here   
}

然后在两个事件中都调用此方法:

[FormDataSourceEventHandler(formDataSourceStr(PurchCreateOrder, PurchTable), FormDataSourceEventType::initvalue)]
public static void PurchTable_Oninitvalue(FormDataSource sender, FormDataSourceEventArgs e)
{
    PurchCreateOrderEH::initLogisticsPostalAddress(...parameters...);
}
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.