2017-05-11 133 views
0

我有两个表:一个是表头,第二个是它的详细信息表。我想实现一个包含两个选择器的网格。用户将从第一个选择器中选择一个标题值,这将导致第二个选择器用相关的细节值进行更新。根据第一个选择器的选定值,我需要做什么才能让第二个更新为正确的细节值?更新选择器选择与另一个选择器的选定值

回答

2

您只需要将选择器设置为使用Current并指向标题中使用的Dac/Field就像您在图形中执行视图一样。

[PXSelector(typeof(Search<TableTwo.someOtherField, 
    Where<TableTwo.someRelatedField, Equal<Current<HeaderTable.relatedField>>>))] 

在您的网格字段的页面文件中,需要将AutoRefresh设置为true。

<px:PXSelector ID="edAField" runat="server" DataField="AField" AutoRefresh="True" /> 

如果在选择器中没有显示任何内容,请确保在尝试选择网格字段上的值之前提交标题值。

+0

对于网格内的PXSelector,如何设置AutoRefresh = true?我在布局编辑器中看不到该选项,并且当我尝试编辑ASPX时,出现错误“Validation(ASP.Net):Attribute'AutoRefresh不是元素'PXGridColumn'的有效属性。这是我的特定选择器的ASPX行: /> 这对我来说不是一个典型的PXSelector,因为它属于一个网格。 –

+0

它不在网格列上,它在PXSelector标签的RowTemplate中。通常,网格中的每个列在PXGrid中都有两个条目(一个在“RowTemplate”下,一个在“列”下)。例如,查看销售订单页面(SO301000),然后在“文档详细信息”选项卡中搜索“UOM”。它与自动刷新一个PXSelector = “真” – Brendan

+0

我能得到创建RowTemplate,所以现在我有: \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t 但是它仍然没有更新第二个选择器。第二个选择器是否与第一个选择器位于同一个DAC中,还是需要将它们包含在单独的DAC中? –