├── LICENSE └── readme.md /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 Thomas George 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 | [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) 2 | 3 | > Useful resources for creating apps with [Salesforce Flow](https://www.youtube.com/watch?v=W8BJ4yRBga0&feature=youtu.be) 4 | 5 | *Inspired by the [awesome](https://github.com/sindresorhus/awesome) list thing. You might also like to read complete [awesome-list](https://github.com/sindresorhus/awesome).* 6 | - [101- for those new to flow](#101--for-those-new-to-flow) 7 | - [Debugging/ error handling](#debugging-error-handling) 8 | - [201- for the advanced practitioner](#201--for-the-advanced-practitioner) 9 | - [Best practices](#best-practices) 10 | - [Testing/ Development lifecycle hacks](#testing-development-lifecycle-hacks) 11 | - [Flow Libraries](#flow-libraries) 12 | - [UI](#ui) 13 | - [Updates](#updates) 14 | - [What makes for an awesome list?](#what-makes-for-an-awesome-list) 15 | 16 | ## 101- for those new to flow 17 | 18 | * [Automation Champion's how to series](https://automationchampion.com/learning-flow/)- 50 + examples of flow, this is a veritable garden of flow examples. Exceedingly well documented and explained, a great place to start. 19 | * [Additional 101 links](https://sites.google.com/view/flowunofficial/tutorials-and-beginner-material) - A long list of 101 resources. 20 | * [Learning flow](https://developingflow.com/learning-flow/)- Blog with a collection of 101 posts. 21 | * [Limits impacting flow](https://dreamevent.secure.force.com/articleView?id=vpm_admin_flow_limits.htm&type=5) 22 | 23 | ## Debugging/ error handling 24 | 25 | * Native Tools: 26 | * [`debug` within a flow](https://automationchampion.com/2018/05/22/getting-started-with-visual-workflow-part-7-learn-about-the-new-built-in-debug-tool-in-the-cloud-flow-designer/) - This tool can help you to run flows within the designer, showing results in realtime. 27 | * [Debug Log](https://unhandledsunshine.com/2018/01/21/salesforce-automation-what-is-going-on-in-there/)- In some cases, tried and true debug logging is the best tool for the job. 28 | * Other techniques: 29 | * [Handling the “Unhandled Fault” in Flow](https://salesforcedude.wordpress.com/2015/02/10/handling-the-unhandled-fault-in-flow/)- This one is critical, understanding this technique will improve a users experince greatly. 30 | * [Flow Logging](https://www.clintmajors.com/blog/2018/3/6/flow-logging)- Tutorial describing how to show who is firing flows and what behaviour is being triggered when they run. 31 | * [Flow error handling utility built in flow](https://explorationsintosalesforce.wordpress.com/2017/10/18/visual-flow-error-handling-utility-flows/)- This is an interesting technique, use it as inspiration when deciding how to handle your own errors. 32 | * [Flow Logging by Azimuth DS](https://appexchange.salesforce.com/listingDetail?listingId=a0N3A00000EFp89UAD) - Interesting library to use with flow, allowing one to peek into the behaviour of managed packages. 33 | * [Which process failed?](https://www.linkedin.com/pulse/ways-identify-your-failed-flowprocess-builder-sudhir-kumar/) - It is often unclear what flow or other automation failed, here are some tips and tricks. 34 | 35 | 36 | ## 201- for the advanced practitioner 37 | 38 | * [Flow auto bulkification](https://help.salesforce.com/articleView?id=vpm_admin_bulkification.htm&type=5) - Flow will auto bulkify certain actions in flow, you may want to read this one a few times. 39 | * [Size of collection variables](https://jenwlee.wordpress.com/2018/06/26/blink-you-may-have-missed-this-hidden-gem-get-count-via-flow-assignment/) - AKA why you no longer need to count in a loop 40 | * [Pure function flows](https://explorationsintosalesforce.wordpress.com/2017/10/17/calling-subflows-that-do-not-need-input/) 41 | * [Other flow tips and tricks](https://explorationsintosalesforce.wordpress.com/category/flow-tips-tricks/) 42 | * [Example flows](https://sites.google.com/view/flowunofficial/flows) 43 | * [Direct data queries within a flow](https://www.youtube.com/watch?v=Mon6OF_rtfo&feature=youtu.be) - This seems to be the future of flow, it is becoming more and more powerful. 44 | 45 | ## Best practices 46 | 47 | * [Top 10 Best Practices presentation](https://www.salesforce.com/video/1756610/) - Excellent Dreamforce presentation on flow best practices. 48 | * [Flow vs. Process Builder](https://www.adminhero.com/automation-showdown-process-builder-vs-workflow/)- This article explores when to use a process builder and when to use a flow. 49 | * [Platform event considerations](https://developer.salesforce.com/docs/atlas.en-us.platform_events.meta/platform_events/platform_events_process_considerations.htm)- Suggestions for how to best play with platform events. 50 | * [Don't do it all in one flow](https://jenwlee.wordpress.com/2016/10/11/maximize-maintainability-with-process-builder-and-componentized-visual-workflow/) - Modularize your flows. 51 | * [5 best practices](http://succeedwithsalesforce.com/5-best-practices-that-must-be-followed-when-building-flows/) 52 | * [As always, use validation rules](https://salesforcesidekick.com/2015/07/17/validation-rules-in-flow/) 53 | * [Another take on validation rules](https://automationchampion.com/tag/validation-rule-in-flow/) 54 | * [Don't hardcode, make it dynamic!](https://jenwlee.wordpress.com/2017/03/28/did-i-just-see-you-hardcode-a-salesforce-id-aw-hell-no/) 55 | * Process builder best practices related to flow: 56 | * [Consider using invokable processes with your flows](https://help.salesforce.com/articleView?id=process_advanced_invocable.htm&type=5)- Flows are very often fired from within a Process Builder, consider what logic should belong where. 57 | * [Optimum performance in process builders](https://salesforcesidekick.com/2016/05/09/building-your-process-builder-for-optimum-performance-and-bulkification/) 58 | 59 | ## Testing/ Development lifecycle hacks 60 | 61 | * [Load your test data via a CSV](http://www.snugsfbay.com/2016/07/what-load-of-business-data.html)- This is a neat trick to make it easier to maintain valid test data. 62 | * [Pluralsight course on unit testing for admins](https://app.pluralsight.com/library/courses/salesforce-admin-essential-testing-techniques/table-of-contents) - Google for a free trial to plural sight. 63 | * [How I Learned to Stop Worrying and Test My Flow](https://salesforceyoda.com/2014/05/06/how-i-learned-to-stop-worrying-and-test-my-flow/)- Older blog post that still holds a few useful tips and tricks. 64 | * [Don't activate that flow](https://jenwlee.wordpress.com/2018/07/31/flow-tip-got-too-many-flow-versions/)- Blog explaining how in certain circumstances one can avoid activating a flow, creating another version. 65 | 66 | ## Flow Libraries 67 | 68 | * [Process Builder Blocks](https://github.com/mshanemc/processBuilderBlocks)- Quickly delete, manually share and complete other actions with these chunks of apex. 69 | * [Salesforce Flow Utilities Library](https://github.com/thebrettbarlow/FlowUtilities)- Want to dedupe a string collection, remove oxford commas or manage multiple record types? This is the lib for you. 70 | * [Mass action scheduler](https://douglascayers.com/2017/12/25/mass-action-scheduler/)- Allows one to schedule flows to run at particular time. 71 | * [Lightning Flow Components](https://github.com/alexed1/LightningFlowComponents)- Alex Edelstien's inventive flow components. See his [youtube](https://www.youtube.com/user/alexed100/videos) for demonstrations. See this [documentation](https://sites.google.com/view/flowunofficial/flow-screen-components) for further details. 72 | * [Amazon Echo Skill for Salesforce Flow](https://github.com/financialforcedev/alexa-salesforce-flow-skill) 73 | * [Dynamic Flow Component](https://andyinthecloud.com/2017/12/10/introducing-the-dynamic-flow-component/)- Define rules to have a flow fire inside of the lightning utility bar. This is one of the more exciting developments in flow in the recent past, be sure to take a look. 74 | 75 | ## UI 76 | 77 | * [Partial page update in flow](https://medium.com/@alexedelstein/the-update-screen-flow-action-component-2738e55498ff)- Allows one to update details on a page that have been edited by a flow without a full page refresh. 78 | * [Different take on keeping data in sync](https://douglascayers.com/2017/09/12/keep-flows-and-data-in-sync-on-lightning-record-pages-winter-18/) 79 | * Lightning: 80 | * [Replace the Whole Flow Screen with Lightning Components](https://developer.salesforce.com/docs/atlas.en-us.lightning.meta/lightning/components_config_for_flow_screens_replace.htm)- Now that you can hide the default header and footer in a flow screen, you can fully customize your user's experience. 81 | * [creating-lightning-components-for-flow-screens](https://terencechiu.com/2018/06/13/creating-lightning-components-for-flow-screens/) 82 | * [Lightning components in flow](https://developingflow.com/2018/06/11/lightning-components-in-flow/) 83 | * [Trailheadx session on lightning flow](https://developer.salesforce.com/blogs/2018/06/icymi-trailheadx18-4-session-videos-about-process-automation.html) 84 | 85 | ## Updates 86 | 87 | * Spring 18' 88 | * [Dynamic Flow invocation from Apex](https://developer.salesforce.com/blogs/2018/04/adding-clicks-not-code-extensibility-to-your-apex-with-lightning-flow.html)- Powerful new features for invoking flows via apex. Adds mocking/ testing features in to test flow involved apex. Interesting examples of firing different flows based on custom metadata, which can be managed by an admin. 89 | * [Flow local actions](http://releasenotes.docs.salesforce.com/en-us/spring18/release-notes/rn_forcecom_flow_localaction.htm)- With flow local actions, you can call the JavaScript controller of an associated Lightning component, which means you can integrate directly with the browser. 90 | * Summer 18' 91 | * [Cloud Flow Design Guide](http://resources.docs.salesforce.com/214/11/en-us/sfdc/pdf/salesforce_vpm_implementation_guide.pdf) 92 | * [What changed in flow this update?](https://releasenotes.docs.salesforce.com/en-us/summer18/release-notes/rn_forcecom_flow_design.htm) 93 | 94 | ## What makes for an awesome list? 95 | Read [the awesome manifesto](https://github.com/mailtoharshit/awesome-salesforce/blob/master/contributing.md) and see if your list complies. 96 | 97 | Read Related Awesome Pages : 98 | * [Awesome Salesforce](https://github.com/mailtoharshit/awesome-salesforce) 99 | * [Awesome Lighting](https://github.com/mailtoharshit/awesome-lighting) 100 | * [Awesome Salesforce Articles](https://github.com/mailtoharshit/awesome-salesforce-articles) 101 | * [Awesome Browser Extensions](https://github.com/mailtoharshit/awesome-browser-extensions-for-salesforce/blob/master/README.md) 102 | * [Awesome Heroku](https://github.com/mailtoharshit/awesome-heroku) 103 | --------------------------------------------------------------------------------