如何使用 Power Apps 表单作为查找列?

问题描述 投票:0回答:2

我有一个包含大量列的 SharePoint 列表(例如“List-A”),其中一些是查找列。

这些仅用于构造选择列,其中选择下拉列表中的项目是不同列表(“List-B”)中的列的项目。

我已经使用SharePoint上的功能将List-A与Power Apps Form集成。这将创建一个随时可用的 Power Apps 表单。

对于查找选择列,我已添加 List-B 作为数据源,并使用正确列中的项目作为链接到查找列的选择中的项目。这将按预期正确填充下拉菜单。

现在,当我发布此表单并从共享点填写它时(它应该在列表视图中单击“新建”后弹出),我可以填写整个表单并毫无问题地提交。但是,所有查找列都保持空白,就好像表单返回空值而不是所选值一样。

我设置了两个数据源:

连接到 SharePoint 列表的数据卡的更新属性等于包含组合框(组合框称为 DataCardValue43)的数据卡的 Selected。

组合框的 items 属性等于 List-B 的正确列。

作为替代解决方案,我尝试制作一个只有一行文本的不同列。对于本列,我再次创建了一个组合框,将 items 属性设置为 List-B 中的列。目的是将选定的值作为字符串返回。尝试如下:

其中,combobox1 再次设法在下拉框中提供正确的选项,但仅返回 Null。

为了进一步研究它,我制作了一个电源应用程序流程,它将创建新的共享点列表对象作为输入。在这里我看到这些值确实为 Null

“Return”是我制作的文本栏,另一个是查找栏。我确实注意到 Lookup 列不称为 Value,而是 id。但我不知道如何处理这些信息。

我真的只想在我的电源应用程序表单中有一列,让您进行选择,并且选择是来自不同列表中的列的值。我该怎么办?为什么我已经做的事情不起作用?

谢谢你。

sharepoint sharepoint-online powerapps power-automate
2个回答
0
投票

请按照以下步骤解决问题。

1:在 SharePoint 列表中添加查找列。

2:使用 SharePoint 中的自定义表单选项在 Power Apps 中打开该列表。

3: Lookup 字段的 Item 属性默认如下:

Choices([@'CustomisingSharePointList'].LookupColumnListName)

4:无需使用任何自定义下拉列表或组合框更改/删除查找字段。这就是您通过添加自定义组合框并替换原始查找下拉列表而犯错误的地方。如果您想更改数据源、应用过滤器或对数据进行排序,您可以对同一原始查找列执行所有这些操作。 例如,我已对现有数据应用了过滤和排序功能:

Sort(Filter(Choices([@'CustomisingSharePointList'].'LookupColumnListName'), Value in Filter(LookupColumnListDataSoure,Progress.Value = "Open").ID),Id)

5:当您发布列表时,它会正常工作。

注:

CustomisingSharePointList: 我们在其中添加了查找列的列表。

LookupColumnListName: 查找列实际所属的列表。

LookupColumnListDataSoure: 您需要在 Power Apps 中添加原始列表作为数据源才能使用上述过滤器。此步骤是可选的,仅当您像我在步骤 4 中那样应用过滤器时才适用


0
投票

要在查找列中保存数据,您需要存储 2 个值:Id 和 Value。

在表单中,您应该使用主列表的值填充组合框,并更改列名称,如下所示:

items 属性:RenameColumns(ShowColumns([master_list];"ID";"Title");"ID";"Id";"Title";"Value")

一旦完成,您就可以毫无问题地提交表单,并且组合框中选择的项目将保存到您的查找列中。

© www.soinside.com 2019 - 2024. All rights reserved.