# Legacy Upgrade

{% hint style="info" %}
This section contains instructions for clients upgrading from **versions 7.22.15 and earlier**. Follow the instructions in this section, then return to the [main upgrade section](https://docs.workflowgen.com/upgrade/9.2.6/workflowgen-upgrade) to complete the procedure.
{% endhint %}

## Update configuration files

Apply the changes to the web configuration file based on the version from which you're upgrading. Once you've applied these changes, return to the [Update configuration files](https://docs.workflowgen.com/upgrade/9.2.6/workflowgen-upgrade/..#update-configuration-files) section in the main upgrade section and continue with the changes there.

#### 📌 Examples

* When upgrading from version 6.5.0, apply the changes in the **When upgrading from version 6.5.0** section to the **When upgrading from all 7.x.x versions and earlier** section.
* When upgrading from version 7.22.1, apply the changes in the **When upgrading from all 7.x.x versions and earlier** section only.

#### When upgrading from version 5.7.4 and earlier

Check the following parameters in your `\wfgen\web.config` and add them if they aren't already there.

```xml
<add key="EngineEnableSelfServiceDataAssignException" value="N" />
<add key="EngineNotificationDefaultReplyTo" value="" />
<add key="EngineNotificationMaxFileAttSize" value="10" />
<add key="EngineNotificationTextDetection" value="Y" />
<add key="EngineNotificationServerTimeout" value="3" />
<add key="ApplicationDistributedDatabaseSourceMode" value="0" />
<add key="ApplicationEnableDistributedDatabaseSource" value="N" />
<add key="ApplicationEnableArchiveSiteRedirectConfirmation" value="Y" />
<add key="ApplicationArchiveSiteUrl" value="" />
<add key="ApplicationShowAssociatedDataWithEmptyValue" value="Y" />
<add key="ApplicationSecurityEnableWebAppsSecureMode" value="N" />
```

{% hint style="warning" %}
`WorkflowGen.My` and `WorkflowGen.My.Web.UI.WebControls` (`WorkflowFileUpload`) version 3.0 or later are required in all your Visual Studio Web Forms if the `ApplicationSecurityEnableWebAppsSecureMode` security feature is enabled. For more information, see the [Web apps security: Workflow parameters secure mode](https://discuss.workflowgen.com/t/setup-web-apps-security-workflow-parameters-secure-mode/125) WorkflowGen Knowledge Base article.
{% endhint %}

```xml
<add key="PortalEnableComments" value="Y" />
<add key="PortalCommentsRefreshFrequency" value="30000" />
<add key="PortalCommentsPopUpWidth" value="376" />
<add key="PortalCommentsPopUpHeight" value="545" />
<add key="PortalCommentsSortBy" value="DATE_POST" />
<add key="PortalCommentsSortOrder" value="ASC" />
<add key="PortalCommentsExpandView" value="N" />
<add key="PortalCommentsListSize" value="25" />
<add key="PortalDisplayCodeNames" value="N" />
<add key="PortalMaxListSize" value="1000" />
<add key="PortalQuickViewEnabled" value="Y" />
<add key="PortalQuickViewDataName" value="FORM_ARCHIVE" />
<add key="PortalQuickViewDisplayOnMouseEvent" value="CLICK" />
<add key="PortalTextDetection" value="Y" />
<add key="PortalActivityCompleteInBackground" value="N" />
<add key="PortalEnableSearchResultAutoRedirect" value="Y" />
<add key="PortalCommonProcessDataNameList" value="" />
<add key="PortalReportEnableCustomColumns" value="Y" />
<add key="PortalReportAllowUserToCreateCustomColumns" value="Y" />
<add key="ReportsTextDetection" value="Y" />
<add key="AdministrationFormDataProviderName" value="System.Data.SqlClient, System.Data.OleDb, System.Data.Odbc, System.Data.OracleClient" />
<add key="AdministrationEnableDeletionRulesCheck" value="Y" />
<add key="AdministrationRestrictManagerToModifyGlobalParticipant" value="N" />
<add key="AdministrationFormDesignUndoLimit" value="30" />
<add key="DirectorySynchronizationMaxUserDeletionCount" value="0" />
<add key="DirectorySynchronizationSyncGroupMembersUsedInParticipantOnly" value="N" />
<add key="PortalFrameSetHeight" value="0,68,*,0" />
```

{% hint style="info" %}
The first number in the `PortalFrameSetHeight` value is the height of the banner. If your website is configured to display a banner, enter its height in pixels here. The other default values should not be changed.
{% endhint %}

```xml
<add key="PortalEnableCallingCard" value="Y" />
<add key="PortalReportAdvancedViewDefault" value="Y" />
<add key="PortalReportEnableCustomCharts" value="Y" />
<add key="PortalReportEnableQuickMassApproval" value="N" />
<add key="PortalReportAllowUserToCreateCustomCharts" value="Y" />
<add key="PortalDefaultWorkflowGraphicalMode" value="HTML5" />
<add key="ProcessesRuntimeWebServiceAllowedUsers" value="wfgen_admin" />
```

{% hint style="info" %}
You can copy the `ProcessesRunTimeWebServiceAllowedUsers` parameter from your existing `\wfgen\ws\web.config` to `\wfgen\web.config`.
{% endhint %}

<pre class="language-xml"><code class="lang-xml"><strong>&#x3C;add key="EFormAspxPreviousFilesCleanUp" value="Y" />
</strong></code></pre>

{% hint style="info" %}
You can copy this parameter from your existing `\wfgen\WfApps\WebApps\eFormASPX\web.config` to `\wfgen\web.config`.
{% endhint %}

```xml
<add key="GetUsersFromDirMaxResultNb" value="100" />
```

{% hint style="info" %}
You can copy this parameter from your existing `\wfgen\WfApps\WebServices\GetUsersFromDir\web.config` to `\wfgen\web.config`.
{% endhint %}

```xml
<add key="XmlToDatabaseTestMode" value="N" />
<add key="XmlToDatabaseEnableTrace" value="N" />
```

{% hint style="info" %}
You can copy these parameters from your existing `\wfgen\WfApps\WebServices\XmlToDatabase\web.config` to `\wfgen\web.config`.
{% endhint %}

```xml
<add key="XmlTransPreviousFilesCleanUp" value="Y" />
<add key="XmlTransEnableTrace" value="N" />
```

{% hint style="info" %}
You can copy these parameters from your existing `\wfgen\WfApps\WebServices\XmlTrans\web.config` to `\wfgen\web.config`.
{% endhint %}

Remove the following deprecated parameters from `<appSettings>`:

```xml
PortalFollowUpRelevantDataListNumber
PortalPopupRelevantDataListNumber
PortalEnableRequestDataListPopUp
```

Define the following nodes in `<configuration>`:

```xml
<location path="." inheritInChildApplications="false">
    <system.web>
        <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" />
    </system.web>
</location>
<location path="wfapps/webforms" inheritInChildApplications="false">
    <system.web>
        <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" />
        <pages clientIDMode="AutoID" controlRenderingCompatibilityVersion="3.5" />
    </system.web>
</location>
<location path="ws" inheritInChildApplications="false">
    <system.web>
        <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" />
    </system.web>
</location>
```

Define or update the following node in `<configuration>/<system.web>`:

```html
<pages validateRequest="false" enableSessionState="false" />
```

#### When upgrading from version 6.0.0 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="AdministrationDefaultWorkflowGraphicalMode" value="HTML5" />
<add key="EngineNotificationLogLevel" value="1" />
<add key="RemoteApprovalLogTraceLevel" value="3" />
<add key="RemoteApprovalMailServerSecurity" value="none" />
<add key="RemoteApprovalRefreshInterval" value="180000" />
<add key="RemoteApprovalMailServerType" value="POP" />
<add key="RemoteApprovalLifeSpan" value="0" />
<add key="RemoteApprovalMailServerPort" value="110" />
<add key="ApplicationSecurityPasswordManagementMode" value="V5" />
<add key="ApplicationSecurityMaxLoginAttempts" value="5" />
<add key="ApplicationSecurityMinimumPasswordLength" value="8" />
<add key="ApplicationSmtpPickupDirectory" value="DRIVE:\inetpub\mailroot\Pickup" />
```

{% hint style="info" %}
Replace the `ApplicationSmtpPickupDirectory` path above with the path of your SMTP gateway pickup folder.
{% endhint %}

```html
<add key="ApplicationSmtpServerTimeout" value="3000" />
<add key="ApplicationSmtpDeliveryMethod" value="SmtpServer" />
```

{% hint style="info" %}
The `ApplicationSmtpDeliveryMethod` parameter defines the notification delivery method. By default, it uses the SMTP server, but you can change the SMTP delivery method to **Pickup directory** in the **Administration Module Configuration Panel**.
{% endhint %}

#### When upgrading from version 6.1.0 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="AdministrationAssociatedActivitiesToSwimlane" value="Y" />
```

#### When upgrading from version 6.1.4 and earlier

Add or modify the `AdministrationFormDataProviderName` parameter as follows:

```html
<add key="AdministrationFormDataProviderName" value="System.Data.SqlClient,System.Data.OleDb,System.Data.Odbc,System.Data.OracleClient,Oracle.DataAccess.Client" />
```

{% hint style="info" %}
The `Oracle.DataAccess.Client` value was added to this parameter in version 6.1.5.
{% endhint %}

#### When upgrading from version 6.1.6 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="ApplicationWebFormsPath" value="" />
<add key="EngineNotificationDefaultSenderName" value="" />
<add key="PortalDashboardAutoRefreshInterval" value="0" />
<add key="PortalActivityOnCompleteRedirectToView" value="N" />
```

#### When upgrading from version 6.4.0 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="SendMessageProvider" value="TWILIO" />
<add key="SendMessageAccountSID" value="" />
<add key="SendMessageAuthToken" value="" />
<add key="SendMessageFrom" value="" />
<add key="SendMessageApiUrl" value="https://api.twilio.com/2010-04-01/Accounts/" />
<add key="SendMessageEnableLogs" value="Y" />
```

#### When upgrading from version 6.5.0 and earlier

Add the following new parameter to `<appSettings>` to configure the SENDHTTPPOST workflow application log file, replacing the value `n` with `0` to disable logging, `1` for simple logs, or `2` for debug logs:

```html
<add key="SendHttpPostLogLevel" value="n" />
```

#### When upgrading from version 6.6.0 and earlier

Remove the following deprecated parameters from `<appSettings>`:

```html
ApplicationImpersonificationUsername
ApplicationImpersonificationPassword
PortalDefaultWorkflowGraphicalMode
ApplicationEnableFlashDetection
```

#### When upgrading from version 7.1.1 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="GraphqlQueryTimeout" value="90000" />
<add key="GraphqlOperationTimeout" value="30000" />
<add key="GraphqlMaxOperationCount" value="10000" />
<add key="GraphqlMaxInputFileSize" value="10240" />
<add key="GraphqlInputFileDownloadTimeout" value="100000" />
<add key="HooksMaxInputFileDownloadTimeout" value="100000" />
<add key="HooksOperationTimeout" value="30000" />
<add key="HooksMaxInputFileSize" value="10240" />
<add key="EngineServiceTempApiFilesLifespan" value="2" />
```

#### When upgrading from version 7.3.1 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="AdministrationDefaultConditionLanguage" value="JS" />
```

#### When upgrading from version 7.6.0 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="ApplicationSmtpEnableSsl" value="N" />
<add key="ApplicationSmtpPort" value="" />
<add key="ApplicationSmtpUsername" value="" />
<add key="ApplicationSmtpPassword" value="" />
```

#### When upgrading from version 7.9.1 and earlier <a href="#id-791-earlier" id="id-791-earlier"></a>

Add the following new parameters to `<appSettings>`:

```html
<add key="GraphqlMaxInputFileContentSize" value="0" />
<add key="HooksMaxInputFileContentSize" value="0" />
<add key="GraphqlInputFileAllowedFolders" value="" />
<add key="HooksInputFileAllowedFolders" value="" />
```

{% hint style="warning" %}
If you're using folders for GraphQL and/or incoming webhooks file operations (such as sending a file action parameter), you must update the values of the `GraphqlInputFileAllowedFolders` and `HooksInputFileAllowedFolders` parameters. See the [GraphQL Input file allowed folders](https://docs.advantys.com/workflowgen-integration-guide/graphql#input-file-allowed-folders) and [Incoming Webhooks Input file allowed folders](https://docs.advantys.com/workflowgen-integration-guide/incoming-webhooks#input-file-allowed-folders) sections in the [WorkflowGen Integration Guide](https://docs.advantys.com/workflowgen-integration-guide/) for more information.
{% endhint %}

#### When upgrading from version 7.14.3 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="ApplicationSecurityAuthSessionRefreshEnableIFrame" value="Y" />
```

#### When upgrading from version 7.14.8 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="EngineServiceInactiveRequestLifespanUnit" value="d" />
<add key="EFormAspxAcceptEmptyInputTextParam" value="Y" />
<add key="SendHttpPostMaxResponseLength" value="4194304" />
<add key="RestApiClientLogLevel" value="0"/>
<add key="RestApiClientRequestTimeout" value="3000" />
<add key="RestApiClientMaxResponseLength" value="4194304" />
<add key="RestApiClientEnableFilesCleanUp" value="Y" />
<add key="GetUsersFromDirLogLevel" value="0" />
<add key="XmlTransEnableFilesCleanUp" value="Y" />
<add key="MergeFormEnableFilesCleanUp" value="Y" />
<add key="GraphqlInputFileAllowedHttpUrls" value="" /> 
<add key="HooksInputFileAllowedHttpUrls" value="" />
```

{% hint style="warning" %}
If you're using HTTP URLs for GraphQL and/or incoming webhooks file operations (such as sending a file action parameter), you must update the values of the `GraphqlInputFileAllowedHttpUrls` and `HooksInputFileAllowedHttpUrls` parameters. See the [GraphQL Input file allowed HTTP URLs](https://docs.advantys.com/workflowgen-integration-guide/graphql#input-file-allowed-http-urls) and [Incoming Webhooks Input file allowed HTTP URLs](https://docs.advantys.com/workflowgen-integration-guide/incoming-webhooks#input-file-allowed-http-urls) sections in the [WorkflowGen Integration Guide](https://docs.advantys.com/workflowgen-integration-guide/) for more information.
{% endhint %}

Remove the following deprecated parameters from `<appSettings>`:

```markup
XmlTransPreviousFilesCleanUp
MergeFormTempFilesLifeSpan
```

#### **When upgrading from version 7.15.2 and earlier**

1. Add the following nodes after the existing `<location>` nodes in `\wfgen\web.config`:

   ```html
   <location path="auth" inheritInChildApplications="false">
       <system.webServer>
           <modules>
               <remove name="ApplicationSecurityAuthenticationModule" />
           </modules>
       </system.webServer>
   </location>
   <location path="hooks" inheritInChildApplications="false">
       <system.webServer>
           <modules>
               <remove name="ApplicationSecurityAuthenticationModule" />
           </modules>
       </system.webServer>
   </location>
   <location path="scim" inheritInChildApplications="false">
       <system.webServer>
           <modules>
               <remove name="ApplicationSecurityAuthenticationModule" />
           </modules>
       </system.webServer>
   </location>
   ```
2. Remove the node below from `\wfgen\auth\web.config`, `\wfgen\hooks\web.config`, and `\wfgen\scim\web.config`, if present:

   ```html
   <modules>
       <remove name="ApplicationSecurityAuthenticationModule" />
   </modules>
   ```

#### When upgrading from version 7.15.4 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="PortalRedirectAllowedHttpUrls" value="" />
```

{% hint style="warning" %}
As 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](https://docs.advantys.com/workflowgen-integration-guide/integration-using-workflowgen-urls#from-within-another-website)) **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'`).
{% endhint %}

#### When upgrading from version 7.15.5 and earlier

1. Add the following node after the existing `<location>` nodes in `\wfgen\web.config`:

   ```html
   <location path="graphql" inheritInChildApplications="false">
      <system.webServer>
         <httpProtocol>
            <customHeaders>
               <add name="Access-Control-Allow-Origin" value="*" />
               <add name="Access-Control-Allow-Methods" value="GET, POST, OPTIONS, HEAD" />
               <add name="Access-Control-Allow-Headers" value="Accept, Origin, Authorization, Content-Type, x-wfgen-impersonate-username, x-iisnode-auth_user" />
            </customHeaders>
         </httpProtocol>
      </system.webServer>
   </location>
   ```

2. Change the default value of `RestApiClientRequestTimeout` from `3000` to `30000` milliseconds.<br>

3. Make the following modifications to each Node.js component's `web.config` file (located in `\wfgen\graphql`, `\wfgen\hooks`, `\wfgen\scim`, and `\wfgen\auth`):

   * Change the iisnode handler path from `server.js` to `dist/server.js`.
   * Change the rewrite rule `url` property from `server.js` to `dist/server.js`.<br>

   It should look as follows:

   ```html
   <handlers>
      <add name="iisnode" path="dist/server.js" verb="*" modules="iisnode"/>
   </handlers>

   <rewrite>
      <rules>
         <rule name="DynamicContent">
            <conditions>
               <add input="{{REQUEST_FILENAME}}" matchType="IsFile" negate="True"/>
            </conditions>
            <action type="Rewrite" url="dist/server.js"/>
         </rule>
      </rules>
   </rewrite>   
   ```

#### When upgrading from version 7.16.5 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="AdministrationMaxHelpTextSize" value="10000" />
<add key="ApplicationSecurityAuthAdditionalScopes" value="" />
```

#### When upgrading from version 7.18.1 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="ReportsTopProcessesNumber" value="10" />
```

#### When upgrading from version 7.18.2 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
```

#### When upgrading from version 7.20.0 and earlier

Add the following new parameters to `<appSettings>`:

```html
<add key="ApplicationSecurityAuthResponseMode" value="" />
<add key="ApplicationSecurityAuthDecodeAccessToken" value="" />
```

#### When upgrading from version 7.21.0 and earlier

Add the following new parameter to `<appSettings>`:

```html
<add key="ExecSqlLogLevel" value="0" />
```

{% hint style="warning" %}
As of WorkflowGen 7.22.0, the log level values for the existing GETUSERSFROMDIR, MERGEFORM, SENDHTTPPOST, and RESTAPICLIENT workflow applications have changed to `0` for no logs (default), `2` for information, and `3` for debugging. You can set (or reset) the log levels by updating the values of the following parameters accordingly:

```html
<add key="GetUsersFromDirLogLevel" value="" />
<add key="MergeFormLogLevel" value="" />
<add key="SendHttpPostLogLevel" value="" />
<add key="RestApiClientLogLevel" value="" />
```

{% endhint %}

#### When upgrading from version 7.22.0 and earlier

Remove the existing `Access-Control-Allow-*` custom header nodes from `location path="graphql"` (as shown below), since they are deprecated as of version 7.22.1:

```html
<location path="graphql" inheritInChildApplications="false">
    <system.webServer>
        <httpProtocol>
            <customHeaders>
                <add name="Access-Control-Allow-Origin" value="*" />
                <add name="Access-Control-Allow-Methods" value="GET, POST, OPTIONS, HEAD" />
                <add name="Access-Control-Allow-Headers" value="Accept, Origin, Authorization, Content-Type, x-wfgen-impersonate-username, x-iisnode-auth_user" />
            </customHeaders>
        </httpProtocol>
    </system.webServer>
</location>
```

{% hint style="warning" %}
If you want to configure CORS to allow GraphQL API access from a third-party application, you must now follow the instructions in the [Cross-origin resource sharing (CORS)](https://docs.advantys.com/workflowgen-integration-guide/graphql#cross-origin-resource-sharing-cors) section in the [WorkflowGen Integration Guide](https://docs.advantys.com/workflowgen-integration-guide/).
{% endhint %}

#### When upgrading from all 7.x.x versions and earlier

1. Add the following new parameters to `<appSettings>`:

   ```xml
   <add key="AdministrationProcessQuickListSize" value="0" />
   <add key="EngineServiceNotificationFrequency" value="60000" />
   <add key="EngineServiceCancellationFrequency" value="120000" />
   <add key="EngineServiceSynchroActionFrequency" value="15000" />
   <add key="EngineServiceScheduledSystemActionFrequency" value="15000" />
   <add key="EngineServiceTimeoutSystemActionFrequency" value="15000" />
   <add key="EngineServiceCleanupFrequency" value="180000" />
   <add key="EngineServiceMaxScheduledSystemActions" value="25" />    
   <add key="EngineServiceMaxTimeoutSystemActions" value="25" />
   <add key="ApplicationSecurityAuthExposeAccessTokenInCookies" value="N" />
   <add key="DocuSignUserGuid" value="" />
   <add key="DocuSignAuthServer" value="" />
   <add key="DocuSignClientId" value="" />
   <add key="DocuSignHostServer" value="" />
   <add key="DocuSignSendLogLevel" value="0" />
   <add key="DocuSignCheckLogLevel" value="0" />
   <add key="JsonToDataLogLevel" value="0" />
   ```

2. Remove the following parameters from `<appSettings>`:

   ```html
   <add key="DirectoryApplicationAssemblyQualifiedName" value="Advantys.Workflow.Directories.WorkflowDirectoryUserManager, Advantys.Workflow.Directories" />
   <add key="DirectoryDeletionRulesAssemblyQualifiedName" value="Advantys.Workflow.Directories.WorkflowDirectoryDeletionRules, Advantys.Workflow.Directories" />
   <add key="DirectoryMaxMapToUsers" value="100" />
   <add key="DirectoryTruncateValue" value="50" />
   ```

3. Add the following to the `<configuration>` node:

   <pre class="language-html"><code class="lang-html"><strong>&#x3C;runtime>
   </strong>    &#x3C;assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
           &#x3C;dependentAssembly>
               &#x3C;assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
               &#x3C;bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
           &#x3C;/dependentAssembly>
       &#x3C;/assemblyBinding>
   &#x3C;/runtime>
   &#x3C;system.diagnostics configSource="trace.config" />
   </code></pre>

4. Add `targetFramework="4.8"` to the three web apps' `httpRuntime` nodes:

   <pre class="language-html"><code class="lang-html"><strong>&#x3C;location path="." inheritInChildApplications="false">
   </strong>    &#x3C;system.web>
           &#x3C;httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
       &#x3C;/system.web>
   &#x3C;/location>
   &#x3C;location path="wfapps/webforms" inheritInChildApplications="false">
       &#x3C;system.web>
           &#x3C;httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
           &#x3C;pages clientIDMode="AutoID" controlRenderingCompatibilityVersion="3.5" />
       &#x3C;/system.web>
   &#x3C;/location>
   &#x3C;location path="ws" inheritInChildApplications="false">
       &#x3C;system.web>
           &#x3C;httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
       &#x3C;/system.web>
   &#x3C;/location>
   </code></pre>

5. Add the following to the `<configuration>` node in `\Inetpub\wwwroot\wfgen\ws\web.config`:

   ```html
   <runtime>
       <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
           <dependentAssembly>
               <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
           </dependentAssembly>
       </assemblyBinding>
   </runtime>
   ```

6. Add the following to `<configuration>` node in `\Program Files\Advantys\WorkflowGen\Services\bin\WfgDirectoriesSyncService.exe.config`:

   ```html
   <system.diagnostics configSource="WfgDirectoriesSyncService.exe.trace.config" />
   ```

7. Add the following to the `<configuration>` node in `\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineService.exe.config`:

   ```html
   <system.diagnostics configSource="WfgWorkflowEngineService.exe.trace.config" />
   <runtime>
       <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
           <dependentAssembly>
               <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
               <bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />
           </dependentAssembly>
       </assemblyBinding>
   </runtime>
   ```

## Upgrade the WorkflowGen database

Run the SQL scripts listed below in order, starting with your current version of WorkflowGen, then continue running the scripts in the [Upgrade the WorkflowGen database](https://docs.workflowgen.com/upgrade/9.2.6/workflowgen-upgrade/..#upgrade-the-workflowgen-database) section in the main upgrade chapter.

{% hint style="info" %}
Oracle database is no longer supported as of WorkflowGen 7.16.0.
{% endhint %}

### MS SQL Server

#### For versions 5.1.9 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-2-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.2.x and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-3-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.3.x, 5.4.0 (alpha, beta 1 and beta 2) and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-4-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.4.x official and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-5-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.5.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-5-1.sql`database update script in your SQL Server Management Studio tool.

#### For versions 5.5.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-5-2.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.5.4 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-5-5.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.5.5 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-6-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.6.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-6-2.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.6.2 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-6-3.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.6.3 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-6-4.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.7.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-7-1.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.7.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V5-7-2.sql` database update script in your SQL Server Management Studio tool.

#### For versions 5.7.4 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-0-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.0.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-1-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.1.2 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-1-3.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.1.3 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-1-4.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.1.6 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-2-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.4.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-5-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.5.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V6-6-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 6.6.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-0-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.1.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-1-1.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.1.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-2-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.2.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-3-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.5.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-6-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.9.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-10-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.10.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-11-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.11.2 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-12-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.12.2 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-13-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.13.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-14-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.14.7 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-15-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.15.1 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-15-2.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.15.5 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-16-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.16.5 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-17-0.sql` database update script in your SQL Server Management Studio tool.

#### For versions 7.21.0 and earlier

Launch the `Update\Databases\MsSQLServer\Update_WFG-V7-22-0.sql` database update script in your SQL Server Management Studio tool.

#### For all 7.x.x and earlier versions

Launch the `Update\Databases\MsSQLServer\Update_WFG-V8-0-0.sql` database update script in your SQL Server Management Studio tool.

## Update the Directory Synchronization configuration file

A new configuration parameter is required when upgrading from **version 5.1.5 and earlier**. This parameter allows you to provide a unique service name to the WorkflowGen Directory Synchronization service should you have multiple instances of WorkflowGen installed on a single server.

Add the following parameter to `DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgDirectoriesSyncService.exe.config`:

```markup
<add key="ServiceName" value="WorkflowGenDirSyncService" />
```

## Update the WorkflowGen Engine Service configuration file

A new configuration parameter is required when upgrading from **version 5.1.5 or earlier**. This parameter allows you to provide a unique service name to the WorkflowGen Engine service should you have multiple instances of WorkflowGen installed on a single server.

Add the following parameter to `DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineService.exe.config`:

```markup
<add key="ServiceName" value="WorkflowGenEngineService" />
```

## Move the XMLTODATABASE transactions file

If you're upgrading **from version 5.7.4 or earlier**, copy the `Transactions.xml` file from `\wfgen\WfApps\WebServices\XmlToDatabase\App_Data` to `\wfgen\App_Data\Files\XmlToDatabase`.

## Remove the `xmlns` attribute

As of WorkflowGen version 7, you must remove the `xmlns` attribute from these configuration files:

```
\wfgen\web.config 
\wfgen\ws\web.config 
\wfgen\WfApps\WebForms\web.config 
DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineServer.exe.config
DRIVE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgDirectoriesSyncService.exe.config
```

To do this, change `<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">` to `<configuration>`.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.workflowgen.com/upgrade/9.2.6/workflowgen-upgrade/legacy-upgrade.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
