Subprocess
The Subprocess activity groups multiple activities together into a single logical unit.
Purpose
Use the Subprocess activity to:
- Organize complex workflows into logical sections
- Group related activities together
- Improve workflow readability and maintainability
- Create reusable workflow segments
Behavior
Execution Model
- Wait for All: The subprocess waits for all contained activities to complete
- Parallel Support: Activities inside can execute in parallel
- Single Exit: The subprocess completes when all internal activities finish
- Grouping: Provides visual and logical organization
Visual Representation
- Activities are nested inside the subprocess container
- Can be collapsed/expanded in the workflow designer
- Helps manage complex workflows with many activities
Configuration
Edit Mode
- Open: View and navigate the subprocess structure
- Edit: Modify the activities contained within the subprocess
- Activities inside are managed like any other workflow section
Usage Patterns
Logical Grouping
Subprocess: "Data Validation"
├─ Check File Format
├─ Validate Data Types
└─ Verify Required Fields
Parallel Processing
Subprocess: "Multi-Client Processing"
├─ Process Client A ────┐
├─ Process Client B ────┤
└─ Process Client C ────┴──> All Complete
Complex Operations
Subprocess: "Monthly Close"
├─ Calculate Totals
├─ Generate Reports
├─ Send Notifications
└─ Archive Data
Usage Notes
- Completion: Subprocess is marked complete only when all internal activities finish
- Error Handling: If any internal activity fails, the subprocess reflects that status
- Nesting: Subprocesses can contain other subprocesses
- Navigation: Click to drill into subprocess details
- Parameters: Can pass workflow parameters to activities inside
Comparison to Lock Subprocess
| Feature | Subprocess | Lock Subprocess |
|---|---|---|
| Grouping | Yes | Yes |
| Parallel Support | Yes | Yes |
| Mutual Exclusion | No | Yes |
| Use Case | Organization | Serialized Access |
Best Practices
- Use descriptive names for subprocesses (e.g., "Data Validation", "Client Processing")
- Group activities that logically belong together
- Don't over-nest - keep hierarchy manageable
- Use subprocesses to hide complexity from the main workflow view
Visual Benefits
- Collapsed View: Hide implementation details in the main workflow
- Expanded View: See full detail when needed
- Organization: Large workflows become more manageable
- Documentation: Subprocess names serve as section headers
When to Use
- Workflows with more than 10-15 activities
- When logical sections are apparent
- To group parallel operations
- When you want to reuse similar activity patterns
- To improve workflow documentation and readability