Overview

2026-01-09 23:26:13
Sanplex Content
181
Last edited by WANG JING on 2026-01-10 01:02:54
Share links
Summary : Sanplex Workflow enables flexible process creation, extension, and publishing through configurable fields, actions, pages, validations, and cross-process settings, using shortcut or advanced editors.

Sanplex Workflow not only lets you customize fields, actions, pages, and data within built-in processes, but also extend and override built-in processes. You can also create, customize, and configure personalized workflows based on real business needs.

I. Terminology

  • Process: Similar to a functional module concept in Sanplex, such as Product view, Project view, Test view, etc.
  • Field: A database field or a data item displayed on pages, such as Name, Created Time, Assignee, etc.
  • Action: A specific capability, such as Create, Approve, Reject, etc.
  • Trigger Condition: The condition that controls whether a button/action is displayed or available, such as Status = Pending Approval.
  • Extended Action (Result): The data (fields) that should be updated after an action is executed.
  • Data Validation: The prompt shown to users after executing an action when certain variables/fields meet specified values.
  • Reminder Settings: Defines which users will receive reminder emails when an action is executed.
  • Page: The UI shown for an action, including displayed fields, layout positions, etc.
  • Data Source: The data origin for dropdown lists and similar controls. It can call built-in functions, execute SQL, or be customized.
  • Validation Rule: A method to validate data format; regular expressions are supported.
  • Detail Table: Stores detailed record information for a process.
  • List Tabs: Tabs on a process list page; users can browse and view data through these tabs.
  • Sub-process: A second-level menu under a main process, displayed after the main process menus. A sub-process cannot have its own sub-process.

II. Create a Workflow

Go to Workflow > Process, then click Add Process in the upper-right corner to create a new workflow.

  • Process Name: The name of the workflow.
  • Icon: When the workflow is published to the primary navigation, the selected icon will appear on the menu.
  • Process Code: Must contain English letters only and cannot include spaces or special characters. Once saved, the code cannot be changed.
  • Belongs To: The parent object can be Program, Product, Project, or Execution. Leave it empty if not needed. Example: If workflow A belongs to Product, then each record created in workflow A must select an Associated Product. On the workflow A list page, you can switch products in the upper-left corner to view different lists. Only users who have permission for that product can see the data. A process can be used by the corresponding process template only after it belongs to Product / Project / Execution.
  • Navigation: Choose whether to display it in the left primary navigation or the top secondary navigation.
  • View: If displayed in the secondary navigation, select under which primary view it should appear.
  • Position: Sets the display position.
  • Description: A brief introduction to the workflow.
  • Approval: Choose whether to enable the approval feature.

图1

III. Shortcut Editor

1. UI Design

In Shortcut Editor mode, you can quickly design pages by dragging, moving, and editing field controls. Drag controls from the left into the preview area. After selecting a control, fine-tune it in the properties panel on the right.

  • Field Name: The database field or the data item displayed on pages.

  • Field Code: Must contain English letters only; used to store field information in the database.

  • Field Type: Currently supports Number, Date & Time, and String.

    • Number: tinyint, smallint, mediumint, int, decimal, float, double
    • Date & Time: date, datetime, timestamp
    • String: char, varchar, text
  • Control: Supports Label, Textbox, Rich Text, Date, Time, Single-select Dropdown, Multi-select Dropdown, Radio, Checkbox.

  • Default Value: The default value shown by the control.

  • Validation Rule: Validates data format; regular expressions are supported.

  • Key Value (Foreign Key): A foreign key is used to link and display data from a sub-process. Only one foreign key is allowed. A foreign-key field should use a dropdown or radio control. If it is not configured as such, the system will automatically change it to a dropdown and set its data source to the sub-process.

图2

IV. Advanced Editor

In Advanced Editor mode, you can design workflows with richer details, including Main Table, Sub-table, Actions, Tabs, and More Settings. More Settings includes Cross-process, Export, Search, JS, CSS, and more.

  • Main Table Design: Configure fields and attributes on the main table.
  • Sub-table Design: When a main form must capture detailed line items, use sub-tables and configure their fields and attributes.
  • Action Design: Add actions and configure their attributes.
  • Tab Design: Add query tabs and configure their attributes.
  • More – Cross-process Settings: Link multiple related processes, such as Meeting Room Management → Meeting Room Booking.
  • More – Report Settings: Configure charts based on tables and display them in lists.
  • More – Display Value Settings: In downstream processes, display the values of selected fields.
  • More – Export Settings: Allow exporting specific fields.
  • More – Search Settings: Allow searching by specific fields.
  • More – JS: Custom JS settings.
  • More – CSS: Custom CSS settings.

图3

1. Main Table Design

The database table created when you create a process is the main table. The main table includes some default fields that cannot be deleted, you can continue adding required fields.

图4


1.1 Maintain Fields

Field Controls:

  • Decimal and integer fields use number controls.
  • A time control provides hour/minute/second selection in addition to date selection.
  • The attachment control is used for fields that require file uploads.
  • The formula control automatically calculates values based on the configured calculation method. The calculation targets must be numeric fields.
  • Single-select dropdown, multi-select dropdown, radio, and checkbox controls require a data source. Data sources can be Custom, Shared Data Source, Company Users, Company Departments, Custom SQL, Upstream Process, or Category Settings.

Data Sources:

  • Company Users / Company Departments: Use department and user data in the system.
  • Custom: Define key-value pairs, such as Status = Pending Approval / Approved / Rejected.
  • Upstream Process: Used as the data source for a foreign-key field when this process is a downstream process.
  • Category Settings: Used to generate the scenario shown below. You can also add shared category-setting data sources in Shared Data Source.

Default Value: You can set a default value.

Validation Rule: You can select rules configured in Workflow > Validation Rules.

Note: Built-in fields cannot be edited or deleted.

图5


1.2 Use Fields from Other Templates

Note: If this process belongs to Product / Project / Execution, it is automatically applied in the process template. Fields created in different process templates are not synchronized by default. You can click Use Fields from Other Templates to select fields to reuse.

  • For the same object, field names and codes cannot be duplicated across different process templates, to avoid creating identical fields.

Example: After Template 1 creates Field A:

  1. Field A can be referenced by other templates, but cannot be modified there. It can only be modified in Template 1, and changes synchronize to other templates.
  2. Other templates can only unbind the field association; they cannot delete it.
  3. Template 1 can delete the field; after deletion, it is also deleted in other templates.
  4. Only when the field is Single-select Dropdown / Multi-select Dropdown / Radio / Checkbox and the data source is Custom, other templates can edit the field’s data source and configure a new one. Note: key-value pairs in a data source cannot be duplicated. For example, a Software template can set Requirement Type = 1/2/3, while a Hardware template can set Requirement Type = 3/4/5.

图6

2. Sub-table Design

Typical sub-table scenarios: In a built-in Procurement process, you may need multiple line items. Similarly, in a Referral Management process, a candidate may have multiple resume entries, each with Company, Start/End Time, and other fields.

In Sub-table Design, add the required sub-table (for example, a Purchased Items table). The system will create a database table named flow_<code> based on the process code. Click fields to configure the sub-table fields, referencing the main-table field settings.

Example: Add Vehicle Information – Annual Inspection Information

图7

图8

图9

3. Action Design

Built-in actions include basic Create/Read/Update/Delete, Import/Export, Report, Link, Remove, and more. Enabling an action turns on the corresponding capability. Here we focus on Link Data and Remove Data.

After enabling Link Data, a Link Data button appears on the detail page. You can link records from tables generated by workflow modules; after linking, corresponding tabs are generated on the detail page. Multiple tables can be linked. Enabling Remove Data allows you to remove linked data.


3.1 Create / Edit Actions

Note: After you add an action, the main table automatically generates two fields: Action By and Action Time. Therefore, you do not need to add such fields in main-table design.

  • Data Operation Mode: Operate on a single record or in batch.

  • Open Mode:

    • No Page: Suitable for actions that require no input.
    • Modal: Opens a modal window.
    • Standard Page: Opens a new page. Modal and Standard Page are used when input is required.
  • Display Location:

    • List Page: The action appears in the action column on the list page.
    • Detail Page: The action button appears on the detail page.
    • List & Detail: Appears in both places.
  • Display Style: Displayed directly means actions appear in sequence in the list action column. When there are many actions, it may cause excessive width. In that case, set less-used actions to display in a dropdown menu, similar to More in action design.

图10


3.2 Page

Pages configure what each action displays. Click Design to maintain page content.

  • Click a field (or use the show/hide toggles on the right) to control whether it is shown on the action page.
  • Drag fields to adjust the field order on the action page.
  • Width defaults to Auto; you can enter a number to customize the width each field occupies.
  • Validation rules can use predefined rules to validate fields on form submission.
  • Default values can prefill common values when the page opens, reducing user effort.
  • Read-only makes a field non-editable, suitable when you only want to display information.

图11

Note: If the process includes sub-tables, the main-table fields will include an additional field with the same name as the sub-table. To show sub-table fields on the page, you must show both the sub-table fields and the same-named sub-table container field.

If the process has an upstream process, you can display upstream process fields as read-only values when showing the foreign-key field.

图12

The View Detail page is slightly special: you must set field display positions. By default, it has two blocks: Basic Info and Details. You can replace the Basic Info block label with custom block labels to implement multiple blocks and multiple tabs.

图13


3.3 Page Linkage

Page linkage controls show/hide behavior: when a field equals a certain value, specified fields can be shown or hidden.

Go to Page maintenance, then click Page Linkage at the bottom to configure it.

Example: When Usage Type = Stamping, show Stamping Time and hide Borrow Time, when Usage Type = Borrowing, do the opposite. Source and target fields come from the fields displayed on the action page.

图14

图15


3.4 Trigger Condition

A trigger condition controls when an action is displayed or available. For example, when Status = Pending Approval and the current user is the approver, the action is available. The condition type can also be judged by a handwritten SQL query.

图16


3.5 Extended Action

An extended action is an additional operation associated with an action after execution. Extended actions also support trigger conditions (if not set, they execute unconditionally). Note: this trigger condition is evaluated before the action executes to decide whether to run the extended action, not after the action completes.

Extended actions can create, edit, or delete records in tables. For creation, ensure required fields are inserted and constrained fields match required formats. For edit/delete, conditions should usually be configured; otherwise, edits/deletes may apply to all records.

图17

图18

图19


3.6 Data Validation

Data validation is mainly used for scenarios such as checking whether a preferred vehicle is already borrowed in a vehicle booking process. Note: when the configured condition is met, the form will not submit (not the other way around).

图20

图21

图22

图23


3.7 Reminder Settings

Reminder settings act like a CC mechanism for fields: after an action is executed, relevant users receive pop-up or email reminders.

图24

图25


3.8 CSS / JS

You can customize styles and interactions by writing CSS and JS code. CSS/JS here is action-level, and only takes effect on the current action page.

图26

图27

4. Tab Design

A tab is a menu entry that filters data to be shown under that tab by setting query conditions. After setting tab access permissions for different users, you can control data visibility.

图28

图29

5. More Settings

5.1 Cross-process Settings

Typical scenario: A built-in Vehicle Information process (upstream) and a Vehicle Booking process (downstream). Vehicle Information must be maintained first; in Vehicle Booking, users can select maintained vehicles for booking. Similar scenarios include Recruitment Management (upstream) and Referral Management (downstream).

Cross-process settings are configured in the upstream process. In the downstream process, the foreign-key field control should be a dropdown or radio, and its data source should be the upstream process.

图30

图31

The four options in Actions can define the relationship between upstream and downstream processes. The system presentation is as follows:

图32

图33


5.2 Report Settings

Custom Reports help users analyze data. Reports support Pie, Line, and Bar charts. A dimension can be understood as “group by which field”.

Statistics types include Count and Sum:

  • Count: groups by the selected dimension and shows the number of records per dimension.
  • Sum: requires selecting a numeric field as the metric (must be a numeric control: decimal or integer). Report statistics will sum the metric values under each dimension.

图34


5.3 Display Value Settings

If downstream processes are configured in cross-process settings, you need to enable Display Value Settings so the downstream process can display values of selected fields.

图35


5.4 Export Settings

After enabling the Export action in Action Design, you must enable export here and specify which fields can be exported.

图36


5.5 Search Settings

After enabling search, the process list page can search data using selected fields.

图37


5.6 Full-text Search

Global search can search data in custom processes. In More Settings > Full-text Search, save the indexed fields, then rebuild the index for it to take effect. When configuring fields, title fields have higher weight than content fields and will be prioritized in results.

Note: rebuilding the index is only required once when you configure it the first time; later changes do not require rebuilding. Built-in workflows do not have this setting because they are searchable by default.

图38


5.7 CSS / JS

You can customize styles and interactions by writing CSS and JS code. CSS/JS here is process-level, and loads on all pages.

图39

6. Publish Workflow

After completing configuration, you can publish the workflow. Published workflows appear in the front-end navigation.

  • After publishing, relevant users must be granted permissions before they can use the workflow.
  • If this workflow belongs to Product / Project / Execution, it will be automatically added to the corresponding process templates, and related changes will synchronize to those templates.

图40

图41

V. Disable / Enable Workflow

1. Disable Workflow

Click Disable to disable the workflow; front-end users can no longer use it.

  • If the process also exists in a process template, disabling it will also disable all corresponding instances in that template and remove them from display.
  • Example: If “Hardware Design” belongs to Product and is displayed in all product process templates, disabling it here will remove it from all product process templates and the front-end product navigation menu.

图42

2. Enable Workflow

Click Enable to re-enable the workflow.

  • If this workflow belongs to Product / Project / Execution and therefore also exists in process templates, enabling will ask whether to enable the common and custom processes in templates:

    • Enable All: Enables all workflows in all process templates, including common and custom ones.
    • Enable Individually: Enables only this object; workflows in process templates remain disabled. Users must enable the corresponding workflow in the template before it appears on the front end.
  • If the workflow belongs to Product / Project / Execution, after enabling, users who already have permissions can use it directly on the front end.

图43

Write a Comment
Comment will be posted after it is reviewed.