Dynamic Acumatica-网格中的动态组合框/下拉列表,基于另一列的值

Dynamic Acumatica-网格中的动态组合框/下拉列表,基于另一列的值,dynamic,combobox,acumatica,Dynamic,Combobox,Acumatica,我有一个网格,需要在一列的下拉/组合框中根据另一个网格列的值进行选择(如果需要的话,也可以在组合框中)。网格中的每一行都需要这样做 在这种情况下,我希望在第一列中选择“PO”或“SO”,在第二列中,选择列表取决于在第一列中选择的值 如果有帮助,可以选择SO订单类型列表(可以来自SOOrderType表)或PO单据类型列表(可能来自POOrderType.ListAttribute(),或者根据需要硬编码) 我已尝试使用PXStringListAttribute: PXStringListAttr

我有一个网格,需要在一列的下拉/组合框中根据另一个网格列的值进行选择(如果需要的话,也可以在组合框中)。网格中的每一行都需要这样做

在这种情况下,我希望在第一列中选择“PO”或“SO”,在第二列中,选择列表取决于在第一列中选择的值

如果有帮助,可以选择SO订单类型列表(可以来自SOOrderType表)或PO单据类型列表(可能来自POOrderType.ListAttribute(),或者根据需要硬编码)

我已尝试使用PXStringListAttribute:

PXStringListAttribute.SetList<MyDAC.moduleType>(cache, null, valValue.ToArray(), valDesc.ToArray());
pxstringlisttribute.SetList(缓存,null,valvalvalue.ToArray(),valDesc.ToArray()); 及

pxstringlisttribute.SetList(缓存、行、valValue.ToArray()、valDesc.ToArray());
我在FieldUpdated、RowSelected、FieldSelecting甚至在属性中尝试过这些,但行为是一致的。将“row”值作为第二个参数传递时,不会显示选项。传递null时,所有行的选项都相同

我需要每一行的选项是动态的,并且基于当前/同一行的列中的值


如果您有任何见解或帮助,我们将不胜感激。

使用pxstringlisttribute.SetList,就像您在第二个代码段中通过为第二个参数传入行所做的那样

PXStringListAttribute.SetList<MyDAC.moduleType>(cache, row, valValue.ToArray(), valDesc.ToArray());
pxstringlisttribute.SetList(缓存、行、valValue.ToArray()、valDesc.ToArray());
然后将MatrixMode=“true”属性添加到ASPX文件中的网格中

<px:PXGrid ID="grid" runat="server" Height="400px" Width="100%" Style="z-index: 100" AllowPaging="True" AllowSearch="True" AdjustPageSize="Auto" DataSourceID="ds" SkinID="Primary" MatrixMode="true">


将MatrixMode设置为true将使其变为true,从而使每行的列内容可能不同。在这种情况下,它将允许列为网格中的每一行显示不同的下拉值。作为补充说明,您应该只在需要时将MatrixMode设置为true,因为这可能会导致性能开销。

谢谢。我已经切换到使用自定义选择器属性,但在下次需要时请记住这一点。
<px:PXGrid ID="grid" runat="server" Height="400px" Width="100%" Style="z-index: 100" AllowPaging="True" AllowSearch="True" AdjustPageSize="Auto" DataSourceID="ds" SkinID="Primary" MatrixMode="true">