You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Acumatica 2020R1自定义界面新操作定义分组与隐藏失效排查

问题修复方案

你遇到的两个问题是Acumatica 2020R1版本操作Fluent配置的高频踩坑点,按以下步骤调整即可:

  • 先清理页面级自定义覆盖:打开自定义项目的屏幕编辑器,进入对应页面的「操作」配置标签,删除所有针对这4个操作的手动修改配置,页面级配置优先级高于Graph代码配置,会直接覆盖你写的逻辑。
  • 调整配置顺序并补全文件夹注册:2020R1要求归属文件夹的操作必须先显式注册文件夹,且带文件夹归属的操作要放在无归属操作之前配置,否则归组逻辑会失效。
  • 检查操作特性配置:确认ActionSetEmbryoIDGen操作的定义上没有标注[PXUIField(Visible = true)]这类显式设置可见性的特性,特性优先级高于Fluent API配置,存在的话需要删除Visible属性设置。
  • 强制刷新前端缓存:发布完成后按Ctrl+Shift+R强制刷新浏览器,Acumatica前端会默认缓存操作配置,很多时候失效是缓存未更新导致。

修正后配置代码

public override void Configure(PXScreenConfiguration graph)
{
    var context = graph.GetScreenConfigurationContext<NGBiopsyEntry, NGBiopsy>();
    context.AddScreenConfigurationFor(screenConfig =>
        screenConfig
        .WithActions(actions =>
        {
            // 2020R1必需先显式注册文件夹,否则操作归属逻辑失效
            actions.WithFolder(FolderType.ActionsFolder, folderConfig => 
                folderConfig.WithDisplayName("操作"));
            
            // 带文件夹归属的操作统一放在前面
            actions.Add(a=>a.ActionRefreshWorkTickets,
                        config=>config
                            .InFolder(FolderType.ActionsFolder));

            actions.Add(a=>a.ActionStartPGTMTesting,
                config=>config
                    .InFolder(FolderType.ActionsFolder));

            actions.Add(a=>a.ActionSetEmbryoIDGen,
                config=>config
                    .InFolder(FolderType.ActionsFolder)
                    .IsHiddenAlways());
            
            // 无归属的操作放在最后
            actions.Add(a=>a.ActionSubmitBiopsy);
        }));
}

内容的提问来源于stack exchange,提问作者Kyle Vanderstoep

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 18:15:03