- Express Yourself: String Functions in Microsoft Flow
- Express Yourself: String Functions Examples
- How Substring Works in Microsoft Flow
- Use expressions in conditions to check multiple values
- Working with expression in Microsoft Flow
Express Yourself: String Functions in Microsoft FlowHave you ever wondered why the Expression box in Microsoft Flow is so small? Often a one liner can do the job. Sometimes it is the small things in Microsoft Flow that make it difficult to get the job done! Most of these on liners will fit in that small expression box. For more details see my post about finding your run Url. Getting the first X characters is easy using the substring function. The following expression is your answer:. When you set a variable to a space Flow will tell you that the value is empty. When you use switches in Flow and the switch value is sometimes not set you will find that your flow will fail. If you use the coalesce function you can make sure that you always get a value from a variable or action output. For more information see Improve your switches. How often do you need to check the value of a text variable or output. A while back I was looking at the extensions of a file name. To solve my problems I used the toUpper fuction:. The last expression spot in this post is still available. Have you used any great expressions? Please leave you useful one liners in the comments below. Please give expression to parse something from the string. Example to grep some word from body line of email. It would very much depend on the kind of data you would want to extract and the format of the email. You could of course create an Azure function that does the work for you using regular expressions. Then call this function from a flow. What ist the best way to handly long expressions? Using a text editor? Is there an editor with intelliSense? Have you used the new editor yet?
Express Yourself: String Functions Examples
I was inspired by a question from a colleague recently to try my hand at building a custom connector for Microsoft Flow that would allow for validating values using regular expressions. The specific scenario was validating an email address when importing records into Dynamics using Flow. While the specific scenario was for validating emails it made sense to create a more generic connector to validate any value using a specified regex pattern. However, this post also shows how you could create any custom connector that hooks into an Azure function. The first step was to create an Azure function that could take in a value and a pattern and return a result indicating if the value matched the pattern specified. To do this go to the Azure portal and click Create a resource from the menu and search for Function App. Now click Create and give the App a Name and fill out the rest of the details for your App. Leave the Runtime Stack as. NET and Click Create. Once the Function App is created, navigate to the app and select Functions. Then click New Function. Select HTTP trigger as the template for your function and provide a name for your function e. Click Create. Now we need a little bit of. NET code to perform the regular expression validation. Paste the following code into the function code editor. The code above is simple enough. The value in our case will be an email address and the pattern will be the regular expression that we use to validate the email address. You can append the following to the url in order to do this. When we eventually call the function from Flow we will be able to send over the pattern unencoded. In PostMan click Save and provide a name for your request. Now click the ellipses next to the collection that contains your saved request and select Export. Select Collection v1 deprecated and click Export Note: As of writing this the Flow custom connector Postman import expects a v1 export. Now that we have our Azure function for validating a value based on a regular expression and our PostMan export we need to create a custom connector in Microsoft Flow to make use of this function. Click the Create custom connector drop down at the top right and select Import a Postman collection. Provide a name for your Custom connector and import the file that you just exported from PostMan. Click Continue to open the Custom connector editor. Click the Definition tab and scroll down to the Request section. Now scroll down to the Response section and click the default response. Click the Import from sample button. Now head back to PostMan and copy the json response you received in your test and paste that into the body field in the Import from sample window and click import. Click Create connector and then move over to the Test tab. Click create Connection and note the value and pattern are prefilled with the values you supplied to the PostMan test. Click Test operation and verify you receive a valid result. However, I simply used a built in template for importing rows from an excel spreadsheet into Dynamics and added my custom connector as a step in that flow to validate each of the emails in the rows that were being imported. The important part of my Flow looked something like this. So, you may want to secure your function using Azure AD in a production scenario. However, this post also shows how you could create any custom connector that hooks into an Azure function Creating the Azure Function The first step was to create an Azure function that could take in a value and a pattern and return a result indicating if the value matched the pattern specified.
How Substring Works in Microsoft Flow
In Microsoft Flow, you can use expressions for every action, switch, or condition and to manipulate data. A small tip upfront, I like to write the expression in notepad. The input field in flow is pretty small and if you start writing bigger expressions you will notice youlosee the overview. Making it harder to check if you have all the brackets in the right place. If you click on the Expression tab you will get a list with some of the functions that are available. But there is more! Not all functions are listed in the Expression tab, for example, if you start typing sub you will see a list of additional functions that are available. Just type in the function and add an open bracket at the end. In the tooltip you will get the correct syntax and a description:. Inside expression, you want to use dynamic values that you get back from other actions. For example, you have a flow that is triggered when you receive an email. Now there are 2 ways to do this. One, you create a variable and store the dynamic content init. This is the clearest way to do this, but on a more complex flow, you will have to initialize a lot of variables at the start of your flow. To create a variable you first have to initialize it at the top of your flow before any condition. Just click the value field and select the dynamic content that you want to use. If you want to set the value later, then you can use the Set variable action in your flow. The variables can be used as dynamic content and in expression. If you want to use it in an expression, you need to use the following function:. The other option to use the value from a step in an expression is referencing it directly. For this email we want to get a notification of the subject and sender just because we can…. Yes, we could use Dynamic content for this, but I like to keep the example simples. So we are going to combine the two string, subject and sender, with the concatenate function. To get an item from another step we can use different functions. The first step, the trigger, is referenced by the function triggerBody. Other steps can be accessed with the body function or items inside a for each step. Pay close attention to the underscore here. The step name has a space in it, you need to replace that with an underscore in your expression. First, we split the email address that we get from the triggerBody the first step on the symbol. This will give use two values back. Another string manipulation you will probably use a lot is getting the file extension. This will require to split the filename on the dot and get the last part of it:. Date manipulation is one the most used expressions. Now for the start time we need to enter the date in a specific format: yyyy-mm-ddTZ. So we can use the following expression to set the start date:. I hope this will help you get started with using expressions in your flows.
Use expressions in conditions to check multiple values
UI flows is now available—reduce repetitive manual tasks with this robotic process automation capability of Power Automate. Learn more. Get the Microsoft Power Platform healthcare emergency response templates to help manage beds, equipment, patients, and more. Discover a better way to get things done across your organization through digital and robotic process automation. Build time-saving workflows into everything from individual tasks to large-scale systems with seamless integration using hundreds of prebuilt connectors. Enable everyone to build secure workflows with a no-code guided experience and cloud-based data loss prevention, identity, and access management services. Automate time-consuming manual tasks with built-in AI capabilities, giving you more time to focus on strategic, high-value opportunities. Automate mundane, rules-based tasks with point-and-click simplicity—whether the app is old or new, on-premises or in the cloud. Global leader in passenger and freight transport services SNCF reduced errors and increased reliability across countries. Air France created an innovative, rewarding way to facilitate collaboration and project management for their 50, employees. Avanade automated business processes throughout their company to streamline employee experiences and create one digital experience. Start automating common business processes immediately with thousands of prebuilt templates. Results are for a composite organization based on interviewed customers. Connect workflows to hundreds of data sources using a library of connectors and Common Data Service - bringing your data together for a single source of truth while you uncover insights as well as customize and extend OfficeDynamicsand Azure capabilities. Build apps in hours—not months—that easily connect to data, use Excel-like expressions to add logic, and run on the web, iOS, and Android devices. Unify data from many sources to create interactive, immersive dashboards and reports that provide actionable insights and drive business results. Include powerful workflow automation directly in your apps with a no-code approach that connects to hundreds of popular apps and services. Easily build chatbots to engage conversationally with your customers and employees—no coding required. Connect with tens of thousands of Power Automate community members around the world, and discover valuable insights and tips from the Power Automate team. See how Power Automate helps you automate business processes and boost productivity. Take care of what's important. Automate the rest. Watch overview. Turn outdated into automated Discover a better way to get things done across your organization through digital and robotic process automation. Boost productivity Build time-saving workflows into everything from individual tasks to large-scale systems with seamless integration using hundreds of prebuilt connectors.