我正在 PowerApps 画布中创建一个表单,以允许项目经理在 Microsoft Lists 表中添加/编辑数据。该表包含不同项目的列表,每个项目都有 1 个项目经理和其他信息,如屏幕截图所示:
该表格应允许项目经理从下拉列表中选择他们的姓名(A:“项目负责人”)。根据此选择,表单应填充第二个下拉列表(B:“项目名称”),仅显示与该项目经理关联的项目名称。
我可以使用
Choices([@'Project database'].'Project Lead')
正确填充 (A) 的项目,但无法获取下拉列表 (B) 的公式来根据所选项目经理(这是一个具有关联的 DisplayName、电子邮件的“人员”字段)过滤项目名称,...信息)。
这是我当前填充下拉列表 (B) 的 Items 的公式:
Filter([@'Project database'].'Project name', [@'Project database'].'Project Lead'.DisplayName = DataCardValue1.Selected.DisplayName)
错误描述说
" 'DisplayName' is not recognized as a valid property and there is an incompatible type for comparison between Error and Text."
我相信
.DisplayName
对于 DataCardValue1 部分可以正确找到,但对于“项目负责人”列则不然。我也尝试过用 .Value
而不是 .DisplayName
,但没有运气。
我做错了什么?
您需要更新项目名称下拉列表的项目属性中的公式,如下所示:
Filter('Project Database',
'Project Lead'.Email = DataCardValue1.Selected.Email
)
您的代码生成错误的原因是因为在
Filter
查询的第一个参数中,您将单列作为列表传递以进行搜索(即项目名称),而在第二个参数中,您将其与您的 ' “项目负责人”列是 SharePoint 列表的一部分,而不是“项目名称”列本身,因此您只需将第一个参数替换为 SharePoint 列表名称。为了查看,请将第二个下拉列表的 Value 属性设置为“项目名称”。另外,作为更好的比较方式,我将 DisplayName
替换为 Email
。