Flow返回查询的数据表并返回Apps
场景介绍
我们通常会使用Flow 查询数据表然后Apps端将表中的数据显示出来,我们怎么来传呢,它自带的response for PowerApps 控件只能返回字符,数字等这种单个的值。今天我们来讲解一下如何传一个Table。
代码开发
Power Automate开发
生产过程中我们通常会有很多场景导致我们用Apps自带的Filter等函数无法查询/查询全部的数据,比如2000条的限制,或者我们使用存储过程多个参数筛选的表等复杂情况,这时候我们用自带的函数就不太合适了,我们就使用Flow来调用存储过程或者直接SQL query就好处理多了。
数据库
假设我们开发了一个存储过程然后我们在存储过程里接受了5个参数,然后经过一系列的业务处理返回查询出来的数据表。
这个不是今天的重点,只需要知道最后就会返回一个Table的数据就行了。
Power Automate调用存储过程
1.我们创建一个Flow 名为SearchData,然后我们相应的数据库的存储过程定义好几个参数,我数据库需要6个,然后我再Flow中定义了6个。
2.然后我们选取执行存储过程的控件,选取我们写好的存储过程,然后把我们定义的参数输入进去如下图:
3.最后我们最总要的一步,也是核心的一步,响应 ,我们直接在控件中搜索响应:
然后我们将查询的结果放在里面:
先说正文:
我们查看SQL server的返回值可以看到ResultSet,我们需要的数据就在这个里面的Table1里面,(数据库没有做处理)
然后我们可以点击正文里面的值,然后Ctrl+C 复制下来:
然后我们转到右侧的表达式,粘贴进去,然后我们继续往里面取,取到我们想要的Table1的数据:
然后我们打开显示高级选项,在这个里面我们要格式化一个Json结构,我们可以这样做:这块先不动,然后点击保存,然后测试一下:
然后我们去看运行的记录,单机下载然后我们可以看到数据:
注意复制一条完整的数据,还有很重要的就是外面的这个数组的中括号:
输入的格式就是这样的,复制一条数据是为了让他按照数据抽离出来这个结构,按照这个结构取数据,数组的符号不能缺,不然的话抽离出来的结构都不一样。
然后点击保存&测试,流成功运行完事。
Power Apps开发
代码开发
我们将刚刚的Flow加到App中,然后我们插入一个空白垂直库,然后插入三个Label用来显示数据,然后加入一个按钮来调用流。
就直接接收就可以了,不用做额外的处理。然后我们测试。
测试
然后我们点击查询数据:
成功!欢迎有问题的小伙伴提问哦