Axapta 对弹出式窗体执行安全性(菜单项/代码)的最佳方法?

Axapta 对弹出式窗体执行安全性(菜单项/代码)的最佳方法?,axapta,dynamics-ax-2012,x++,Axapta,Dynamics Ax 2012,X++,我有一个自定义的弹出式表单,我想在您打开custable表单时自动打开它,我正在尝试找出提供安全性的最佳方法 我希望有一个安全特权/职责/角色,以便可以将其添加/删除到需要该功能的用户帐户,但没有单击的“菜单按钮” 从代码中打开此表单最“自然”的方式是什么 我找到了Global::hasMenuItemAccess()方法 我应该在代码中使用它,还是可以通过代码更改打开表单调用菜单项的方式?或者只会说“用户没有访问权限”您仍然应该为要打开的表单创建一个菜单项,并使用正常的方式安全地保护菜单项。然

我有一个自定义的弹出式表单,我想在您打开custable表单时自动打开它,我正在尝试找出提供安全性的最佳方法

我希望有一个安全特权/职责/角色,以便可以将其添加/删除到需要该功能的用户帐户,但没有单击的“菜单按钮”

从代码中打开此表单最“自然”的方式是什么

我找到了
Global::hasMenuItemAccess()
方法


我应该在代码中使用它,还是可以通过代码更改打开表单调用菜单项的方式?或者只会说“用户没有访问权限”

您仍然应该为要打开的表单创建一个菜单项,并使用正常的方式安全地保护菜单项。然后,您可以使用菜单项启动表单

Args Args=new Args();
; 
参数记录(VendTable::find(“XYZ”);

新建MenuFunction(MenuItemDisplayStr(VendTable),MenuItemType::Display).run(Args)

这当然不是最佳做法,但如果您想使用hasMenuItemAccess方法,可以创建一个虚拟菜单项并对其应用一定的安全性,然后在运行弹出表单之前检查该方法