Ax 从一个form关闭另外一个form,AX全局变量

Posted szsunny

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ax 从一个form关闭另外一个form,AX全局变量相关的知识,希望对你有一定的参考价值。

如果这个两个form存在调用关系,我们当然可以在调用的时候把对象传过来,然后再关闭之。

但是当2个form没有被调用的关系,我们可以利用infolog.globalCache()将FORM对象保存起来,再在需要的时候获取到并对他进行需要的操作。

如, 有Form1,Form2,假设我们需要再form2的button1的click事件关闭Form1;

先在Form1的init事件里加代码将Form1对象放在GlobalCache里。

infolog.globalCache().set("Form1", "Form1_Element",element);//owner:Form1 key:Form1_Element value:lement

在From1的Close事件里面加代码将Form1对象从GlobalCache删除。

infolog.GlobalCache().remove("Form1","Form1_Element");

 

在Form2的Button1的Click事件加代码,先获取Form1对象,并将Form关闭。

formrun  fr1;
;
super();

fr1 = infolog.GlobalCache().get("Form1","Form1_Element"); 
fr1.close();

  

延伸,我们也可以将其他我们想保存的全局变量放到GlobalCache里面,然后在系统任何地方都可以获取到使用之。  

以上是关于Ax 从一个form关闭另外一个form,AX全局变量的主要内容,如果未能解决你的问题,请参考以下文章

AX7 Form继承接口

[转]Sequence of methods in form and table in AX

AX 2012 取得Form或Query的 所有DataSources

Export to Microsoft Excel On a Dynamics AX Form With Multiple Data Sources

获取AX的窗口所有控件的lableID及内容

AX_HelpGenerator