Important Notes Before Upgrading
Update .NET version
WorkflowGen 9.2.0 Beta requires .NET Framework 4.8, so you must install it before proceeding with this upgrade.
Update the root web.config
file's URL rewrite rules
web.config
file's URL rewrite rulesAs of WorkflowGen 9.2.0, you MUST update your site's root web.config
file with the new URL rewrite rules, based on how your WorkflowGen URL is configured. For instructions on how to do this, see the Update the root web configuration file section.
Using BACKURL_SUBMIT
and BACKURL_CANCEL
parameters in custom WorkflowGen URLs
BACKURL_SUBMIT
and BACKURL_CANCEL
parameters in custom WorkflowGen URLsAs of version 7.15.5, the optional BACKURL_SUBMIT
and BACKURL_CANCEL
HTTP parameters used in custom WorkflowGen URLs (for example, when launching a new request and starting the first action within another website) now ONLY support absolute URLs (starting with http://
or https://
), relative URLs (starting with /
), or URLs defined in the PortalRedirectAllowedHttpUrls
configuration parameter (e.g. value='blank.htm, myPage.htm'
).
Password encryption change
As of version 7.15.0, the SMTP server account and Remote Approval incoming server account passwords are no longer encrypted in the web.config
file.
Before upgrading an existing WorkflowGen server, you must manually reset the passwords in cleartext for the ApplicationSmtpPassword
and RemoteApprovalIncomingServerPassword
parameters in the web.config
. Alternatively, you can use the provided convert-web-config-pwd.ps1
PowerShell script in \wfgen
to decrypt and convert the passwords in the web.config
.
Database server
MS SQL Server
Microsoft SQL Server 2008/2012 are no longer supported. While these versions will still be compatible with WorkflowGen, support for any performance issues or bugs resulting from using SQL Server 2008/2012 will no longer be provided.
For clients currently hosting WorkflowGen on a database server older than MS SQL Server 2014, we highly recommend upgrading to the latest MS SQL Server version for the best performance.
Migrating the WorkflowGen database from MS SQL Server 2005/2008 to 2014 or later
This database compatibility upgrade is mandatory before migrating the WorkflowGen database from MS SQL Server 2005/2008 to 2014 and above.
It's not required if your WorkflowGen database is already running in MS SQL Server 2012.
To do this, launch the Update\Databases\MsSQLServer\Update_WFG-V7-0_SQL_Triggers_2012.sql
database update script in your SQL Server Management Studio tool.
End of Oracle support
Oracle database is no longer supported as of WorkflowGen 7.16.0.
Node.js modules
The Node.js modules include the GraphQL API, webhooks, SCIM, and Auth. For instructions on how to enable them, see the WorkflowGen Node.js-based web applications section.
Upgrade Node.js version
Upgrade Node.js to version 18.20.4 LTS (see https://nodejs.org/download/release/v18.20.4/).
GraphQL and incoming webhooks file upload management parameters
As of WorkflowGen version 7.10.0, if you're using incoming webhooks or GraphQL to upload files when starting a new request or completing an action, you must set the GraphqlFileInputAllowedFolders
, HooksFileInputAllowedFolders
, GraphqlMaxInputFileContentSize
, and HooksMaxInputFileContentSize
configuration parameters with the appropriate values (see the When upgrading from version 7.9.1 and earlier section).
GraphqlFileInputAllowedFolders
andHooksFileInputAllowedFolders
: These parameters should contain the physical paths of folders that contain files used in uploads.GraphqlMaxInputFileContentSize
andHooksMaxInputFileContentSize
: These parameters should contain the maximum file size in kilobytes when uploading files using the file content method.✏️ Note: We recommend limiting the file content size to small files under 1 megabyte.
JavaScript dependencies updated
The following dependencies have been updated as of WorkflowGen version 8:
jQuery v1.7.2 or 1.10.12 → 3.5.1
jQuery UI v1.8.20 or 1.10.3 → 1.12.1
jQuery Colorbox v1.4.33 → 1.6.4
jQuery Validation v1.11.1 → 1.19.3
Some .js
, .css
, and .png
files have been moved to the \wfgen\js\common
and \wfgen\App_Themes\Default\common
folders, respectively. If you're using the previous versions of the files listed above in your forms, you must re-save the forms in order to use the correct paths and files.
Configuring custom web forms in WorkflowGen 8 or later
If you're using custom web forms configured in .NET 2.0, you can keep using them in .NET 2.0 or migrate them to .NET 4.
To configure custom web forms for .NET 2.0
Use
WorkflowGen.My.dll
in version 2.x.Use a .NET 2.0 application pool.
Disable Web apps secure mode in the Security section on the General tab in the Configuration Panel.
Define or update the following nodes in the web form’s
web.config
:If your web form’s authentication is configured to use the built-in WorkflowGen authentication mode, then the new password hashing mode (One-way Hashing) introduced in version 6.1 will not be compatible with your web form. There are two solutions:
Use Version 5 password management mode instead. Make sure to use the
Advantys.My.dll
andAdvantys.Security.dll
files from version 5.x in the web form’s\bin
folder.OR
Migrate your web form to .NET 4. Make sure to use the
Advantys.My.dll
andAdvantys.Security.dll
files from WorkflowGen version 8.x in the in the web form’s\bin
folder. For instructions on how to do this, see the next section.
To migrate custom web forms to .NET 4
Use
WorkflowGen.My.dll
in version 8.x.x or later.Use a .NET 4 application pool.
Define or update the following nodes in the web form’s
web.config
:If your web form’s authentication mode is configured with the built-in WorkflowGen authentication, then make sure to use the
Advantys.My.dll
andAdvantys.Security.dll
files from version 8.x.x or later in the web form’s\bin
folder.
These instructions apply only to configuring web forms to run properly without configuration errors. They do not cover potential migration or compatibility issues that may arise due to changes in the latest version of WorkflowGen.My. You must fully retest all of your web forms before production.
After an upgrade or migration to WorkflowGen 8 or later, custom web forms that use a version 8 or later
WorkflowGen.My.dll
in their custom\bin
folders require theWorkflowGenMy.*.resx
resource files in theirApp_GlobalResources
sub-folders.
When deploying a custom assembly SDK workflow application
The WorkflowGen.My and Workflow Web Controls assemblies are no longer strong-named in order to allow non-specific version dependency when referenced by other applications such as custom assembly SDK Workflow applications in WorkflowGen.
This simplifies the deployment procedure of an assembly SDK Workflow application to WorkflowGen 6.2.0 and later, and allows upgrading WorkflowGen to a newer version without having to rebuild the application's assembly that was referencing an older version of WorkflowGen.My.
There are some considerations when deploying a custom assembly SDK workflow application in WorkflowGen, namely the assembly location, the reference to WorkflowGen.My, and the reference to other software libraries.
Assembly location
There are two ways of deploying an assembly file in WorkflowGen.
Method 1: Reference by assembly's full name
The assembly file must be copied to the three \bin
folders containing the WorkflowGen executable files: \wfgen\bin
, \wfgen\ws\bin
, and DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin
.
Method 2: Reference by assembly's path (full physical path with file name)
The assembly file can be copied to a custom folder such as DRIVE:\MyWorkflowApps\Assembly.dll
, and then use that specific path in the workflow application's definition.
Reference to WorkflowGen.My
WorkflowGen.My 3.1.0 and earlier
WorkflowGen.My versions 3.1.0 and earlier are strong-named, which means your assembly must be built with and use the same version as your target WorkflowGen. This requires recompiling your assembly whenever you upgrade WorkflowGen to a newer version.
You can use one of the following workarounds to overcome this requirement:
Install the required WorkflowGen.My version in the system's Global Assembly Cache (GAC). For instructions on how to do this, see https://msdn.microsoft.com/en-us/library/6axd4fx6(v=vs.110).aspx.
OR
Add a delegate to handle the assembly resolve event in order to load the current WorkflowGen.My version. For instructions on how to do this, see the How to add an assembly resolve event delegate to overcome WorkflowGen.My dependency issue when deploying custom assembly SDK workflow application WorkflowGen Knowledge Base article.
OR
Add a web configuration setting to redirect the required version to the current version of WorkflowGen.My. For more information, see https://msdn.microsoft.com/en-us/library/twy1dw1e(v=vs.110).aspx.
If your assembly is built with WorkflowGen.My version 3.1.0 or earlier, it can be used in WorkflowGen versions 6.2.0 and later if one of the above workarounds has been implemented.
WorkflowGen.My 3.2.0 and later
As of version 3.2.0, WorkflowGen.My is no longer strong-named in order to allow non-specific version dependency when referenced by your assembly. You can simply deploy your assembly file using one of the two methods in the Assembly location section above in WorkflowGen version 6.2.0 and later.
If your assembly is built with WorkflowGen.My version 3.2.0 or later, it can be used in WorkflowGen versions prior to 6.2.0 if you have implemented either workaround 2 or 3 above.
Reference to other software libraries
If your assembly uses third-party libraries, then these must also be deployed into the three WorkflowGen executable \bin
folders. Alternatively, they can be installed into the system's Global Assembly Cache (GAC) if they are strong-named assemblies.
FIPS compliance configuration
WorkflowGen is FIPS compliant as of version 7.10.0. If you want to enable FIPS compliance in your Windows environment, you have to configure the configuration password management and user password management modes beforehand.
Configuration password management mode
In the Security section on the Configuration Panel General tab, set Configuration password management mode to AES (FIPS Compliant) and enter a 32-character encryption key. When you click Save, the application passwords will automatically be converted to the new symmetric encryption mode.
User password management mode
In the Authentication section on the Configuration Panel General tab, set Password management mode to One-way Hashing (SHA256 FIPS Compliant) mode.
If you're using Applicative authentication in Version 5 (Legacy) password management mode, users' passwords will automatically be converted into One-way Hashing (SHA256 FIPS Compliant) the next time they log into WorkflowGen.
If you're using Applicative authentication in One-way Hashing (SHA256) password management mode:
Select IIS authentication mode.
Select One-way Hashing (SHA256 FIPS Compliant) password management mode, then click Save.
Re-enter all user passwords.
Reset the authentication mode to Applicative.
Legacy software support
Browser and OS versions
WorkflowGen no longer supports Internet Explorer, Windows XP, Windows 7, Windows 8, or Windows Server 2003 or 2008.
Database
MS SQL Server 2005 is no longer supported as of WorkflowGen version 6.2.0, MS SQL Server 2008 is no longer supported as of WorkflowGen version 7.10.0, and MS SQL Server 2012 is no longer supported as of WorkflowGen version 8.2.0.
Oracle database is no longer supported as of WorkflowGen 7.16.0.
Workflow applications
The following applications are deprecated and are no longer provided as of WorkflowGen version 6:
EFORMPDF
DOCAPPROVAL
DOCUPLOAD
FDFTOXML
PDFTODATABASE
However, if any of your processes still use these workflow applications, you can keep them declared under the WorkflowGen website as in version 5.
Third-party software and licenses
The following software is distributed with WorkflowGen (Apache 2.0, BSD, MIT and other compatible licenses):
Ajax Cloud 9 Editor (see https://github.com/ajaxorg/ace/blob/master/LICENSE)
bluebird (see https://github.com/petkaantonov/bluebird/blob/master/LICENSE)
busboy (see https://github.com/mscdex/busboy/blob/master/LICENSE)
body-parser (see https://github.com/expressjs/body-parser/blob/master/LICENSE)
chai/chai-http/chai-fs/chai-things/chai-date-string (see https://github.com/chaijs/chai/blob/master/LICENSE)
change-case (see https://github.com/blakeembrey/change-case/blob/master/LICENSE)
cookie-parser (see https://github.com/expressjs/cookie-parser/blob/master/LICENSE)
dataloader (see https://github.com/facebook/dataloader/blob/master/LICENSE)
edge-js (see https://github.com/agracio/edge-js/blob/master/LICENSE)
eml-format (see https://github.com/papnkukn/eml-format/blob/master/LICENSE)
express (see https://github.com/expressjs/express/blob/master/LICENSE)
express-graphql (see https://github.com/graphql/express-graphql/blob/master/LICENSE)
file-uri-to-path (see https://github.com/TooTallNate/file-uri-to-path/blob/master/LICENSE)
file-url (see https://github.com/sindresorhus/file-url/blob/master/license)
format (see https://sjs.mit-license.org)
graphql-js (see https://github.com/graphql/graphql-js/blob/master/LICENSE)
graphql-relay-js (see https://github.com/graphql/graphql-relay-js/blob/master/LICENSE)
graphql-tools (see https://github.com/apollographql/graphql-tools/blob/master/LICENSE)
iisnode (see https://github.com/Azure/iisnode/blob/master/LICENSE.txt)
json-server (see https://github.com/typicode/json-server/blob/master/LICENSE)
jsonwebtoken (see https://github.com/auth0/node-jsonwebtoken/blob/master/LICENSE)
jwks-rsa (see https://github.com/auth0/node-jwks-rsa/blob/master/LICENSE)
lodash (see https://github.com/lodash/lodash/blob/master/LICENSE)
mockery (see https://github.com/mfncooper/mockery/blob/master/LICENSE)
Node.js (see https://github.com/nodejs/node/blob/master/LICENSE)
proper-lockfile (see https://github.com/moxystudio/node-proper-lockfile/blob/master/LICENSE)
pug (MIT License)
request (see https://github.com/request/request/blob/master/LICENSE)
request-promise-native (see https://github.com/request/request-promise-native/blob/master/LICENSE)
rimraf (see https://github.com/isaacs/rimraf/blob/master/LICENSE)
supertest (see https://github.com/visionmedia/supertest/blob/master/LICENSE)
valid-url (see https://github.com/ogt/valid-url/blob/master/LICENSE)
Last updated