如何在新公司中隐藏表单字段

时间:2012-02-08 15:20:49

标签: security dynamics-ax-2009 axapta

我有5家公司的AX 2009安装。

当前的安全配置包含公司特定的用户组,这些公司位于各自的域中(每个公司1个)。

我正在增加一家新公司,但对于这家新公司,我不希望在某些表格中看到各种群组。

如何在不影响现有公司的情况下实现这一目标?

我已尝试(在测试环境中)添加新的安全密钥,但安全密钥默认为“无访问权限”。当应用于表单上的组时,该组将变为隐藏状态;这对我的新公司来说没问题,但我需要通过其他所有用户组并重新设置完全控制权,这样现有公司的用户仍然可以看到该字段组。

2 个答案:

答案 0 :(得分:2)

AX中有一个名为curExt()的内置函数,它会告诉您当前公司的用户名。如果将窗体上组的自动声明属性设置为是,则可以在窗体上执行以下操作:

if(curExt() == "NewCompany")
{
     GroupNameThatShouldNotBeVisible.visible(false);
}

然后您无需担心为所有公司设置安全密钥。

答案 1 :(得分:1)

我不同意Michael Brown和Vince Perta的最佳实践和最佳实践,这里将使用安全密钥和域设置。但是,如果您不是一名跨越许多客户的顾问而且您是内部开发人员......使用curExt()并对您想要的公司和安全设置进行硬编码并不是什么大问题。

我确实在确定你如何处理安全组以及为什么这么困难时遇到了一些麻烦......但我会制作一份Live to Test,根据需要对所有安全进行安全更改公司,然后将它们导出到一个文件,然后导入到Live。你是否担心现场用户的中断或究竟是什么?