Template Workflow Design
At the heart of every template lies its logic, encompassing a series of operations from data retrieval to PDF creation, saving, and emailing. This logic is encapsulated within a Flow, which delineates the various paths the logic can follow.
Given that Flows are essentially lightweight programs, modifying and creating them demands a certain level of expertise. This documentation section aims to provide the necessary knowledge and guidance for this task.
For a more user-friendly approach to configuring the workflow, working with settings offers a simplified interface. Through this intuitive interface, users can efficiently manage most of their workflow requirements. Further details on this can be found here.
The fundamentals
The first recommended topic for readers new to Flow is Flow structure. It's best to know the building blocks of the Flow before getting into more details of how it works.
The next recommended topic following the introduction of the Flow's structural elements is Routes through the Flow. How a Flow advances through its Steps is the basically most important concept in this logic model.
If one happens to be familiar with the preceding logic model of Dynamo templates, the Document Controller, taking a look at the differences between Document Controller and Flow may be a good idea. Many elements in the Flow are quite similar to how things used to be.
The details
A commonly occurring special step in Flows is the Form. For details about these visual tools of Flows, see How does Forms in the Flow model work.
Unless used through API services, Flows provide messages as they progress, as described in Messaging to End-users in Flow. See how to customize these bits of communication to your liking.
A template doesn't necessarily contain just one Flow. Office templates even have two by default. Flows can exist for different purposes; the common types are introduced in Different Flow types.
With several Flows present, it is possible to make them work together in certain ways. Flow Cooperation shows how to do this either with Flow steps or a specific tag.
Flows need to fulfill certain conditions in order to be considered valid, as described in Validity and Limitations. A set of limitations also exists that Flows need to follow when running - designers should be aware of these.