使用相同形式的2个网格的多对多关系

时间:2012-06-06 15:24:54

标签: axapta x++ dynamics-ax-2012

我是AX的新手,所以这可能是一个简单的问题。

想象一下多对多关系中的两个表用户群组

  • 一个用户可以属于多个群组。
  • 一个群组可以属于许多用户。

因此,我在AX中创建了3个表来表示这种关系:

  • 用户
  • GroupUser (用于与用户和组表中的PK创建多对多关系的中间表)

现在假设我有一个包含2个网格的表单。

每个网格只有一列不可编辑。 一个网格包含Users列表(User表定义为DataSource),另一个网格包含Group列表(Group表定义为DataSource)。

一切都显示得很好,但我希望在选择群组时只显示其所属的用户,并且我可以选择用户。

如何做最后一部分?

1 个答案:

答案 0 :(得分:3)

显示属于某个群组的用户需要在exists join表格中使用GroupUser

我从你的描述中不清楚,这是一直是这种情况,还是只有在选择了一个团体时。

使用GroupUser设置JoinMode并使用ExistsJoin表格链接User创建新表单数据源。

如果仅在选择组时进行过滤,请禁用GroupUser数据源:

user_ds.query().dataSourceTable(tableNum(GroupUser)).enabled(<group is selected>);