Axapta 如何仅显示表的子集
我在用正确的数据填充数据表时遇到问题 我在表单中使用了一个数据表。它被称为userConfigProfiles。它有两个FK列groupId(这连接到UserGroupInfo)和corpProfileId(这连接到我创建的表)。userConfigProfiles中的数据是从另一个表单填充的,并且当前已正确填充 问题是,我需要在SalesTable表单上创建一个下拉列表,根据当前用户所在的用户组显示userConfigProfiles中的行子集 我试图通过在SalesTable表单中的userConfigProfiles表中添加以下代码来实现这一点:Axapta 如何仅显示表的子集,axapta,x++,dynamics-ax-2012,Axapta,X++,Dynamics Ax 2012,我在用正确的数据填充数据表时遇到问题 我在表单中使用了一个数据表。它被称为userConfigProfiles。它有两个FK列groupId(这连接到UserGroupInfo)和corpProfileId(这连接到我创建的表)。userConfigProfiles中的数据是从另一个表单填充的,并且当前已正确填充 问题是,我需要在SalesTable表单上创建一个下拉列表,根据当前用户所在的用户组显示userConfigProfiles中的行子集 我试图通过在SalesTable表单中的user
public void init()
{
userConfigProfiles.data(userConfigProfiles::find());
super();
}
然后我将这个find方法添加到表本身:
static public userConfigProfiles find()
{
userConfigProfiles userProfile;
UserGroupList userGroupList;
str 8 u = curUserId();
select *
from userProfile
order by userProfile.bdcProfileId
join userGroupList
where userProfile.groupId == userGroupList.groupId
&& userGroupList.userId == u;
return userProfile;
}
但是,即使调用了我的find方法并返回了正确的数据,它似乎也不会影响表单下拉列表中的数据
我的下拉列表是一个StringEdit字段,其中数据源为userConfigProfiles,数据字段为corpProfileId
我非常确定有几种方法可以解决我的问题,我对其中任何一种都持开放态度,即使这意味着删除我所有的代码并以完全不同的方式使用下拉框。到目前为止,关于查找方法的最佳教程是Vanya编写的: 下载他的XPO教程,并为您的表单使用其中一个选项。你的代码看起来有点像黑客的工作
如果您试图在表上显示记录的子集,您应该修改query(),但是如果您试图在查找中更改显示的值,那么我会查看他的博客文章。到目前为止,有关查找方法的最佳教程是Vanya编写的: 下载他的XPO教程,并为您的表单使用其中一个选项。你的代码看起来有点像黑客的工作
如果您试图在表上显示记录的子集,则应修改查询(),但如果您试图在查找中更改显示的值,则我会查看他的博客文章。使用表
UserConfigProfiles
和表UserGroupList
的现有联接(属性joinMode
)创建一个查询,使用适当的关系,然后在字段UserId
上添加一个范围,其值为(currentUserId())
该值是由类提供的动态值
最后,使用您的查询创建一个使用类的查询。使用表用户配置文件创建一个查询,表用户组列表中存在一个联接(属性joinMode
),使用适当的关系,然后在字段用户ID
上添加一个范围,其值为(currentUserId())
该值是由类提供的动态值
最后,使用您的查询使用类创建一个查找。我正在尝试显示记录的子集,但我不知道如何执行。您说“我需要在SalesTable窗体上创建一个显示行子集的下拉列表”,这称为查找。查找的一个例子是,如果您转到SalesTable,然后在销售行中,点击项目单位旁边的下拉箭头,这样您就可以看到每个单位、英尺、英寸等。这是您试图创建的吗?是的,除了下拉列表中的项目外,下拉列表与登录的当前用户相关,而与销售行本身无关。我试图显示记录的子集,但不知道如何显示。您说“我需要在SalesTable窗体上创建一个下拉列表,显示行的子集”,这称为查找。查找的一个例子是,如果您转到SalesTable,然后在销售行中,点击项目单位旁边的下拉箭头,这样您就可以看到每个单位、英尺、英寸等。这是您试图创建的吗?是的,除此之外,下拉列表中的项目与当前登录的用户相关,而与销售线本身无关。感谢您的帮助!我能够利用你给我的东西,找出如何解决我的问题!谢谢你的帮助!我能够利用你给我的东西,找出如何解决我的问题!