美文网首页
Power BI+Forms+Flow实现问卷结果实时呈现

Power BI+Forms+Flow实现问卷结果实时呈现

作者: PowerPivot工坊 | 来源:发表于2019-12-17 12:28 被阅读0次

    最近好几位朋友都问到我关于在PowerBI 中实时显示问卷调查结果的方法,今天跟大家分享如何通过微软Office 365 里的组件 Forms 、Flow 和 PowerBI实现调查问卷的实时统计呈现。

    在微软Office365中有很多组件,下图是在我的Ofiice365 E3版本的截图,其中大部分组件都可以和Power BI进行集成,这也是Power BI的一个优势。图中红色圈出来的为本次需要用到的组件。

    需要特别说明的是,由于在中国版(世纪互联)Office 365 中尚未发布Forms和 Flow, 所以此方法只能在全球版中使用。如果您已经有全球版Office 365 且包含上面提到的3个组件,则可以实现。如果还没有此环境,需要的话可以去www.office365.com上购买或申请试用。也可以先收藏此文章,等中国版上了Forms 和 Flow后使用,具体上线时间不清楚,但应该不会很晚。

    一、各组件的作用

    Forms是快速创建问卷调查的组件,你可以在数分钟内就创建一份简单的问卷调查并分享出去进行答案收集。Forms本身是带有问卷回复的统计功能的,但今天我们不用它默认的统计功能,我们是把回复推送到Power BI 流数据集中进行实时呈现。

    Flow的作用是创建工作流,可以实现把Forms问卷的回复实时推送到Power BI。这个组件非常值得你注意并熟悉学习,它可以帮你做很多自动化的工作,比如当Power BI 的某个业务警报被触发,Flow可以发送邮件给相关的同事,并把某些重要数据写入数据库。在Flow的官方页面上有很多模板,大家感兴趣的话可以去了解。我们今天就只介绍它获取Forms回复数据并推送到Power BI流数据集的场景。

    Power BI 大家都比较熟悉了,在本案例中它主要负责数据统计和可视化呈现。需要特别说明的是由于我们希望实时呈现问卷统计结果,而目前这种呈现效果在Power BI服务中需要使用流数据集,且仅在Power BI 的仪表板(Dashboard)模块中支持,本地版本的Power BI Report Server是不行的。

    另外,流数据集的实时显示 – 即当有回复提交,Power BI 自动呈现的效果,目前只有在Dashboard模块中支持。换句话说,如果在浏览器中打开Dashboard并全屏显示,当有回复提交的时候是可以自动刷新并呈现的,而目前的PowerBI “报表”模块中不能实现,需要手动点击刷新,所以我们一会制作的统计报表需要先发布到Power BI 在线服务的“报表”中,然后再发布到仪表板中。

    二、步骤概述

    本案例实现的大致步骤如下:

    Step1:创建Forms表单

    Step2:建立PBI 流数据集,准备接收回复信息

    Step3:通过Flow 把 Forms回复数据推送到该流数据集

    Step4:通过PBI Desktop连接流数据集并设计报表

    Step5:将报表发布到PBI 在线服务

    Step6:生成Dashboard仪表板

    通过上述步骤,最终搭建完成整个工作流,实现实时问卷结果统计显示的效果。

    三、详细步骤

    Step1:创建Forms表单

    登陆Office365全球版主页Portal.office.com, 选择“所有应用”,找到Forms并点击进入Forms页面。选择“新建表单”并创建表单内容。

    创建表单的过程相对比较简单,就不一一赘述了。在本例中我创建了如下5个问题的表单:

    1.请输入您的昵称

    2.请问您在培训之前是否已经使用 Power BI?

    3.您是否使用过 Excel 中的 Power Query组件?

    4.您是否使用过 Excel 中的 Power Pivot 组件?

    5.请对您现在的 Power BI 技能打分

    最终得到了如下截图的问卷:

    需要注意的是每道题目的回复格式是文本还是数值,比如本例中第5题的回复就是数值格式,其它为文本格式,这个格式在后面创建流数据集过程中需要进行对应设置。

    另外,创建表单过程中如果题目是必答题,记得勾选下面红色的选项:

    表单创建完成后需要把表单进行分享。点击页面右上角“共享”按钮,视情况选择“具有链接的所有人均可回复”或“只有我组织中的人员可回复”。如果问卷是开放给组织外部的人员,请选择第一个。

    此时你可以复制得到表单链接,此链接可以发送给调查对象进行填写。也可以点击“QR Code” 生成二维码,通过二维码分享。本例中我会将二维码放到 Power BI 报表中,让用户现场扫描填写问卷并实时呈现,所以需要下载二维码备用。

    至此,问卷表单已准备好,接下来我们创建Power BI 流数据集。

    Step2: 创建 PowerBI 流数据集

    登陆Power BI 主页app.powerbi.com, 在我的工作区右上角单击“创建”,选择“流数据集”

    在弹出窗口中默认已选择了“API”,直接单击“下一步”

    为流数据集指定名称及添加相应字段。需要注意:

    为了避免后面调用麻烦,建议流数据集名称用英文

    每个字段分别对应一个问卷题目,这个字段接下来会用来接收问卷回复,本例中我有5个问题则创建了5个对应的字段。

    字段的格式要和问卷回复的一致,比如最后一题的数据格式设置为了“数值”

    红圈部分的“历史数据”需要打开,这样可以累积所有回复结果,否则每个结果都是推送过来就消失,失去统计意义。

    上述工作完成后点击“创建”“完成”,结束流数据集的准备。

    Step3: 创建Flow工作流

    接下来是创建Flow工作流,把整个流程串联起来。还是在Office365主页上点击“Flow”进入Flow页面,(最近Flow网站有点慢,请耐心等待)。

    可以从“模板”创建工作流,也可以直接“创建”,我们演示直接创建的方法。点击“创建”,选择“自动流”

    给流进行命名,然后在“选择流的触发器”中搜索“提交”并选择“提交新回复时”,点击“创建”

    “提交新回复时”中的“表单ID”里选择刚刚创建的Forms。

    然后选择“+新步骤”,在“选择操作”中搜索并选择“获取回复详细信息”

    接下来是非常关键的一步,“表单ID”里选择Forms表单名称,然后鼠标单击“回复ID”后选择“添加动态内容”,然后在右侧选择“表达式”,并输入下面的函数单击确定。

    first(triggerBody()?['value'])?['resourceData']['responseid']

    再选择“+新步骤”,搜索并选择 “应用到每一个”

    选择后,鼠标单击“从先前的步骤中选择一个输出”后面的输入框,在右侧弹出的“动态内容”下选择“回复通知列表”。再点击“添加操作”

    “选择操作”中搜索并选择“向数据集添加行”

    在“向数据集添加行”中,依次选择:

    工作区 – My Workspace

    数据集 – 选择前面创建的数据集名称

    表 – 选 RealTimeData

    此时下面会列出此流数据集中我们之前创建的字段,选择每个字段时,右侧会弹出对应的动态内容,选择并指定对应的Forms问卷问题,得到下图效果。

    这样,Flow工作流就设置完成了,点击“保存”即可。

    Step4:创建 Power BI Desktop报表

    新建 Power BI Desktop文件,并确保登录到账号。在“获取数据”下面选择“Power BI 数据集”,找到刚刚我们创建的流数据集名称并点击“创建”

    创建完成后即可在“字段”里看到,流数据集的字段已经被加载进来,您可以创建相应的展现报表了。

    提示,如果此时你的Forms并没有提交任何问题,在制作报表时会得到空的图表,可以先随便提交几个问题,尽量选择不同的选项。提交问题后在Power BI Desktop中刷新即可得到回复数据。这样更方便制作可视化效果。

    如何制作就不详细描述了,本例我制作了如下的一个效果。

    报表制作完成后即可保存发布了。因为一会发布后我们需要制作仪表板并且仪表板才是最终展现效果,所以在报表中不需要进行排版,只需要把该呈现的可视化做出来即可。我加了工坊的Logo和Forms问卷的二维码是为了发布后把这两个也PIN到仪表板中。

    Step5:将报表发布到PBI 在线服务

    在Power BI Desktop中点击“发布”,将报告发布到在线版。

    Step6: 创建仪表板

    报表发布后登录Power BI 在线服务,并在报表中的每一个视觉对象右上角找到大头钉按钮,点击固定视觉对象。可参考下图。第一次建议新建一个仪表板,之后将其它的图表都固定到这个新建的仪表板中即可。

    固定到仪表板后,可以对相应磁贴进行大小和位置的调整,最终得到类似下图效果。

    这样我们就完成了整个实时问卷调查的设置,用户可以通过扫描二维码填写问卷。问卷提交后Flow会将回复数据推送到Power BI 流数据集中并实时在Dashboard中显示出来。

    思考一下您的工作场景中是否有类似的需求?比如会议现场的问卷统计、人力资源的员工调查等。

    另,演示的时候记得全屏效果更好哦~

    贴心小提示:

    每次需要清空统计内容的时候,只需要在PowerBI服务中找到流数据集并编辑,把“历史数据”的开关关掉,保存;然后再编辑“打开”,保存即可。

    好了,今天的分享就到这里,如果有用的话请帮忙转发或点“在看”,祝大家开工愉快!

    本文参考了PowerPivot Pro Reid Havens 的文章:

    《 Howto Create A RealTime Dataset on Power BI.com 》

    原文参考链接如下:

    https://powerpivotpro.com/2018/05/how-to-create-a-real-time-dataset-on-power-bi-com/

    * PowerPivot工坊原创文章,转载请注明出处!


    延伸阅读:

    从省市级到区县级,Power BI topoJSON中国行政区划地图都在这了

    零代码调整报表默认设置

    手把手教你DIY属于自己的酷炫可视化控件


    如果您想深入学习微软Power BI,欢迎登录网易云课堂试听学习我们的“从Excel到Power BI数据分析可视化”系列课程。或者关注我们的公众号(PowerPivot工坊)后猛戳”在线学习”。

    长按下方二维码关注“Power Pivot工坊”获取更多微软Power BI、PowerPivot相关文章、资讯,欢迎小伙伴儿们转发分享~

    相关文章

      网友评论

          本文标题:Power BI+Forms+Flow实现问卷结果实时呈现

          本文链接:https://www.haomeiwen.com/subject/agjsnctx.html