Presentation is loading. Please wait.

Presentation is loading. Please wait.

Eli Robillard Microsoft Office Server & Services MVP

Similar presentations


Presentation on theme: "Eli Robillard Microsoft Office Server & Services MVP"— Presentation transcript:

1

2 Eli Robillard Microsoft Office Server & Services MVP
No-code Cross-platform Development with Logic Apps, Power Apps and Logic Flows Abstract: Microsoft is launching some great new tools for workflow orchestration and data interchange. With connectors available for SharePoint Online, Office 365, SQL Server, Yammer, Twitter, Salesforce, Facebook, Dropbox, and more, there are endless possibilities for integrating solutions across popular SaaS platforms. In this session we discuss the planning and implementation of a solution to retrieve and transform content from a Salesforce data source into SharePoint Online. Eli Robillard Microsoft Office Server & Services MVP

3 Eli Robillard Information Management and Portal Consulting
Solution Architecture Author, Speaker, Organizer Twitter: @erobillard Phone:

4 Agenda No-code apps for tablet and mobile Cross-platform data exchange
SPC2012 – IT Pro 9/17/2018 Agenda No-code apps for tablet and mobile Cross-platform data exchange Useful design patterns for PowerApps, Logic Apps, and SharePoint Flows © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

5 PowerApps

6

7 SPC2012 – IT Pro Tour of PowerApp Studio Two-minute Apps
9/17/2018 PowerApps demo Tour of PowerApp Studio Two-minute Apps How to sign up, and what addresses will work (and which don’t): us/tutorials/signup-for-powerapps/ © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

8 Anatomy of a PowerApp

9 Connect to a world of SaaS data

10 Displaying Data in PowerApps
Card: Contains the controls for a Field Each card includes The display name (a text control) The property (a display or edit control)

11 Editing PowerApp Screens
demo Editing PowerApp Screens

12 Local Variables in PowerApps
Values are stored in controls on a screen (e.g. TextBox) Similar to using hidden controls in web dev For example, “TextBox1.Text” refers to the value stored in TextBox1 Excel-like Formulas are used to calculate values in a PowerApp Example: TextBoxVal1 = TextInput1 + TextInput2 We do not need to specify each var down to the final “.Text”

13 Global variables in PowerApps
Global vars are stored in Collections A collection is exactly that – a list or a collection of values Example: myCollection Reference the head of the list with First(), example: First(myCollection) Instantiate a list with ClearCollect(), example: ClearCollect(myCollection,0) Increment the head of the list with: ClearCollect(myCollection, First(myCollection) + 1)

14 SPC2012 – IT Pro 9/17/2018 Tips for PowerApps Hold down Alt to reveal the controls and labels on any Screen. When connecting to SharePoint, PowerApp Studio uses the Internal Name in the Gallery layout Create columns with meaningful names (to set the internal name), then rename with a friendly display name. Avoids an issue in the Gallery layout when 2 controls are called “Title” When PowerApps says, “Default” Inigo Montoya says, “You keep using that word. I do not think that word means what you think it means.” What PowerApps means: “The value when the form is loaded.” Source of skeleton image: © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

15 Automate business process across SaaS and on-premises
New Logic Apps for easy automation LOGIC Apps Automate business process across SaaS and on-premises No code designer for rapid creation Dozens of pre-built templates to get started Out of box support for popular SaaS and on- premises apps Use with custom API apps of your own BizTalk APIs for expert integration scenarios App Service has everything you need to build apps that target both web and mobile clients from a single app back-end. Using API Apps, you can connect your app to dozens of popular services like Office 365 and salesforce.com in minutes, and integrate your own APIs so they can be used within any app. And finally with Logic Apps, you can automate business processes using a simple no-code experience. Source: Stephen Siliciano

16 All of the Azure-native capabilities you’d expect
Full audit logs of all management operations Role-based access control Deployment lifecycle with Resource Manager Resource Management API + resource PowerShell On-prem support with next release of Azure Pack

17

18 Logic Apps Visually create business processes and workflows
Integrate with your SaaS applications Complete list of Connectors Connect to on-premises data via Enterprise Integration Pack EIP shipped Dec 16, 2016 Supports AS2, X12, EDIFACT Based on same engine as the Azure Resource Manager The highly scalable geo-distributed system that manages millions of resources across 100,000’s of subscriptions Much more powerful (6x more functions, multiple OAuth providers, multiple triggers)

19 Logic Apps demo Deploying a Logic App

20

21 Triggers for Logic Apps
Recurrence E.g.: “Every x hours” Events / WebHooks On Create, On Update Every workflow has an endpoint you can POST to from any web service Supports AuthN for simple systems Manual “Run Now” button Polling an API for a response 200 response: “Run” 202 response: “Wait” Use trigger state to get information on the previous execution Registering an API App to “push” to a workflow Using a custom contract implemented for API Apps Reference: Stephen Siliciano. Inside Logic Apps

22 Microsoft Flow Demo

23 Thank-You! Eli Robillard Let’s talk about…
Twitter: @erobillard Phone: Let’s talk about… Information Management and Portal Consulting Solution Architecture Writing, presenting, organizing

24 Logic App Design Patterns
ETL Pattern Recursion Avoidance

25 Data Source Change Log SP List ETL Pattern
Context: External data is needed within SharePoint. An external connector is not acceptable. Can also handle 2-way updates.

26 Data Source Change Log SP List ETL Pattern: Steps
Use Logic App/Flow to capture data from the source into a Change Log Use Workflow to map & transform data in the Change Log Use Logic App/Flow/Workflow to move data to its intended location

27 ETL Pattern: Considerations
SPC2012 – IT Pro Data Source Change Log SP List 9/17/2018 ETL Pattern: Considerations Need to handle 2 cases: New or updated objects A query-based import for initial migration and to replay events Use lookup lists to map incompatible data types E.g.: Names to SP People Use a configuration list to specify parameters, defaults, blank values, etc. © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

28 Recursion Avoidance Pattern
App Triggers SP List Updated Data Source Updated Context: An endless loop is initiated when an event is handled with a method that indirectly triggers another instance of the event.

29 Recursion Avoidance Pattern
App Triggers App checks value and halts SP Object Updated App sets a value to indicate WIP Data Source Updated Implementation 1: App 1 sets a value (e.g. in a new column) to record either a value or a duration that can be tested to halt App 2. Implementation 2: App 2 adds logic to confirm that the goal state is actually different from the current state before making any changes. The logic must be such that it will not make the same changes for a second time.

30 Recursion Avoidance Pattern
SPC2012 – IT Pro 9/17/2018 Recursion Avoidance Pattern App Triggers App checks value and halts SP Object Updated App sets a value to indicate WIP Data Source Updated Example: When a Document Set is created in a SP Library, the user sets the “Company Name” column. Logic App #1 triggers to update the “Related Documents” property in a data source. When the data source is updated, Logic App #2 launches to propagate the object’s properties down to related documents in SharePoint. Logic App #2 checks the “Last Updated” property of each SharePoint object before updating it, and ignores any with a Last Modified timestamp in the past 10 minutes. In this example there are two objectives to reconcile: the workflow to propagate metadata from source to target, and the ability to propagate one property from the target back to the source - the location of related files. But updating the source should not lead to an endless loop of update events. [Step through the example.] How can we improve this implementation to accommodate cases where the source was legitimately updated right after creating the Document Set? Answer: You would need to check individual values before deciding to start the workflow, so it only starts if the properties actually need to be changed. © 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

31 Parameters Re-using values, or even complex objects, throughout the definition, which makes it easier to comprehend Separate out config from the definition itself, making sharing easy, as well as across different environments. Dev Workflow Prod Workflow Parameters Provides DEV config Endpoint : “ Definition Declares parameters (‘endpoint’) Parameters Provides PROD config Endpoint : “ Definition (identical) Declares same parameters (‘endpoint’)


Download ppt "Eli Robillard Microsoft Office Server & Services MVP"

Similar presentations


Ads by Google