From RPM Wiki
| Table of contents |
[edit]
Summary
This is one of the methods of Form relationships. A flow defines how a form in a process can be started by copying data from a form in a different process.
The goal of this feature is to allow complex, but mostly linear business processes to be defined as smaller processes in RPM. For example, the large procurement process could be opportunity, quote, and order processes.
[edit]
Details
[edit]
Relationship
- Every flow has a source process and a target process.
- Each flow must have a unique combination of source and target processes.
- The source and target processes must be different
- When a flow is used there is a source form and a new form.
- A single source form can flow into multiple new forms or can be optionally restricted to being used once.
- Obviously any given new form can only have come from a single source form.
- A form can be both a new form from one flow and then act as the source form for one or more flows down the line, and so on.
- Example: Imagine an "Opportunity" process where forms becomes one or more "Quotes". Some quotes will then become an "Order". Finally, most orders will become an "Expected commission".
[edit]
Setup
- "Flow designer" link from processes page "Setup" section
- Flows page lists existing flows in a grid. "Add" link in the toolbar.
- In the add wizard the user selects the source and target processes. These can not be changed later.
- The flow details page has 3 boxes
- Options
- Status map
- Field map
- Options
- Copy participants yes/no (default yes)
- Copy files yes/no (default no)
- Allow multiple yes/no (default yes)
- Status map
- Lists each status level of the source process
- For each the user can select "Don't allow" (default) or a status level in the target process.
- Field map
- The following fields are listed:
- All reference fields except supplier fixed and supplier-multi select
- Text box, text area, and link
- List and list multi-select (values must be exact match to copy, see "Start" below)
- Date, Money, Number, Yes/no
- Table (we allow any table to any table since table values don't need to match columns)
- For each the designer can select "Don't copy" (default) or a field in the target process to map to. Eligible target fields include fields of the same type and text fields.
- A target field can be used more than once. If a target field is used more than once then it gets filled in by the first non-empty source field in the map starting from the top.
- This is to allow situations where there's a field in the source process that should only be there once, but required making a few fields for field group purposes. However, in the target process it's just one field. The intention is that only one of those source fields should be filled in.
- The following fields are listed:
[edit]
Start
Making use of a flow is really just starting the new form normally except that when started through a flow some fields will have data already filled in. Also, the new form may start at a different status level than normal.
- The regular start wizard is shown as specified in the target process template. Depending on the setup this may mean the wizard is always shown or just if there are required fields that weren't covered by the "from" form. In any case, when the wizard is shown any copied fields are shown with their copied fields filled in.
- The status level used for the new form is by default the starting status level of the target template or may be set to something else in the flow setup.
- The form is considered to start at this status level without ever having been at the previous levels. This doesn't make an obvious difference to the user, but is important for the history.
- Repeating fields
- In the source form, only the master form values are copied.
- In the new form no repeating fields are added by form start.
- Status triggers are not fired on the new form no matter what is filled in by the copy. After the new form is created, further edits fire status triggers normally.
- All fields defined in the map are copied regardless of the security rules or visibility of the source and target fields.
- Field value copy
- Reference fields get the new value. If the map doesn't map the parent field then the target needs to have the parent field filled in as well. If there is a conflict (one field mapped to parent, different child mapped to the child) then only copy the parent. In the situation a customer ref with no parent is mapped to a customer ref with a parent then the value can not be copied.
- List fields only copy a value if the option is an exact match
- Participants copy
- If the participants option is selected then copy all participants to the new form but only if they have the security to be participants in the target process.
- Owner
- The new owner is staff user who initiated the flow
- Finish redirect
- Success: The new form
- Cancel: The source form
[edit]
Form
In the form links are shown to related from and to forms as well as links to start a form using a flow if eligible.
[edit]
Deleting
- Source template status level
- Remove that entry in the status map of any applicable flows.
- Target process status level
- If used in a flow status map that entry becomes "Don't allow".
- Source template field
- Remove that entry in the field map of any applicable flows.
- Target process field
- If used in a flow field map that entry becomes "Don't copy"
- Source or target process
- Any flows using that process are also put in the bin.
- Revered on restore (if the other process is also still active)
[edit]
Form history
Category, What, Method, Value
- New form
- "The form", "Start", "Flow", "{source process} {source form number}"
- "{field}", "Edited", "Flow", "{value}"
- For each field copied in the flow. If in the start wizard the user overwrites a field with their own input then the method is "Edit", not flow.
- Source form
- "The form", "Flow", "Flow", "to {target process} {new form number}"
[edit]
More rules
- The source form being under approval does not affect the copy.
- Reconciliation, notes, and global attachments are not copied.
- The option to only allow a source form to flow once checks for any forms already started that aren't in the trash. This same check needs to be run when restoring a form.
- Example: I've setup a flow from "Quotes" to "Orders" and specify that a quote can only flow to one order. If I start an order from a quote then trash that order, I will then be albe to flow a new order from that same quote. The existence of that new order will prevent me from restoring the previous one from the trash because of the allow multiple = false setting in the flow.
[edit]
Security
[edit]
Staff users
- Setup requires processes.design
- Starting a form by a flow requires the ability to see the source form (but you don't need to be able to edit it) and the ability to start forms in the target process.
[edit]
Agent users
- Starting a form by a flow requires the ability to see the source form (but you don't need to be able to edit it) and the ability to start forms in the target process.
[edit]
History
- Tommy and Gina: Feature deployed
[edit]
Future
- Option per field to not only copy the field value, but also create a link that updates the source form with changes in the new form.
- Funnel report that spans multiple linear flows. Example: Opportunity to Quote to Order.
- This page was last modified 00:30, 20 Apr 2009.
- This page has been accessed 6229 times.
