【问题标题】:Feature.xml changes are not showing in Enable/Disable custom feature UI?Feature.xml 更改未显示在启用/禁用自定义功能 UI 中?
【发布时间】:2020-04-14 16:14:55
【问题描述】:

添加自定义功能复选框未显示在自定义功能 UI 中,我的发现

var featureAttributes = cache.GetAttributes(null, field).OfType<FeatureAttribute>();

给出 0 个 featureAttributes,这就是为什么当我按照文档中的建议添加带有适当标签的 Features.xml 文件时它不可见,我还缺少什么吗?

【问题讨论】:

    标签: acumatica acumatica-kb


    【解决方案1】:

    您所需要的只是 FeatureSet 表的表扩展。这是一个例子:

    public sealed class FeaturesSetExtension : PXCacheExtension<PX.Objects.CS.FeaturesSet>
    {
        #region UsrMyNewFeature
        public abstract class usrMyNewFeature : PX.Data.BQL.BqlBool.Field<usrMyNewFeature> { }
    
        [Feature(false, DisplayName = "MY NEW FEATURE")]
        public bool? UsrMyNewFeature { get; set; }
        #endregion
    }
    

    我最终得到以下结果:

    您将创建一个 Feature.xml 文件,然后限制与新功能切换相关的页面。

    如果您需要访问开关(在添加到 features.xml 之前可能不会注册):

    PXAccess.FeatureInstalled<FeaturesSetExtension.usrMyNewFeature>()
    

    【讨论】:

    • 添加属性 "Feature(false, DisplayName = "MY NEW FEATURE")]" 后,我可以看到复选框,但文档从未建议添加此选项,为什么? feature.xml 不起作用,我选中/取消选中复选框,但权限不适用,这里有什么问题吗?你是什​​么意思为什么限制页面?我已经排除了我的 feature.xml 文件并且复选框仍然显示,为什么?我如何添加父子复选框关系,例如父然后在该多个复选框下?
    • 能否提供详细文档以在 FeatureSet 中添加自定义功能?基本上我的意思是,为什么访问权限不起作用我检查/取消选中复选框,我在哪里做错了?
    • 当父功能选中/取消选中时如何选中/取消选中子(功能)复选框?
    • 您需要在您的子 FeatureAttribute 中包含父级。例如:[Feature(typeof(FeaturesSet.myParentFeature), DisplayName = "My Child Feature")]
    【解决方案2】:
    1. Feature.XML 应该在我们项目的根目录中。
    2. 属性 [Feature(false, DisplayName = "MY NEW FEATURE")],应始终为 在那里。
    3. 如果想在根目录下查看“我的新功能”,请查看 下面的代码。

      区域 UsrMyNewFeature

      公共抽象类 usrMyNewModuleFeature : PX.Data.BQL.BqlBool.Field { }

      [Feature(false, DisplayName = "我的模块功能")] 公共布尔? UsrMyNewModuleFeature { 获取;放; }

      结束区域

      区域 UsrMyNewFeature

      公共抽象类 usrMyNewFeature : PX.Data.BQL.BqlBool.Field { }

      [Feature(false, typeof(usrMyNewModuleFeature), DisplayName = "我的新功能")] 公共布尔? UsrMyNewFeature { 获取;放; }

      结束区域

    【讨论】:

    • 嗨,布伦登,在我的开发环境中一切正常,但是我遇到了问题,当相同的代码提供给其他开发环境时,复选框未显示在启用/禁用功能屏幕中,我是否在做任何设置他的数据库出错了?
    • 嗨,我在复选框之间有父/子关系,当我选中/取消选中复选框然后子启用/禁用时,但复选框没有选中/取消选中,我应该如何检查/取消选中父项?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 2014-05-02
    • 1970-01-01
    • 2018-07-27
    • 1970-01-01
    相关资源
    最近更新 更多