【问题标题】:Acumatica and Dashboard Parameters and Selector and PKIDAcumatica 和仪表板参数以及选择器和 PKID
【发布时间】:2020-03-04 15:57:06
【问题描述】:

我们正在尝试使用具有选择器选项的参数来弹出用户列表。选中后,我们希望 PKID 填充参数字段。然后,我们将在所有小部件过滤器中使用该参数字段。

我找不到任何能够产生所需最终结果的架构对象/字段。

我们尝试了 CROpportunity 的 OwnerID,但无济于事。

我们正在尝试实现一个选择器控件以在选择器弹出窗口中显示 PKID 和用户名,并且在选择值时,PKID 应该作为输入字段并显示结果。为此,我在 Users DAC 中创建了一个未绑定字段并为其编写了选择器。

[PXUIField(DisplayName="Associate")]
[PXSelector(typeof(Search<Users.pKID>), new Type[] { typeof(Users.pKID), typeof(Users.displayName) },
            SubstituteKey = typeof(Users.pKID), DescriptionField = typeof(Users.displayName))]
public virtual Guid? UsrKWInput { get; set; }
public abstract class usrKWInput : PX.Data.BQL.BqlGuid.Field<usrKWInput> { }

使用上面的代码,我在选择器弹出窗口中得到了我需要的东西,但是在选择值后出现错误:

将参数值从字符串转换为 Guid 失败

【问题讨论】:

    标签: acumatica


    【解决方案1】:

    问题似乎是准确地识别您想要在选择器中显示的内容。

    我们试图让一个参数有一个选择器选项来弹出 用户列表

    我将其理解为 Users 页面 (SM201010) 中的 UserList 数据视图。

    该数据视图中的选择器字段是Users.Username

        public abstract class username : PX.Data.BQL.BqlString.Field<username> { }
        protected string _username;
    
        [PXDBString(64, IsKey = true, IsUnicode = true, InputMask = "")]
        [PXDefault]
        [PXUIField(DisplayName = "Login", Visibility = PXUIVisibility.SelectorVisible)]
        [PXSelector(typeof(Search<Users.username, Where<Users.isHidden, Equal<False>>>))]
        [PXFieldDescription]
        public virtual String Username
        {
            get { return _username; }
            set { _username = value != null ? value.Trim() : null; }
        }
    

    编辑: 要在数据库中保留 PKID 并在选择器中显示 PKID 和 DisplayName,请尝试以下操作:

    [PXDBGuid]
    [PXUIField(DisplayName = "User", Visibility = PXUIVisibility.SelectorVisible)]
    [PXSelector(typeof(Search<Users.pKID, Where<Users.isHidden, Equal<False>>>), DescriptionField = typeof(Users.displayName))]
    [PXFieldDescription]
    public virtual Guid? UsrUser { get; set; }
    public abstract class usrUser : PX.Data.BQL.BqlGuid.Field<usrUser> { }
    

    屏幕上的结果:

    【讨论】:

    • 您好,感谢您的输入。我已经更新了我的问题,请您检查一下
    猜你喜欢
    • 2020-11-11
    • 2011-02-08
    • 1970-01-01
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 2020-12-23
    • 2022-10-01
    • 1970-01-01
    相关资源
    最近更新 更多