73 lines
1.9 KiB
Markdown
73 lines
1.9 KiB
Markdown
# Workflow Definitions
|
|
|
|
This directory contains workflow definitions in JSON format that can be imported into EspoCRM using the workflow manager script.
|
|
|
|
## File Format
|
|
|
|
### Simple Workflow
|
|
```json
|
|
{
|
|
"type": "simple",
|
|
"name": "workflow-name",
|
|
"entity_type": "EntityName",
|
|
"trigger_type": "afterRecordSaved",
|
|
"is_active": true,
|
|
"description": "Description of what this workflow does",
|
|
"category": "Category Name",
|
|
"conditions_all": [],
|
|
"conditions_any": [],
|
|
"conditions_formula": null,
|
|
"actions": []
|
|
}
|
|
```
|
|
|
|
**Trigger Types:**
|
|
- `afterRecordSaved` - After record is created or updated
|
|
- `afterRecordCreated` - Only after record is created
|
|
- `scheduled` - Runs on a schedule
|
|
- `manual` - Manually triggered
|
|
|
|
**Condition Types:**
|
|
- `equals`, `notEquals`, `greaterThan`, `lessThan`, `contains`, `notContains`, `isEmpty`, `isNotEmpty`, `isTrue`, `isFalse`, `wasEqual`, `wasNotEqual`, `changed`, `notChanged`
|
|
|
|
**Action Types:**
|
|
- `sendEmail` - Send email to recipient
|
|
- `createEntity` - Create a new record
|
|
- `updateEntity` - Update current record
|
|
- `relateTo` - Link to another record
|
|
- `unrelateFrom` - Unlink from record
|
|
- `applyAssignmentRule` - Apply assignment rules
|
|
- `createNotification` - Create notification
|
|
|
|
### BPM Flowchart
|
|
```json
|
|
{
|
|
"type": "bpm",
|
|
"name": "flowchart-name",
|
|
"target_type": "EntityName",
|
|
"is_active": true,
|
|
"description": "Description",
|
|
"data": {
|
|
"list": []
|
|
},
|
|
"elements_data_hash": {},
|
|
"event_start_all_id_list": []
|
|
}
|
|
```
|
|
|
|
## Usage
|
|
|
|
Import a workflow:
|
|
```bash
|
|
docker exec espocrm php /var/www/html/custom/scripts/workflow_manager.php import /var/www/html/custom/workflows/your-workflow.json
|
|
```
|
|
|
|
Export a workflow:
|
|
```bash
|
|
docker exec espocrm php /var/www/html/custom/scripts/workflow_manager.php export <workflow-id> /var/www/html/custom/workflows/exported.json
|
|
```
|
|
|
|
## Examples
|
|
|
|
- `vmh-erstberatung-abschliessen.json` - Sends email and sets status when consultation is completed
|