# Preface

> This website provides version-related information only. If you require an operation manual, please contact the product support site or the manufacturer.


# Release Notes

***

## Latest Version

#### Patch 1.2.7.2 (2026-08-10)

* **My Tasks**: Fixed an issue where the Last Updated Date and Request Creation Date fields displayed incorrect data.
* **Application Management**: Fixed an issue where External Lookup fields in Subtables within the Form Designer could not retrieve data.
* **Archive**: Fixed an issue where archived records could not display their history under certain conditions.
* **Archive**: Fixed an issue where archived workflows could not be published.
* **System Settings**: Updated the help tooltip for the IP field in Login IP Management.

#### Final Release 1.2.7.1 (2026-07-08)

* **Notification Settings**: Fixed an issue that caused errors during user parameter import.
* **Archiving**: Fixed an issue preventing archived documents from being viewed after a version upgrade.

#### Release Candidate 1.2.7.0 (2026-06-23)

* **Left Menu**: Fixed the issue where the menu wouldn't automatically revert after being minimized in sync with the window.
* **My Tasks**: Fixed the issue where the person who created the order couldn't track forms with only design approval.
* **My Tasks**: Fixed the issue where closed tasks would display all task progress; now only the last task is shown.
* **My Tasks**: Fixed the issue where the "Dispatch Recipient" field would display null when empty.
* **Service Request**: Added a mandatory field check mechanism when clicking "Next".
* **Approval**: Added mandatory field settings to the comments field.
* **Approval**: Added a preview function to approval record attachments.
* **Approval**: Fixed the issue where an error would occur when a copy of the comments request notification was sent simultaneously.
* **Application Management**: The order creation, order promotion, and approval processes can now be configured to require a second password (2FA).
* **Application Management**: Added full data clearing when the application is removed from the app store.
* **Application Management**: Added a default value setting function to sub-query fields
* **Application Management**: Single/multiple selection fields are now uniformly named "Checkmark" fields
* **Application Management**: When a data verification error occurs, the message "Data Verification Failed" will now be displayed.
* **Application Management**: Fixed an error in the "Data Tools" component's query function
* **Application Management**: Fixed an error when notifying the person who created the service level.
* **Application Management**: Fixed an error when deleting unused sub-processes.
* **General Forms**: Fixed a misaligned magnifying glass icon in the "User" field.
* **General Forms**: When deleting or closing a form, related events will be cleared or closed simultaneously.
* **Personnel Management**: Added role export/import functionality .
* **Proxy Mechanism**: Fixed an issue where the proxy task prompt at the top of the page only counted red-light tasks.
* **Single Login**: Fixed an issue where the system could not correctly identify the local account and the AD account
* **Archiving**: Fixed an error in the main save menu design after enabling archiving
* **Code Component Tools**: When no data is found for a user object, the system no longer throws an exception and instead returns an empty value
* **Code Component Tools**: Fixed the issue where incorrect parameters still generated invalid data when establishing associations
* **Multi-language**: Fixed some Japanese interface text display issues

## Version History

#### Final Release 1.2.6.1 (2026-03-16)

* **Application Management**: Fixed an error when clicking the button to add a new field in the sub-process form design.
* **Application Management**: Fixed the issue where some fields in the form design could not be displayed/hidden correctly when linked.
* **Multi-language**: Fixed some interface translation issues.

#### Release Candidate 1.2.6.0 (2026-02-26)

* **System**: Added a "Notification Function Settings" function to the main menu.
* **System**: Fixed some browser date format errors
* **System**: Fixed an issue where the installer might fail to install when using a MySQL database
* **Two-factor authentication**: Added two-factor authentication (2FA) related APIs\* Please refer to the "Two-factor authentication" section for details.
* **Service request**: Fixed the issue where the date field could still be modified after being set to read-only.
* **Service request**: Added the option "Support only bound mobile phones" in the mobile support settings\*
* **Data collection**: Hides unnecessary components in the data collector workflow design
* **Data collection**: Fixed the issue of abnormal display of text data interfaces
* **Reports**: Fixed the issue where reports could not be generated when a workflow and its sub-workflow had the same name.
* **Application management**: Added the function of "Converting user ID to user name and department ID to department code" to the filter element.
* **Application management**: Added the function of "Job responsibilities" to the code element (Tools).
* **Application management**: Added the "Notification" tab to the Start, Manual, and End elements to support sending personal notifications.
* **Application management**: Updated the way fields are added in the form design.
* **Application management**: Adjusted the sending of personal notifications when the Service Level Assessment (SLA) triggers a light.
* **Approval**: Fixed the Python code for finding approvers\* Issues with code not conforming to specifications still executing
* **General Forms**: The import mechanism for static forms will now determine whether data is new or updated based on the `data_no` field.
* **General Forms**: Fixed the issue where masked fields failed to display after data verification during workflow review.
* **General Forms**: Fixed the issue where the `File Upload` field displayed abnormally during linked form review.
* **Personnel Management**: Added a `Notification Settings` tab, allowing users to configure individual notification receiving methods.
* **Multilingual**: Fixed some Japanese interface text display issues.
* **System Settings**: Added a `DevTool Debugging` option, which is off by default.
* **System Settings**: When LDAP automatic synchronization is complete, notifications can be set for designated personnel.

> Notes:
>
> 1. Free License is no longer available starting with this version.
> 2. Due to updated cybersecurity policies, this product requires Python `3.11` starting with this version.

#### Patch 1.2.5.3 (2026-02-13)

* **Japanese**: Adjusted some translations

#### Patch 1.2.5.2 (2026-1-6)

* **System**: Enhanced user security
* **System**: Fixed some email sending failures

#### Final Release 1.2.5.1 (2025-11-3)

* **Single Sign-in**: Fixed an issue where users with two-factor authentication enabled simultaneously could not log in to their mobile phones
* **System Settings**: Fixed an issue where enabling Admin Mode caused web pages to become unresponsive
* **General Forms**: Fixed an issue where menus might not scroll down when creating associations in the "Association Operations" section

#### Release Candidate 1.2.5.0 (2025-10-23)

* **System**: Added single sign-in support, integrating with Windows AD and customized third-party login mechanisms
* **System**: Added SaaS mode to the installer; licenses can be applied for online after activation
* **System**: Users must agree to the "Product Authorization Statement" after logging in before accessing the homepage
* **System**: Upgraded Bootstrap to v5
* **Main Menu**: Custom "Path" items in the main menu now support setting display permissions based on "role"
* **Two-Factor Authentication**: Administrators who have not linked their mobile phones will not be able to enable two-factor authentication
* **Service Requests**: When adding new fields during the design phase, dropdown menus no longer automatically drag to the bottom
* **Data Collection**: Fixed an issue where the Collector 1.2.4 installation file could not connect correctly
* **Application Management**: Disabled ORM syntax in the workflow design \[code element]
* **Application Management**: Fixed an issue where the \[Task Order Remarks] field could be designed in static forms
* **Application Management**: Optimized the display of dropdown menus \[Option Sorting, Upper Limit of Checklist, Lower Limit of Checklist]
* **Application Management**: Added conditions to the workflow design \[judgment element]: Greater than or equal to, Less than or equal to
* **Application Management**: Fixed an issue where external workflows and creation workflows did not support the \[File Field]
* **Application Management**: Fixed an issue where the \[Data Tool] did not exclude deleted data
* **Application Management**: Adjusted the LOG level to CRITICAL when the workflow execution \[code element] encounters an error
* **Approval**: After the approval process skips a stage, the \[Unapproved, Unconsulted] status remains blank
* **Approval**: Fixed an issue where others could still fill in opinions and inquiries via a URL
* **Approval**: Added the parameter \[BASE\_URL] during design, which can display the URL in notifications or emails
* **General Forms**: Print format adjusted to \[Title: Content] width 3:7
* **General Forms**: Support for printing blank forms
* **General Forms**: The \[Edit] button for linked forms has been renamed to \[Transfer]
* **General Forms**: Fixed the issue where a subquery within a sub-table would still be filled in after unchecking and submitting if it contained only one item
* **Personnel Management**: When adding \[Department, Role], required fields will now be marked
* **Personnel Management**: When adding personnel, the login page defaults to \[Default]
* **Personnel Management**: The role management tab order has been adjusted to: Settings > Permissions > Users > Departments
* **Personnel Management**: Enhanced user password security mechanism
* **Multi-language**: Fixed some Japanese interface text
* **System Settings**: Fixed the issue of ERROR LOG being generated when LDAP was not set

#### Patch 1.2.4.1 (2025-07-15)

* **Japanese**: Adjusted some translations
* **Questionnaire**: The URL of the questionnaire can now be set manually
* **Service Request**: Fixed an issue where filling in the "User" field with data for multiple users would fail
* **Service Request**: Fixed an issue where adding a new data column would display incorrectly when there were hidden fields in the "Sub-table"
* **General Form**: Clicking the "File" field now enables a preview function for specific file types
* **General Form**: Fixed an error that occurred when downloading all files in the "File" field at once
* **General Form**: Fixed an issue where the delete button was not displayed correctly in certain situations
* **Approval Mechanism**: Fixed an issue where manual assignment was not possible when no signer was found
* **Approval Mechanism**: Fixed an issue where fields for writing approval records using the Tools code component would display incorrectly during printing
* **Approval Mechanism**: Fixed an issue where resubmitting the order would generate two approval forms if an error occurred during the approval stage
* **System Settings**: Fixed an issue where the "Two-factor authentication" option would still display "No" after being enabled
* **System Settings**: Fixed an issue where the LDAP SSL connection setting would be lost after a restart
* **System Settings**: Fixed an issue where viewing the "Use Agreement" during registration would result in an error

#### Final Release 1.2.4.0 (2025-06-16)

* **System**: Cybersecurity Handling
* **Tables**: Performance Optimization, added indexes to workflow and related tables
* **My Tasks**: Date filtering now uses "Update Time" as the criterion
* **My Tasks**: Fixed an issue where switching agents prevented viewing files in the agent's task
* **Service Requests**: Fixed an issue where parentheses in the "Checkmark" field value would prevent service requests from being initiated
* **Application Management**: The "Variable Filter" element in workflow design can now retrieve the current workflow's API path
* **Application Management**: The "Variable Filter" element in workflow design can now retrieve the user ID of the agent who pushed the order
* **Application Management**: Python code correctness is now checked during app upload
* **Application Management**: Fixed an issue where the "Other" option value was not displayed when the "Checkmark" field was read-only
* **Application Management**: Fixed an issue where "Subtable > Subquery" would be filled with undefined if no items were selected and confirmation was performed when it was a single selection\*
* **Application Management**: Processes can now be copied to the same application
* **Application Management**: Form designs can now be synchronized to forms in other manual components within a process
* **Data Collection**: Fixed an issue where a success message would be displayed in the lower left corner when the collector process dispatch failed
* **Data Collection**: Fixed an issue where the collector's default process would fail to dispatch due to a missing reference in the suite tab.
* **Approval**: Tools adds the function to write "Approval Records"\* See the 【Code Components Tools】 section for details\*
* **Approval**: API and Tools add the function to "Retrieve Approval Records for Specific Forms"\* See the 【Code Components Tools】 section for details
* **Approval**: Added "Upload File" setting, which allows downloading from the approval record
* **Approval**: Fixed the issue where the same user could not be consulted multiple times
* **Approval**: Multiple people can now be assigned when adding signatures
* **Approval**: The "Countersigning" stage of the approval design can now be assigned to departments
* **Approval**: CC objects can now be added when sending letters/notifications in the approval design
* **Approval**: Added "Import and Export" function to the approval design
* **General Forms**: Fixed the issue where the data for a subquery with only one item would still be filled in after unchecking it and submitting
* **General Forms**: Fixed the issue where the time format would not be filled in with seconds when the "Date and Time" field was unread-only
* **General Forms**: Fixed the issue where agents could not view files
* **Personnel Management**: Added a "Search" function to the organization chart
* **Personnel Management**: Fixed an issue where login page options were not saved correctly when adding a user
* **Personnel Management**: Fixed an issue where the system would not automatically assign a department code if no department code was filled in when adding a department
* **System Settings**: Added a "Two-Way Verification" function\* When enabled, a mobile verification code is required upon login
* **Standalone Tools**: Fixed an issue where the "Form Export" script could not complete successfully due to administrator privilege restrictions
* **Reports**: Fixed an issue where the system would force logout shortly after exporting a report
* **Japanese**: Fixed some "Permissions" text that did not conform to Japanese Kanji usage

#### Patch 1.2.3.2 (2025-04-02)

* **Menu**: Fixed an issue where main menu management could not be saved
* **General Forms**: Fixed an issue where the system would automatically select a subquery with only one option remaining but would not trigger data re-entry
* **General Forms**: Fixed an issue where copying a sub-table using Ctrl+C would also copy hidden data
* **Print**: Fixed an issue where printing would fail when too many fields in a "sub-table" were hidden
* **Mobile**: Fixed an issue where "sub-query" fields were unresponsive under certain circumstances

#### Patch 1.2.3.1 (2025-03-20)

* **Application Management**: Fixed an issue where the "Filter" function in the workflow element could not retrieve data such as "Application Parameters"
* **Code**: Fixed an issue where the User object in Tools could not add new users

#### Final Release 1.2.3.0 (2025-02-18)

* **System**: Added an annual maintenance mechanism
* **System**: Added a logo change mechanism
* **Menu**: Improved the issue of overlapping options
* **My Tasks**: Added a batch operation mechanism
* **My Tasks**: When related tasks appear in parallel, they will now also be displayed in "In Progress Tasks"
* **Service Requests**: Fixed an issue where hidden fields were not checked for required fields\*
* **Built-in Workflow**: Fixed code with security concerns in built-in workflows; this requires manual updating
* **Application Management**: Added "User, Department" related functions to "Data Tools"
* **Application Management**: Field Calculation Rules, Subqueries" can now populate sub-tables with multiple data entries
* **Application Management**: Fixed an issue where renaming a referenced approval template would cause errors in the "Direct Submission" form
* **Application Management**: Fixed an issue where JSON variables output by "Data Verification" were not converted to string format
* **Application Management**: Fixed an issue where data could not be selected after using the search function in "External Query"
* **Application Management**: Fixed an issue where modifying notes would affect other processes
* **Application Management**: Fixed an issue where the error message was not clear enough when there were duplicate API paths during process submission
* **General Forms**: Fixed an issue where the "Department/User" field could not be searched when searching the form list
* **General Forms**: The "Feedback" button is now hidden by default and can be enabled in the manual input element
* **General Forms**: The "Feedback" email now displays "Form Name, Order Number, Initiator"
* **Personnel Management**: The "Department View" permission can now also read the managed organization chart
* **Personnel Management**: "User Management" can now filter administrators and users
* **Print**: Fixed the issue where the currency symbol was not displayed in the "Amount" field
* **Notifications**: Fixed the issue where notifications of administrator permission changes were not correctly translated into Japanese\*

#### Patch 1.2.2.2 (2024-12-06)

* **System**: Restricted API permissions for administrator accounts
* **Data Collection**: Fixed the issue where line charts could not be displayed correctly
* **Reports**: Fixed the issue where reports could not be exported during preview
* **Application Management**: Disabled specific packages in code
* **Personnel Management**: Administrator permission changes will now be notified via system notification
* **Personnel Management**: Mobile login is disabled by default for administrator accounts
* **Login Management**: Restricted user login IPs\*

#### Final Release 1.2.2.1 (2024-09-26)

* **Application Management**: Fixed the issue where adding a column to a "Sub-table" would cause errors in the dynamic conditions of the "Subquery"
* **General Forms**: Fixed the issue where entering Chinese characters in the "Amount" input field would delete existing numbers
* **General Forms**: Fixed the issue where the "Feedback" function could not exceed 60 characters
* **Personnel Management**: Fixed the issue where users with certain special names could not be deleted

#### Release Candidate 1.2.2.0 (2024-09-10)

* **API**: Fixed the issue where the form would get stuck in the process if the value attribute was missing when creating or pushing an order\*
* **Dashboard**: Fixed the issue where "drop-down menus" displayed excessively long options
* **System**: International Time Zone
* **System**: Windows version updated to 64-bit.
* **My Tasks**: Fixed the issue where the task wouldn't be pinned when accessed from "My Tasks" when a form had a "Signing Record" option\*
* **My Tasks**: In-progress and closed tasks now display a preset 14-day time range
* **Service Requests**: Fixed the issue where values ​​couldn't be entered into the "Preset Values" tab for service requests
* **Application Management**: Attachments can now have their extensions restricted
* **Application Management**: Improved the display of "Add Signature" and "Opinion Consultation" approvals
* **Application Management**: Added a "Data Tools" element to workflow design
* **Application Management**: Added an "Amount" type to the "Input Fields" in form design
* **Application Management**: Workflow elements can now have notes added
* **Application Management**: Added application submission review, scheduled submission, and scheduled start/stop functions
* **Application Management**: Checks for dependent workflows when submitting or delisting applications
* **Application Management**: Notes can now be added when submitting applications
* **Application Management**: Advanced form settings now include "Subject of Submission" as a condition
* **General Forms**: Fixed an issue where the user and department fields for closed orders would change based on current personnel data
* **General Forms**: Fixed an issue where "Feedback Inquiry" would cause order blocking if no response was received\*
* **General Forms**: Fixed an issue where CSV related descriptions were not displayed according to the language when exporting form data
* **Data Collection**: Fixed an issue where the collector process could not generate events correctly
* **Personnel Management**: Fixed an issue where the "Date of Birth" interface in User Management was not displayed completely
* **Personnel Management**: Improved the reading performance of "User Management" and "Department Management"
* **Personnel Management**: Fixed an issue where the "Password Mismatch" error message was not translated
* **System Settings**: Added "Custom HR System" API interface to LDAP settings

#### Patch 1.2.1.6 (2024-09-03)

* Service Requests: Fixed an issue where "Questionnaire" could not be submitted correctly\*

#### Patch 1.2.1.5 (2024-07-29)

* My Tasks: Improved query performance
* Application Management: Fixed an issue where incorrect assignments were possible when assigning approvals based on "Job Responsibilities"\*
* Application Management: Fixed an issue where the "Permission Settings" workflow could not be read correctly\*

#### Patch 1.2.1.4 (2024-06-24)

* General Forms: Fixed an issue where form loading times were too long when there were too many users or departments\*
* System Settings: Fixed an issue where users might be logged out when "Automatic Logout" was disabled\*

#### Patch 1.2.1.3 (2024-06-12)

* System: Enhanced cybersecurity
* Personnel Management: Fixed an issue where users could not change their passwords\*

#### Patch 1.2.1.2 (2024-06-05)

* General Forms: Fixed an issue where uploading "Attachments" would not run correctly\*

#### Release 1.2.1.1 (2024-05-15)

* General Forms: Fixed the issue where the height of a field would suddenly increase when the field was hidden due to having a value\*
* Approval Mechanism: Fixed the issue where Japanese and English text would overlap when setting weight thresholds in the "Approval Stage" design\*
* Application Management: Fixed the issue where parallel and dynamically parallel orders could not be designed on the same form\*
* Application Management: Fixed the issue where multiple forms would be generated when parallel orders arrived at "Collection" simultaneously\*
* Application Management: Fixed the issue where the AD department could not be selected in the "Department" field on mobile and web\*

#### Release Candidate 1.2.1.0 (2024-05-03)

* **My Tasks**: Optimized the display of assignment and approval for "In Progress Tasks"\*
* **My Tasks**: Added the display of "Remarks 1, Remarks 2, Remarks 3" fields, which can be hidden in settings.py\*
* **Application Management**: Added fixed form fields "Remarks 1, Remarks 2, Remarks 3"\*
* **Application Management**: User and department fields can now be linked by setting "Field Calculation Rules"
* **Application Management**: Data Validation can be set to output variables into process variables
* **Application Management**: Sub-tables can have their width set in "Form Design"\*
* **General Forms**: Optimized the display method of "Checked Fields" in **Form Processes**\*
* **General Forms**: Optimized the issue of excessively long values ​​in "Sub-queries"\*
* **Personnel Management**: Fixed the issue where the description field in the department management list would disappear when the department name was too long\*
* **Personnel Management**: Increased the length limit of the **Department Code** field to 100\*
* **System Settings**: Added settings for account deactivation and password change expiration\*
* **System Settings**: Automatic logout mechanism

#### Release 1.2.0.1 (2024-02-29)

* **Japanese Language**: Fixed the issue of new features not being translated into Japanese
* **Announcements**: Fixed the issue where attachments still required scrolling to the bottom when the announcement content was short\*
* **File Download**: Fixed the issue where downloads might fail when files contained special characters
* **System Settings**: Fixed an issue in "Main Menu Management" where reorganizing after changing the **Link** attribute of a custom item to **Folder** could cause an error\*
* **System Settings**: Fixed an issue in "Main Menu Management" where clicking on a link to remove a custom item would cause an error\*

#### Release Candidate 1.2.0.0 (2024-01-25)

* **System**: Upgraded environment requirements, Python to 3.11 and Django to 4.2\*
* **My Tasks**: Added print functionality to form completion records
* **My Tasks**: Fixed an issue where the attached file icon in the list did not correctly display the current status of the attached file for the task
* **Application Management**: Added linkage functionality to the user and department fields\*
* **General Forms**: Added "Export to Word" functionality to form printing\*
* **General Forms**: Fixed an issue where the displayed data in the "History" section might be inconsistent with the current situation.
* **General Forms**: Fixed the issue of some text being hidden when printing forms.
* **Programming Tools**: Added the function to export all data and files from the form process


# Version Specification

\pagebreak

## Version Specification

### Naming Rules

OMFLOW version numbers are divided into 4 codes:

1. The first code is *Generation Update*: This code will be updated when the product has changed to a different programming language or is launched in a completely new form.
2. The second code is for *Major Update*: This code will be updated when a brand new service is added.
3. The third code is for *feature update*: This code will be updated when adding or optimizing features within the existing product framework.
4. The fourth code is *bug fix*: This code will be updated when a bug is fixed.

### Update Rules

Before each update, please confirm the version number of OMFLOW you are currently running. The update range can be *only one feature update version number (third code)*, such as 1.2.1.X → 1.2.2.X.

For versions prior to 1.2.0, please refer to the following rule table:

| Updated Version Number | Range of OMFLOW Version Numbers Available for Update |
| ---------------------- | ---------------------------------------------------- |
| 1.2.0.1                | 1.2.0.0 - 1.2.0.1                                    |
| 1.2.0.0                | 1.1.6.3                                              |
| 1.1.6.3                | 1.1.6.0 - 1.1.6.3                                    |

The characters to the right of the version number do not affect the update rules, such as 1.1.6.3fix3.

### Product Version Number Comparison Table \[New]

The following is a version comparison table of OMFLOW Server and related plugin suites.

**Note:**

> * `x` indicates any patch version under this feature (e.g., 1.2.0.x includes 1.2.0.1 and 1.2.0.2).
> * A range such as `1.1.6.4 - 1.2.0.x` indicates that any Server version from 1.1.6.4 to 1.2.0 is supported.
> * ✅ indicates full support, ⚠️ indicates partial support, and ❌ indicates no support.

| **OMFLOW Server** | **Collector**       | **Booster** | **Mobile** | **SSO** | **Python** |
| ----------------- | ------------------- | ----------- | ---------- | ------- | ---------- |
| 1.1.6.3           | ✅ 1.1.6.3           | ✅ 1.1.6.0   | ✅ 0.10.35  | ❌       | ✅ 3.7      |
| 1.2.0.x           | ✅ 1.1.6.3 - 1.2.0.x | ✅ 1.1.6.0   | ✅ 0.10.36  | ❌       | ✅ 3.11     |
| 1.2.1.x           | ✅ 1.2.1.x           | ✅ 1.1.6.0   | ✅ 0.10.37  | ❌       | ✅ 3.11     |
| 1.2.2.x           | ✅ 1.2.2.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.3.x           | ✅ 1.2.3.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.4.x           | ✅ 1.2.4.1           | ✅ 1.2.4.0   | ✅ 0.10.40  | ❌       | ✅ 3.11     |
| 1.2.5.x           | ✅ 1.2.4.1 - 1.2.5.x | ✅ 1.2.4.0   | ✅ 0.10.41  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.6.x           | ✅ 1.2.6.x           | ✅ 1.2.6.0   | ✅ 0.10.43  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.7.x           | ✅ 1.2.6.x - 1.2.7.x | ✅ 1.2.6.0   | ✅ 0.10.45  | ✅ 1.2.5 | ✅ 3.11     |


# Version Update

## Windows

### General version update steps

1. **Backup OMFLOW**

Please back up OMFLOW first. Please refer to the \[**Backup and Restore**] chapter for details on the backup method.

2. **Execute update file**

OMFLOW's Windows update file can be executed directly. Right-click on the update file and select "Execute as system administrator".

3. **Select language**

Select the displayed language and click "OK".

4. **Agree to the Terms of Use**

Check "I agree" to the terms of use and click "Next".

5. **Start updating**

The executable file will check whether your device can use the current update. After checking, click "Update"

> If there is a version inconsistency, please first check whether the OMFLOW version and the update file version can be used.\
> For versions of OMFLOW after 1.1.4, you can directly use the latest update file to upgrade to the latest version.\
> If the OMFLOW version on the device is less than 1.1.4, please follow the OMFLOW version order and update to 1.1.4.0 before using the latest update file.

6. **Service restart**

After the update is completed, the OMFLOW service will be automatically restarted. After the service is restarted, press "End" to complete the update.

> After updating to the previous version 1.1.4.0, please confirm that the OMFLOW service has been restarted before continuing the update.

Now you can continue using OMFLOW!

### 1.2.0, 1.2.2 Notes - 2024/9/3 Update

OMFLOW upgraded the Python version in versions 1.2.0 and 1.2.2 respectively. If the user installed an additional python package in the past version, the update process will require the user to manually update the package. The following are the relevant steps:

1. The Python path is `C:\PROGRA\~1\OMFLOW Server\Python311` or `C:\PROGRA\~1\OMFLOW Server\Python311x64`
2. Open the CMD window with administrator rights and enter the command to install.
3. Run the command `python.exe -m pip install <package name> --target "Lib\site-packages"`
4. After installation, click Next to check and continue this cycle until there are no missing packages.
5. Close all Python-related CMD windows

## Linux

### General update steps

1. **Backup OMFLOW**

Please back up OMFLOW first. Please refer to the \[**Backup and Restore**] chapter for details on the backup method.

2. **Unzip the update file**

Unzip the patch file

```bash
tar -zxvf [patch file path]
```

3. **Execute update file**

Move to the path of patch.sh and execute patch.sh

```bash
cd [patch file path]
sudo ./patch.sh
```

4. **Restart the service**

Confirm whether the OMFLOW service starts normally

```bash
/opt/omflow/server/omflow_server status
```

If the service has not been started, please enable it.

```bash
/opt/omflow/server/omflow_server start
```

Now you can continue using OMFLOW!

### Linux update 1.2.0.0 version steps

OMFLOW has further improved the environment requirements in version 1.2.0.0. Users using Linux environment need to update manually. The following are the relevant steps:

> python version: 3.8 → 3.11 django version: 2.2 → 4.2.6

1. **Stop OMFLOW**

   ```bash
   omflow_server stop
   ```
2. **Delete the python folder under the /opt/omflow folder**

   ```bash
   rm -rf /opt/omflow/python/
   ```
3. **Install ubuntu package**

> Kit list
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

Installation method one: Online installation version (requires Internet connection)

```bash
	# Update package library
	apt-get update -y
	# Add package library
	add-apt-repository ppa:deadsnakes/ppa -y
	# Update package library
	apt-get update -y
	# Install python3.11 and related packages
	apt-get install -y python3.11 python3.11-dev python3.11-venv python3-pip
```

* Installation method two: no network environment, offline installation method, please see the supplement
  * Download the Ubuntu package offline installation package
  * Install Ubuntu packages offline

4. **Set python 3.11 as an environment variable (so that python3.11 can be called with the command python3)**

   ```bash
   update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
   ```
5. **Create a virtual environment for python 3.11 under the /opt/omflow folder**

   ```bash
   python3 -m venv /opt/omflow/python
   ```
6. **Enter the virtual environment and install the python package**

> python package list
>
> * wheel\
>   -django==4.2\
>   -ldap3
> * mod\_wsgi
> * openpyxl
> * python package used by DB
> * Other packages that will be used...
> * Online installation version (requires Internet connection)

```bash
    # Enter the virtual environment
    source /opt/omflow/python/bin/activate
    # Install wheel
    pip install wheel
    # Omit if not necessary
    python /usr/lib/python3.11/test/libregrtest/setup.py bdist_wheel
    # Install necessary packages. Please evaluate and install other packages by yourself.
    pip install django==4.2 ldap3 mod_wsgi openpyxl
```

* Please see the supplement for no network environment and offline installation methods.
  * Download the python suite offline installation package (.whl)
  * Install python package offline

7. **Modify the wsgi\_module path in apache http.conf to a new path**

   ```bash
   # Modify django.conf
   vim /etc/apache2/sites-available/django.conf

   # Modify the path of wsgi_module
   ```
8. **Update OMFLOW 1.2.0.0**

   ```bash
   # Enter tmp
   cd /tmp/

   # Decompress patch file
   tar zxvf /tmp/omflow_patch_1_2_0_0.tar.gz
   ```

   ```bash
   # Enter the patch folder
   cd omflow_patch_1_2_0_0/

   # Execute patch
   ./patch.sh
   ```
9. **Start OMFLOW (usually no need to start manually)**

### Replenish:

1. Download the Ubuntu package offline installation package
   * Find an Ubuntu with the same environment as OMFLOW server, and an Internet connection is required.

> Kit list
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* Download instructions:

```bash
    # Switch root identity
    sudo su

    # Add new kit library **deadsnakes** PPA
    add-apt-repository ppa:deadsnakes/ppa

    # Update package list:
    apt-get update

    # (If necessary) Clean up the default download folder
    apt-get clean

    # Download but do not install the package
    apt-get install --download-only python3.11 python3.11-dev python3.11-venv python3-pip

```

* The downloaded installation package will be saved in the **`/var/cache/apt/archives/`** directory. You can use FTP software to take it out and put it into the OMFLOW server environment.

2. Install Ubuntu packages offline

> Kit list
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* Copy the **`.deb`** file to a directory in Ubuntu. This uses **`/tmp/Downloads`** as an example.
* Ubuntu instructions:

```bash
        # Switch root identity
        sudo su
        
        # Move to the path where the installation package is located
        cd /tmp/Downloads
        
        # Use dpkg to install the downloaded package
        dpkg -i *.deb
```

3. Export the installed python package list from the existing environment
   * If you already have the package list used by the original OMFLOW, you can skip this step.
   * Reference: <https://pip.pypa.io/en/stable/cli/pip_freeze/>
   * Export instructions:

     ```bash
     # Switch to the virtual environment of OMFLOW
     source /opt/omflow/python/bin/activate

     # Export the python package list to /tmp
     pip freeze > /tmp/requirements.txt

     # Change the django version to version 4.2 or above
     vim /tmp/requirements.txt
     ```
   * Use FTP software to take it out and put it in an Ubuntu environment with Internet access, as a reference for subsequent downloading of packages.
4. Download the python suite offline installation package (.whl)
   * Please prepare an environment with python3.11 installed so that you can download the package version suitable for python3.11. This environment must be connected to the Internet.
   * Download instructions:

     ```bash
     # Add a new folder to store offline installation packages
     mkdir /tmp/python_package
     cd /tmp/python_package

     # [Method 1] Use requirements.txt to download in batches
     # Assume that you have placed the requirements.txt in the previous step under /tmp/
     pip -m install /tmp/requirements.txt

     # [Method 2] Manually enter the package name to download
     pip -m install <package name>

     # After downloading, check how many .whl installation files are in the folder
     ll
     ```
   * Use FTP software to take out and put it back into the OMFLOW server.
   * Supplement: mod\_wsgi will get tar.gz, and the installation method is more special. Please see offline installation of mod\_wsgi.
5. Install python package offline
   * Assume that the offline installation package (.whl) of the python package is placed under this path `**/opt/omflow/tmp**`
   * Installation instructions:

     ```bash
     # Switch to the virtual environment of OMFLOW
     source /opt/omflow/python/bin/activate

     # Switch to the file path of the offline installation package
     cd /opt/omflow/tmp

     # Install all whl
     pip install *.whl
     ```
6. Install mod\_wsgi offline
   * Installation instructions:

     ```bash
     # Switch to the virtual environment of OMFLOW
     source /opt/omflow/python/bin/activate

     # Decompress tar.gz of mod_wsgi
     tar zxvf <mod_wsgi file path>

     cd <mod_wsgi decompressed path>

     #Easy installation mod_wsgi
     python setup.py install
     ```

### Notice:

After replacing python & django, you need to update the OMFLOW version to 1.2.0.0 to start successfully; the previous version cannot be used with django 4.2.

### Error handling

If the service cannot be started after updating OMFLOW, please restore OMFLOW according to the \[**Backup and Restore**] chapter, and then perform the update steps again.


# Common ERROR

## 1. Using MySQL database, 500 Internal Server Error occurs

Error messages similar to the following:

* populate() isn't reentrant
* MySQLdb.\_exceptions.OperationalError: (2059, NULL)

### Solution:

Since Django currently does not support the cache\_sha2\_password encryption method of mysql8.0, it needs to be modified to the mysql\_native\_password encryption method.

Open the mysql command window and enter the command

```
ALTER USER '<account>'@'localhost' IDENTIFIED BY '<account>' PASSWORD EXPIRE NEVER;
```

Update password

```
ALTER USER '<account>'@'localhost' IDENTIFIED WITH mysql_native_password BY '<password>';
```

Restart the service after modification

<figure><img src="https://github.com/syscom-go/omflow-gitbook/blob/english/.gitbook/assets/OMFLOW%20Architecture%20(2).png" alt=""><figcaption></figcaption></figure>

## 2. When using SQL Server database, error.log appears during the installation or update process.

Looking at error.log, the following similar error message appears:

\*SQL Server v16 is not supported.

* raise FullResultSet

### Solution:

Since django4.2 and SQL Server 2022, the original mssql related package is no longer supported. Please follow the steps below:

#### Download Kit

Please go to the Python folder to install the required packages:

For the Windows version, the path is `C:\Program Files\OMFLOW Server\Python`

```
python.exe -m pip install mssql-django -t Lib\site-packages

```

The Linux version enters the virtual Python environment

```
pip install mssql-django

```

#### Modify settings.py

The Windows version path is `C:\Program Files\OMFLOW Server\omflow\omflow\settings.py`

The Linux version path is `/opt/omflow/server/omflow/settings.py`

```
#Change the ENGINE parameter value to mssql
DATABASES = {"default": {"ENGINE": "sql_server.pyodbc","NAME":...The following will be omitted
#Change to
DATABASES = {"default": {"ENGINE": "mssql","NAME":......The following will be omitted
```

#### Re-execute the update file

## 3. Use Domain or external IP connection to return CSRF (403) error - 1.2.1 New

### Solution:

After Django 4.2 version, using Domain for connection requires additional setting of **CSRF\_TRUSTED\_ORIGINS** parameter.

#### Modify settings.py

The Windows version path is `C:\Program Files\OMFLOW Server\omflow\omflow\settings.py`

The Linux version path is `/opt/omflow/server/omflow/settings.py`

```
DEBUG = False

#Add the following settings and replace the URL with the Domain used
CSRF_TRUSTED_ORIGINS = [
        'https://*.example1.com',
        'https://*.example2.com',
        ...
    ]
```

#### Re-execute the update file


# Notes on DBMaker

DBMaker is an optional built-in database for the Windows version of OMFLOW. Possible errors are summarized below:

## 1. A Journal Full error message appears during version update .

When checking error.log, the following similar error message appears:

* \[DBMaker] The log is full: the transaction has been interrupted (11311) (SQLExecDirectW)

### Solution:

If the amount of data is too large during OMFLOW Patch migration and causes this error, you need to increase or add a new Journal File. The following are the steps:

## # # Modify

the Windows version path of dmconfig.ini to `C:\Program Files\OMFLOW Server\DBMaker\dmconfig.ini`

```
DB_JNFIL = OMFLOW1.JNL OMFLOW2.JNL OMFLOW3.JNL OMFLOW4.JNL OMFLOW5.JNL OMFLOW6.JNL OMFLOW7 . JNL OMFLOW8.JNL 
DB_JNLSZ = 8G 
DB_SMODE = 2 
DB_FORCS = 1 
```

#### Restart the DBMaker service

> This method cannot completely solve the problem. This error may still occur when the data is too large.

## 2. An out of DCCA memory error occurred during OMFLOW interface operation.

Check error.log and the following similar error message appears:

* \[DBMaker] out of DCCA memory: initial DCCA setting is too small (1103) (SQLFetch)

### Solution Solution:

Too many locks will occupy DCCA and cause insufficient memory. Please set it in dmconfig.ini and restart the DBMaker service after setting it.

#### Modify

the Windows version path of dmconfig.ini to `C:\Program Files\OMFLOW Server\DBMaker\dmconfig.ini`

`DB_SCASZ = 1024M`

#### Restart the DBMaker service

## 3. Listing process A DBMaker error message appears.

Check error.log and the following similar error message appears:

* \[DBMaker] total length of all columns exceeds maximum length: this table needs at least 8081 bytes, it should be less than the maximum length of a page 8064 bytes (6527 ) (SQLExecDirectW)')
* \[DBMaker] Invalid field name: FORMITM\_127 (6523) (SQLPrepare)

### The solution to

this error is that the table was not successfully built when the form design fields exceeded the DBMaker length limit, resulting in data that differed from the actual table columns. Create a gap.

#### Modify dmconfig.ini

````
DB_PGSIZ = 32 
``` #### 
For detailed steps 

to export the original database and re-create it, please contact https://www.dbmaker.com.tw/serForm.php 
# # 4. A "view already exists" error message appears. 
Check error.log and the following similar error message appears: 
* [DBMaker] The table or view already exists: <TABLE_NAME> (6520) (SQLExecDirectW) 
### Solution 
when migration is due to any When the factor fails, the next migration will not be executed correctly from where it ended last time. 
#### Reset the problematic APP migration to zero and re-execute 
````

python manage.py migrate your\_app zero python manage.py makemigrations your\_app python manage.py migrate

```
## 5. The form is stuck abnormally. 
No error message appears when checking error.log 
### For solution, 
please update OMFLOW to version 1.2.0 or above 
## 6. Insufficient hard disk space problem. 
When checking error.log, the following similar error message appears: 
* [DBMaker] no disk space or quota: /opt/dbmaker/database/fo/__0O619F.TMP (11211) 
### Solution: 
Due to the abnormal growth of tablespace, it is necessary to restart the DBMaker database to clear the temporary files, and turn off the dynamic addition of tablespace and change it to manual addition. Add, 

```

//List all tablespaces select TS\_NAME from systablespace; //Query the tablespace where table is located def table; //Change DEFTABLESPACE to regular ts ALTER TABLESPACE DEFTABLESPACE SET AUTOEXTEND OFF;

EXTENDTS() stored procedure to extend tablespace Description: provide stored procedure for user to extend or add file to tablespace based on some condition.

Synatx: EXTENDTS(VARCHAR(128) TABLESPACE\_NAME INPUT, VARCHAR(100) THRESHOLD\_PAGE INPUT, VARCHAR(100) THRESHOLD\_FRAME INPUT, VARCHAR(256) FILE\_PREFIX INPUT, VARCHAR(256) FILE\_PATH INPUT) Check and extend tablespace by adding page or file according to the threshold\_page/frame. The syntax for threshold\_page/frame is "nFree nAdd nMax". EXTENDTS() will check and extend when the tablespace's free page/frame < nFree and add nAdd page/frame. If user has specified the FILE\_PREFIX, it will check whether the data file's npage + nAdd > nMax and add a file as FILE\_PATH/FILE\_PREFIX\_%d.DB/BB. example: CALL EXTENDTS('TS1', '10280 20560 10G', '10280 20560 10G','TS1','/data/ts1'); or CALL EXTENDTS('TS1', '100M 200M 10G', '100M 200M 10G','TS1','/data/ts1');

For example: If user want to extend deftablespace when free space < 100M and add 200M, can use the following task to define it.

User can create task as following example: call task\_create('task1','STORE\_PROCEDURE', 'call EXTENDTS(''DEFTABLESPACE'', ''100M 200M 100G'', ''100M 200M 100G'', null, null)');

Or if user want to add file if exceed 10G, user must specify file\_prefix call task\_create('task1','STORE\_PROCEDURE', 'call EXTENDTS(''TS1'', ''100M 200M 10G'', ''100M 200M 10G'', ''TS1'', ''/data/ts1/'')'); If the file in TS1 exceed 10G (NOTE: limitation: the file size cannot be exactly 10G) it will create logical file TS1\_01.DB in the /data/ts1/TS1\_01.DB

After create a task, user can create/enable it in the schedule daemon.

To run the stored procedure for every 30 minitues: call schedule\_create('sche1','task1','\*/30 \* \* \* \*','2012-12-12 12:12:00','2028-12-12 12:12:00');

call schedule\_enable('sche1');

```
```


# 前書き

> 本サイトではバージョンに関する情報のみを提供しています。操作マニュアルが必要な場合は、製品サポートサイトまたはメーカーまでお問い合わせください。


# バージョン履歴

***

## 最新バージョン

#### Patch 1.2.7.2 (2026-08-10)

* **マイタスク**：更新日および作成日フィールドに誤ったデータが表示される不具合を修正
* **アプリケーション管理**：フォーム設計における【表】の外部検索フィールドが正しくデータを検索できない不具合を修正
* **アーカイブ**：特定の状況においで、アーカイブしたデータのフォーム記録が閲覧できない不具合を修正
* **アーカイブ**：アーカイブしたプロセスが正常にリリースできない不具合を修正
* **システム設定**：【ログインIPアドレス管理】におけるIPフィールドの入力説明を修正

#### Final Release 1.2.7.1 (2026-07-08)

* **通知機能設定**：ユーザパラメータをインプットする際に、エラーが発生する問題を修正
* **アーカイブ**：バージョンアップ後に、アーカイブ済みフォームの内容を閲覧できない不具合を修正

#### Release Candidate 1.2.7.0 (2026-06-23)

* **メインメニュー**：ウィンドウと一緒にして縮小した後に、自動で復元されない問題を修正
* **マイタスク**：起票者が、【承認】フィールドのみで構成されたフォームを追跡できない問題を修正
* **マイタスク**：【完成フォームの確認】にて全履歴が表示される不具合を修正し、最終履歴のみを表示する仕様に変更
* **マイタスク**：【指定されたユーザ】フィールドが空の場合に「null」が表示される問題を修正
* **サービスリクエスト**：【次へ】クリック時に必須入力チェックをする仕様を追加
* **承　　認**：【コメント】フィールドの必須入力設定に対応
* **承　　認**：承認履歴の添付ファイルにプレビュー機能を追加
* **承　　認**：カーボンコピー（CC）付き意見募集通知の送信時に、エラーが発生する問題を修正
* **アプリケーション管理**：起票・推進処理・承認段階において、パスワードの再入力（2FA）設定を可能に変更
* **アプリケーション管理**：アプリケーションの撤去時に、全データの削除に対応
* **アプリケーション管理**：【サブクエリ】フィールドにデフォルト値の設定機能を追加
* **アプリケーション管理**：単一/複数選択メニューの名称を【チェック】フィールドに統一
* **アプリケーション管理**：データ検証失敗時に、「データ検証失敗」とメッセージを表示する仕様に変更
* **アプリケーション管理**：【データツール】コンポーネントで部門を検索する際に、エラーが発生する問題を修正
* **アプリケーション管理**：SLA通知を起票者へ送信する際に、エラーが発生する問題を修正
* **アプリケーション管理**：未使用のサブプロセス削除時に、エラーが発生する問題を修正
* **一般フォーム**：【ユーザ】フィールドの虫眼鏡アイコンのずれを修正
* **一般フォーム**：フォームの削除またはクローズ時に、関連するイベントを同期して削除・終了する仕様に変更
* **ユーザ管理**：役割のエクスポート・インポート機能を追加
* **代理機能**：ヘッダーの代理タスク通知において、赤レベルのタスクのみがカウントされる問題を修正
* **シングルサインオン**：ローカルアカウントとADアカウントを正しく識別できない問題を修正
* **アーカイブ**：アーカイブ有効化後に、メインメニュー設計の保存時にエラーが発生する問題を修正
* **コード コンポーネントTools**：ユーザが見つからない場合、フォームを異常状態にせず、空値を返却する仕様に変更
* **コード コンポーネントTools**：関連付け作成時にパラメータが不正な場合でも、無効なデータが生成される問題を修正
* **日 本 語**：一部インターフェースのテキストを修正

***

## バージョン履歴

#### Final Release 1.2.6.1 (2026-03-16)

* **アプリケーション管理**：サブプロセスのフォーム設計において、フィールド追加ボタンをクリックした際に発生する不具合を修正
* **アプリケーション管理**：フォーム設計におけるフィールド連携の設定時に、一部のフィールドが正しく表示・非表示されない不具合を修正
* **日　本　語**：一部のインターフェースにおいて、翻訳が正しく反映されていない不具合を修正

#### Release Candidate 1.2.6.0 (2026-02-26)

* **システム**：メインメニューに【通知機能設定】を追加
* **システム**：特定のブラウザにおける日付フォーマット不正の問題を修正
* **システム**：MySQLデータベース使用時に、インストーラーでのインストールが失敗する可能性がある問題を修正
* **二要素認証**：二要素認証（2FA）関連APIを追加。詳細はOMFLOW運用マニュアルの【二要素認証】の章をご参照ください
* **サービスリクエスト**：日付フィールドを読み取り専用に設定した後も編集できる不具合を修正
* **サービスリクエスト**：携帯電話の対応設定に【連携済み携帯電話のみ対応】オプションを追加
* **データ収集**：コレクタプロセスのフロー設計画面において、不要なコンポーネントを非表示に変更
* **データ収集**：文字タイプのデータ表示不具合を修正
* **レポート**：プロセスとそのサブプロセスの名称が同一の場合に、レポートを生成できない不具合を修正
* **アプリケーション管理**：フィルタコンポーネントに【ユーザシリアルナンバをユーザ名へ変換、部門シリアルナンバを部門番号へ変換】機能を追加
* **アプリケーション管理**：コードコンポーネント（Tools）に【職務権限】関連機能を追加
* **アプリケーション管理**：開始・入力・終了コンポーネントに【通知】タブを追加、個人通知の送信に対応
* **アプリケーション管理**：フォーム設計におけるフィールド追加方式を更新
* **アプリケーション管理**：SLAのレベル変更がトリガーされた際に、個人通知を送信する仕様に変更
* **承　　認**：承認者検索用Pythonが、セキュリティ規範に準拠していない状態でも実行される問題を修正
* **一般フォーム**：静態的フォームの【インポート】機能において、 `data_no` フィールドを基準に新規追加／更新を判定
* **一般フォーム**：プロセス表示画面で、マスクフィールドが【検証】処理後に無効化される問題を修正
* **一般フォーム**：関連するフォームの閲覧時に、【ファイルのアプロード】フィールドの表示異常を修正
* **ユーザー管理**：【通知設定】タブを追加し、ユーザーごとに通知の受信方法を設定可能に
* **日　本　語**：一部インターフェースのテキストを修正
* **系統設定**：【DevTool デバッグを許可】オプションを追加（デフォルト：無効）
* **システム設定**：LDAP 自動同期成功時に、指定したユーザーへ通知する機能を追加

> 注意事項：
>
> 1. 本バージョンより、フリーライセンス（Free License）は廃止となります
> 2. セキュリティポリシーの更新に伴い、本バージョン以降は Python `3.11` の使用が必須となります

#### Patch 1.2.5.3 (2026-2-13)

* **日 本 語**：一部の翻訳内容を調整

#### Patch 1.2.5.2 (2026-1-6)

* **システム**：ユーザーの情報セキュリティ保護を強化

#### Final Release 1.2.5.1 (2025-11-3)

* **単一ログイン**：【二要素認証】を有効にしているユーザーがスマートフォンにログインできない問題を修正
* **システム設定**：【管理者モード】の有効化によりウェブページが応答しなくなる問題を修正
* **一般フォーム**：【関連操作】で関連付け作成時のメニューがスクロールできない可能性がある問題を修正

#### Release Candidate 1.2.5.0 (2025-10-23)

* **システム**：シングルサインオン機能を追加し、Windows ADおよびカスタムサードパーティログインシステムとの統合が可能になりました
* **システム**：インストールファイルにSaaSモードを追加し、有効化後オンラインでライセンスを申請可能になりました
* **システム**：ログイン後、【製品利用許諾書】に同意していただかないと、ホームページへ進めません
* **システム**：Bootstrap を v5 にアップグレードしました
* **メインメニュー**：メインメニューのカスタマイズ【パス】項目は【役割】の設定に基づき、権限を表示します
* **二要素認証**：管理者が携帯電話と連携していない場合、二要素認証を有効化できません
* **サービスリクエスト**：設計段階でフィールドを追加する際、ドロップダウンメニューが自動的に最下部までスクロールしなくなるようになりました
* **データ収集**：Collector 1.2.4バージョンのインストーラーが正しく接続できない問題を修正
* **アプリケーション管理**：プロセス設計【コードコンポーネント】ORM構文を無効化しました
* **アプリケーション管理**：静態的なフォームで［タスクメモ］フィールドを設計可能の問題を修正
* **アプリケーション管理**：ドロップダウンメニュー【オプションの並べ替え、チェックの最大数、チェックの最小数】表示を最適化
* **アプリケーション管理**：フロー設計の【判断コンポーネント】に条件を追加：より大きい、より小さい、より小さいや等しい
* **アプリケーション管理**：外部プロセスおよび作成プロセスに【ファイルフィールド】を対応しない問題を修正
* **アプリケーション管理**：【データツール】に削除済みデータを除外しない問題を修正
* **アプリケーション管理**：プロセスで【コードコンポーネント】を実行してエラーが発生時する、LOGレベルをCRITICALに調整しました
* **承　　認**：承認プロセスがスキップされた後、【未承認、未相談】のステータスを空白のままとする
* **承　　認**：他者がURL経由で意見募集フォームに記入できる問題を修正
* **承　　認**：設計時にパラメータ【BASE\_URL】を新規追加し、通知やメール内でURLを表示可能となる
* **一般フォーム**：印刷フォーマットを【タイトル：内容】幅3:7に調整しました
* **一般フォーム**：支援列印空白表單空白フォームを印刷できるようになりました
* **一般フォーム**：関連タスクの【編集】ボタンの名称を【進む】に変更しました
* **一般フォーム**：サブフォーム内のサブクエリに1件のみ項目がある場合、チェックを外して送信しても再入力される問題を修正
* **ユーザー管理**：【部門、役割】を追加する際、フィールドに必須項目マークが表示されるようになりました
* **ユーザー管理**：新規ユーザー追加時、ログインページのデフォルト設定は【デフォルト】です
* **ユーザー管理**：役割管理タブの順序を調整しました：設定 > 権限 > ユーザー > 部門
* **ユーザー管理**：ユーザーのパスワード情報セキュリティ対策を強化しました
* **日　本　語**：一部の日本語インターフェースのテキストを修正
* **システム設定**：LDAPが設定されていない場合にERROR LOGが生成される問題を修正

#### Patch 1.2.4.1 (2025-07-15)

* **日 本 語**：一部の翻訳内容を調整
* **アンケート**：アンケートの後半のURLは現在、自由で設定できるようになりました
* **サービスリクエスト**：「サブクエリ」の結果を「ユーザ」フィールドに入力する際に、データが複数のユーザを含まれている場合、処理が失敗する問題を修正
* **サービスリクエスト**：「サブフォーム」に非表示のフィールドが含まれている場合、新しいデータ行を追加する際、表示異常が発生する問題を修正
* **一般フォーム**：「ファイルフィールド」をクリックすると、特定のファイル形式に対してプレビュー機能が有効になります
* **一般フォーム**：「ファイルフィールド」のすべてのファイルを一括ダウンロードする際、エラーが表示される問題を修正
* **一般フォーム**：特定の状況下で、ファイルフィールドの削除ボタンが正しく表示されない問題を修正
* **承認バリデーション機能**：承認者が見つからない場合、手動で指定できない問題を修正
* **承認バリデーション機能**：印刷する時に、コード コンポーネントToolsを使用して承認記録に書き込む際、フィールドの表示異常問題を修正
* **承認バリデーション機能**：承認段階において異常が発生した場合、再発行すると2枚の承認フォームが生成される問題を修正
* **システム設定**：「二次検証」オプションを有効にしても保存後に「いいえ」と表示される問題を修正
* **システム設定**：LDAPのSSL接続設定を有効にした後、再起動すると設定が無効に失なる問題を修正
* **システム設定**：登録時に「同意書」を確認するとエラーが発生する問題を修正

#### Final Release 1.2.4.0 (2025-06-16)

* **システム**：セキュリティ処理
* **情報フォーム**：プロセスおよびその他の関連データフォームにindexを追加することで、パフォーマンスを最適化しました
* **マイタスク**：日付のフィルター条件を「更新時間」に変更
* **マイタスク**：職務代理人を切り替えた際、代理タスクでファイルを閲覧できない問題を修正しました
* **サービスリクエスト**：「チェック」フィールドの値に括弧がある場合、サービスリクエストが開けない問題を修正
* **アプリケーション管理**：フロー設計の「変数フィルタリング」コンポーネントが、現在のプロセスの api\_pathを取得できるようになりました
* **アプリケーション管理**：フロー設計の「変数フィルタリング」コンポーネントが代理推進者のユーザシリアルナンバを取得できるようになりました
* **アプリケーション管理**：リリースの時に Python コードの正しさをチェックするようになりました
* **アプリケーション管理**：「チェック」フィールドが読み取り専用になっている時に、「その他」項目の値が表示されない問題を修正
* **アプリケーション管理**：「サブフォーム > サブクエリ」が単一選択状態の時、いずれの項目がチェックに入れてない状態で確認された場合、undefinedが入力される問題を修正
* **アプリケーション管理**：同じアプリケーション内でフローを複製できるようになりました
* **アプリケーション管理**：フォーム設計が、フロー内の他の手動コンポーネントのフォームに同期できるようになりました
* **データ収集**：コレクタプロセスのディスパッチに失敗した場合、左下に成功のメッセージが表示される問題を修正
* **データ収集**：コレクタのデフォルトのプロセスにキットタブを参照しない状態でディスパッチに失敗する問題を修正
* **承　　認**：Toolsに「承認記録」を書き込む機能を追加しました。詳細は【コード コンポーネントTools】の章を参照してください
* **承　　認**：APIとToolsに「特定フォームの承認記録を取得する」機能を追加しました。詳細は【コード コンポーネントTools】の章を参照してください
* **承　　認**：「アップロード」設定を追加し、承認記録からダウンロードできるようになりました
* **承　　認**：同一ユーザーのコメント募集を複数回募集できない問題を修正しました
* **承　　認**：追加承認に複数の対象を指定できるようになりました
* **承　　認**：承認デザインの「シリアル承認」段階で部門を指定できるようになりました
* **承　　認**：承認デザインは、送信/通知する際にCC受信者を追加できるようになりました
* **承　　認**：承認デザインに「インポート/エクスポート」機能を追加しました
* **一般フォーム**：サブクエリの項目が1つしかない場合、送信のチェックを外してもデータがバックフィルされる問題を修正
* **一般フォーム**：「日付時刻」フィールドの読み取り専用を解除した場合、時刻フォーマットが秒をバックフィルしない問題を修正
* **一般フォーム**：代理ユーザーがファイルを閲覧できない問題を修正しました
* **ユーザー管理**：組織図に「検索」機能を追加しました
* **ユーザー管理**：ユーザーを追加する際、ログインページオプションが正しく保存されない問題を修正しました
* **ユーザー管理**：部門を追加する際、部門コードを入力しないと自動的に付与されない問題を修正しました
* **システム設定**：「二次検証」機能を追加し、有効化後にログイン時に携帯電話認証コードを入力する必要があります
* **独立ツール**：「フォームエクスポート」スクリプトを修正し、管理者権限の制限によりスムーズに完了しない問題を修正
* **レポート**：レポートをエクスポート後、短時間で強制ログアウトする問題を修正
* **日　本　語**：一部「権限」文字の漢字を修正しました

#### Patch 1.2.3.2 (2025-04-02)

* **メニュー**：メインメニュー管理が保存できない問題を修正
* **一般フォーム**：「サブクエリ」の選択肢が 1 つしかない場合に、自動選択されてもデータの自動入力がトリガーされない問題を修正
* **一般フォーム**：「表」で Ctrl+C を使用してコピーすると、非表示のデータまでコピーされる問題を修正
* **印刷**：「表」の隠し列が多すぎる場合に印刷が失敗する問題を修正
* **モバイル**：特定の状況下で「サブクエリ」フィールドが反応しない問題を修正

#### Patch 1.2.3.1 (2025-03-20)

* **アプリケーション管理**：プロセスコンポーネント「フィールド/変数 フィルタ」が「パラメータ応用」などのデータを取得できない問題を修正
* **コード**：Tools の User オブジェクトでユーザーを追加できない問題を修正

#### Final Release 1.2.3.0 (2025-02-18)

* **システム**：年次点検仕組みを追加
* **システム**：LOGO変更仕組みを追加
* **メインメニュー**：オプションが重なる可能性がある問題を改善
* **マイタスク**：バッチ処理仕組みを追加
* **マイタスク**：関連タスクの並列リストがある場合、「進行中のタスク」と一緒に表示するようになりました
* **サービスリクエスト**：隠しフィールドの必須入力項目がチェックされない問題を修正
* **内蔵プロセス**：セキュリティ上の懸念がある内蔵プロセスのコードを修正しました。手動でアップデートする必要があります
* **アプリケーション管理**：「データツール」に「ユーザー、部門」に関連する機能を追加
* **アプリケーション管理**：「フィールド計算ルール、サブクエリ」は、複数のクエリデータを検索し、サブフォームに入力できるようになりました
* **アプリケーション管理**：参照している承認テンプレート名が変更された場合、「直接送付」フォームでエラーが発生する問題を修正
* **アプリケーション管理**：「データ検証」出力のJSONフォーマット変数が文字列型に変換されていない問題を修正
* **アプリケーション管理**：「外部検索」で検索後、データを選択できない問題を修正
* **アプリケーション管理**：備考を修正すると他のプロセスに影響する問題を修正
* **アプリケーション管理**：プロセスをリリースする際、api\_pathが重複している場合のエラーメッセージがわかりにくい問題を修正
* **一般フォーム**：フォームリスト検索時に、部門ユーザーフィールドが検索できない問題を修正
* **一般フォーム**：「お問い合わせ」ボタンはデフォルトで非表示となり、フォーム入力コンポーネントで有効化可能にしました
* **一般フォーム**：「お問い合わせ」のメール本文に「フォーム名、フォーム番号、発信者」を追加しました
* **ユーザー管理**：「部門確認」権限で、託管された組織図も表示できるようになりました
* **ユーザー管理**：「ユーザー管理」に管理者と一般ユーザーのフィルター機能を追加
* **プリント**：「金額フィールド」に通貨記号が表示されない問題を修正
* **通知**：管理者権限変更時の通知が正しく日本語翻訳されていない問題を修正

#### Patch 1.2.2.2 (2024-12-06)

* **システム**：管理者権限を持つアカウントがAPIへのアクセスが制限されるようになりました
* **データ収集**：折れ線グラフが予想通りに表示されない問題を修正
* **レポート**：プレビュ画面にでエクスポートできない問題を修正
* **アプリケーション管理**：プログラム機能について、特定モジュールの使用を禁止できるようになりました
* **ユーザー管理**：システム管理者リストが変更された際、システムがすべての管理者アカウントに通達するようになりました
* **ログイン管理**：システムへのログインを許可するIPアドレスを指定できる機能が追加されました

#### Final Release 1.2.2.1 (2024-09-26)

* **アプリケーション管理**：「サブフォーム」に新しい列を追加するところ、「サブクエリ」の動的条件が想定外の現象になる問題を修正
* **一般フォーム**：入力フィールドが「金額」タイプにした際、数字ではない文字を入力すると元の数値が消える問題を修正
* **一般フォーム**：「意見募集」機能が60文字数以上を入力できない問題を修正
* **ユーザー管理**：特定名称を持つユーザーが削除されない問題を修正

#### Release Candidate 1.2.2.0 (2024-09-10)

* **API**：value属性が欠落している場合、フォームを作成、推進する際に、プロセスに止まってしまう問題を修正
* **ダッシュボード**：「ドロップダウンメニュー」のオプションが長すぎる問題を修正
* **システム**：国際タイムゾーン
* **システム**：Windows版を64ビットに更新
* **マイタスク**：フォームに「承認記録」が設定されている場合、「マイタスク」から該当のフォームをクリックしてもフォームがトップにならない問題を修正
* **マイタスク**：進行中タスクとクローズタスクは、デフォルト14日間の期間を表示するようになりました
* **サービスリクエスト**：サービスリクエストの「デフォルト」タブに値が入力できない問題を修正
* **アプリケーション管理**：添付ファイルの拡張子を制限できるようになりました
* **アプリケーション管理**：承認の「追加承認と意見募集」の表示方法を改善
* **アプリケーション管理**：フロー設計に「データツール」コンポーネントを追加
* **アプリケーション管理**：フロー設計の「入力フォーム入力」にタイプ「金額」を追加
* **アプリケーション管理**：プロセスコンポーネントに備考を記入可能になりました
* **アプリケーション管理**：リリースの審査仕組みと、定期的にアップロードとクローズ機能を追加
* **アプリケーション管理**：アプリをリリース/クローズする際に、依存するプロセスがないかをチェックする
* **アプリケーション管理**：アプリをリリースする際にも、備考を記入できるようになりました
* **アプリケーション管理**：フォームの高度な設定に、判定基準に「登録者」を追加
* **一般フォーム**：クローズした資料のユーザーフィールドと部門フィールドが、現在のユーザー情報によって変更されてしまう問題を修正
* **一般フォーム**：「意見募集」が返信されない状態で推進できなくなる問題を修正
* **一般フォーム**：フォームを「エクスポート」する際に、CSVファイルの説明フィールドが選択した「言語」に変換されてない問題を修正
* **データ収集**：修正收集器流程無法正確產生事件之問題
* **ユーザー管理**：ユーザー管理画面の「生年月日」の表示が不完全であった問題を修正
* **ユーザー管理**：「ユーザー管理、部門管理」の読み込むパフォーマンスを改善
* **ユーザー管理**：「パスワードが一致しません」のエラーメッセージが翻訳されない問題を修正
* **システム設定**：LDAP設定に「カスタマイズ人事システム」APIを追加

#### Patch 1.2.1.6（2024-09-03）

* サービスリクエスト：「アンケート」を提出できない問題を修正

#### Patch 1.2.1.5 (2024-07-29)

* マイタスク：検索パフォーマンスの改善
* アプリケーション管理：「職務權限」に従ってタスクを割り当てる際に、間違った対象に割り当る可能性がある問題を修正
* アプリケーション管理：プロセスの「権限設定」が正しく読み込めない問題を修正

#### Patch 1.2.1.4 (2024-06-24)

* 一般フォーム：ユーザー数または部門数が多すぎる場合に、フォームの読み込む時間が長い問題を修正
* システム設定：「自動ログアウト」がオフしても、ログアウトされる可能性がある問題を修正

#### Patch 1.2.1.3 (2024-06-12)

* システム：セキュリティ強化
* ユーザー管理：ユーザーがパスワードを変更できない問題を修正

#### Patch 1.2.1.2 (2024-06-05)

* 一般フォーム：「添付ファイル」のアップロードが正しく動作しない問題を修正

#### Release 1.2.1.1 (2024-05-15)

* 一般フォーム：サブフォームに値が記入した場合、フィールド隠しのトリガーが発動すると該当のフィールドの高さが劇的に高くなる問題を修正
* 承認バリデーション機能：「承認段階」に重み付けの境界を設定する際に、日本語と英語が重なってしまう問題を修正
* アプリケーション管理：分岐、並列処理が同じフォームに設計できない問題を修正
* アプリケーション管理：分岐フローが同時に「分岐処理終了」に到達した場合、複数のフォームが生成される問題を修正
* アプリケーション管理：スマホ・ホームページの「部門」フィールドでAD部門が選択できない問題を修正

#### Release Candidate 1.2.1.0 (2024-05-03)

* **私のタスク**：「進行中タスク」の指定と詳細の表示を最適化
* **私のタスク**：「備考1、備考2、備考3」フィールドを追加し、 settings.py で非表示に設定可能となる
* **アプリケーション管理**：ユーザーと部門フィールドで「計算ルール」を設定してリンクできるようになりました
* **アプリケーション管理**：\*\* 検証\*\*に「フィルター」タブを追加
* **アプリケーション管理**：**検証**では、プロセス変数に出力変数を設定できるようになりました
* **アプリケーション管理**：**サブフォーム**の幅を「フォーム設計」で設定できるようになりました
* **アプリケーション管理**：**フォーム履歴**の「チェックフィールド」の表示方法を最適化
* **一般フォーム**：「サブクエリ」フィールドの値が長過ぎる問題を改善
* **ユーザー管理**：部門名が長すぎる場合、部門管理リストの説明フィールドが消える問題を修正
* **ユーザー管理**：**部門番号**フィールドの長さ制限を100まで増やす
* **システム設定**：アカウントの無効化やパスワードの変更期間などの設定を追加
* **システム設定**：自動ログアウト機能を追加

#### Release 1.2.0.1 (2024-02-29)

* **日 本 語**：新機能が日本語化されていない問題を修正
* **広　　報**：広報内容が少ない場合、添付ファイルを確認するにスロットを一番下までスクロールする必要がある問題を修正
* **ファイルダウンロード**：ファイルに特殊記号が含まれている場合、ダウンロードにエラーが発生する可能性がある問題を修正
* **システム設定**：「メインメニュー管理」のカスタマイズ項目**リンク**の属性を**フォルダ**に変更した後、更新するとエラーが発生する可能性がある問題を修正
* **システム設定**：「メインメニュー管理」でカスタマイズ項目のリンクを削除すると、クリックしたらエラーが発生する問題を修正

#### Release Candidate 1.2.0.0 (2024-01-25)

* **システム**：環境要件のアップグレーにより、Pythonの対応バージョンを 3.11 に、Djangoの対応バージョンを 4.2 にアップグレード
* **私のタスク**：「記入記録」に印刷機能を追加
* **私のタスク**：タスク中のファイルの添付状況がが正しく表示されないため、リストの添付ファイルのアイコンを修正
* **アプリケーション管理**：ユーザフィールドと部門フィールドの連動機能を追加
* **一般フォーム**：【記録】データの表示が当時と一致しない問題を修正
* **一般フォーム**：フォーム印刷時に一部のテキストが表示されない問題を修正
* **一般フォーム**：フォーム印刷に「wordのエクスポート」の関連機能を追加
* **プログラムツール**：フォームプロセスのすべてのデータとファイルをエクスポート機能を追加

#### Patch 1.1.6.3 (2023-11-03)

* **私のタスク**：特定の条件下で「クイック操作」に失敗する問題を修正
* **承認バリデーション機能の追加** メインメニュー「アプリケーション管理」に「承認管理」項目が追加され、承認テンプレートを設計できるようになりました **プロセス設計**の手動コンポーネントで「承認テンプレート」を選択できるようになりました **私のタスク**：一般タスクと承認タスクにより関連表示を変更しました\
  個人情報に「高度な代理」タブが追加され、承認に関する代理設定ができます
* **組織図のリメイクと最適化**\
  **組織図設計**：組織コンポーネントに「職務權限」が設定できるように変更 **組織図設計**：複数の組織図を設計できるようになりました **組織図設計**：エクセルのエクスポート/インポートをサポート **職務権限**：エクセルのエクスポートとインポートをサポート
* \*\* ADと部門管理の最適化\*\*\
  職務権限を設計できるようになりました エクセルのエクスポート/インポートをサポート 部門設定では所属部門を削除可能 個人データを順番に表示する「並べ替え」フィールドを追加しました
* **メインメニュー**：展開時に他の項目と重なる問題を修正
* **メインメニュー**：ページ切り替え時に設定を引き継ぎ、Cookieに記録するようになりました
* **私のタスク**：特定の条件下で「クイック操作」に失敗する問題を修正\*\*：博州
* **サービスリクエスト**：未配信のフォーム内容を一時的にCookieに保存し、復元するかどうかを確認するようになりました
* **サービスリクエスト**：「日付」と「サブフォーム>日付」の表示形式が異なる問題を修正
* **一般フォーム**：管理者権限が閲覧ルールに制限されないようになりました
* **一般フォーム**：「エクスポート/インポート」機能で、「表示/追加」権限を個別にチェックする必要に変更
* **アプリケーション管理**：プロセス設計の「組織図」コンポーネントで、照会する組織図または部署を指定できるようになりました
* **アプリケーション管理**：フォーム設計に 「外部クエリ」フィールドが追加され、Pythonコードを通して外部データをクエリし、「サブクエリ」機能を提示できるようになりました
* **アプリケーション管理**：フォーム設計の「位置」フィールドが設定後、読み取り状態がキャンセルされる問題を修正
* **アプリケーション管理**：「手動コンポーネント」設計の 「サブフォーム」にサブクエリのイコール条件としてドロップダウンメニューを追加し、ユーザーが手動コンポーネントを使用する時に、ドロップダウンメニューを選択し、開始フォームが設定されていない場合、サブクエリをクリックしても反応がない問題を修正
* **パラメータ設定**：settings.pyに、「登録失敗の回数」を設定するためのパラメータ"LOGIN\_FAIL\_FREQUENCY"を追加
* **パラメータ設定**：settings.py追加參數"LOGIN\_LOCK\_MIN"可設定「拒絕登入時長」setting-settings.py に 「登録拒否の時間」 を設定するためのパラメータ"LOGIN\_LOCK\_MIN" を追加
* **サービスリクエスト**：未配信のフォーム内容を一時的にCookieに保存し、復元するかどうかを確認するようになりました


# バージョン仕様

\pagebreak

## OMFLOWの最新Patch

### バージョンの命名規則

OMFLOWのバージョン番号は4つの数字に分かれています：

1.最初の数字は、*世代の更新*: この数字は、製品が新しいプログラミング言語に変更された場合や、新しい形で発売された場合に更新されます。 2.2番目の数字は、*重大な更新*：この数字は、新しいサービスが追加されたときに更新されます。 3.3番目の数字は、*機能の更新*：新機能が追加されたり、既存の製品フレームワークが最適化されたりした場合に更新されます。 4.4番目の数字は*バグの修正*です：この数字はバグが修正されたときに更新されます。

### バージョンアップの規則について

バージョンアップの度に、現在動作しているOMFLOWのバージョン番号を確認してください。バージョンアップの範囲は、1つの機能更新のバージョン番号（3番目の数字）\*以前までです。例： 1.2.1.X → 1.2.2.X。

1.2.0より前のバージョンについては、以下のルール表を参照してください：

| 更新ファイルのバージョン | バージョンアップ可能なOMFLOWバージョンの範囲     |
| ------------ | ----------------------------- |
| 1.2.0.1      | 1.2.0.0 - 1.2.0.1             |
| 1.2.0.0      | 1.1.6.3 　　　　　　　　　　　           |
| 1.1.6.3      | 1.1.6.0 - 1.1.6.3 　　　　　　　　　　　 |

> 版號右方字符不影響更新規則，如1.1.6.3fix3　　バージョン番号の右側にある文字は、更新ルールには影響しません。例：1.1.6.3fix3

### 製品版番号対照表

以下はOMFLOW Serverと関連PLUGINパッケージのバージョン対応表です

> **説明：**
>
> * `x` は当該機能バージョンの下位にある任意の修正バージョンを示します（例：1.2.0.x は 1.2.0.1、1.2.0.2 を含む）。
> * 範囲表記`1.1.6.4 - 1.2.0.x` は、Server バージョン 1.1.6.4 から 1.2.0 までのいずれのバージョンもサポートすることを示します。
> * ✅ は完全対応、⚠️ は一部のみ対応、❌ は非対応。

| **OMFLOW Server** | **Collector**       | **Booster** | **Mobile** | **SSO** | **Python** |
| ----------------- | ------------------- | ----------- | ---------- | ------- | ---------- |
| 1.1.6.3           | ✅ 1.1.6.3           | ✅ 1.1.6.0   | ✅ 0.10.35  | ❌       | ✅ 3.7      |
| 1.2.0.x           | ✅ 1.1.6.3 - 1.2.0.x | ✅ 1.1.6.0   | ✅ 0.10.36  | ❌       | ✅ 3.11     |
| 1.2.1.x           | ✅ 1.2.1.x           | ✅ 1.1.6.0   | ✅ 0.10.37  | ❌       | ✅ 3.11     |
| 1.2.2.x           | ✅ 1.2.2.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.3.x           | ✅ 1.2.3.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.4.x           | ✅ 1.2.4.1           | ✅ 1.2.4.0   | ✅ 0.10.40  | ❌       | ✅ 3.11     |
| 1.2.5.x           | ✅ 1.2.4.1 - 1.2.5.x | ✅ 1.2.4.0   | ✅ 0.10.41  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.6.x           | ✅ 1.2.6.x           | ✅ 1.2.6.0   | ✅ 0.10.43  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.7.x           | ✅ 1.2.6.x - 1.2.7.x | ✅ 1.2.6.0   | ✅ 0.10.45  | ✅ 1.2.5 | ✅ 3.11     |


# バージョンアップ

## Windows

### 一般バージョンのアップデート手順

1. **OMFLOWのバックアップ**

事前にOMFLOWをバックアップしてください。詳細は【**バックアップとリストア**】を参照してください。

2. **更新ファイルの実行**

OMFLOWのWindows更新ファイルは直接実行することができます。更新ファイルを右クリックし、「管理者として実行」を選択します。

3. **言語の選択**

表示言語を選択し、「OK」をクリックします。

4. **利用規約に同意**

利用規約の「同意する」にチェックを入れ、「次へ」をクリックします。

5. **更新の開始**

実行ファイルは、お使いのデバイスが現在のアップデートを使用できるかどうかを確認します。確認完了後、「更新」をクリックします。

> バージョンが合致しない場合は、まずOMFLOWのバージョンと更新ファイルのバージョンが使用可能かどうかをご確認ください。 OMFLOWのバージョンが1.1.4.0以降の場合は、最新の更新ファイルを使用して最新バージョンにアップグレードすることができます。 デバイスのOMFLOWのバージョンが1.1.4.0未満の場合は、OMFLOWのバージョン順に従って、1.1.4.0までアップグレード後、最新の更新ファイルをご利用ください。

6. **サービスの再起動**

更新後、OMFLOWのサービスが自動的に再起動されますので、サービスの再起動後、「完了」をクリックし、更新を完了してください。

> 1.1.4.0より前のバージョンの場合は、OMFLOWサービスが再起動したことを確認してから更新を続行してください。

これで引き続きOMFLOWをご利用いただけます！

### 1.2.0.0注意事項

OMFLOWはバージョン1.2.0.0以降、Pythonのバージョンを3.11にアップグレードしました。ユーザーが以前のバージョンで追加のPythonパッケージをインストールしている場合、更新プロセスではユーザーに手動でこれらのパッケージを更新するように求められます。以下は関連する手順です。

1. Python3.11 ( 32 Bit ) のWindows Installerをダウンロードし、実行します
2. Customize installation を選択し、インストールパスをカスタマイズします
3. インストールパスに `C:\PROGRA\~1\OMFLOW Server\Python311` を選択します
4. インストール後、アップデートウィンドウの「次へ」をクリックして確認できます
5. この時点で、アップデート確認画面で元のPythonとPython311のパッケージが一致しているかどうかをチェックし、不足しているパッケージをリストアップします
6. 足りないパッケージがあれば、**管理者権限**でコマンドプロンプトを開き、Python311フォルダに移動します
7. `python.exe -m pip install` コマンドでインストールします
8. インストール後、次へをクリックして確認し、欠落しているパッケージがなくなるまでこのプロセスを繰り返します
9. オリジナルのPythonおよびPython311に関連するすべてのコマンドプロンプトを閉じます

## Linux

### 一般的なアップデート手順

1. **OMFLOWのバックアップ**

事前にOMFLOWをバックアップしてください。詳細は【**バックアップとリストア**】の節を参照してください。

2. **アップデートファイルの解凍**

patch ファイルを解凍します

```bash
tar -zxvf [patchファイルのパス]
```

3. **アップデートファイルの実行**

patch.sh のパスに移動し、patch.sh を実行します。

```bash
cd [patchファイルのパス]
sudo ./patch.sh
```

4. **サービスの再起動**

OMFLOW サービスが正常に起動したことを確認します。

```bash
/opt/omflow/server/omflow_server status
```

サービスが起動していない場合は、サービスを起動してください

```bash
/opt/omflow/server/omflow_server start
```

これで引き続きOMFLOWをご利用いただけます！

### Linux をバージョン 1.2.0.0 にアップデートする手順

OMFLOWのバージョン1.2.0.0では、環境要件がさらに要求されており、Linux環境をご利用のユーザーは、手動でアップデートを行う必要があります。手順は下記のとおりです：

> python version: 3.8 → 3.11 django version: 2.2 → 4.2

1. **OMFLOWを停止します**

   ```bash
   omflow_server stop
   ```
2. **/opt/omflowフォルダ下のpythonフォルダを削除します**

   ```bash
   rm -rf /opt/omflow/python/
   ```
3. **ubuntuパッケージのインストール**

> パッケージのリスト
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

インストール方法 1：オンライン版 (インターネット接続が必要)

```bash
	# パッケージリポジトリのアップデート
	apt-get update -y
	# パッケージリポジトリの追加
	add-apt-repository ppa:deadsnakes/ppa -y
	# パッケージリポジトリのアップデート
	apt-get update -y
	# python3.11と関連パッケージをインストールする
	apt-get install -y python3.11 python3.11-dev python3.11-venv python3-pip
```

* インストール方法2：ネットワークレス環境、オフラインインストール方法は補足情報をご参照ください。
  * Ubuntuオフラインインストールパッケージをダウンロードします。
  * Ubuntuパッケージをオフラインでインストールします。

4. **python 3.11を環境変数に設定します(python3のコマンドでpython3.11を呼び出し可能になるようにする)**

   ```bash
   update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
   ```
5. **/opt/omflowフォルダの下にpython 3.11の仮想環境を作成します。**

   ```bash
   python3 -m venv /opt/omflow/python
   ```
6. **仮想環境に入り、pythonパッケージをインストールします**

> pythonパッケージのリスト
>
> * wheel
> * django==4.2
> * ldap3
> * mod\_wsgi
> * openpyxl
> * DBで使用されるpythonパッケージ
> * その他のパッケージ…
> * オンラインインストール版 (インターネット接続が必要)

```bash
    # 仮想環境に入ります
    source /opt/omflow/python/bin/activate
    # wheel をインストールする
    pip install wheel
    # 必要がなければ省略可能
    python /usr/lib/python3.11/test/libregrtest/setup.py bdist_wheel
    # 必要なパッケージをインストールします。その他のパッケージのインストールについては、ご自身で判断してください。
    pip install django==4.2 ldap3 mod_wsgi openpyxl
```

* ネットワークレス環境、オフラインインストール方法は補足情報をご参照ください。
  * pythonオフラインインストールパッケージ(.whl)をダウンロード
  * pythonパッケージをオフラインでインストールします

7. **apache http.confのwsgi\_moduleのパスを新しいパスに変更します**

   ```bash
   # django.confを修正します。
   vim /etc/apache2/sites-enabled/django.conf

   # wsgi_moduleのパスを修正します。
   ```
8. **OMFLOW 1.2.0.0をアップデートします**

   ```bash
   # tmpに移動する
   cd /tmp/

   # patchファイルを解凍する
   tar zxvf /tmp/omflow_patch_1_1_6_4_upgrade3.tar.gz
   ```

   ```bash
   # patchフォルダに移動する
   cd omflow_patch_1_1_6_4_upgrade4/

   # patchを実行する
   ./patch.sh
   ```
9. **OMFLOWを起動します(通常は手動で起動する必要はありません)**

### 補足:

1. Ubuntuオフラインインストールパッケージをダウンロードします。
   * アップデート対象であるOMFLOW Serverと同等の環境で、インターネット接続可能なUbuntuマシンを用意します。

> パッケージのリスト
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* ダウンロードコマンド:

```bash
    # rootに切り替える
    sudo su

    # deadsnakesの追加**deadsnakes** PPA
    add-apt-repository ppa:deadsnakes/ppa

    # アップデートパッケージリスト: 
    apt-get update

    # (必要があれば) デフォルトのダウンロードフォルダをクリアする
    apt-get clean

    # パッケージをダウンロードするがインストールはしない
    apt-get install --download-only python3.11 python3.11-dev python3.11-venv python3-pip

```

* ダウンロードしたインストールパッケージは、 **`/var/cache/apt/archives/`** ディレクトリに保存されますので、FTPソフト等を使用して取り出し、アップデート対象のOMFLOW Server環境にインストールしてください。

2. Ubuntuパッケージのオフラインインストール

> パッケージのリスト
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* **`.deb`** ドキュメントをUbuntuの任意のディレクトリにコピーします。ここでは **`/tmp/Downloads`** を例にします。
* Ubuntuコマンド:

```bash
        # rootに切り替える
        sudo su
        
        # インストーラーを保存するパスに移動する
        cd /tmp/Downloads
        
        # dpkg を使ってダウンロードしたパッケージをインストールする
        dpkg -i *.deb
```

3. 既存の環境からインストール済みのpythonパッケージのリストをエクスポートします。
   * すでにOMFLOWで使用しているパッケージリストがある場合は、このステップは省略できます。
   * 參考: <https://pip.pypa.io/en/stable/cli/pip_freeze/>
   * エクスポートコマンド:

     ```bash
     # OMFLOWの仮想環境に切り替える
     source /opt/omflow/python/bin/activate

     # pythonパッケージリストを/tmp配下にエクスポート
     pip freeze > /tmp/requirements.txt

     # djangoのバージョンを 4.2 以上にする
     vim /tmp/requirements.txt
     ```
   * FTPソフト等を使用して取り出し、ネットワーク接続可能なUbuntu環境に格納し、引き続きダウンロードの参考とします。
4. pythonオフラインインストールパッケージをダウンロードします(.whl)
   * python3.11対応のパッケージをダウンロードするには、python3.11がインストールされた環境を用意し、該当の環境がネットワークに接続されている必要があります。
   * ダウンロードコマンド:

     ```bash
     # オフラインインストーラ保存用の新しいフォルダを作成する
     mkdir /tmp/python_package
     cd /tmp/python_package

     # [方法1]requirements.txtを使って一括ダウンロードする
     # 前のステップの requirements.txtを/tmp/の配下に置いた場合
     pip -m install /tmp/requirements.txt

     # [方法2]パッケージ名を手動で入力してダウンロードする
     pip -m install <パッケージ名>

     #  ダウンロード完了後、フォルダーの中に.whlのインストールファイルがいくつあるか確認してください
     ll
     ```
   * FTPソフト等を使用して取り出し、元のOMFLOW Serverに戻します。
   * 補足: mod\_wsgiはtar.gzを取得し、インストール方法が特殊なので、詳細はオフラインインストールmod\_wsgiをご参照ください。
5. pythonパッケージのオフラインインストール
   * pythonパッケージのオフラインインストーラ(.whl)を`**/opt/omflow/tmp**`の配下に置いた例
   * インストールコマンド:

     ```bash
     # OMFLOWの仮想環境に切り替える
     source /opt/omflow/python/bin/activate

     # オフラインインストーラーが保存されているパスに切り替える
     cd /opt/omflow/tmp

     # すべてのwhlをインストールする
     pip install *.whl
     ```
6. mod\_wsgiのオフラインインストール
   * インストールコマンド:

     ```bash
     # OMFLOWの仮想環境に切り替わる
     source /opt/omflow/python/bin/activate

     # mod_wsgiのtar.gzを解凍する
     tar zxvf <mod_wsgiのファイルパス>

     cd <mod_wsgi解凍後のファイルパス>

     # mod_wsgiの簡易インストール
     python setup.py install
     ```

### 注意:

python & djangoを置き換えた後、OMFLOWのバージョンを1.2.0.0にアップデートする必要があります。以前のバージョンは django 4.2 では動作しません。

### エラー処理

OMFLOWのアップデート後にサービスが起動できない場合は、【**バックアップとリストア**】に従ってOMFLOWをリストアし、再度アップデート手順を実行してください。


# よくあるトラブル

## 1. MySQLデータベースを使用すると、500 Internal Server Errorというエラーメッセージが表示される

同様のエラーメッセージは次のとおりです。

* populate() isn't reentrant
* MySQLdb.\_exceptions.OperationalError: (2059, NULL)

### 解決方法：

Djangoは現在mysql8.0のcaching\_sha2\_password暗号化方式をサポートしていないため、mysql\_native\_password暗号化方式に変更する必要があります。

mysqlコマンドウィンドウを開き、コマンドを入力します

```
ALTER USER '<アカウント>'@'localhost' IDENTIFIED BY '<アカウント>' PASSWORD EXPIRE NEVER;
```

パスワードを更新します

```
ALTER USER '<アカウント>'@'localhost' IDENTIFIED WITH mysql_native_password BY '<パスワード>';
```

変更後にサービスを再起動します

<figure><img src="https://github.com/syscom-go/omflow-gitbook/blob/japan/.gitbook/assets/OMFLOW架構%20(2).png" alt=""><figcaption></figcaption></figure>

## 2. SQL Serverデータベースを使用すると、インストール中にerror.logというエラーメッセージが表示される

error.logを参照し、同様のエラーメッセージは次のとおりです。

* SQL Server v16 is not supported.
* raise FullResultSet

### 解決方法：

django4.2 と SQL Server 2022 では、もともとに使われているmssql関連のパッケージはサポートされなくなりましたため、以下のステップを実行してください。

#### パッケージのダウンロード

Pythonフォルダに移動し、必要なパッケージをインストールしてください：

Windows版の場合、パスは `C:\Program Files\OMFLOW Server\Python` です

Linux版の場合、パスは `/opt/omflow/server/omflow/settings.py` です

```
python.exe -m pip install mssql-django --path="Lib\site-packages"

```

#### settings.pyを修正

Windows版の場合、パスは `C:\Program Files\OMFLOW Server\omflow\omflow\settings.py` です

Linux版の場合、パスは `/opt/omflow/server/omflow/settings.py` です

```
#ENGINEパラメータの値をmssqlに変更する
DATABASES = {"default": {"ENGINE": "sql_server.pyodbc","NAME":...後略
#以下に変更
DATABASES = {"default": {"ENGINE": "mssql","NAME":......後略
```

#### 更新ファイルを再実行する


# 前言

> 本網站僅提供版本相關資訊，如有操作手冊需求請向產品支援網站或原廠索取。


# 版本資訊

***

## 最新版本

#### Patch 1.2.7.2 (2026-08-10)

* **我的任務**：修正更新日期及開單日期欄位資料錯誤之問題
* **應用管理**：修正表單設計【子表格】的外部查詢欄位無法查詢資料之問題
* **歸　　檔**：修正歸檔資料在特定情況下無法檢視歷程之問題
* **歸　　檔**：修正歸檔過的流程無法上架之問題
* **系統設定**：修正【登入IP管理】IP欄位的提示說明

#### Final Release 1.2.7.1 (2026-07-08)

* **通知功能設定**：修正使用者參數匯入時產生錯誤之問題
* **歸　　檔**：修正版本升級後無法檢視歸檔單內容之問題

#### Release Candidate 1.2.7.0 (2026-06-23)

* **左側選單**：修正與視窗同步縮小後不會自動還原之問題
* **我的任務**：修正開單人無法追蹤僅有設計簽核的表單之問題
* **我的任務**：修正已關單任務會顯示全部歷程任務單，改為僅顯示最後一筆
* **我的任務**：修正受派人欄位空值時顯示 null 問題
* **服務請求**：點擊【下一步】時新增必填檢查機制
* **簽　　核**：意見欄位支援必填設定
* **簽　　核**：簽核紀錄附件新增預覽功能
* **簽　　核**：修正意見徵詢通知同時寄送副本時跳出錯誤之問題
* **應用管理**：開單、推單、簽核流程可設定再次輸入密碼（2FA）
* **應用管理**：應用下架時支援完整資料清除
* **應用管理**：子查詢欄位新增預設值設定功能
* **應用管理**：單選／複選欄位名稱統一為【勾選】欄位
* **應用管理**：資料驗證產生錯誤時，現在訊息會提示【資料驗證失敗】
* **應用管理**：修正「資料工具」元件查詢部門產生錯誤之問題
* **應用管理**：修正服務水準通知開單人時發生錯誤之問題
* **應用管理**：修正刪除未使用的子流程時會出現錯誤之問題
* **一般表單**：修正「使用者」欄位放大鏡圖示錯位問題
* **一般表單**：刪單或關單時，會同步清除或關閉相關事件
* **人員管理**：新增角色匯出／匯入功能
* **代理機制**：修正頁首代理任務提示僅統計紅燈任務問題
* **單一登入**：修正系統無法正確辨識本機帳號與 AD 帳號問題
* **歸　　檔**：修正啟用歸檔後，儲存主選單設計發生錯誤問題
* **程式碼元件Tools**：現在使用者物件查無資料時不再跳出異常，改為回傳空值
* **程式碼元件Tools**：修正建立關聯時錯誤參數仍產生無效資料問題
* **多國語言**：修正部分日文介面文字顯示

***

## 版本紀錄

#### Final Release 1.2.6.1 (2026-03-16)

* **應用管理**：修正子流程表單設計的新增欄位按鈕點擊時出現錯誤之問題
* **應用管理**：修正表單設計部分欄位無法在欄位連動正常顯示/隱藏之問題
* **多國語言**：修正部分介面未正確翻譯之問題

#### Release Candidate 1.2.6.0 (2026-02-26)

* **系　　統**：主選單新增【通知功能設定】功能
* **系　　統**：修正部分瀏覽器日期格式錯誤之問題
* **系　　統**：修正安裝檔於使用 MySQL 資料庫時可能導致安裝失敗之問題
* **二次驗證**：新增二次驗證（2FA）相關 API，詳情請參閱【二次驗證】章節
* **服務請求**：修正日期欄位設定為唯讀後仍可被修改之問題
* **服務請求**：於手機支援設定中，新增【僅支援已綁定手機】選項
* **資料收集**：隱藏資料收集器流程設計中非必要之元件
* **資料收集**：修正文字類型資料介面顯示異常之問題
* **報　　表**：修正流程與其子流程名稱相同時，無法產生報表之問題
* **應用管理**：篩選元件新增【使用者編號轉換為使用者名稱、部門編號轉換為部門代號】功能
* **應用管理**：程式碼元件（Tools）新增【職務權責】相關功能
* **應用管理**：開始、人工、結束元件新增【通知】頁籤，以支援個人通知發送
* **應用管理**：更新表單設計之欄位新增方式
* **應用管理**：服務水準（SLA）觸發燈號時，調整為發送個人通知
* **簽　　核**：修正查找簽核人之 Python 程式碼未符合規範仍繼續執行之問題
* **一般表單**：靜態表單之【匯入】機制將依據 `data_no` 欄位判斷資料為新增或更新
* **一般表單**：修正流程檢視中，遮罩欄位經【資料驗證】處理後失效之問題
* **一般表單**：修正關聯單檢視時，【檔案上傳欄位】顯示異常之問題
* **人員管理**：新增【通知設定】頁籤，可設定個人通知接收方式
* **多國語言**：修正部分日文介面文字顯示
* **系統設定**：新增【DevTool 除錯】選項，預設為關閉
* **系統設定**：當 LDAP 自動同步完成時，可設定通知指定人員

> 注意事項：
>
> 1. 自此版本起取消試用授權（Free License）
> 2. 因應資安政策更新，本產品自此版本起須使用 Python `3.11`

#### Patch 1.2.5.3 (2026-2-13)

* **日　　文**：調整部分翻譯

#### Patch 1.2.5.2 (2026-1-6)

* **系　　統**：強化使用者資安問題
* **系　　統**：修正部分發送信件失敗之問題

#### Final Release 1.2.5.1 (2025-11-3)

* **單一登入**：修正同時啟用【二次驗證】的使用者無法登入手機之問題
* **系統設定**：修正【管理員模式】啟用導致網頁無回應之問題
* **一般表單**：修正【關聯操作】建立關聯時選單有機率無法向下滾動之問題

#### Release Candidate 1.2.5.0 (2025-10-23)

* **系　　統**：新增單一登入支援，可整合 Windows AD 及客製第三方登入機制
* **系　　統**：安裝檔新增SaaS模式，啟用後可線上申請license
* **系　　統**：登入後須同意【產品授權聲明】才可進入首頁
* **系　　統**：升級 Bootstrap 至 v5
* **主要選單**：主選單客製【路徑】項目支援依【角色】設定顯示權限
* **二次驗證**：管理員若未綁定手機，將無法啟用二次驗證
* **服務請求**：設計階段新增欄位時，下拉選單不再自動拖曳到底部
* **資料收集**：修正Collector1.2.4版本安裝檔無法正確連線之問題
* **應用管理**：流程設計【程式碼元件】禁用ORM語法
* **應用管理**：修正靜態表單可設計【任務單備註】欄位之問題
* **應用管理**：下拉式選單【選項排序、複選上限、複選下限】顯示優化
* **應用管理**：流程設計【判斷元件】新增條件：大於等於、小於等於
* **應用管理**：修正外部流程及開立流程不支援【檔案欄位】之問題
* **應用管理**：修正【資料工具】並未排除已刪除資料之問題
* **應用管理**：流程執行【程式碼元件】執行錯誤時，LOG 等級調整為 CRITICAL
* **簽　　核**：簽核流程跳關後，【未簽核、未諮詢】狀態保持空白
* **簽　　核**：修正他人透過網址仍可填寫意見徵詢之問題
* **簽　　核**：設計時新增參數【BASE\_URL】，可於通知或信件中顯示網址
* **一般表單**：列印格式調整為【標題：內容】寬度 3:7
* **一般表單**：支援列印空白表單
* **一般表單**：關聯單的【編輯】按鈕更名為【轉導】
* **一般表單**：修正子表格內的子查詢只有一筆項目時，取消勾選後送出卻還是會被回填之問題
* **人員管理**：新增【部門、角色】時，現在會在欄位標示必填符號
* **人員管理**：新增人員時，登入頁面預設為【預設】
* **人員管理**：角色管理頁籤順序調整為：設定 > 權限 > 使用者 > 部門
* **人員管理**：強化使用者密碼資訊安全機制
* **多國語言**：修正部分日文介面文字
* **系統設定**：修正 LDAP 未設定時產生 ERROR LOG 的問題

#### Patch 1.2.4.1 (2025-07-15)

* **日　　文**：調整部分翻譯
* **問　　卷**：問卷的後段網址現在可以自行設定
* **服務請求**：修正「子查詢」回填至「使用者」欄位時，若資料為複數使用者會失敗之問題
* **服務請求**：修正「子表格」有隱藏欄位時，新增資料列時會顯示異常之問題
* **一般表單**：點擊「檔案欄位」現在會針對特定檔案類型啟用預覽功能
* **一般表單**：修正一次下載「檔案欄位」所有檔案時跳出錯誤之問題
* **一般表單**：修正特定情況下檔案欄位沒有正確顯示刪除的按鈕
* **簽核機制**：查無簽核人時，修正無法手動指派之問題
* **簽核機制**：修正列印時，使用程式碼元件Tools寫入簽核紀錄的欄位顯示異常之問題
* **簽核機制**：修正簽核階段發生異常時，若重新推單會產生兩張簽核單之問題
* **系統設定**：修正「二次驗證」選項，啟用後儲存仍然顯示「否」之問題
* **系統設定**：修正LDAP啟用SSL連線之設定重啟後失效之問題
* **系統設定**：修正註冊時查看「使用同意說明」會跳錯誤之問題

#### Final Release 1.2.4.0 (2025-06-16)

* **系　　統**：資安處理
* **資料表格**：優化效能，對流程等相關資料表格加入index
* **我的任務**：篩選日期改以「更新時間」為條件
* **我的任務**：修正切換職代人無法在職代任務檢視檔案之問題
* **服務請求**：修正「勾選」欄位值有括號，會導致服務請求無法開啟
* **應用管理**：流程設計的「變數篩選」元件現在可取得當前流程的api\_path
* **應用管理**：流程設計的「變數篩選」元件現在可取得代理推單人的使用者編號
* **應用管理**：上架時現在會檢查python程式碼正確性
* **應用管理**：修正「勾選」欄位在唯讀時，不會顯示「其他」選項值之問題
* **應用管理**：修正「子表格＞子查詢」為單選狀態時，若不勾選任何項目並確認會被填入undefined之問題
* **應用管理**：流程現在可以複製至同應用
* **應用管理**：表單設計現在可同步至流程其他人工元件的表單中
* **資料收集**：修正收集器流程派遣失敗時，左下角會顯示成功之訊息
* **資料收集**：修正收集器預設流程因套件頁籤沒設引用而導致派送失敗之問題
* **簽　　核**：Tools新增寫入「簽核紀錄」功能，詳細查看【程式碼元件Tools】章節
* **簽　　核**：API及Tools新增「取得特定表單簽核紀錄」功能，詳細查看【程式碼元件Tools】章節
* **簽　　核**：新增「上傳檔案」設定，並可在簽核紀錄上進行下載
* **簽　　核**：修正同一使用者無法被徵詢多次之問題
* **簽　　核**：加簽時現在可以指派多人
* **簽　　核**：簽核設計的「會簽」階段現在也能指派部門
* **簽　　核**：簽核設計現在可追加寄信/通知時的CC對象
* **簽　　核**：簽核設計新增「匯入匯出」功能
* **一般表單**：修正子查詢只有一筆項目時，取消勾選後送出還是會回填該項目資料之問題
* **一般表單**：修正「日期時間」欄位取消唯讀時，時間格式不會回填秒數之問題
* **一般表單**：修正代理人無法檢視檔案之問題
* **人員管理**：組織圖新增「搜尋」功能
* **人員管理**：修正新增使用者時，登入頁面選項未正常儲存之問題
* **人員管理**：修正新增部門時，若未填部門代號系統不會自動賦予代號之問題
* **系統設定**：新增「二次驗證」功能，啟用後於登入時需輸入手機驗證碼
* **獨立工具**：修正「表單匯出」腳本，因限制管理員權限無法順利完成之問題
* **報　　表**：修正匯出報表後會在短時間內強制登出之問題
* **日　　文**：修正部分「權限」字樣不符日文漢字用法

#### Patch 1.2.3.2 (2025-04-02)

* **選　　單**：修正主選單管理無法儲存之問題
* **一般表單**：修正「子查詢」僅剩一個選項時，系統自動勾選後不會觸發回填資料之問題
* **一般表單**：修正「子表格」使用Ctrl+C複製時會連帶複製隱藏資料之問題
* **列　　印**：修正「子表格」過多欄位隱藏時會列印失敗之問題
* **手　　機**：修正特定情況下「子查詢」欄位無反應之問題

#### Patch 1.2.3.1 (2025-03-20)

* **應用管理**：修正流程元件「篩選」無法取得「應用參數」等資料之問題
* **程式碼**：修正Tools的User物件無法新增使用者之問題

#### Final Release 1.2.3.0 (2025-02-18)

* **系　　統**：新增歲修機制
* **系　　統**：新增LOGO變更機制
* **選　　單**：改善選項有機率重疊之問題
* **我的任務**：新增批次操作機制
* **我的任務**：當相關任務出現並行單時，現在也會在「進行中任務」一併顯示
* **服務請求**：修正隱藏的欄位不會檢查必填之問題
* **內建流程**：修正內建流程有資安疑慮之程式碼，此項須手動更新
* **應用管理**：「資料工具」新增「使用者、部門」相關功能
* **應用管理**：「欄位計算規則、子查詢」現在可將查詢的多筆資料回填子表格
* **應用管理**：修正被參照之簽核模板改名後，會導致「直接送簽」的表單出現錯誤之問題
* **應用管理**：修正「資料驗證」輸出的json格式變數未轉為字串型態之問題
* **應用管理**：修正「外部查詢」使用搜尋後會無法選擇資料之問題
* **應用管理**：修正修改備註時會影響到其他流程之問題
* **應用管理**：修正流程上架時，若有重複的api\_path時錯誤訊息不夠明確之問題
* **一般表單**：修正表單列表搜尋時，無法搜尋部門使用者欄位之問題
* **一般表單**：「意見徵詢」按鈕改為預設隱藏，可於人工輸入元件啟用
* **一般表單**：「意見徵詢」信件內文追加顯示「表單名稱、單號、發起人」
* **人員管理**：「部門檢視」權限現在也可以讀取託管後的組織圖
* **人員管理**：「使用者管理」現在可以篩選管理員與使用者
* **列　　印**：修正「金額欄位」不會顯示貨幣符號之問題
* **通　　知**：修正變更管理員權限之通知未正確翻譯成日文之問題

#### Patch 1.2.2.2 (2024-12-06)

* **系　　統**：限制管理員帳號API權限
* **資料收集**：修正折線圖無法正常顯示之問題
* **報　　表**：修正預覽時無法匯出報表之問題
* **應用管理**：程式碼禁用特定套件
* **人員管理**：管理員權限變更將發送系統通知
* **人員管理**：管理員帳號預設停用手機登入功能
* **登入管理**：限制使用者登入IP

#### Final Release 1.2.2.1 (2024-09-26)

* **應用管理**：修正「子表格中」新增一列會導致「子查詢」動態條件錯誤之問題
* **一般表單**：修正輸入欄位選擇「金額」類型時，若輸入中文會刪除原有數字之問題
* **一般表單**：修正使用「意見徵詢」功能無法超過60字元之問題
* **人員管理**：修正部分特殊名稱之使用者無法刪除之問題

#### Release Candidate 1.2.2.0 (2024-09-10)

* **API**：修正開單、推單時，若缺少value屬性導致表單卡在流程之問題
* **儀錶板**：修正「下拉選單」出現過長選項之問題
* **系　　統**：國際時區
* **系　　統**：Windows版本更新為64位元
* **我的任務**：修正表單設有「簽核紀錄」時，從「我的任務」點開此單不會置頂之問題
* **我的任務**：進行中及關單任務現在會顯示預設14天之時間範圍
* **服務請求**：修正服務請求「預設值」頁籤無法填入值之問題
* **應用管理**：附加檔案可限制副檔名
* **應用管理**：改善簽核「加簽、意見徵詢」顯示方式
* **應用管理**：流程設計新增「資料工具」元件
* **應用管理**：表單設計「輸入欄位」新增「金額」類型
* **應用管理**：流程元件現在可追加備註說明
* **應用管理**：新增應用上架審核、定時上架、定時啟停用功能
* **應用管理**：應用上下架時，檢查是否有依賴流程
* **應用管理**：現在上架應用時也可填寫備註說明
* **應用管理**：表單進階設定，新增「開單人」為判斷條件
* **一般表單**：修正已關單的使用者及部門欄位會受現況人員資料而變動之問題
* **一般表單**：修正「意見徵詢」在未回覆情況下推單會卡單之問題
* **一般表單**：修正表單資料「匯出」時，CSV相關說明未按照「語系」顯示
* **資料收集**：修正收集器流程無法正確產生事件之問題
* **人員管理**：修正使用者管理之「出生年月日」介面顯示不完整之問題
* **人員管理**：改善「使用者管理、部門管理」讀取效能
* **人員管理**：修正「密碼不符」的錯誤訊息並未翻譯之問題
* **系統設定**：LDAP設定追加「客製人事系統」API接口

#### Patch 1.2.1.6 (2024-09-03)

* 服務請求：修正「問卷」無法正常送出之問題

#### Patch 1.2.1.5 (2024-07-29)

* 我的任務：改善查詢效能
* 應用管理：修正簽核依照「職務權責」進行指派時，有機率指派錯誤之問題
* 應用管理：修正流程「權限設定」無法正確讀取之問題

#### Patch 1.2.1.4 (2024-06-24)

* 一般表單：修正使用者或部門過多時，表單讀取過長之問題
* 系統設定：修正「自動登出」關閉時，有機率登出之問題

#### Patch 1.2.1.3 (2024-06-12)

* 系　　統：強化資安
* 人員管理：修正使用者無法變更密碼之問題

#### Patch 1.2.1.2 (2024-06-05)

* 一般表單：修正上傳「附加檔案」無法正常運行之問題

#### Release 1.2.1.1 (2024-05-15)

* 一般表單：修正子表格欄位有值時，若觸發欄位聯動隱藏時，該欄位高度會遽增之問題
* 簽核機制：修正「簽核階段」設計在設定權重門檻時，日英文會重疊之問題
* 應用管理：修正並行、動態並行單無法設計在同一張表單之問題
* 應用管理：修正並行單同時到達「匯集」時產生複數表單之問題
* 應用管理：修正手機及網頁的「部門」欄位無法選到AD部門之問題

#### Release Candidate 1.2.1.0 (2024-05-03)

* **我的任務**：優化「進行中任務」的受派及簽核顯示
* **我的任務**：追加顯示「備註1、備註2、備註3」欄位，可於settings.py設定隱藏
* **應用管理**：追加表單固定欄位「備註1、備註2、備註3」
* **應用管理**：使用者及部門欄位現在可設定「欄位計算規則」進行聯動
* **應用管理**：**資料驗證**可設定輸出變數到流程變數中
* **應用管理**：**子表格**可在「表單設計」中設定寬度
* **一般表單**：優化**表單歷程**「勾選欄位」的顯示方式
* **一般表單**：優化「子查詢」欄位值過長之問題
* **人員管理**：修正部門名稱過長時，部門管理列表中的說明欄位會消失之問題
* **人員管理**：將**部門代號**欄位長度限制加大至100
* **系統設定**：新增帳號停用及密碼變更期限等設定
* **系統設定**：自動登出機制

#### Release 1.2.0.1 (2024-02-29)

* **日文語言**：新功能日文未翻譯之問題
* **公　　告**：修正公告內容很少時，附件仍需滾動拉霸至底之問題
* **檔案下載**：修正檔案有特殊符號時，下載有機率發生錯誤之問題
* **系統設定**：修正「主選單管理」將自訂項目屬性**連結**改成**資料夾**後，重新整理有機率跳錯之問題
* **系統設定**：修正「主選單管理」將自訂項目移除連結時，點擊會發生錯誤之問題

#### Release Candidate 1.2.0.0 (2024-01-25)

* **系　　統**：環境需求升級，升級Python至3.11及Django至4.2
* **我的任務**：填單紀錄新增列印功能
* **我的任務**：修正列表中的夾帶檔案圖示，未正確呈現任務當下的夾帶檔案狀態
* **應用管理**：使用者欄位及部門欄位新增聯動功能
* **一般表單**：修正【歷程】資料顯示與當時可能不一致之問題
* **一般表單**：修正表單列印時部分文字被隱藏之問題
* **一般表單**：表單列印新增「匯出word」相關功能
* **程式工具**：新增匯出表單流程所有資料及檔案之功能

#### Patch 1.1.6.3 (2023-11-03)

* **我的任務**：修正特定情況下進行「快速操作」失敗之問題
* **新增簽核機制**\
  主選單「應用管理」新增「簽核管理」項目，可設計簽核樣板\
  **流程設計**的人工元件可選擇「簽核樣板」\
  **我的任務**：因應一般任務及簽核任務修改相關顯示\
  個人資料新增「進階代理」頁籤，可設定簽核相關代理
* **組織圖重製及優化**\
  **組織圖設計**：「職務權責」改為在組織元件內設定\
  **組織圖設計**：可設計多張組織圖\
  **組織圖設計**：支援 excel 匯出匯入\
  **職務權責**：支援 excel 匯出匯入
* **AD及部門管理優化**\
  可設計職務權責\
  支援 excel 匯出匯入\
  部門設定可刪除所屬部門\
  新增「排序」欄位，於個人資料按順序顯示
* **主要選單**：修正展開時有機率與其他項目重疊之問題
* **主要選單**：切換頁面時會繼承退縮設定並記錄在Cookie
* **我的任務**：修正特定情況下進行「快速操作」失敗之問題\*\*：博州
* **服務請求**：未送出之表單內容會暫存在Cookie，並詢問是否恢復
* **服務請求**：修正「日期」與「子表格>日期」顯示格式不同之問題
* **一般表單**：管理員權限將不受到檢視規則限制
* **一般表單**：「匯出、匯入」功能需分別檢查「檢視、新增」權限
* **應用管理**：流程設計「組織圖」元件現在可指定查詢組織圖或部門
* **應用管理**：表單設計新增「外部查詢」欄位，可透過python程式碼查詢外部資料並呈現「子查詢」功能
* **應用管理**：表單設計時「位置」欄位在設定完畢後會取消唯讀狀態之問題
* **應用管理**：修正「人工元件」設計「子表格」，使其內含下拉選單並作為子查詢的等於條件，若使用者在人工元件時，選了下拉選單並未設計在起始表單的選項，此時點擊該子查詢會無反應。
* **參數設定**：settings.py追加參數"LOGIN\_FAIL\_FREQUENCY"可設定「錯誤登入次數」
* **參數設定**：settings.py追加參數"LOGIN\_LOCK\_MIN"可設定「拒絕登入時長」
* **服務請求**：未送出之表單內容會暫存在Cookie，並詢問是否恢復


# 版本規範

\pagebreak

## 版本規範

### 命名規則

OMFLOW版號分為4碼：

1. 第一碼為*世代更新*：當產品已更換成程式語言或以全新姿態推出時，會更新此碼。
2. 第二碼為*重大更新*：加入全新服務時，會更新此碼。
3. 第三碼為*功能更新*：在既有的產品框架下新增或優化功能時會更新此碼。
4. 第四碼為*錯誤修正*：修正BUG會更新此碼。

### 更新規則

每次更新時，請先確認目前運行OMFLOW的版本號碼，更新幅度最多只能*相差一個功能更新版號(第三碼)*，如 1.2.1.X → 1.2.2.X。

在1.2.0之前的版本，請參考以下規則表：

| 更新檔版號   | 可更新的OMFLOW版號範圍    |
| ------- | ----------------- |
| 1.2.0.1 | 1.2.0.0 - 1.2.0.1 |
| 1.2.0.0 | 1.1.6.3           |
| 1.1.6.3 | 1.1.6.0 - 1.1.6.3 |

> 版號右方字符不影響更新規則，如1.1.6.3fix3

### 產品版號對照表

以下為OMFLOW Server與相關PLUGIN套件的版本對照表

> **說明：**
>
> * `x` 表示該功能版本下任意修正版本（例：1.2.0.x 包含 1.2.0.1、1.2.0.2）。
> * 範圍如 `1.1.6.4 - 1.2.0.x` 表示支援 Server 版本從 1.1.6.4 至 1.2.0 任一版本。
> * ✅ 表示完全支援，⚠️ 表示部分支援，❌ 表示不支援。

| **OMFLOW Server** | **Collector**       | **Booster** | **Mobile** | **SSO** | **Python** |
| ----------------- | ------------------- | ----------- | ---------- | ------- | ---------- |
| 1.1.6.3           | ✅ 1.1.6.3           | ✅ 1.1.6.0   | ✅ 0.10.35  | ❌       | ✅ 3.7      |
| 1.2.0.x           | ✅ 1.1.6.3 - 1.2.0.x | ✅ 1.1.6.0   | ✅ 0.10.36  | ❌       | ✅ 3.11     |
| 1.2.1.x           | ✅ 1.2.1.x           | ✅ 1.1.6.0   | ✅ 0.10.37  | ❌       | ✅ 3.11     |
| 1.2.2.x           | ✅ 1.2.2.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.3.x           | ✅ 1.2.3.x           | ❌           | ✅ 0.10.38  | ❌       | ✅ 3.11     |
| 1.2.4.x           | ✅ 1.2.4.1           | ✅ 1.2.4.0   | ✅ 0.10.40  | ❌       | ✅ 3.11     |
| 1.2.5.x           | ✅ 1.2.4.1 - 1.2.5.x | ✅ 1.2.4.0   | ✅ 0.10.41  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.6.x           | ✅ 1.2.6.x           | ✅ 1.2.6.0   | ✅ 0.10.43  | ✅ 1.2.5 | ✅ 3.11     |
| 1.2.7.x           | ✅ 1.2.6.x - 1.2.7.x | ✅ 1.2.6.0   | ✅ 0.10.45  | ✅ 1.2.5 | ✅ 3.11     |


# 版本更新

## Windows

### 一般版本更新步驟

1. **備份OMFLOW**

請先備份OMFLOW，備份方式請詳見【**備份與還原**】章節

2. **執行更新檔**

OMFLOW 的 Windows 更新檔可以直接執行，在更新檔按下右鍵後選擇「以系統管理員身份執行」。

3. **選擇語系**

選擇顯示的語言後按下「確定」。

4. **同意使用條款**

勾選使用條款須知的「我同意」後按下「下一步」。

5. **開始更新**

執行檔會檢查你的設備是否可以使用當前的更新，檢查完畢後按下「更新」

> 如果出現版本不符情況，請先檢查OMFLOW版本，與更新檔版本是否可以使用。\
> OMFLOW 在 1.1.4 之後的版本，可以直接使用最新的更新檔升級到最新版本。\
> 如果設備上的 OMFLOW 版本小於 1.1.4，請依照 OMFLOW 版本順序，依序更新到 1.1.4.0 後再使用最新的更新檔。

6. **服務重啟**

更新完畢後會自動重啟OMFLOW服務，服務重啟完畢後按下「結束」即完成更新。

> 1.1.4.0 以前的版本更新後，請確認OMFLOW服務已重新啟動後，再繼續更新。

現在你可以繼續使用OMFLOW了！

### 1.2.0、1.2.2 注意事項 - 2024/9/3 Update

OMFLOW在1.2.0、1.2.2版本分別將Python版本進行升級，若用戶在過去版本額外安裝python套件，更新過程會要求用戶手動更新套件，以下為相關步驟：

1. Python路徑為 `C:\PROGRA\~1\OMFLOW Server\Python311` 或 `C:\PROGRA\~1\OMFLOW Server\Python311x64`
2. 以管理者權限開啟CMD視窗並進入 指令進行安裝
3. 以指令 `python.exe -m pip install <套件名稱> --target "Lib\site-packages"`
4. 安裝後點擊下一步進行檢查，以此循環直到無缺失套件
5. 關閉所有Python相關CMD視窗

## Linux

### 一般更新步驟

1. **備份OMFLOW**

請先備份OMFLOW，備份方式請詳見【**備份與還原**】章節

2. **解壓縮更新檔**

解壓縮 patch 檔

```bash
tar -zxvf [patch檔路徑]
```

3. **執行更新檔**

移動至 patch.sh 的路徑上，執行 patch.sh

```bash
cd [patch檔路徑]
sudo ./patch.sh
```

4. **重啟服務**

確認 OMFLOW 服務是否正常啟動

```bash
/opt/omflow/server/omflow_server status
```

若服務尚未被啟動，請將服務開啟

```bash
/opt/omflow/server/omflow_server start
```

現在你可以繼續使用OMFLOW了！

### Linux 更新 1.2.0.0 版本步驟

OMFLOW在1.2.0.0版本對環境需求進一步提升，使用Linux環境之用戶需手動更新，以下為相關步驟：

> python version: 3.8 → 3.11 django version: 2.2 → 4.2.6

1. **停止OMFLOW**

   ```bash
   omflow_server stop
   ```
2. **刪除/opt/omflow資料夾底下的python資料夾**

   ```bash
   rm -rf /opt/omflow/python/
   ```
3. **安裝ubuntu套件**

> 套件清單
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

安裝方式一：線上安裝版(需連線網際網路)

```bash
	# 更新套件庫
	apt-get update -y
	# 增加套件庫
	add-apt-repository ppa:deadsnakes/ppa -y
	# 更新套件庫
	apt-get update -y
	# 安裝python3.11及相關套件
	apt-get install -y python3.11 python3.11-dev python3.11-venv python3-pip
```

* 安裝方式二：無網路環境、離線安裝方式請見補充
  * 下載Ubuntu套件離線安裝包
  * 離線安裝Ubuntu套件

4. **設定python 3.11為環境變數(使得python3.11可用指令python3呼叫)**

   ```bash
   update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
   ```
5. **建立python 3.11的虛擬環境在/opt/omflow資料夾底下**

   ```bash
   python3 -m venv /opt/omflow/python
   ```
6. **進入虛擬環境並安裝python套件**

> python套件清單
>
> * wheel
> * django==4.2
> * ldap3
> * mod\_wsgi
> * openpyxl
> * DB會用到的python套件
> * 其他會用到的套件…
> * 線上安裝版(需連線網際網路)

```bash
    # 進入虛擬環境
    source /opt/omflow/python/bin/activate
    # 安裝 wheel
    pip install wheel
    # 非必要可略
    python /usr/lib/python3.11/test/libregrtest/setup.py bdist_wheel
    # 安裝必要套件，其他套件請自行評估安裝
    pip install django==4.2 ldap3 mod_wsgi openpyxl
```

* 無網路環境、離線安裝方式請見補充
  * 下載python套件離線安裝包(.whl)
  * 離線安裝python套件

7. **修改apache http.conf裡的wsgi\_module路徑改成新的路徑**

   ```bash
   # 修改django.conf
   vim /etc/apache2/sites-available/django.conf

   # 修改wsgi_module的路徑
   ```
8. **更新OMFLOW 1.2.0.0**

   ```bash
   # 進入tmp
   cd /tmp/

   # 解壓縮patch檔
   tar zxvf /tmp/omflow_patch_1_2_0_0.tar.gz
   ```

   ```bash
   # 進入patch資料夾
   cd omflow_patch_1_2_0_0/

   # 執行patch
   ./patch.sh
   ```
9. **啟動OMFLOW(通常無須手動啟動)**

### 補充:

1. 下載Ubuntu套件離線安裝包
   * 找一台環境與OMFLOW server相同的Ubuntu，需有網際網路連線。

> 套件清單
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* 下載指令:

```bash
    # 切換root身分
    sudo su

    # 新增套件庫**deadsnakes** PPA
    add-apt-repository ppa:deadsnakes/ppa

    # 更新套件列表: 
    apt-get update

    # (如果需要的話)清理預設的下載資料夾
    apt-get clean

    # 下載但不安裝套件
    apt-get install --download-only python3.11 python3.11-dev python3.11-venv python3-pip

```

* 下載的安裝包將被保存在 **`/var/cache/apt/archives/`** 目錄下，自行使用FTP軟體取出並放至OMFLOW server環境。

2. 離線安裝Ubuntu套件

> 套件清單
>
> * python 3.11
> * python3.11-dev
> * python3.11-venv
> * python3-pip

* 將 **`.deb`** 文件複製到Ubuntu的某個目錄，此用 \*\*`/tmp/Downloads`\*\*舉例
* Ubuntu指令:

```bash
        # 切換root身分
        sudo su
        
        # 移動到安裝包所在的路徑底下
        cd /tmp/Downloads
        
        # 使用 dpkg 安裝下載的套件包
        dpkg -i *.deb
```

3. 從現有環境匯出已安裝的python套件清單
   * 如果您已經有原OMFLOW使用的套件清單可略過本步驟。
   * 參考資料: <https://pip.pypa.io/en/stable/cli/pip_freeze/>
   * 匯出指令:

     ```bash
     # 切換到OMFLOW的虛擬環境
     source /opt/omflow/python/bin/activate

     # 匯出python套件清單至/tmp底下
     pip freeze > /tmp/requirements.txt

     # 將django的版本改為4.2以上版本
     vim /tmp/requirements.txt
     ```
   * 自行使用FTP軟體取出並放至有網路的Ubuntu環境，作為後續下載套件的參考。
4. 下載python套件離線安裝包(.whl)
   * 請準備一台已經安裝好python3.11的環境，方便下載python3.11適用的套件版本，此環境必須能連到網路。
   * 下載指令:

     ```bash
     # 新增一個存放離線安裝包的資料夾
     mkdir /tmp/python_package
     cd /tmp/python_package

     # [方法一]使用requirements.txt批次下載
     # 假設您已經將前一步的requirements.txt放在/tmp/底下
     pip -m install /tmp/requirements.txt

     # [方法二]手動輸入套件名稱下載
     pip -m install <套件名稱>

     # 下載完成後檢視資料夾內有多少.whl安裝檔
     ll
     ```
   * 自行使用FTP軟體取出並放回OMFLOW server。
   * 補充: mod\_wsgi會得到tar.gz，安裝方式較為特別，請見離線安裝mod\_wsgi。
5. 離線安裝python套件
   * 假設python套件的離線安裝包(.whl)放在此路徑`**/opt/omflow/tmp**`底下
   * 安裝指令:

     ```bash
     # 切換到OMFLOW的虛擬環境
     source /opt/omflow/python/bin/activate

     # 切換到離線安裝包的檔案路徑底下
     cd /opt/omflow/tmp

     # 安裝所有whl
     pip install *.whl
     ```
6. 離線安裝mod\_wsgi
   * 安裝指令:

     ```bash
     # 切換到OMFLOW的虛擬環境
     source /opt/omflow/python/bin/activate

     # 解壓縮mod_wsgi的tar.gz
     tar zxvf <mod_wsgi的檔案路徑>

     cd <mod_wsgi解壓縮後的路徑>

     # 簡易安裝mod_wsgi
     python setup.py install
     ```

### 注意:

更換完python & django後，要更新OMFLOW版本至1.2.0.0才能成功啟動；之前的版本無法搭配django 4.2使用 。

### 錯誤處理

如果更新完 OMFLOW 後無法啟動服務，請依照【**備份與還原**】章節將 OMFLOW 進行還原，再重新執行更新步驟。


# 常見錯誤

## 1. 使用MySQL資料庫，出現500 Internal Server Error

類似錯誤訊息如下：

* populate() isn't reentrant
* MySQLdb.\_exceptions.OperationalError: (2059, NULL)

### 解決辦法：

由於django目前還不支持mysql8.0的caching\_sha2\_password加密方式，因此需修改為mysql\_native\_password加密方法

打開mysql指令視窗，輸入指令

```
ALTER USER '<帳號>'@'localhost' IDENTIFIED BY '<帳號>' PASSWORD EXPIRE NEVER;
```

更新密碼

```
ALTER USER '<帳號>'@'localhost' IDENTIFIED WITH mysql_native_password BY '<密碼>';
```

修改後重啟服務即可

<figure><img src="/files/Zm3jbW0A9VCmhPunrSs1" alt=""><figcaption></figcaption></figure>

## 2. 使用SQL Server資料庫，於安裝或更新過程出現error.log

查看error.log出現以下類似錯誤訊息：

* SQL Server v16 is not supported.
* raise FullResultSet

### 解決辦法：

由於 django4.2 及 SQL Server 2022 後，原先使用的mssql相關套件已不支援，請按照以下步驟執行：

#### 下載套件

請至Python資料夾下安裝所需套件：

若為Windows版本路徑為 `C:\Program Files\OMFLOW Server\Python`

```
python.exe -m pip install mssql-django -t Lib\site-packages

```

Linux版本則進入虛擬Python環境

```
pip install mssql-django

```

#### 修改settings.py

Windows版本路徑為 `C:\Program Files\OMFLOW Server\omflow\omflow\settings.py`

Linux版本路徑為 `/opt/omflow/server/omflow/settings.py`

```
#將ENGINE參數值改為mssql
DATABASES = {"default": {"ENGINE": "sql_server.pyodbc","NAME":...後面略
#改為
DATABASES = {"default": {"ENGINE": "mssql","NAME":......後面略
```

#### 重新執行更新檔

## 3. 使用Domain或外部IP連線回傳CSRF(403)錯誤 - 1.2.1 New

### 解決辦法：

Django4.2 版本後使用 Domain 進行連線需要額外設定 **CSRF\_TRUSTED\_ORIGINS** 參數

#### 修改settings.py

Windows版本路徑為 `C:\Program Files\OMFLOW Server\omflow\omflow\settings.py`

Linux版本路徑為 `/opt/omflow/server/omflow/settings.py`

```
DEBUG = False

#新增以下設定，並將網址替換為使用的Domain
CSRF_TRUSTED_ORIGINS = [
        'https://*.example1.com',
        'https://*.example2.com',
        ...
    ]
```

#### 重新執行更新檔


# DBMaker注意事項

DBMaker 為 OMFLOW Windows 版本可選擇之內建資料庫，以下總結可能出現的錯誤：

## 1. 版本更新時出現 Journal Full 錯誤訊息

查看error.log出現以下類似錯誤訊息：

* \[DBMaker] 日誌已滿：事務已被中斷 (11311) (SQLExecDirectW)

### 解決辦法：

OMFLOW Patch 在 migration 時若資料量過多造成此錯誤，需加大或新增 Journal File，以下為操作步驟：

#### 修改dmconfig.ini

Windows版本路徑為 `C:\Program Files\OMFLOW Server\DBMaker\dmconfig.ini`

```
DB_JNFIL = OMFLOW1.JNL OMFLOW2.JNL OMFLOW3.JNL OMFLOW4.JNL OMFLOW5.JNL OMFLOW6.JNL OMFLOW7.JNL OMFLOW8.JNL
DB_JNLSZ = 8G
DB_SMODE = 2
DB_FORCS = 1
```

#### 重啟DBMaker服務

> 此方法無法完全解決，當資料過於龐大時仍有機會造成此錯誤。

## 2. OMFLOW 進行介面操作時出現 out of DCCA memory 錯誤

查看error.log出現以下類似錯誤訊息：

* \[DBMaker] out of DCCA memory: initial DCCA setting is too small (1103) (SQLFetch)

### 解決辦法：

當 lock 太多會佔用 DCCA 導致記憶體不足，請在 dmconfig.ini 設定，設定後重新啟動 DBMaker 服務。

#### 修改dmconfig.ini

Windows版本路徑為 `C:\Program Files\OMFLOW Server\DBMaker\dmconfig.ini`

```
DB_SCASZ = 1024M
```

#### 重啟DBMaker服務

## 3. 上架流程出現 DBMaker 錯誤訊息

查看error.log出現以下類似錯誤訊息：

* \[DBMaker] total length of all columns exceeds maximum length : this table needs at least 8081 bytes, it should be less than the maximum length of a page 8064 bytes (6527) (SQLExecDirectW)')
* \[DBMaker] Invalid field name : FORMITM\_127 (6523) (SQLPrepare)

### 解決方法

此錯誤為表單設計欄位超過DBMaker長度限制時未成功建置table，導致資料與實際table columns產生落差。

#### 修改dmconfig.ini

```
DB_PGSIZ = 32
```

#### 匯出原有資料庫並重新建立

詳細步驟請聯繫 <https://www.dbmaker.com.tw/serForm.php>

## 4. 出現「視圖已存在」錯誤訊息

查看error.log出現以下類似錯誤訊息：

* \[DBMaker] 該表或視圖已存在 : \<TABLE\_NAME> (6520) (SQLExecDirectW)

### 解決方法

當 migration 因任何因素失敗時，導致下次 migration 無法正確從上次結束的地方開始執行。

#### 將出問題的 APP migration 歸零並重新執行

```
python manage.py migrate your_app zero
python manage.py makemigrations your_app
python manage.py migrate
```

## 5. 出現表單異常卡住之問題

查看error.log並未出現錯誤訊息

### 解決方法

請更新 OMFLOW 至 1.2.0 以上版本

## 6. 硬碟空間不足之問題

查看error.log出現以下類似錯誤訊息：

* \[DBMaker] no disk space or quota : /opt/dbmaker/database/fo/\_\_0O619F.TMP (11211)

### 解決方法

由於tablespace不正常增長導致，需重啟 DBMaker 資料庫清空暫存檔案，並關閉tablespace動態新增改為手動新增，

```
//列出所有 tablespace
select TS_NAME from systablespace;
//查詢 table 所在的 tablespace
def table ;
//將 DEFTABLESPACE 修改為 regular ts
ALTER TABLESPACE DEFTABLESPACE SET AUTOEXTEND OFF;

EXTENDTS() stored procedure to extend tablespace
Description: provide stored procedure for user to extend or add file to tablespace based
on some condition.

Synatx: EXTENDTS(VARCHAR(128) TABLESPACE_NAME INPUT,
VARCHAR(100) THRESHOLD_PAGE INPUT,
VARCHAR(100) THRESHOLD_FRAME INPUT,
VARCHAR(256) FILE_PREFIX INPUT,
VARCHAR(256) FILE_PATH INPUT)
Check and extend tablespace by adding page or
file according to the threshold_page/frame. The syntax for threshold_page/frame is "nFree
nAdd nMax". EXTENDTS() will check and extend when the tablespace's free page/frame < nFree
and add nAdd page/frame. If user has specified the FILE_PREFIX, it will check whether
the data file's npage + nAdd > nMax and add a file as FILE_PATH/FILE_PREFIX_%d.DB/BB.
example: CALL EXTENDTS('TS1', '10280 20560 10G', '10280 20560 10G','TS1','/data/ts1');
or CALL EXTENDTS('TS1', '100M 200M 10G', '100M 200M 10G','TS1','/data/ts1');

For example: If user want to extend deftablespace when free space < 100M and add 200M,
can use the following task to define it.

User can create task as following example:
call task_create('task1','STORE_PROCEDURE', 'call EXTENDTS(''DEFTABLESPACE'', ''100M 200M 100G'',
''100M 200M 100G'', null, null)');

Or if user want to add file if exceed 10G, user must specify file_prefix
call task_create('task1','STORE_PROCEDURE', 'call EXTENDTS(''TS1'', ''100M 200M 10G'', ''100M
200M 10G'', ''TS1'', ''/data/ts1/'')');
If the file in TS1 exceed 10G (NOTE: limitation: the file size cannot be exactly 10G)
it will create logical file TS1_01.DB in the /data/ts1/TS1_01.DB

After create a task, user can create/enable it in the schedule daemon.

To run the stored procedure for every 30 minitues:
call schedule_create('sche1','task1','*/30 * * * *','2012-12-12 12:12:00','2028-12-12 12:12:00');

call schedule_enable('sche1');
```


