You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+13-11Lines changed: 13 additions & 11 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@
9
9
### Introduction
10
10
**ActivFlow** is a generic, light-weight and extensible workflow engine for agile development and automation of complex Business Process operations.
11
11
12
-
Developers can emphasize towards mapping the Business Process model as ActivFlow workflow without having to worry about implementing the core workflow processing logic. The generic implementation of the workflow engine manages the automation of the Business Processes from start to finish as per the defined configuration.
12
+
Developers can emphasize towards mapping the Business Process model as ActivFlow workflow without having to worry about implementing the core workflow processing logic. The generic implementation of the workflow engine manages the automation of the Business Processes from start to finish as per the defined flow.
13
13
14
14
What defines an ActivFlow workflow?
15
15
- Business Process flow mapped as ActivFlow configuration
- Activities (States/Nodes) are represented as Django models
38
-
-**AbstractInitialActivity** should be the base for the initial activity
39
-
-**AbstractActivity** should be the base for all other activities
38
+
- Activity must inherit from **AbstractInitialActivity**/**AbstractActivity** respectively
40
39
- Custom validation logic must be defined under **clean()** on the activity model
41
-
- Custom field specific validation should be defined under **app/validator** and applied to the field as **validators** attribute
40
+
- Custom field specific validation should go under **app/validator** and applied to the field as **validators** attribute
42
41
```python
43
42
from activflow.core.models import AbstractActivity, AbstractInitialActivity
44
43
from activflow.leave_request.validators import validate_initial_cap
@@ -67,9 +66,9 @@ class ManagementApproval(AbstractActivity):
67
66
```
68
67
#### Step 3: Flow Definition
69
68
- A flow is represented by collection of Activities (States/Nodes) connected using Transitions (Edges)
70
-
- Rules are applied on transitions to allow switching from one activity to another provided the condition satisfies
69
+
- Rules are applied on transitions to allow routing between activities, provided, the condition satisfies
71
70
- Business Process flow must be defined as **FLOW** under **app/flow**
72
-
- As a default behavior, the Role maps OTO with django Group (this can be customized by developers as per the requirements)
71
+
- As a default behavior, the Role maps OTO with django Group (developers, feel free to customize)
73
72
```python
74
73
from activflow.leave_request.models import RequestInitiation, ManagementApproval
75
74
from activflow.leave_request.rules import validate_request
@@ -101,10 +100,10 @@ def validate_request(self):
101
100
```
102
101
103
102
#### Step 5: Configure Field Visibility (Optional)
104
-
- Include **config.py** in the workflow app and define **ACTIVITY_CONFIG** as Nested Ordered Dictionary if you want to have more control over what gets displayed.
105
-
- Define for each activity model the visibility of fields for display on templates and forms
106
-
-**create:** field will appear on activity create form
107
-
-**update:** field will be available for activity update operation
103
+
- Include **config.py** in the workflow app and define **ACTIVITY_CONFIG** as Nested Ordered Dictionary if you want to have more control over what gets displayed on the UI
104
+
- Define for each activity model, the visibility of fields, for display on templates and forms
105
+
-**create:** field will appear on activity create/initiate form
106
+
-**update:** field will be available for activity update/revise operation
108
107
-**display:** available for display in activity detail view
0 commit comments