Microsoft Flow 概览

做者:陈希章 发表于 2017年12月15日git

前言

纵观一下咱们周围的世界,以及咱们天天忙忙碌碌的工做,你会“惊奇地”发现它们都是一个事件接着一个事件发生的。例如,我天天早上起来,一打开亲爱的手机,就会收到一封邮件,告诉我说今天9点要交个材料,而后11点又有个con-call,下午可能还要拜访一个客户之类的。每一天,每一周几乎都是如此,就连每月也总有那么几回 —— 要交各类费用,还各类卡的额度。我并非说我有多忙(这不重要),我只是说,咱们不少时候觉得有能力控制生活变成咱们想要的样子,但事实上,咱们大部分时候是在响应一个一个的事件 —— 换言之,咱们其实在一个一个流程里面。github

因此,人、物、事件和流程,构成了精彩纷呈的世界,但我不许备就这个高大上的话题扯太远了。咱们今天要谈的是,在IT的世界里面,咱们怎么样把各类奇形怪状的应用系统,各类事件和流程无缝地整合起来,而且让它能更好地帮助人们又好又快地完成工做。安全

这不是一个新话题了。在近二十年以来,有大量的工做流引擎(Workflow Engine),BPM 或 EDI 系统不断涌现,在企业级市场上也曾风起云涌,各领风骚。不过,随着云和移动互联网时代的到来,它们或多或少都受到一些挑战和冲击。在这一波新的浪潮中,ifttt无疑是站在浪尖的那一个,风头一时无两。ifttt = if this, then that,很好地诠释了它的精髓。服务器

微软在企业级领域有Biztalk这样的BPM服务器,也有Workflow Foundation这样的系统层面的工做流能力,在SharePoint Server中内置了Workflow Foundation的支持。与此同时在云平台蓬勃发展的当下,又从新开发和打造了一个全新的流程平台,而且冠名为Microsoft Flow,它既有相似于ifttt的强大和灵活架构,也继承了微软多年的企业级服务的基因,在团队协做、与企业内部应用集成以及安全性等方面有一些本身的特色。架构

在微软的产品命名传统中,能直接冠以Microsoft做为名称一部分的,实际上是不太多的,因而可知,Microsoft Flow 的价值和地位。app

若是你有Office 365或者Dynamics 365的帐号,你或许已经拥有了Microsoft Flow,你固然也能够自行申请免费版(注意,是真正免费,不是试用版)和收费版本,详情请参考: https://flow.microsoft.com/en-us/pricing/工具

本文将包括以下内容,我相信会对你们了解Microsoft Flow 会有帮助:测试

  1. 经过Microsoft Flow实现特定邮件的附件自动保存到SharePoint Online文档库中
  2. 实现周期性执行的流程
  3. 实现用户手工启动的流程
  4. 在 PowerApps 里面操做引起的流程
  5. 经过 Power BI 警报引起的流程

经过Microsoft Flow实现特定邮件的附件自动保存到SharePoint Online文档库中

这种基于事件的流程处理,多是Microsoft Flow中最为常见的。这是咱们部门在用的一个真实案例,我大体介绍一下场景:咱们每周会收到内部同事发送过来的一个邮件,一般都带有一个附件(名称是 Office 365 周报.xlsx)。与此同时,咱们又但愿这些附件,能以固定命名规则保存在团队网站的某个文档库中,这样咱们全部人就随时能够集中看到全部的周报。咱们但愿这个动做能自动实现,无需人为地操做。网站

从Microsoft Flow的角度来看,这样的流程简直是太合它的胃口了,你甚至均可以直接用它的模板实现。请登录到 flow.microsoft.com 后,搜索“附件”这个关键字,你能够看到有好多的模板列出来:this

咱们要的其实就是第一排的第三个模板

设置好你的帐号信息,而后点击“继续”按钮,设置一下你须要监控的邮箱文件夹,以及要保存的SharePoint Online团队网站以及文档库位置。

等一等,咱们如何去设置条件呢?毕竟咱们只是想监控带有附件,并且附件名为“Office 365 周报.xlsx”这样的邮件呢。经过点击下面的加号,选择“添加条件”便可实现这个功能

下面是我编辑好的一个流程,带有两个条件分支,只有两个条件都知足的话,我才会在SharePoint Online 相应的文档库建立文件,并且文件名是自动加上了时间戳的,这样确保不会重复(默认状况下,若是文件名重复的话,Microsoft Flow会自动覆盖掉原文件)

保存这个工做流,而后模拟发送一个邮件,我很快就能看到SharePoint Online的文档库中已经自动建立了一个文件

若是你对这个流程的执行细节有兴趣,能够回到工做流的视图查看运行记录

点击某一个运行记录,能够看到细节

若是某次执行失败,你将收到一封邮件,并且能够在这个界面从新提交流程执行。

到这里为止,咱们已经建立了一个简单但实用的流程,它会自动监控个人邮箱的收件箱,若是邮件带有附件,而且附件名是“Office 365周报.xls”的话,就将此文件加上时间戳保存到我指定的SharePoint Online文档库中去。若是你以为这个想法还不错,你还能够分享给其余同事使用呢。

对于复杂一些的流程,Microsoft Flow支持多人共同编辑

周期性执行的流程

上面这种场景是根据某个事件来触发Microsoft Flow,这固然是最多见的,但还有一种状况也比较广泛,那就是周期性执行某个流程,例如每月从SharePoint Online的列表中导出一批数据,生成一个Excel文件,而后发送给某个邮箱。这样要怎么实现的呢?流程的细节我这里不许备展开,但我要提示的是最关健的一个操做,就是如何设置周期性执行流程。

其实并不难,你只须要将一个特定的触发器放在流程的第一步就能够了。

选择“计划”这个触发器,进行必要的设置

用户手工启动的流程

Microsoft Flow是如此的简单易用,以致于咱们再也不知足于将其定义为仅仅在后台执行自动化任务(就像上面提到的两种状况同样),有没有可能定义一个流程,而后由咱们本身想何时执行就何时执行呢?打个比方说,电脑开机其实就是一个流程,但我不想它每次都自动开机,而是由我按下开机按钮后才开机。

我很喜欢上面这个比喻,毕竟这样一来,做为人类咱们彷佛也多少能找回了一些控制世界的尊严和自豪感。无论怎样,Microsoft Flow确实实现了相似的机制,并且名称就叫“按钮”。

咱们先来看第一种,它容许用户在Microsoft Flow的移动App中,经过一个按钮执行某个流程。例如我简单设计一个流程,让用户输入几个参数后,Microsoft Flow给个人邮箱发一个邮件。

在Microsoft Flow的移动App里面,有一个专门的分类:Buttons

点击第一个按钮,会进入一个输入参数的界面

挺有意思的对吧?试想一下,你能够经过一个按钮发邮件,固然也能够经过它来开启你家里的空调。为何不呢?

截至目前为止,Microsoft Flow的移动App,还只是在测试版,除了微软员工可使用dog food版本以及部分App Store能够下载外,中国用户还不能下载。详情请关注:下载地址

在PowerApps里面操做引起的流程

在上一个场景中,包括我在 PowerApps 进阶篇 中我都提到了PowerApps能够和Flow结合起来实现强大的功能,到底怎么作的呢?这里我将揭晓谜底。

首先,PowerApps的应用提交的数据,也许是保存在Excel文件中,或者SharePoint Online的列表中。它只管那样作就行了。Flow 这边能监控Excel或者列表的变化,而后自动地在后台执行任务。这种状况下,PowerApps和Flow实际上是松耦合的,没有任何直接联系的,这多是最好的一种方式吧。

可是,咱们确实能实如今PowerApps中直接发起Flow的流程。这个要分两步来走:

第一,建立一个能够从PowerApps中调用的流程。这里的关键是触发器是“PowerApps”,其余部分没有什么特别须要注意的。

第二,在PowerApps的应用中启动流程。其实很简单,放一个按钮,而后在Action中选择“Flow”,此时会弹出一个面板,让你选择一个流程。

若是咱们须要输入参数怎么办呢?这里有一个很是有意思的设计,是在Flow的设计器中,你能够选择一个你但愿接受参数的位置,而后选择“在PowerApps中提问”,这样它就会生成一个上下文变量出来,以下图所示

而后,在PowerApps中,执行Run这个方法的时候,就能够指定邮件主题了。你确定已经猜到了,这个参数能够定义任意多个,这真是太强大了。

经过Power BI 警报引起的流程

本文的最后我还要介绍一下如何在PowerBI中集成Flow来实现自动化。Power BI是新一代的智能数据分析和可视化的工具,一经发布就受到了普遍的关注和好评,目前稳居Gartner魔力象限的领导者象限。下图是一个典型的Power BI 仪表盘,用来分析零售门店的业绩。

今天不会对于Power BI的细节进行展开,我只提一个颇有意思的功能:假设我是一个销售总监,我但愿能监控到这个仪表盘上面的一些关健指标,当它们发生变化,尤为是我不但愿看到的一些变化(例如销售额降低明显)时,我能自动获得一些通知,我该怎么办呢?我是24小时不吃不睡地守在电脑前面刷这个仪表盘吗?固然不能,Power BI提供了一个警报的功能,可让用户本身定义须要监控的指标,而且定义发除警报的动做,默认状况下,它能够给用户发一封邮件。建立警报很简单,在某个磁贴的右上角点击,会出现一个菜单。

点击“管理警报”,而后点击“添加警报规则”

细心的你估计已经发现,在这个界面的右下方,其实有一个连接:“使用 Microsoft Flow 触发其余操做”,点击以后会调到Microsoft Flow的界面,并自动选择好了一个模板,你要作的就是设置一些帐号便可。

接下来你就能够发挥想象力定制这个流程吧,只要你愿意,你能够作的很复杂。不过,做为一个销售总监,你的成功之道多是要赶忙去跑到门店现场去了解状况,因此关于这里面的更多的技术细节我就很少跟你展开了吧。

相关文章
相关标签/搜索