Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Doctor Flow- Best practices Microsoft flow - Techorama 2019


Published on

Doctor Flow-Best practices Microsoft flow - Techorama 2019

Published in: Software
  • Be the first to comment

  • Be the first to like this

Doctor Flow- Best practices Microsoft flow - Techorama 2019

  1. 1. Microsoft Flow Advanced: tips, pitfalls, patterns with Doctor Flow Doctor Flow
  2. 2. Office Apps & services MVP Business Applications MVP O365 Architect @sergeluca ShareQL Brussels Office365 Flow Dev Architecture Bullshit Doctor Flow aka “Serge Luca”
  3. 3.
  4. 4. Microsoft flow and citizen developers
  5. 5. What can block me ? Do I need to use a third party tool ? Is it robust enough for enterprise business processes ? Flow is very easy to use and not expensive (Office 365 license) Here is our experience after 3 years and 8 enterprise flow projects
  6. 6. Demo: Automatic timesheet
  7. 7. Microsoft flow and developers
  8. 8. Create REST Services (like Azure functions) Create Custom Connectors Call REST APIs from Flow Integrate Flow in their Applications Developers Activities Requires P1Requires P1
  9. 9. Demo: Calling the Graph API Requires P1
  10. 10. Demo: Custom Connector Requires P1
  11. 11. Patterns and limitations
  12. 12. State machine pattern or Controller patternNo State Machine No custom task forms Max 5,000 iterations in Do until –> Create embedded loops Max 5,000 iterations in For each (100,000 in Plan 1) Loops Create nested flows or raise a ticket250 actions/flow Flow Approval duration : 30 days Flow duration : 30 days No guest access Controller pattern In the roadmap for Flow & PowerApps ALM/devops weak I could tell you, but then I would have to kill you… Custom approval actions
  13. 13. Why State Machine ?
  14. 14. State Machine and > 30 days « Flow Controller Pattern » Controller Launcher flow SecretaryAdvisor Boss escalate timeout approved rejected in vacation timeout approved rejected redirect in vacation timeout approved rejected escalate Normal flow Service flow
  15. 15. 3 Implementations Messages (Service Bus) Database (SQL Azure) Http & Request (Requires P1 license !) Requires P1
  16. 16. Demo: Approval escalation Approval analytics Controller pattern Machine Learning
  17. 17. Started from Excel Started from SP New Expense from App Trigger : Excel for a selected row Trigger : SharePoint for a selected row Existing Expense from App Trigger : SharePoint : when an item is created Proxy Flows Service Flow
  18. 18. Requires P1
  19. 19. • the url might change, we want to use a stable vanity url like • you might need to protect it : authentication • throttling • restricting the callers to some specific network locations • ….
  20. 20. Returns max 2048 records
  21. 21. Returns max 5000 records or 100.000 if P1 licence $skiptoken=Page=TRUE%26p_ID=3000&top=5000
  22. 22. Demo: Manage errors
  23. 23. Demo: Manage parallelism
  24. 24. Adapt retry policy Reduce flow concurrency Use several connectors Error HTTP 429 : « I’m too busy » come later (in 10 sec) Flow throttled by the Service (like SharePoint) and by the Connector (600 calls/min)
  25. 25. 202 ACCEPTED The request has been accepted for processing, but the processing has not been completed. Long Call Duration Pattern Requires P1
  26. 26. Demo: Manage Long calls
  27. 27. Office 365 audit log Webhook 1 2
  28. 28. Microsoft flow and PowerBI
  30. 30. Conclusions
  31. 31. Keep your forms Simple Trigger properties Accounts Management Environments Business logic in Flow In variables Owners : ADD Groups Connectors : Services Accounts (except personal flows) PowerShell Flow Management connector Use several DLP
  32. 32. Flow can complement PowerShell Be carefull with P1 …Or run Powershell via Azure Automation runbooks/hybrid You can avoid it (split flows and use service accounts) Integrate with Azure DevOps …I don’t want to kill you notes/April19/microsoft-flow/ And much much more… This is just the beginning !