您的位置:首页 > 移动开发

使用Power Apps实现SharePoint Online列表的下拉菜单的级联选择

2020-07-20 04:05 597 查看

在SharePoint列表中添加数据的时候,下拉菜单的级联选择一直是一个非常实用的功能,尤其是有很多数据的情况,级联选择可以根据上一层的选择,自动过滤下一层的选择,方便用户查找和选择准确的信息。一个最常用的情景是选择供应商的地区和国家,例如有三个列表,一个是供应商所在的大洲,一个是国家,一个是供应商。当用户选择州的时候,会自动列出属于这个州的国家。避免用户迷失在大量的数据中。

这里展示一下如何在SharePoint Online的列表中,使用Power Apps实现这样的级联操作。

首先创建三个列表如下:

大洲列表,只有一个Title字段,保存了大洲的名字:

国家列表,有两个字段,一个是Title,保存国家的名字,一个是大洲,保存国家对应的大洲:

供应商列表,其中大洲是lookup到大洲列表的查阅项,国家是lookup到国家列表的查阅项,国家:大洲是国家列表中的大洲关联字段:

在供应商列表中,打开Power Apps下拉菜单下面的自定义表单选项:

在编辑器中,供应商列表中的每一个字段都对应一个DataCard,其中国家:大洲是lookup的额外关联字段,也显示出来了,这个我们稍后会用到:

首先选择“国家_DataCard1”,

在右侧的属性面板中选择“Advanced",然后点击”Unlock to change properties“,这样我们可以编辑属性:

然后选择”国家_DataCard1“下面的”DataCardValue3", 

右侧属性面板中找到Items属性:

 点击Items,这个时候会在编辑器的公式部分显示Items的公式:

 因为这是lookup字段,所以在表单中显示为一个下拉菜单,对应的函数是Choices,函数中的OData__x56fd__x5bb6__实际上是国家字段的唯一标识,因为我们使用的是中文“国家”,所以这里不是一个可读的值,如果使用英文,这里会是一个比较容易识别的单词。

我们使用Power Apps提供的Filter函数,对这个国家字段的值进行一下过滤,只显示某个大洲的国家,所以我们在Choice函数之外添加一个Filter函数如下:

其中“DataCardValue2指的是大洲字段下面的DataCard:

 

保存并发布:

回到供应商列表,新建一个item,会发现级联功能已经生效了:

 只需要改动一个函数,就实现了级联的功能,是不是很方便?

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐