zoukankan      html  css  js  c++  java
  • Microsoft Power Automate Flow Trigger Conditions & CDS Filter Expressions Explained!

    Microsoft Power Automate Flow Trigger Conditions & CDS Filter Expressions Explained!

     
     

    Microsoft Power Automate Flows are the recommended path forward for extending business logic that traditionally was extended using Plugins and Workflows.

    For code execution trigger we were only offered message as an option and in case of the update message a step forward to choose the fields that need to be updated for the plugin or workflow to be executed.

    However if we wanted to get the code to execute/trigger based on a certain value, we had to check for that condition within the code or as a step in the workflow which means the workflow or the plugin code would always trigger.

    Power Automate Flows has a very powerful feature that helps cover this limitation of plugins and workflows and thereby reduce unnecessary execution of the flows. Do note that while the direction from Microsoft is to move to Flows for biz logic extensions, unlike plugins or workflows where there were no limits to the count of workflow jobs available for execution, Flows depending on the plan that you have subscribed to are limited in number. This makes it all the more important to prevent unwanted flow executions.

    Trigger Conditions for Trigger Steps

    Let us have a look at how the trigger conditions can be specified. In the example below we have used the update trigger of the Common Data Service (Current) connector, you could apply trigger condition on any connector and trigger too. This is a part of the Power Automate platform framework.

    Start with the Create/Update trigger as shown below

    Microsoft Power Automate Flow Trigger Conditions

    Once added, click on the settingMicrosoft Power Automate Flow Trigger Conditions

    In the trigger conditions you could specify flow expressions that evaluate to true and false. As you can see in the screenshot, you could provide one or more expressions, if you add more than one expression, it is an AND between them, which means all expressions provided should evaluate to TRUE for the trigger to execute.

    Let us have a look at this expression

    @equals(triggerbody()?[‘prioritycode’],1)

    This checks if the priority code of the record for which the action is triggered is set to 1. Since it is an optionset type of field we have used the integer value.

    Alternatively, you could compare with the optionset labels using the second example shown above

    @equals(triggerbody()?[‘_leadsourcecode_label’],’Advertisement’)

    Instead of an AND if you would have liked an OR between the two conditions, you could rewrite this as

    @or(@equals(triggerbody()?[‘prioritycode’],1),@equals(triggerbody()?[‘_leadsourcecode_label’],’Advertisement’))

    Check for the various operators supported here

    Filter Expression in Common Data Service (Current) Trigger

    While trigger condition is a part of the Power Automate framework and is available for all connectors and their triggers, Microsoft has added an easy way to specify the trigger condition for the Common Data Service (Current) connector.

    Microsoft Power Automate Flow Trigger Conditions

    You now see Filter Expression as one of the options to be specified in the trigger properties.

    This works similarly to the trigger condition but requires the filters to be specified in ODATA format that we CDS developers are used to.

    Unless the filter expression evaluates to true, the trigger will not be fired and it will not account towards the flow execution limits set.

    Conclusion

    Make use of trigger conditions to design efficient flows and avoid unnecessary executions.

  • 相关阅读:
    HTTP的传输编码(Transfer-Encoding:chunked)
    单向链表寻找入环点算法的证明
    Java容器解析系列(17) LruCache详解
    Java容器解析系列(16) android内存优化之SparseArray
    Java容器解析系列(15) HashTable Dictionary & Properties
    Java容器解析系列(14) IdentityHashMap详解
    Swift开发之iOS11下UIToolBar非正常显示问题
    Python爬虫之Scrapy框架爬取XXXFM音频文件
    ARKit文档翻译之ARTrackable协议
    ARKit文档翻译之ARAnchor类
  • 原文地址:https://www.cnblogs.com/lingdanglfw/p/14760979.html
Copyright © 2011-2022 走看看