# ~Workflows

# Overview

The **Workflows** module allows users to create and manage structured workflows.

A workflow can contain:

- Tasks
- Content
- Stages
- Inputs
- Triggers
- Templates
- Database Columns
- Input Forms
- Input Orders
- Access
- Models
- Display

## Recommended Workflow Creation Flow

Excel Planning  
↓  
Create Workflow  
↓  
Create Stages  
↓  
Create Database Columns  
↓  
Create Inputs  
↓  
Create Input Forms  
↓  
Add Questions  
↓  
Configure Input Order  
↓  
Configure Access  
↓  
Configure Config / Models / Display  
↓  
Configure Triggers  
↓  
Configure Templates  
↓  
Test Workflow  
↓  
Publish Workflow

---

### Workflow Planning Using Excel

Before creating the workflow in the application, prepare an Excel planning sheet.

The Excel sheet should be used as the master planning document for the complete workflow.

### Recommended Excel Columns

| Column | Description |
|---|---|
| Workflow Name | Name of the workflow |
| Stage Order | Sequence of the stage |
| Stage Name | Name of the workflow stage |
| Input Name | Name of the required input |
| Question | Question displayed to the user |
| Question Type | Type of question/input |
| Database Column | Database column where the response is stored |
| Mandatory | Whether the field is mandatory |
| Input Order | Sequence of questions |
| Access | User/role having access |
| Trigger | Trigger required for the workflow |
| Trigger Condition | Condition for the trigger |
| Action | Action to be performed |
| Template | PDF/Email template requirement |
| Expected Result | Expected workflow behavior |
| Remarks | Additional information |


### Create a New Workflow

#### Navigation

**Left Sidebar → Add-ons → Workflows → Add New**

#### Steps

1. Open **Workflows**.
2. Click **Add New**.
3. Enter the workflow name in the **Title** field.
4. Click **Save**.
5. Open the newly created workflow.

#### Fields

| Field | Description |
|---|---|
| Title | Name of the workflow |
| Save | Creates the workflow |
| Close | Cancels the operation |

---

###  Workflow Configuration

After creating a workflow, the following sections are available:

- Tasks
- Content
- Stages
- Inputs
- Triggers
- Templates

#### 1. Content Sections

- Manage
- Creator
- Database Column
- Config
- Models
- Access
- Input Forms
- Input Orders
- Display

---

###  Create Workflow Stages

Stages define the different steps or phases of a workflow.

### Navigation

**Workflow → Stages → Add New**

### Steps

1. Open **Stages**.
2. Click **Add New**.
3. Enter the stage name.
4. Click **Save**.
5. Repeat the process for all required stages.

### Example

- Stage 1: Employee Details
- Stage 2: Request Details
- Stage 3: Manager Approval
- Stage 4: Final Approval
- Stage 5: Completed

### Workflow Stage List

| Field | Description |
|---|---|
| # | Stage serial number |
| Title | Stage name |
| Updated At | Date and time when the stage was last updated |
| Published | Publication status |
| Closed | Indicates whether the stage is closed |
| Action | Available actions |

---

### Create Database Columns

Database columns define where workflow information and form responses are stored.

#### Navigation

**Workflow → Content → Database Column**

#### Steps

1. Open **Database Column**.
2. Review the Excel planning sheet.
3. Identify all required data fields.
4. Create the required database columns.
5. Use meaningful and unique column names.
6. Map the relevant form inputs/questions to the appropriate database columns.

#### Example

| Form Field | Database Column |
|---|---|
| Employee Name | employee_name |
| Employee ID | employee_id |
| Department | department |
| Request Type | request_type |
| Description | description |
| Approval Status | approval_status |

#### Recommended Naming Convention

Use simple and consistent database column names.

- `employee_name`
- `employee_id`
- `department`
- `request_type`
- `description`
- `approval_status`
- `created_date`
- `updated_date`

---

### Create Workflow Inputs

Inputs define the information that needs to be collected during the workflow.

#### Navigation

**Workflow → Inputs → Add New**

#### Steps

1. Open **Inputs**.
2. Click **Add New**.
3. Enter the input title.
4. Click **Add**.
5. Repeat the process for all required inputs.

#### Example

- Employee Name
- Employee ID
- Department
- Request Type
- Description
- Approval Status

#### Workflow Inputs List

| Field | Description |
|---|---|
| # | Input serial number |
| Title | Input name |
| Updated At | Date and time when the input was last updated |
| Published | Publication status |
| Action | Available actions |

---

### Create Input Forms

Input Forms are used to present inputs and questions to users.

##### Navigation

**Workflow → Content → Input Forms**

### Steps

1. Open **Input Forms**.
2. Create the required form.
3. Add the required inputs/questions.
4. Configure each question.
5. Set mandatory or optional fields.
6. Map questions to the appropriate inputs.
7. Map responses to the relevant database columns.
8. Save the form.

---

### Add Questions to Input Forms

After creating the form, add questions according to the Excel planning sheet.

#### Employee Details Form

1. Enter Employee Name
2. Enter Employee ID
3. Select Department

#### Request Details Form

1. Select Request Type
2. Enter Description

#### Approval Form

1. Select Approval Status
2. Enter Approval Comments

#### Question Configuration

| Property | Purpose |
|---|---|
| Question | Text displayed to the user |
| Input | Associated workflow input |
| Type | Type of response |
| Required | Makes the question mandatory |
| Database Column | Stores the response |
| Default Value | Optional predefined value |
| Display | Controls visibility |

---

### Configure Input Order

Input Orders control the sequence in which inputs/questions are displayed.

#### Navigation

**Workflow → Content → Input Orders**

#### Steps

1. Open **Input Orders**.
2. Select the required inputs/questions.
3. Arrange them according to the Excel planning sheet.
4. Verify the sequence.
5. Save the configuration.

#### Example

1. Employee Name
2. Employee ID
3. Department
4. Request Type
5. Description
6. Approval Status

---

### Configure Access

Access controls determine which users or roles can access the workflow and its components.

#### Navigation

**Workflow → Content → Access**

#### Steps

1. Open **Access**.
2. Identify the required users or roles.
3. Assign the required access.
4. Configure permissions according to the workflow requirements.
5. Save the configuration.
6. Verify access using the appropriate user/role.

#### Example

| Stage | User/Role | Access |
|---|---|---|
| Employee Details | Employee | Create/Edit |
| Request Details | Employee | Create/Edit |
| Manager Approval | Manager | Review/Approve |
| Final Approval | Admin | Review/Approve |
| Completed | Employee | View |

---

### Manage Workflow

The **Manage** section is used to update workflow information and publication status.

#### Navigation

**Workflow → Content → Manage**

#### Manage Title

1. Open **Manage**.
2. Enter or update the workflow title.
3. Click **Save**.

#### Publication Status

The workflow publication status is displayed in the Manage section.

The workflow should normally be published only after configuration and testing are completed.

---

### Config

The **Config** section is used for workflow-specific configuration.

#### Navigation

**Workflow → Content → Config**

#### Steps

1. Open **Config**.
2. Review the available configuration options.
3. Configure the required settings.
4. Save the configuration.
5. Verify the configuration during testing.

---

### Models

The **Models** section is used to configure the models/data structures required by the workflow.

#### Navigation

**Workflow → Content → Models**

#### Steps

1. Open **Models**.
2. Review the available models.
3. Configure the required model/data structure.
4. Save the configuration.
5. Verify the model during workflow testing.

---

### Display

The **Display** section controls how workflow information is presented.

#### Navigation

**Workflow → Content → Display**

#### Steps

1. Open **Display**.
2. Configure the required display settings.
3. Save the configuration.
4. Verify the displayed information during testing.

---

### Configure Triggers

Triggers are used to automate workflow behavior based on conditions or events.

#### Navigation

**Workflow → Triggers → Add New**

#### Steps

1. Open **Triggers**.
2. Click **Add New**.
3. Enter the trigger title.
4. Configure **Watchers**.
5. Configure **Events**.
6. Configure the **IF Condition**.
7. Configure the required **Action**.
8. Click **Add**.

---

### Configure Trigger Watchers

Watchers define which workflow component the trigger monitors.

### Steps

1. Open the **Watchers** section.
2. Select the required workflow component.
3. Click **Add More +** if additional watchers are required.
4. Add all required watchers.
5. Verify the selected watchers.

---

### Configure Trigger Events

Events define what should happen when a trigger condition is satisfied.

Click **Add More Event +** to add additional events.

Each event contains:

**IF Condition → Action**

---

### Configure IF Condition

The IF condition contains the following fields:

| Field | Description |
|---|---|
| Select | Select the condition source |
| Choose Data | Select the data to evaluate |
| Choose Op | Select the comparison operator |

#### Example

**IF Status = Approved**

The available options depend on the workflow configuration.

---

### Configure Trigger Action

After configuring the condition, configure the required action.

| Field | Description |
|---|---|
| Action Type | Defines the action to perform |
| Enable | Enables or disables the selected action |

Additional options may include:

- Delete Action
- Delete Event
- Add More Event

---

### Templates

Templates are used when the workflow requires generated documents or automated emails.

### Navigation

**Workflow → Templates**

Available sections:

- Configuration
- PDF Template
- Email Template

---

### Template Configuration

The Configuration section allows you to configure the workflow timezone.

#### Navigation

**Workflow → Templates → Configuration**

#### Timezone

1. Open the **Timezone** dropdown.
2. Select the required timezone.
3. Click **Update**.
4. Verify the configured timezone.

---

#### Create PDF Template

PDF templates can be created when the workflow requires PDF documents.

#### Navigation

**Workflow → Templates → PDF Template → Add New**

#### Steps

1. Open **PDF Template**.
2. Click **Add New**.
3. Configure the template according to the workflow requirements.
4. Add the required workflow data/content.
5. Save the template.
6. Test PDF generation.
7. Verify the generated PDF.

---

### Create Email Template

Email templates can be configured for automated workflow communication.

#### Navigation

**Workflow → Templates → Email Template → Add New**

#### Steps

1. Open **Email Template**.
2. Click **Add New**.
3. Configure the email template.
4. Add the required content/data.
5. Save the template.
6. Test the email functionality.
7. Verify the generated email.

---

### Tasks

The **Tasks** section allows users to view and manage workflow tasks.

#### Task Filters

##### Select Stage

Use **Select Stage** to filter tasks according to a specific workflow stage.

##### Select Type

Tasks can be filtered by:

- Live
- Test

---

### Task List

The task table contains the following fields:

| Field | Description |
|---|---|
| ID | Unique task identifier |
| Download | Download option where available |
| Type | Live or Test |
| Title | Task title |
| Workflow Stage | Associated workflow stage |
| User Name | Associated user name |
| User Email | Associated user email |
| User Phone | Associated user phone |
| Created | Task creation date and time |
| Updated | Last update date and time |

#### Task Actions

Available actions include:

- Refresh
- Export
- Search
- Show Entries

---

### Workflow Testing

Before publishing the workflow, perform complete functional testing.

#### Testing Flow

Create Test Task  
↓  
Start Workflow  
↓  
Verify Stage 1  
↓  
Submit Form  
↓  
Verify Database Data  
↓  
Move to Next Stage  
↓  
Verify Access  
↓  
Verify Trigger  
↓  
Verify Notifications/Templates  
↓  
Complete Workflow

---

### Workflow Testing Checklist

| Test Area | Verification |
|---|---|
| Workflow | Workflow created successfully |
| Workflow Title | Correct workflow name |
| Stages | All required stages created |
| Stage Order | Correct stage sequence |
| Inputs | All required inputs created |
| Input Forms | Forms created correctly |
| Questions | All required questions added |
| Question Type | Correct question/input type |
| Mandatory Fields | Required fields working correctly |
| Database Columns | Responses stored correctly |
| Input Order | Questions displayed in correct order |
| Access | Correct users/roles have access |
| Config | Configuration works correctly |
| Models | Required models work correctly |
| Display | Data is displayed correctly |
| Triggers | Conditions and actions work correctly |
| PDF Template | PDF generated correctly |
| Email Template | Email generated/sent correctly |
| Tasks | Test tasks work correctly |
| Publication | Correct publication status |

---

### Publish Workflow

The workflow should be published only after successful testing.

#### Pre-Publication Checklist

- [ ] Workflow Name Verified
- [ ] All Stages Created
- [ ] Stage Sequence Verified
- [ ] Database Columns Created
- [ ] Inputs Created
- [ ] Input Forms Created
- [ ] Questions Added
- [ ] Question Types Verified
- [ ] Mandatory Fields Verified
- [ ] Input Order Verified
- [ ] Access Configured
- [ ] Config Verified
- [ ] Models Verified
- [ ] Display Verified
- [ ] Triggers Configured
- [ ] Triggers Tested
- [ ] PDF Template Tested
- [ ] Email Template Tested
- [ ] Test Tasks Completed
- [ ] Database Data Verified
- [ ] Access Verified
- [ ] Final Workflow Review Completed

After all checks are completed, publish the workflow.

---

### Complete End-to-End Workflow

The complete workflow creation process is:

1. Prepare Excel Planning Sheet
2. Create Workflow
3. Create Workflow Stages
4. Create Database Columns
5. Create Workflow Inputs
6. Create Input Forms
7. Add Questions
8. Configure Input Order
9. Configure Access
10. Configure Config
11. Configure Models
12. Configure Display
13. Configure Triggers
14. Configure Templates
15. Create Test Task
16. Test Complete Workflow
17. Verify Database Data
18. Verify Access
19. Verify Triggers
20. Publish Workflow

---

### Quick Reference

| Step | Module | Action |
|---:|---|---|
| 1 | Excel | Plan complete workflow |
| 2 | Workflows | Create workflow |
| 3 | Stages | Create workflow stages |
| 4 | Database Column | Create database columns |
| 5 | Inputs | Create workflow inputs |
| 6 | Input Forms | Create input forms |
| 7 | Input Forms | Add questions |
| 8 | Input Orders | Arrange questions |
| 9 | Access | Assign permissions |
| 10 | Config | Configure workflow |
| 11 | Models | Configure models |
| 12 | Display | Configure display |
| 13 | Triggers | Configure automation |
| 14 | Templates | Configure PDF/Email |
| 15 | Tasks | Create test task |
| 16 | Testing | Test complete workflow |
| 17 | Manage | Publish workflow |

---

### Final Workflow Structure

Workflow

- Planning
  - Excel Master Sheet

- Workflow
  - Workflow Title

- Tasks
  - Live
  - Test

- Content
  - Manage
  - Creator
  - Database Column
  - Config
  - Models
  - Access
  - Input Forms
  - Input Orders
  - Display

- Stages
  - Stage 1
  - Stage 2
  - Stage 3
  - Stage 4
  - ...

- Inputs
  - Input 1
  - Input 2
  - Input 3
  - ...

- Triggers
  - Watchers
  - Events
    - IF Condition
    - Action

- Templates
  - Configuration
    - Timezone
  - PDF Template
  - Email Template

---

### Recommended Implementation Rule

The **Excel Master Sheet should always be prepared first**.

The workflow should then be configured in the following order:

**PLAN → CREATE → CONFIGURE → MAP → GIVE ACCESS → AUTOMATE → TEST → PUBLISH**

This sequence helps maintain consistency between the planned workflow and the actual application configuration and reduces configuration errors.