The flow wizard
The eight steps that turn an empty flow into a publishable configuration.
The wizard walks the eight decisions a flow needs, in the order they depend on one another. You can move between steps freely — the order is a recommendation, not a lock — but a step that is unfinished will say so, and publishing is refused until all of them are settled.
The eight steps
Name and claim
Name the flow and declare what it is responsible for. This is where the starting words or the pattern are actually entered, having chosen the claim type at creation.
Unfinished until: the flow has a name and says which messages it answers.
Source
Choose the channel signals arrive on, and where they are stored — a DHIS2 program and a program stage.
Unfinished until: a program and a stage are chosen.
Identity
Decide how a reporter is recognised and verified: the tracked entity attribute holding the phone number, the organisation unit to search beneath, and the accepted phone number formats.
Unfinished until: a phone attribute, a search root, and at least one format are set.
Grammar
Define the message shape the flow accepts and how it is parsed, including the option set the signal codes come from and the name of the token that carries the code.
Unfinished until: an option set is chosen and the code token is named.
Mapping
Map parsed values onto DHIS2 data elements and organisation units.
Unfinished until: every compulsory data element has a source.
Replies
Write the confirmations and errors sent back to the reporter.
Unfinished until: both the accepted and the unknown-code replies are written.
Recipients
Choose who is alerted when the flow raises a signal.
Unfinished until: there is at least one rule and an alert message.
Test and publish
Run a test signal end to end, then make the flow live.
Order of dependencies
Three steps depend on earlier ones, which is why the order is what it is.
- Grammar needs the option set before signal codes can be curated, so the Codes tab stays empty until Grammar is settled.
- Mapping needs the program stage chosen in Source before it knows which data elements exist.
- Identity needs the search root before phone lookups can resolve to a reporter.
Save as you go
Progress is saved against the flow, not held in the browser. The workspace shows when there are unsaved changes; save before leaving, because publishing is refused while any remain.
Reading the blocked messages
A step that is not finished says exactly what is missing rather than only that something is. "Every compulsory data element needs a source" means the Mapping step has a required data element with nothing mapped to it — not that mapping is broken in general.
The Test and publish step lists every unfinished step at once, which makes it the fastest way to see how far from publishable a flow is.
Next
Once Grammar is settled, curate the signal codes in Codes and families.