【发布时间】:2022-12-09 13:06:41
【问题描述】:
有些情况下屏幕不需要显示工具按钮,我想对没有管理角色的用户隐藏它。
我尝试通读 ASPX 文件,但没有找到任何线索。
【问题讨论】:
-
请阐明您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。
-
在 Acumatica ERP 的背景下,问题非常明确 [不是机器人]
有些情况下屏幕不需要显示工具按钮,我想对没有管理角色的用户隐藏它。
我尝试通读 ASPX 文件,但没有找到任何线索。
【问题讨论】:
您正在寻找的功能不是基本产品的一部分,无法定制。要正确实施它,您应该使用 Acumatica 提出功能请求。
话虽如此,从技术上讲,可以通过以下路径直接在服务器上编辑页面:
ControlsPageTitle.ascx.cs
您可以编辑页面加载事件以添加工具菜单的条件。例如,我已将工具菜单设置为仅对管理员角色可见:
if (!Page.IsCallback)
{
Page.ClientScript.RegisterClientScriptBlock(GetType(), "toolbarNum", "var __toolbarID="" + this.tlbTools.ClientID + "";", true);
// >> Add Tools menu condition
if (!PXContext.PXIdentity.User.IsInRole(PXAccess.GetAdministratorRoles().First()))
this.tlbTools.Visible = false;
// << Add Tools menu condition
}
从技术上讲,可以通过在以下路径编辑服务器上的排除文件列表来将此更改打包到自定义项目中:
/files.list
并删除排除文件的行:
ControlsPageTitle.ascx.cs
在此之后,您可以将此修改后的文件添加到自定义项目Files 部分。
请注意,不推荐这样做,因为它会替换基础产品文件而不是自定义它。这意味着每次在下一个 Acumatica 版本中更改时,您都必须在您的自定义中更新(维护)该文件。
如果您不需要自定义来部署更改,您可以跳过该部分并仅手动编辑服务器上的 PageTitle 文件。请注意,Acumatica 更新可能会恢复该更改。
【讨论】: