我正在从事Dynamics AX7表单开发。我必须在按钮的'Clicked'方法中编写代码,但'Clicked'方法中已经有一些'Sys Layer'代码。我必须对它施加一些条件。但我不想做'over-layering',我必须用扩展来做,但是如果我在onClicked事件中编写代码,问题是,我的代码在sys层代码之前或之后运行,但是我需要在该系统层代码上应用一些条件。在AX7的扩展中写入事件处理程序
我的问题是,我们可以用扩展事件处理程序来实现这个逻辑吗?我已经完成了over-layering,但是我需要使用扩展来完成。那么可以用扩展来做到这一点吗?
代码在下面添加。
void clicked()
{
super();
// My logic will be written here
if(result == true) //This is my code, based on above logic I applied this check
{
// start of sys layer code
remainSalesPhysical.realValue(0);
remainInventPhysical.realValue(0);
if (formCtrl)
{
formCtrl.cancelLine();
}
element.closeOk();
// end of sys layer code
} //this is my code
else //this is my code
{ //this is my code
error("Some error message"); //this is my code
} //this is my code
}
感谢@Alex, 是的,你说得对,我们之前和之后的事件,但专门针对上述问题,这些事件也没有办法。所以我和代表一起做了。但仍然需要一些覆盖层委托,但我们需要坚持下去,直到MS介绍一些新的方法。 –
没有看到更多的代码,我不明白为什么你不能在没有覆盖的情况下做到这一点。 'super()'做了一些事情,所以为了让你的代码在你需要的地方得到,你只需要通过按钮实际上做的事情来获得'super()'的'post'。 –
请再次关注我的代码。我已经提到过每件事情。 super()调用后已经有一些sys层的代码。我想要'if'条件内的代码。我怎样才能做到这一点 ? –