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

问题描述 投票:1回答:1

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

想象两个表以多对多关系表的用户和组:

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

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

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

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

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

一切都显示正常,但我希望有一种行为,当选择一个组时,它只显示它所属的用户,而我可以选择用户。

最后一部分怎么做?

axapta x++ dynamics-ax-2012
1个回答
3
投票

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

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

使用GroupUser创建一个新的表单数据源,使用JoinMode设置ExistsJoin并链接到User表。

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

user_ds.query().dataSourceTable(tableNum(GroupUser)).enabled(<group is selected>);
© www.soinside.com 2019 - 2024. All rights reserved.