【问题标题】:How come PXUIField attribute disables text edit boxes on a processing page in 2019 R1?PXUIField 属性如何在 2019 R1 中禁用处理页面上的文本编辑框?
【发布时间】:2019-10-23 05:43:58
【问题描述】:

我正在尝试设置一个处理页面,该页面将使用在 PXFilteredProcessing 页面上输入的新数据更新 SOSshipment 文档行。声明 PXString(虚拟字段)时,如果我添加 PXUIfield 属性,该字段将变为只读。

这是显示实际问题的 DAC 声明。我使用的页面是一个简单的 PXFilteredProcessing 页面,其中包含在 Visual Studio 中制作的完全自定义页面。

#region StockRow

public abstract class stockRow : IBqlField { }
[PXString()]         
[PXUIField(Enabled = true)]
public virtual String StockRow { get; set; }

#endregion

#region StockFlag

public abstract class stockFlag : IBqlField { }
[PXString]        
public virtual String StockFlag { get; set; }

#endregion

该页面的字段定义如下:

<px:PXTextEdit ID="edStockRow" runat="server" 
DataField="StockRow" Enabled ="true" >
</px:PXTextEdit>
<px:PXTextEdit ID="edStockFlag" runat="server" 
DataField="StockFlag" Enabled ="true">
</px:PXTextEdit>
<px:PXGridColumn DataField="StockRow" Width="200px" >
</px:PXGridColumn>
<px:PXGridColumn DataField="StockFlag" Width="200px">
</px:PXGridColumn>

PXUIField 真的应该使该字段变为只读还是我没有得到什么?

PS:我知道我甚至可以重新启用 RowSelected 上的字段,我主要是在寻找关于为什么会发生这种情况的解释。

【问题讨论】:

  • 因为答案提供了默认情况下处理图的功能。所有字段也应该有一个 PXUIField。您可以启用所选行中提到的字段,以在处理之前更新某些值。这也没有错。

标签: acumatica


【解决方案1】:

如果我添加 PXUIfield 属性,该字段将变为只读

您确定这是使字段只读的操作吗?

通常所有处理屏幕详细信息字段都被禁用,除了选定列。我相信这是使用PXProcessing 类型数据视图引入的行为。违背这种行为可能不会产生预期的结果。

如果屏幕需要可编辑的详细信息字段(选定列除外),我建议不要创建处理屏幕。改用PXSelect 数据视图将为可编辑字段提供正确的行为。

【讨论】:

  • 嗯,这是使该字段不可编辑的触发器。如果我只声明 PXString,PXProcessing 屏幕仍然允许我编辑 StockFlag 字段。添加 PXUIField 属性会禁用此行为。它易于测试和重现。这最终可能是一个错误,但这是我注意到的。
  • 没有 PXUIField 属性,真的是 StockFlag 字段吗?网格列中是否有字段标签?它是否正确加载和保存值?正如 Brendan 提到的,对于 UI 使用“所有字段也应该有一个 PXUIField”。没有它,网格单元格可以编辑,但也不能绑定到目标字段。
  • 是的,它确实加载了,是的,您可以编辑它,到目前为止,该字段的处理工作正常。当然它不会显示格式化标签,因为我们没有声明任何标签,但它确实显示字段名称。网格中的字段截图:fieldname 运行时的值截图:value 我明白是必须的,我只是质疑系统在后台到底在做什么
  • 处理视图可能只检查具有 PXUIField 属性的字段。预计 UI 上的字段不会缺少该元素,因此结果或多或少是未定义的行为。我仍然建议不要省略该属性。
猜你喜欢
  • 1970-01-01
  • 2012-01-09
  • 1970-01-01
  • 2015-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多