- 1. QuickStart
Feature overview
- 2025-12-08 10:07:17
- Kelsea
- 198
- Last edited by Hongyan on 2025-12-08 10:07:17
- Share links
Sanplex’s Workflow feature allows you to not only customize the fields, actions, interfaces, and data within built-in processes but also extend or override system modules. Additionally, you can create new and personalized workflows according to your organization’s specific needs.
1. Terminology
- Workflow: Equivalent to a functional module in Sanplex, such as the Product, Project, or Test.
- Field: A database field or user interface data item, such as Name, Added Date, or Assignee.
- Action: A specific operation, such as Add, Approve, or Reject.
- Trigger: The condition under which an action button is displayed, for example, Status = Pending Review.
- Extended Action (Result): The update or data operation triggered after an action is completed.
- Data Validation: The logic that displays prompts or restrictions when a variable or field has a specific value.
- Notification Settings: Defines which users receive email or popup alerts when an action is performed.
- Interface: The page that displays when an action is executed, defining the visible fields and layout.
- Data Source: The origin of data in dropdowns or lists, which can come from system functions, SQL queries, or custom sources.
- Validation Rule: A method for verifying data format; regular expressions are supported.
- Detail Table: A table that stores detailed records of a process.
- List Tags: Tags in the workflow list view that allow users to filter and browse data.
- Subworkflow: A secondary menu under a main workflow. Subworkflows cannot contain further subworkflows.
2. Creating a New Workflow
On the Workflow → Workflow page, click the Add Workflow button in the top-right corner to create a new workflow.
-
Workflow Name: The display name of the workflow.
-
Icon: The icon displayed in the main navigation when the workflow is published.
-
Workflow Code: Must include English letters and cannot contain spaces or special characters. This code cannot be modified after saving.
-
Parent Object: The object the workflow is associated with, such as Program, Product, Project, or Execution. Leave empty if none.
Example:
- If you select “Product” as the parent object, each workflow entry must specify an “Associated Product.” The top-left corner of the list allows switching between products, and only users with access to a product can view its workflow data.
- If a workflow is associated with Product, Project, or Execution, it can be used in corresponding workflow templates.
-
Navigation Location: Choose whether the workflow appears in the main or secondary navigation bar.
-
View Location: If displayed in secondary navigation bar, specify the primary view under which it appears.
-
Position: Define its display position.
-
Description: A brief description of the workflow.
-
Approval: Specify whether approval functionality is enabled.
图片11
3. Quick Editor
3.1 Interface Design
In Quick Editor mode, you can drag and drop form elements to design pages efficiently. From the left panel, drag components to the preview area, and use the right properties panel to adjust details.
-
Field Name: The displayed data label or database field name.
-
Field Code: Must contain only letters; used for storing database records.
-
Field Type: Supports numeric, datetime, and string types.
- Numeric: tinyint, smallint, mediumint, int, decimal, float, double
- Datetime: date, datetime, timestamp
- String: char, varchar, text
-
Control: Includes label, text box, rich text, date/time picker, single/multi-select dropdown, radio button, and checkbox.
-
Default Value: The defaultvalue displayed for the control.
-
Validation Rule: Use regex or preset rules to verify input.
-
Foreign Key: Used to link child processes; only one is allowed, and it must use a dropdown or radio control. If the field control set as a foreign key is not a drop-down menu or radio button, the system will update the control to a drop-down menu by default and select the data source as the subworkflow.
图片22
4. Advanced Editor
The Advanced Editor provides detailed configuration options, including main table design, subtable design, action design, tag design, and more.
-
Main Table: Configure fields and attributes in the main form.
-
Subtable: Create and configure subtables to store detailed information.
-
Action: Define actions and their properties.
-
Tag: Add filtering tags and configure their behavior.
-
More Settings:
- Cross-Process Settings: Define relationships between related processes (e.g., Meeting Room Management and Meeting Room Booking).
- Report Settings: Create visual reports (pie, line, or bar charts).
- Display Value Settings: Define which values appear in related processes.
- Export Settings: Configure fields that can be exported.
- Search Settings: Define searchable fields.
- JS/CSS: Add custom scripts and styles.
图片33
4.1 Main Table Design
A newly created workflow automatically includes some default system fields that cannot be deleted, but new fields can be added.
图片44
4.1.1 Feild Management
Field Controls:
- Decimal and Integer Controls: Used for numeric data types.
- Time Control: Similar to the Date control, but includes hours, minutes, and seconds.
- Attachment Control: Used for fields requiring file uploads.
- Formula Control: Automatically calculates values based on a defined formula. The target fields used in formulas must be numeric-type controls.
- Dropdowns, Radio Buttons, and Checkboxes: Single-select dropdowns, multi-select dropdowns, radio buttons, and checkboxes all require a data source. Data sources can be Custom, Public Data Source, System User, System Department, Custom SQL, Preceding Process, or Category Setting.
Data Source:
- System Users / System Departments: Calls user and department data from ZenTao’s built-in system.
- Custom: Define your own key-value pairs (for example, Pending Approval, Approved, Rejected).
- Preceding Process: Used when the current process acts as a post-process; the foreign key field pulls data from the preceding process.
- Category Settings: Used to build hierarchical category options. Public data sources can also include shared category data.
Dedault Value:
You can set a default value for a field.
Validation Rule
Validation rules can be selected from those configured under Workflow → Validation Rules.
Note: Built-in system fields cannot be edited or deleted.
图片55
4.1.2 Using Fields from Other Templates
Note: If a workflow belongs to a Product, Project, or Execution, it automatically applies to their corresponding workflow templates. Fields created within different templates are not synchronized with one another. You can use the Use Other Template Fields option to reference fields from another template.
Field Naming Rules
Within the same object, field names and codes must not be duplicated across different templates. This prevents conflicts caused by identical field definitions.
Example:
If Template 1 creates a field named Field A:
- Field A can be referenced by other templates but cannot be modified there—it can only be edited in Template 1, with changes automatically synchronized.
- In other templates, users can unlink the associated field but cannot delete it.
- When Field A is deleted in Template 1, it will also be deleted from all other templates referencing it.
- Only fields that are dropdowns (single or multi-select) or radio/checkbox controls with custom data sources allow separate data-source configuration across templates.
For example:
- In the
Software Template, the story types can be defined as
1, 2, 3. - In the
Hardware Template, the story types can be defined as
3, 4, 5. While data sources differ, their key-value pairs cannot repeat.
图片66
4.2 Subtable Design
Subtables are useful in scenarios such as the built-in Item Purchase process. Similar situations include Referral Management, where a referred candidate may have multiple work history entries, and each entry contains several fields such as company name, start and end dates, and so on.
When designing a subtable, you can create one as needed—for example, a
Purchased Items table in a purchasing process. The system will automatically generate a corresponding database table named flow_<identifier> based on the subtable’s code. By clicking on a field, you can configure which fields are included in the subtable, following the same setup method as with the main table fields.
Example: Adding a “Vehicle Information – Annual Inspection Information” subtable.
图片77
图片88
图片99
4.3 Action Design
Built-in actions include basic operations such as Add, Delete, Edit, View, Import, Export, Reports, Link, and Remove. Enabling an action activates its corresponding feature. These are straightforward, but let’s take a closer look at the Link Data and Remove Data actions.
When the Link Data action is enabled, a Linked Data button appears on the details page. This allows you to associate data from other workflow modules with records in the current table. After linking, corresponding tabs will be automatically generated on the details page, and you can link multiple tables. When the Remove Data action is enabled, you can unlink previously associated data.
4.3.1 Adding and Editing Actions
When an action is added, the main table automatically creates two additional fields — “Action Performed By” and “Action Time.” Therefore, there’s no need to manually add these fields when designing the main table.
Data Operation Mode: Choose whether the action applies to a single record or multiple records in bulk.
Open Mode:
- No Page — For actions that don’t require user input.
- Popup Window — Opens a modal window, suitable for actions requiring short inputs or confirmations.
- Standard Page — Opens a full page, typically for actions that involve more complex data entry or configurations.
Display Position:
- List Page — The action button appears in the operations column of the record list.
- Detail Page — The button appears on the data details page.
- List and Detail — The button is available on both views.
Display:
- On Page — The action button appears directly in the operation column in order.
- In Dropdown — When there are too many actions causing layout overflow, less frequently used actions can be grouped under a dropdown menu, similar to the More option in action design.
图片111
4.3.2 Interface
The Interface section is used to configure how action-related content is displayed. Click the Design button to edit the layout and behavior.
- Click a field name or toggle it using the visibility switch on the right to show or hide fields in the action interface.
- Drag and drop fields to adjust their order on the interface.
- Field width defaults to auto, but you can manually enter a numeric value to customize it.
- Validation Rules can be applied from predefined options to ensure input accuracy when submitting a form.
- Default Values can be set so that commonly used values appear automatically when the page opens, minimizing user input.
- Read-Only fields cannot be modified and are intended for display purposes only.
图片222
When a workflow includes subtables, the main table will automatically contain a field named after each subtable. To display subtable data on the page, both the subtable fields and the field with the same name as the subtable must be visible.
If the process has a preceding workflow, the values of foreign key fields can be displayed in a read-only state by enabling display of the preceding workflow’s fields.
图片333
The View Details interface is slightly different — it allows configuration of field display regions. By default, it includes two sections: Basic Information and Detailed Information. You can replace the Basic Information section with a custom tab label or add more sections to create multiple tabs for organized, customized layouts.
图片444
4.3.3 Interface Linkage
Interface linkage allows you to control the visibility of fields based on the value of other fields.
To configure this, open Interface, then click Interface Linkage at the bottom of the page to maintain linkage settings.
For example:
- When the Usage Type is “Seal”, the Seal Time field should be displayed, while the Borrow Time field should be hidden.
- When the Usage Type is “Borrow”, the visibility is reversed — Borrow Time is shown, Seal Time is hidden.
Both the source field (the condition field) and the target field (the field being shown or hidden) must be from the fields displayed on the action interface.
图片555
图片666
4.3.4 Trigger Conditions
Trigger conditions define when an action is visible or available.
For example, if the Status is “Pending Review” and the current user is the Reviewer, the action becomes available.
The condition type for a trigger can also be determined by a custom SQL query, allowing complex and dynamic logic for when actions should appear or be enabled.
图片777
4.3.5 Extended Actions
Extended actions are follow-up operations that automatically run after an action finishes executing.
They also support trigger conditions — if no condition is defined, the extended action runs unconditionally. Note that these trigger conditions are evaluated before the main action execution, not after.
Extended actions can perform Create, Edit, or Delete operations on tables.
- When performing Create operations, make sure to insert all required fields, and ensure that values meet any validation or format constraints.
- When performing Edit or Delete operations, carefully configure conditions to specify which records are affected — otherwise, the operation might unintentionally modify or delete all records.
图片888
图片999
图片1111
4.3.6 Data Validation
Data validation is used in cases such as checking whether a vehicle being booked is already borrowed.
Keep in mind: when the validation condition is met, the form will not be submitted — meaning it stops submission if the validation fails.
图片2222
图片3333
图片4444
图片5555
4.3.7 Notification Settings
Notification settings function similarly to a “CC” (carbon copy) field. After an action is executed, the system can automatically send popup alerts or email notifications to relevant users, keeping them informed of updates or task progress.
图片6666
图片7777
4.3.8 CSS and JS
You can customize the interface’s style and behavior by writing your own CSS and JavaScript code. These customizations are local, meaning they apply only to the page of the current action, ensuring isolated and safe customization without affecting other pages.
图片8888
图片9999
4.4 Tag Design
A tag functions as a menu that displays data based on specified filter conditions. By configuring these filters, you can control which records appear under each tag. After defining tag view permissions for different users, you can effectively manage what data each user can access and view.
图片11111
图片11111
4.5. More Settings
4.5.1 Cross-Workflow Settings
A typical cross-process use case can be seen in scenarios such as:
- Vehicle Information (pre-process)
- Vehicle Reservation (post-process)
The vehicle information process contains pre-maintained data about available vehicles, and in the vehicle reservation process, users can select from these existing records when making a booking.
Similar setups include Recruitment Management (pre-process) and Referral Management (post-process).
Cross-workflow settings are configured in the pre-process. In the post-process, the field that links to the pre-process must use a dropdown or radio button control, and the data source should be set to the pre-process.
图片22222
图片33333
Within the action configuration, four options define how the pre-process and post-process are linked—the relationship determines how the system associates data between the two workflows.
图片44444
图片55555
4.5.2 Report Settings
The custom report feature enables users to analyze and visualize data easily. Reports support three display types:
- Pie Chart
- Line Chart
- Bar Chart
Dimension refers to the field used for categorization (the “group by” field).
Statistic Type can be set to:
- Count: Shows the number of records per category (dimension).
- Sum: Displays the total of a selected numeric field per category. Only numeric fields (integer or decimal) can be used for summation.
The report summarizes data according to the selected dimension and numeric field.
图片
4.5.3 Display Value Settings
When a cross-workflow relationship is defined, the Display Value Settings feature must be enabled.
This ensures that the post-process displays specific field values from the linked pre-process—making the related information visible and usable across processes.
图片
4.5.4 Export Settings
Once the Export Action is enabled in action design, you must also enable the export feature here and specify which fields should be included in the exported data file.
图片
4.5.5 Search Settings
When the Search function is enabled, users can search for data in the process list view using selected fields as search filters.
4.5.6 Full-Text Search
The Global Search feature allows searching data across all custom workflows. To make data searchable, you must first define the fields to be included in Full-Text Search under More Settings → Full-Text Search, then rebuild the search index for the changes to take effect.
Note:
- Title fields have higher weighting than content fields, so they appear first in search results.
- Rebuilding the index only needs to be done once—after the initial setup.
- Built-in workflows are automatically included in global search and therefore don’t require this setting.
图片
4.5.7 CSS and JS
You can write custom CSS and JavaScript to define styles and interactions. These settings apply globally across the entire workflow, meaning your custom code will load on all pages within the workflow.
图片
4.6. Releasing a Workflow
Once you’ve completed all configurations, the workflow can be released, after which it becomes visible in the system’s frontend navigation.
To make it usable, assign the necessary permissions to relevant users.
If the workflow belongs to a Product, Project, or Execution, it will automatically appear within the related process templates, and any subsequent changes will also sync to those templates.
图片
图片
5. Deactivating and Activating a Workflow
5.1 Deactivating a Workflow
Click Deactivate to disable the workflow—frontend users will no longer be able to access or use it.
If the workflow also exists within a workflow template, deactivation will disable every instance of it across all templates. For example, if “Hardware Design” belongs to Products and appears in all product templates, deactivating it will remove it from all product templates and from the frontend navigation.
图片
5.2 Activating a Workflow
Click Activate to re-enable the workflow.
If the workflow is linked to a Product, Project, or Execution, activation will prompt whether to enable the related template workflows:
- Enable All: Activates the workflow in all templates—both general and custom ones.
- Enable Individually: Only activates the selected workflow; templates must be manually enabled for it to appear in the frontend.
Once activated, users with existing permissions will immediately regain access and can use the workflow from the frontend interface.
图片
Support
- Book a Demo
- Tech Forum
- GitHub
- SourceForge
About Us
- Company
- Privacy Policy
- Term of Use
- Blogs
- Partners
Contact Us
- Leave a Message
- Email Us: [email protected]