# Mise à jour WorkflowGen 8.2.0

## Aperçu <a href="#apercu" id="apercu"></a>

Les procédures suivantes s’appliquent au pack de mise à jour WorkflowGen 8.2.0 disponible à l'adresse suivante : <https://github.com/advantys/workflowgen-releases/releases>.

## Contenu du pack de mise à jour <a href="#contenu-du-pack-de-mise-a-jour" id="contenu-du-pack-de-mise-a-jour"></a>

Le pack de mise à jour est un fichier compressé qui contient les répertoires suivants :

* `Inetpub` : Fichiers d’applications Web de WorkflowGen
* `Program Files` : Fichiers de services Windows de WorkflowGen
* `Databases` : Fichiers de création et mise à jour de la base de données WorkflowGen

## Serveur IIS

Arrêtez le serveur IIS, ou au moins vos applications Web WorkflowGen si d’autres sites Web utilisent le même serveur IIS.

## Services Windows WorkflowGen

Arrêtez les services de synchronisation des répertoires et du moteur WorkflowGen dans le module Windows Services Management.

## Sauvegarde

### Répertoires d’applications et de données

Sauvegardez les répertoires suivants :

* `DISQUE:\Inetpub\wwwroot\wfgen`
* `DISQUE:\Program Files\Advantys\WorkflowGen`

Si le chemin de stockage de fichiers n’est pas celui par défaut de `DISQUE:\Inetpub\wwwroot\wfgen\App_Data`, vous devrez sauvegarder le répertoire correspondant.

### Base de données

Faites une sauvegarde standard de la base de données au moyen des outils DBMS.

## Mettre à jour les fichiers des applications Web WorkflowGen <a href="#mettre-a-jour-fichiers-applciations-web-workflowgen" id="mettre-a-jour-fichiers-applciations-web-workflowgen"></a>

### Supprimer les fichiers et dossiers obsolètes des applications Node.js

Vérifiez si ces fichiers et dossiers obsolètes utilisés par les applications basées sur Node.js existent toujours dans votre dossier `\wfgen` et supprimez-les s'ils existent.

1. Supprimez les fichiers et dossiers suivants du dossier `\wfgen\graphql` :
   * `\controllers`
   * `\models`
   * `\node_modules`
   * `\services`
   * `\utils`
   * `config.js`
   * `config.production.js`
   * `server.js` <br>
2. Supprimez les fichiers et dossiers suivants du dossier `\wfgen\hooks` :
   * `\controllers`
   * `\models`
   * `\node_modules`
   * `\services`
   * `\test`
   * `\utils`
   * `config.js`
   * `config.production.js`
   * `server.js`
   * `upload.js` <br>
3. Supprimez les fichiers et dossiers suivants du dossier `\wfgen\auth` :
   * `\controllers`
   * `\models`
   * `\node_modules`
   * `\static`
   * `\utils`
   * `config.js`
   * `config.production.js`
   * `server.js` <br>
4. Supprimez les fichiers et dossiers suivants du dossier `\wfgen\scim` :
   * `\controllers`
   * `\models`
   * `\node_modules`
   * `\services`
   * `\utils`
   * `config.js`
   * `config.production.js`
   * `server.js`

### Supprimer les fichiers d'assembly obsolètes

Supprimez les fichiers d'assembly `.dll` obsolètes suivants des dossiers `\wfgen\bin`, `\wfgen\ws\bin` et `\Program Files\Advantys\WorkflowGen\services\bin` :

* `Advantys.Directories`
* `Advantys.Directories.Web.UI.Administration`
* `Advantys.Web.UI.Charting`
* `Advantys.Workflow.Applications.ExecSql`
* `Advantys.Workflow.Applications.GetUsersFromDir`
* `Advantys.Workflow.Applications.MergeForm`
* `Advantys.Workflow.Applications.RestApiClient`
* `Advantys.Workflow.Applications.SendMessage`
* `Advantys.Workflow.Applications.XmlToDatabase`
* `Advantys.Workflow.Applications.XmlTrans`
* `Advantys.Workflow.Reports`
* `Advantys.Workflow.Web.UI.Reports`

### Copier le contenu du pack de mise à jour

Écrasez le répertoire d’applications Web avec le contenu de `Update\Inetpub\wwwroot\wfgen`. Le chemin recommandé par défaut est `DISQUE:\Inetpub\wwwroot\wfgen`.

{% hint style="warning" %}

* Les utilisateurs du domaine et les comptes de services Windows spécifiés dans le pool d’applications IIS et le service du moteur WorkflowGen doivent avoir les droits de lecture et d’écriture sur le dossier `\wfgen\app_data`.
* N’écrasez pas votre fichier `DISQUE:\Inetpub\wwwroot\wfgen\web.config`si vous voulez conserver vos paramètres de configuration WorkflowGen et les informations de connexion de base de données existantes.
* Il se peut que les fichiers par défaut CSS aient été mis à jour dans cette version et pourraient alors écraser des paramétrages personnalisés dans votre installation existante :
  * `\wfgen\App_Themes\Default\portal\css\Default.css`
  * `\wfgen\App_Themes\Default\admin\css\Default.css`
* Si vous avez fait des changements aux fichiers défauts dans les répertoires suivants (ex. : fichiers `.aspx`, `.css`, `.resx`), sauvegardez les fichiers existants avant la mise à jour, puis réappliquez ces changements aux fichiers correspondants de la version 7.x.x :
  * `\wfgen`
  * `\wfgen\App_Themes`
  * `\wfgen\App_Data\Templates\Emails`
  * `\wfgen\App_Data\Templates\Forms`
  * `\wfgen\App_Data\Templates\Processes`
    {% endhint %}

## Mettre à jour les fichiers des services Windows WorkflowGen <a href="#mettre-a-jour-fichiers-services-windows-workflowgen" id="mettre-a-jour-fichiers-services-windows-workflowgen"></a>

### Supprimer le fichier DLL obsolète

Supprimez le fichier `DISQUE:\Program Files\Advantys\WorkflowGen\Services\bin\EAGetMail40.dll` obsolète.

### Écraser le répertoire des services Windows WorkflowGen

Écrasez le répertoire des services Windows WorkflowGen avec le contenu de `Update\Program Files\Advantys\WorkflowGen`. Le chemin recommandé par défaut est `DISQUE:\Program Files\Advantys\WorkflowGen`.

{% hint style="danger" %}
N’écrasez pas vos fichiers `DISQUE:\Program Files\Advantys\WorkflowGen\Services\bin\*.config` existants.
{% endhint %}

## Mettre à jour les fichiers de programme Node.js

Copiez `node.exe.config` et `trace.config` (situés dans `Update\Program Files\nodejs`) dans `DISQUE:\Program Files\nodejs`.

{% hint style="warning" %}
S'il y a déjà un fichier `node.exe.config` dans le dossier `DISQUE:\Program Files\nodejs`, **ne l'écrasez pas**. Au lieu de cela, ajoutez ce qui suit au nœud `<configuration>` du fichier existant :

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

{% endhint %}

## Mettre à jour les fichiers de configuration <a href="#mettre-a-jour-fichier-configuration-web" id="mettre-a-jour-fichier-configuration-web"></a>

Cette section décrit les paramétrages de configuration à appliquer selon la version de WorkflowGen depuis laquelle vous faites la mise à jour.

#### 📌 Exemples

* Pour passer de la version 8.0.6 à la version 8.2.0, vous devez appliquer les modifications indiquées dans les sections **Mise à jour pour les versions 8.0.7 et antérieures, Mise à jour pour les versions 8.0.8 et antérieures, Mise à jour pour les versions 8.1.0 et antérieures** et **Mise à jour pour les versions 8.1.3 et antérieures**.
* Pour passer de la version 8.1.3 à la version 8.2.0, vous devez appliquer les modifications indiquées dans la section **Mise à jour pour les versions 8.1.3 et antérieures** uniquement.

{% hint style="warning" %}
Vous devez supprimer l’attribut `xmlns` du fichier de configuration Web indépendamment de la version depuis laquelle vous mettez à jour (voir la section [Supprimer l’attribut `xmlns`](#supprimer-lattribut-xmlns)).
{% endhint %}

#### Mise à jour pour les versions 5.7.4 et antérieures

Vérifiez les paramètres suivants dans votre fichier `\wfgen\web.config` et ajoutez ceux qui n’y sont pas déjà :

```markup
<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="info" %}
WorkflowGen.My et WorkflowGen.My.Web.UI.WebControls (WorkflowFileUpload) version 3.0 ou ultérieure sont requis dans tous vos formulaires Web Visual Studio si la fonctionnalité de sécurité est activée. Pour plus de renseignements, référez-vous à l’article de la base de connaissances WorkflowGen à l’adresse [https://discuss.workflowgen.com/t/setup-web-apps-security-workflow-parameters-secure-mode](https://discuss.workflowgen.com/t/setup-web-apps-security-workflow-parameters-secure-mode/125).
{% endhint %}

```markup
<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" />
```

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

```markup
<add key="PortalFrameSetHeight" value="0,68,*,0" />
```

{% hint style="info" %}
Le premier chiffre dans cette valeur est la hauteur de la bannière. Si votre site Web est configuré pour afficher une bannière, entrez sa hauteur en pixels ici. Les autres valeurs par défaut ne devraient pas être changées.
{% endhint %}

```markup
<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" %}
Vous pouvez copier le paramètre `ProcessesRuntimeWebServiceAllowedUsers` de votre `\wfgen\ws\web.config`existant à `\wfgen\web.config`.
{% endhint %}

```markup
<add key="EFormAspxPreviousFilesCleanUp" value="Y" />
```

{% hint style="info" %}
Vous pouvez copier ce paramètre de votre `\wfgen\WfApps\WebApps\eFormASPX\web.config` existant à `\wfgen\web.config`.
{% endhint %}

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

{% hint style="info" %}
Vous pouvez copier ce paramètre de votre `\wfgen\WfApps\WebServices\GetUsersFromDir\web.config` existant à `\wfgen\web.config`.
{% endhint %}

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

{% hint style="info" %}
Vous pouvez copier ces paramètres de votre `\wfgen\WfApps\WebServices\XmlToDatabase\web.config` existant à `\wfgen\web.config`.
{% endhint %}

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

{% hint style="info" %}
Vous pouvez copier ces paramètres de votre `\wfgen\WfApps\WebServices\XmlTrans\web.config` existant à `\wfgen\web.config`.
{% endhint %}

Supprimez les paramètres obsolètes suivants dans `<appSettings>` :

```
PortalFollowUpRelevantDataListNumber
PortalPopupRelevantDataListNumber
PortalEnableRequestDataListPopUp
```

Réglez les nœuds suivants dans `<configuration>` :

```markup
<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>
```

Réglez ou mettez à jour le nœud suivant dans `<configuration>/<system.web>` :

```markup
<pages validateRequest="false" enableSessionState="true">
```

#### Mise à jour pour les versions 6.0.0 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

```markup
<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" %}
Remplacez le chemin de `ApplicationSmtpPickupDirectory` par celui de votre répertoire de collecte de la passerelle SMTP.
{% endhint %}

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

{% hint style="info" %}
Le paramètre `ApplicationSmtpDeliveryMethod` spécifie la méthode d’expédition des notifications. Par défaut, cette méthode utilise le serveur SMTP, mais vous pouvez changer la méthode d’expédition à **Répertoire de collecte** depuis le **Panneau de configuration** du **Module d’administration**.
{% endhint %}

#### Mise à jour pour les versions 6.1.0 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

#### Mise à jour pour les versions 6.1.4 et antérieures

Ajoutez ou modifiez le paramètre `AdministrationFormDataProviderName` comme suit :

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

{% hint style="info" %}
La valeur `Oracle.DataAccess.Client` a été ajoutée à ce paramètre dans la version 6.1.5.
{% endhint %}

#### Mise à jour pour les versions 6.1.6 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

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

#### Mise à jour pour les versions 6.4.0 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

```markup
<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" />
```

#### Mise à jour pour les versions 6.5.0 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` pour configurer le fichier log de l’application de workflow SENDHTTPPOST en remplaçant la valeur `n` avec `0` pour désactiver, `1` pour les logs simples ou `2` pour les logs de débogage.

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

#### Mise à jour pour les versions 6.6.0 et antérieures

Supprimez les paramètres obsolètes de `<appSettings>` :

```
ApplicationImpersonificationUsername
ApplicationImpersonificationPassword
PortalDefaultWorkflowGraphicalMode
ApplicationEnableFlashDetection
```

#### Mise à jour pour les versions 7.1.1 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

```markup
<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" />
```

#### Mise à jour pour les versions 7.3.1 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

#### Mise à jour pour les versions 7.6.0 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

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

#### Mise à jour pour les versions 7.9.1 et antérieures <a href="#id-791-anterieures" id="id-791-anterieures"></a>

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

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

{% hint style="info" %}
Si vous utilisez des dossiers pour les opérations de fichier GraphQL et / ou webhooks entrants (tels que l'envoi d'un paramètre d'action de fichier), vous devez mettre à jour les valeurs des paramètres `GraphqlInputFileAllowedFolders` et `HooksInputFileAllowedFolders`. Voir les sections [GraphQL Input file allowed folders](https://docs.advantys.com/workflowgen-integration-guide/graphql#input-file-allowed-folders) et [Incoming Webhooks Input file allowed folders](https://docs.advantys.com/workflowgen-integration-guide/incoming-webhooks#input-file-allowed-folders) dans le [Guide d'intégration WorkflowGen](https://docs.advantys.com/workflowgen-integration-guide/) pour plus d'informations (disponible en anglais seulement).
{% endhint %}

#### Mise à jour pour les versions 7.14.3 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

#### Mise à jour pour les versions 7.14.8 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

```markup
<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="info" %}
Si vous utilisez des URLs HTTP pour les opérations de fichier GraphQL et / ou Webhooks entrants (tels que l'envoi d'un paramètre d'action de fichier), vous devez mettre à jour les valeurs des paramètres `GraphqlInputFileAllowedHttpUrls` et `HooksInputFileAllowedHttpUrls`. Voir les sections [GraphQL Input file allowed HTTP URLs](https://docs.advantys.com/workflowgen-integration-guide/graphql#input-file-allowed-http-urls) et [Incoming Webhooks Input file allowed HTTP URLs](https://docs.advantys.com/workflowgen-integration-guide/incoming-webhooks#input-file-allowed-http-urls) dans le [Guide d'intégration WorkflowGen](https://docs.advantys.com/workflowgen-integration-guide/) pour plus d'informations (disponible en anglais seulement).
{% endhint %}

Supprimez les paramètres obsolètes suivants de `<appSettings>` :

```markup
XmlTransPreviousFilesCleanUp
MergeFormTempFilesLifeSpan
```

#### Mise à jour pour les versions 7.15.2 et antérieures

Ajoutez les nœuds suivants après les nœuds `<location>` existants dans `\wfgen\web.config` :

```markup
<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>
```

Supprimez le nœud ci-dessous de `\wfgen\auth`, `\wfgen\hooks` et `\wfgen\scim` , si présent :

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

#### Mise à jour pour les versions 7.15.4 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

{% hint style="warning" %}
À partir de la version 7.15.5, les paramètres HTTP facultatifs `BACKURL_SUBMIT` et `BACKURL_CANCEL` utilisés dans les URLs WorkflowGen personnalisées (par exemple, lors du [lancement d'une nouvelle demande et du déclenchement de la première action sur un autre site Web](https://docs.advantys.com/workflowgen-integration-guide/integration-using-workflowgen-urls#launch-a-new-request-and-start-the-first-action-within-another-website)) supportent **UNIQUEMENT** les URLs absolues (commençant par `http://` ou `https://`), les URLs relatives (commençant par `/`) ou les URLs définies dans le paramètre de configuration `PortalRedirectAllowedHttpUrls` (par exemple, `value='blank.htm, myPage.htm'`).
{% endhint %}

#### Mise à jour pour les versions 7.15.5 et antérieures

1. Modifiez la valeur par défaut de `RestApiClientRequestTimeout` de `3000` à `30000` millisecondes.
2. Faites les modifications suivantes au fichier `web.config` de chaque composant Node.js (situés dans `\wfgen\graphql`, `\wfgen\hooks`, `\wfgen\scim` et`\wfgen\auth`) :

   * Changez le chemin du gestionnaire iisnode de `server.js` en `dist/server.js`.
   * Changez la propriété `url` de la règle de réécriture de `server.js` en `dist/server.js`.

   Les modifications devraient ressembler à ceci :

   ```markup
   <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>
   ```

#### Mise à jour pour les versions 7.16.5 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

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

#### Mise à jour pour les versions 7.18.1 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

#### Mise à jour pour les versions 7.18.2 et antérieures

1. Ajoutez le nouveau paramètre suivant à `<appSettings>` :

   ```markup
   <add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
   ```
2. Ajoutez `targetFramework="4.6.1"` au nœuds \_\_`httpRuntime` des applications Web. Par exemple :

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

#### Mise à jour pour les versions 7.20.0 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

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

#### Mise à jour pour les versions 7.21.0 et antérieures

Ajoutez le nouveau paramètre suivant à `<appSettings>` :

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

{% hint style="warning" %}
À partir de la version 7.22.0 de WorkflowGen, les valeurs de niveau de journalisation des applications de workflow GETUSERSFROMDIR, MERGEFORM, SENDHTTPPOST et RESTAPICLIENT existantes ont été modifiées à `0` pour aucune journalisation (par défaut), `2` pour les informations et `3` pour le débogage. Vous pouvez définir (ou redéfinir) les niveaux de journalisation en mettant à jour les valeurs des paramètres suivants en conséquence :

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

{% endhint %}

#### Mise **à** jour pour les versions 7.22.0 et antérieures

Supprimez les nœuds d'en-tête personnalisés `Access-Control-Allow-*` existants de `location path="graphql"` (comme indiqué ci-dessous), car ils sont obsolètes à partir de la version 7.22.1 :

```markup
<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" %}
Si vous souhaitez configurer le partage de ressources cross-origin (CORS) pour l'accès à l'API GraphQL par une application tierce, vous devez maintenant suivre les instructions de la section [Cross-origin resource sharing (CORS)](https://docs.advantys.com/workflowgen-integration-guide/graphql#cross-origin-resource-sharing-cors) dans le [Guide d'intégration WorkflowGen](https://docs.advantys.com/workflowgen-integration-guide/) (disponible en Anglais seulement).
{% endhint %}

#### Mise à jour pour toutes les versions 7.x.x et antérieures

1. Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

   ```markup
   <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. Supprimez les paramètres suivants de `<appSettings>` :

   ```markup
   <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. Ajoutez le suivant au nœud `<configuration>` :

   ```markup
   <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>
   <system.diagnostics configSource="trace.config" />
   ```
4. Ajoutez `targetFramework="4.8"` aux nœuds `httpRuntime` des trois applications Web :

   ```markup
   <location path="." inheritInChildApplications="false">
       <system.web>
           <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
       </system.web>
   </location>
   <location path="wfapps/webforms" inheritInChildApplications="false">
       <system.web>
           <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
           <pages clientIDMode="AutoID" controlRenderingCompatibilityVersion="3.5" />
       </system.web>
   </location>
   <location path="ws" inheritInChildApplications="false">
       <system.web>
           <httpRuntime requestValidationMode="2.0" maxRequestLength="10240" targetFramework="4.8" />
       </system.web>
   </location>
   ```
5. Ajoutez le suivant au nœud `<configuration>` dans `\Inetpub\wwwroot\wfgen\ws\web.config` :

   ```markup
   <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. Ajoutez le suivant au nœud `<configuration>` dans`\Program Files\Advantys\WorkflowGen\Services\bin\WfgDirectoriesSyncService.exe.config` :

   ```markup
   <system.diagnostics configSource="WfgDirectoriesSyncService.exe.trace.config" /> 
   ```
7. Ajoutez le suivant au nœud `<configuration>` dans `\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineService.exe.config` :

   ```markup
   <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>
   ```

#### Mise à jour pour les versions 8.0.0 et antérieures

1. Ajoutez les nouveaux paramètres suivants à `<appSettings>`:

   ```markup
   <add key="RemoteApprovalAuthClientId" value="" />
   <add key="RemoteApprovalAuthClientSecret" value="" />
   <add key="RemoteApprovalAuthScope" value="" />
   <add key="RemoteApprovalAuthAccessTokenUri" value="" />
   ```
2. Supprimez le paramètre obsolète suivant de `<appSettings>`:

   ```markup
   EngineTraceMode
   ```

#### Mise à jour pour les versions 8.0.1 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>`:

```markup
<!-- AdobeSign -->
<add key="AdobeSignClientId" value="" />
<add key="AdobeSignClientSecret" value="" />
<add key="AdobeSignHostServer" value="" />
<add key="AdobeSignRefreshToken" value="" />
<add key="AdobeSignSendLogLevel" value="0" />
<add key="AdobeSignCheckLogLevel" value="0" />
```

#### Mise à jour pour les versions 8.0.2 et antérieures

```markup
<add key="EngineNotificationNotifyDelegator" value="Y" />
<add key="EnginePushNotificationSendExpoApiUrl" value="https://exp.host/--/api/v2/push/send" />

<!-- Docaposte -->
<add key="DocaposteUsername" value="" />
<add key="DocapostePassword" value="" />
<add key="DocaposteHostServer" value="" />
<add key="DocaposteOfferCode" value="" />
<add key="DocaposteOrganizationalUnitCode" value="" />
<add key="DocaposteSendLogLevel" value="0" />
<add key="DocaposteCheckLogLevel" value="0" />
```

#### Mise à jour pour les versions 8.0.7 et antérieures

1. Ajoutez le nouveau paramètre suivant à  `<appSettings>`  :

   ```html
   <add key="EngineServiceMaxPausedSynchroActions" value="25" />
   ```

2. Mettez à jour la valeur du paramètre `EngineServiceTimeoutSystemActionFrequency`  à `120000` comme suit :

   ```html
   <add key="EngineServiceTimeoutSystemActionFrequency" value="120000" />
   ```

#### Mise à jour pour les versions 8.0.10 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>`:

```svg
<add key="PortalReportAdvancedViewPaging" value="N" />
```

#### Mise à jour pour les versions 8.1.0 bêta et antérieures

1. Mettez à jour la valeur du paramètre suivant dans `<appSettings>` :<br>

   ```html
   <add key="PortalListPageSize" value="25" />
   ```

2. Supprimez les valeurs suivantes de `<appSettings>` pour la version **8.1.0 bêta** uniquement:<br>

   ```html
   <add key="PortalReportAdvancedViewPageSize" value="25" />
   <add key="PortalReportAdvancedViewPageSizeOptions" value="10,25,50,100,250" />
   ```

#### Mise à jour pour les versions 8.1.2 et antérieures

Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

```markup
<add key="GraphqlApiKeyEnabled" value="N" />
<add key="GraphqlApiKey" value="" />
```

#### Mise à jour pour les versions 8.1.3 et antérieures

1. Ajoutez les nouveaux paramètres suivants à `<appSettings>` :

   ```html
   <add key="PortalDisplayAssignedTeamAction" value="N" />
   <add key="HooksAllowImpersonateUser" value="N" />
   <add key="HooksApiKeyEnabled" value="N" />
   <add key="HooksApiKey" value="" />
   ```

2. Mettez à jour le nœud `bindingRedirect` dans tous les fichiers de configuration affectés (énumérés ci-dessous) de `<bindingRedirect oldVersion="0.0.0.0-12.0.0.0" newVersion="12.0.0.0" />` à `<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />` :
   * `\wfgen\web.config`
   * `\wfgen\ws\web.config`
   * `\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineService.exe.config`
   * `\Program Files\nodejs\node.exe.config`

### Supprimer l’attribut `xmlns`

À partir de la version 7 de WorkflowGen, vous devez supprimer l’attribut `xmlns` dans les fichiers de configuration suivants :

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

Pour ce faire, remplacez `<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">` par `<configuration>`.

## Mettre à jour le fichier de configuration Web racine

### Configurer le site Web racine de WorkflowGen pour une redirection automatique vers l'application Web `wfgen`

À partir de la version 7.21.0, vous devez configurer votre site Web racine WorkflowGen (p.ex, `https://serveur`) pour se rediriger automatiquement vers l'application Web `https://serveur/wfgen`. Pour ce faire, suivez la procédure ci-dessous :

1. Assurez-vous que l'outil [URL Rewrite](https://www.iis.net/downloads/microsoft/url-rewrite) est déjà installé sur votre serveur WorkflowGen.
2. Créez ou mettez à jour le fichier `web.config` dans le dossier **racine** de votre site Web (p.ex. `DISQUE:\inetpub\wwwroot\web.config`).

   ⚠️ **Attention :** Il ne s'agit **pas** du même fichier `web.config` que le fichier `web.config` principal de WorkflowGen (situé dans `DISQUE:\inetpub\wwwroot\wfgen\web.config`).
3. Définissez le nœud de la règle de réécriture comme indiqué ci-dessous (`configuration` / `system.webServer` / `<rewrite>` / `<rules>` / `<rule>`) :

   ```markup
   <?xml version="1.0" encoding="UTF-8"?>
   <configuration>
       <system.webServer>
           <rewrite>
               <rules>
                   <rule name="Rewrite to wfgen" stopProcessing="true">
                       <match url="(^$|^wfgen$|^wfgen/$)" />
                       <action type="Rewrite" url="/wfgen/show.aspx?QUERY=CONTEXT&amp;REQUEST_QUERY=WELCOME&amp;NO_REDIR=Y" />
                   </rule>
               </rules>
           </rewrite>
       </system.webServer>
   </configuration>
   ```

## Mettre à jour les formulaires Web créés dans l'éditeur de formulaires pour la version 8

À partir de la version 8 de WorkflowGen, l'assembly `WorkflowGen.My.Web.UI.WebControls.dll` a été fusionné dans `WorkflowGen.My.dll`. Ce changement cassant affecte les formulaires Web créés dans l'éditeur de formulaires et les dossiers `\bin` des formulaires Web, vous devez donc effectuer l'une des opérations suivantes :

### Utilisez le script PowerShell fourni

Exécutez le script `\update\configuration\update-webforms-wfg-my-assembly.ps1` dans PowerShell dans le dossier `\wfgen\wfapps\webforms\`. Cela mettra automatiquement à jour vos formulaires Web ASPX et supprimera les fichiers et dossiers obsolètes.

{% hint style="warning" %}
Ce script requiert **PowerShell version 5.1 ou ultérieure**.

Il mettra à jour tous les fichiers `.aspx` situés dans le dossier `\webforms`, y compris ceux qui ne sont pas gérés par l'éditeur de formulaires. Si vous avez des formulaires Web personnalisés dans ce dossier qui utilisent une autre version de `WorkflowGen.My.dll`, vous devez ignorer les modifications apportées à ces fichiers `.aspx`. Vous pouvez le faire en déplaçant ces fichiers vers un dossier temporaire avant d'exécuter le script, puis en les copiant dans le dossier d'origine.
{% endhint %}

#### Exemple d'utilisation

```bash
.\update-webforms-wfg-my-assembly.ps1 -Path "c:\inetpub\wwwroot\wfgen\wfapps\webforms" -Verbose
```

### Procédure manuelle

1. Supprimez les fichiers et dossiers suivants du dossier `\wfgen\wfapps\webforms\bin\` :
   * `WorkflowGen.My.Web.UI.WebControls.dll`
   * `WorkflowGen.My.Web.Handlers.dll`
   * `\de`
   * `\fr`
   * `\hu`
   * `\pl`
2. Mettez à jour chacun de vos formulaires Web créés dans l'éditeur de formulaires, soit en les réenregistrant, soit en remplaçant manuellement la balise `<%@ Register Assembly="WorkflowGen.My.Web.UI.WebControls" ... %>`

   par `<%@ Register Assembly="WorkflowGen.My" ... %>` dans chacun de vos fichiers `.aspx`.

## Mettre à jour les fichiers de configuration de GraphQL et des webhooks

Ajoutez la ligne suivante à `<system.webServer>` dans les fichiers `\wfgen\graphql\web.config` et `\wfgen\hooks\web.config\` :

```markup
<httpErrors existingResponse="PassThrough" errorMode="Detailed"></httpErrors>
```

## Mettre à jour le fichier de configuration de synchronisation des annuaires <a href="#mettre-a-jour-fichier-configuration-synchronisation-annuaires" id="mettre-a-jour-fichier-configuration-synchronisation-annuaires"></a>

Un nouveau paramètre de configuration est requis pour la mise à jour **depuis les versions 5.1.5 et antérieures**. Ce paramètre vous permet de donner un nom unique au service de synchronisation des répertoires WorkflowGen si vous avez plusieurs instances de WorkflowGen installées sur un serveur.

`DISQUE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgDirectoriesSyncService.exe.config`

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

## Mettre à jour le fichier de configuration du service du moteur WorkflowGen <a href="#mettre-a-jour-fichier-configuration-service-moteur-workflowgen" id="mettre-a-jour-fichier-configuration-service-moteur-workflowgen"></a>

Un nouveau paramètre de configuration est requis pour la mise à jour **depuis les versions 5.1.5 et antérieures**. Ce paramètre vous permet de donner un nom unique au service de synchronisation des répertoires WorkflowGen si vous avez plusieurs instances de WorkflowGen installées sur un serveur.

`DISQUE:\Program Files\Advantys\WorkflowGen\Services\bin\WfgWorkflowEngineService.exe.config`

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

## Déplacer le fichier de transactions XMLTODATABASE <a href="#deplacer-fichier-transactions-xmltodatabase" id="deplacer-fichier-transactions-xmltodatabase"></a>

Si vous mettez à jour **depuis la version 5.7.4 ou antérieure**, copiez le fichier `Transactions.xml` de `\wfgen\WfApps\WebServices\XmlToDatabase\App_Data` dans `\wfgen\App_Data\Files\XmlToDatabase`.

## Mettre à jour la base de données WorkflowGen <a href="#mettre-a-jour-base-de-donnees-workflowgen" id="mettre-a-jour-base-de-donnees-workflowgen"></a>

Exécutez les scripts SQL ci-dessous dans l’ordre, en commençant par la version de WorkflowGen depuis laquelle vous faites la mise à jour. Par exemple, si vous mettez à jour depuis la version 5.5.0, exécutez les scripts en commençant par **Depuis les versions 5.5.0 et antérieures** jusqu’à **Depuis les versions 8.0.x et antérieures**, inclusivement.

{% hint style="info" %}
La base de données Oracle n'est plus supportée à partir de la version 7.16.0 de WorkflowGen.
{% endhint %}

### MS SQL Server

#### Depuis les versions 5.1.9 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-2-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.2.x et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-3-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.3.x, 5.4.0 (alpha, beta 1 et beta 2) et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-4-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.4.x et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-5-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.5.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-5-1.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.5.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-5-2.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.5.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-5-5.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.5.5 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-6-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.6.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-6-2.sql` dans SQL Server Management Studio.

#### Depuis les versions 5.6.2 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-6-3.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.6.3 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-6-4.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.7.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-7-1.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.7.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V5-7-2.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 5.7.2, 5.7.3 ou 5.7.4 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-0-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.0.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-1-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.1.2 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-1-3.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.1.3 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-1-4.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.1.6 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-2-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.4.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-5-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.5.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V6-6-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 6.6.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-0-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.1.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-1-1.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.1.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-2-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.2.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-3-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.5.1, 7.5.0, 7.4.1, 7.4.0, 7.3.1, 7.3.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-6-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.9.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-10-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.10.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-11-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.12.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-12-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.12.2 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-13-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.13.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-14-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.14.7, 7.14.6 et antérieures <a href="#depuis-les-versions-7-13-1-et-anterieures" id="depuis-les-versions-7-13-1-et-anterieures"></a>

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-15-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.15.1, 7.15.0 et antérieures <a href="#depuis-les-versions-7-13-1-et-anterieures" id="depuis-les-versions-7-13-1-et-anterieures"></a>

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-15-2.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.15.5 et antérieures <a href="#depuis-les-versions-7-13-1-et-anterieures" id="depuis-les-versions-7-13-1-et-anterieures"></a>

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-16-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.16.5 et antérieures <a href="#depuis-les-versions-7-13-1-et-anterieures" id="depuis-les-versions-7-13-1-et-anterieures"></a>

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-17-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 7.21.0 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V7-22-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis toutes les versions 7.x.x et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V8-0-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 8.0.1 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V8-0-2.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 8.0.2 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V8-0-3.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 8.0.x et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V8-1-0.sql` dans vos outils SQL Server Management Studio.

#### Depuis les versions 8.1.3 et antérieures

Exécutez le script de mise à jour de base de données `Update\Databases\MsSQLServer\Update_WFG-V8-2-0.sql` dans vos outils SQL Server Management Studio.

## Configuration de IIS

{% hint style="info" %}
Les utilisateurs du domaine et les comptes de services Windows spécifiés dans le pool d’applications IIS et le service du moteur WorkflowGen doivent avoir les droits de lecture et d’écriture sur le dossier `\wfgen\App_Data`.
{% endhint %}

### Mettre à jour ou créer le groupe d’applications en .NET 4

Le site Web et les applications Web de WorkflowGen doivent utiliser un groupe d’applications en .NET 4. Si cela n’a pas déjà été configuré, procédez comme suit :

1. Installez .NET Framework 4 sur le serveur, s’il n’est pas déjà installé.
2. Mettez à jour le groupe d’applications existant ou créez un nouveau groupe d’application avec .NET Framework 4 pour :
   * le site Web WorkflowGen
   * `\wfgen`
   * `\wfgen\wfapps\webforms` (créez cette application IIS si elle n’est pas déjà créée)
   * `\wfgen\ws` \*\*\*\*
3. Si votre groupe d’applications est configuré en mode **Classic Managed Pipeline**, assurez-vous de régler ASP.NET v4.0.30319 sur **Allowed** dans la liste de restrictions ISAPI et CGI de IIS.

## Applications Web basées sur Node.js

Pour utiliser les API GraphQL, webhooks entrants, OpenID Connect Auth et SCIM facultatives, vous devez d'abord installer les prérequis suivants :

* [Node.js v14.21.2 LTS](https://nodejs.org/download/release/v14.21.2/)
* [iisnode](https://github.com/Azure/iisnode/releases/tag/v0.2.21)
* [IIS URL Rewrite](https://www.iis.net/downloads/microsoft/url-rewrite)
* [Visual C ++ Redistributable](https://support.microsoft.com/fr-fr/help/2977003/the-latest-supported-visual-c-downloads) \
  ✏️ **Note :** Cette bibliothèque est requise si vous rencontrez l'erreur `Le module spécifié est introuvable` (`The specified module could not be found`) concernant les bibliothèques `edge` et `edge-js` lors de l'accès aux applications Web `/wfgen/graphql`, `/wfgen/hooks` ou `/wfgen/scim`.

{% hint style="info" %}

* Supprimez le dossier `node_modules` de chaque application basée sur Node.js (situé sous `\wfgen\auth`, `\wfgen\graphql`, `\wfgen\hooks` et `\wfgen\scim`) avant de copier les fichiers du pack de mise à niveau.
* Après l’activation des applications Web basées sur Node.js, les DLL de WorkflowGen seront utilisés par Node.js et ils seront donc verrouillés et ne pourront pas être modifiés. Si vous voulez les modifier, il sera nécessaire d’arrêter IIS.
  {% endhint %}

### Pour activer GraphQL :

1. Dans IIS, convertissez `/wfgen/graphql` en application avec un pool d’applications en .NET 4 (mode pipeline intégré).
2. Configurez le mode d’authentification de l’application GraphQL :
   * **Pour l’authentification de base :** Activez l’authentification de base.
   * **Pour l’authentification applicative WorkflowGen :**
     * Assurez-vous que l’authentification applicative WorkflowGen est déjà appliquée à l’application web `/wfgen`.
     * Appliquez l’authentification anonyme.
3. Ajoutez les paramètres suivantes utilisés par GraphQL au `web.config` :

   ```markup
   <add key="GraphqlMaxPageSize" value="100" />
   <add key="GraphqlMaxBatchSize" value="1000" />
   <add key="GraphqlDefaultPageNumber" value="1" />
   <add key="GraphqlDefaultPageSize" value="30" />
   <add key="GraphqlGraphiqlEnabled" value="N" />
   <add key="GraphqlLoadersCacheEnabled" value="Y" />
   <add key="GraphqlDebugEnabled" value="N" />
   <add key="GraphqlQueryTimeout" value="90000" />
   <add key="GraphqlOperationTimeout" value="30000" />
   <add key="GraphqlMaxOperationCount" value="10000" />
   <add key="GraphqlMaxInputFileSize" value="10240" />
   <add key="GraphqlMaxInputFileContentSize" value="0" />
   <add key="GraphqlInputFileDownloadTimeout" value="100000" />
   <add key="GraphqlInputFileAllowedFolders" value="" />
   <add key="GraphqlInputFileAllowedHttpUrls" value="" />
   ```

#### Résolution des problèmes

Dans certaines versions et/ou configurations de Windows Server, vous pourriez rencontrer l'erreur `Le module spécifié est introuvable` (`The specified module could not be found`) pour les bibliothèques `edge` et `edge-js` lors du lancement de `npm install --production` en ligne de commande, ou bien en accédant aux applications Web `/wfgen/graphql`, `/wfgen/hooks` ou `/wfgen/scim` (voir les logs dans chaque module, situés dans leurs sous-dossiers `iisnode` respectifs). Dans ce cas, nous suggérons d'installer la plus récente version de Visual C++ Redistributable afin de résoudre ce problème. Les derniers téléchargements pris en charge de Visual C++ sont disponibles à l'adresse <https://support.microsoft.com/fr-fr/help/2977003/the-latest-supported-visual-c-downloads>.

### Pour activer les webhooks entrants :

1. Mettez à jour le fichier `web.config` de WorkflowGen avec les paramètres suivants utilisés par les webhooks entrants :

   ```markup
   <add key="HooksDebugEnabled" value="N" />
   <add key="HooksOperationTimeout" value="30000" />
   <add key="HooksMaxInputFileSize" value="10240" />
   <add key="HooksMaxInputFileContentSize" value="0" />
   <add key="HooksInputFileDownloadTimeout" value="100000" />
   <add key="HooksInputFileAllowedFolders" value="" />
   <add key="HooksInputFileAllowedHttpUrls" value="" />
   ```
2. Dans IIS, convertissez `/wfgen/hooks` en application avec un pool d’applications en .NET 4 (mode pipeline intégré), et ensuite configurez l’application webhook en mode d’authentification anonyme.

{% hint style="info" %}
Si votre WorkflowGen est configuré avec l’authentification applicative WorkflowGen ou une authentification personnalisée, vous devez supprimer le module d’authentification du fichier `/hooks/web.config` comme suit :

* **Pour l'authentification applicative WorkflowGen :**

  ```markup
  <location path="hooks" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="ApplicationSecurityAuthenticationModule" />
          </modules>
      </system.webServer>
  </location>
  ```
* **Pour l'authentification personnalisée :**

  ```markup
  <location path="hooks" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="MyCustomAuthModule" />
          </modules>
      </system.webServer>
  </location>
  ```

{% endhint %}

### Pour activer SCIM :

Dans IIS, convertissez `/wfgen/scim` en application avec un pool d’applications en .NET 4 (mode pipeline intégré), et ensuite configurez l’application webhook en mode d’authentification **Anonyme**.

{% hint style="info" %}
Si votre WorkflowGen est configuré avec l’authentification applicative WorkflowGen ou une authentification personnalisée, vous devez supprimer le module d’authentification du fichier `/scim/web.config` comme suit :

* **Pour l'authentification applicative WorkflowGen :**

  ```markup
  <location path="scim" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="ApplicationSecurityAuthenticationModule" />
          </modules>
      </system.webServer>
  </location>
  ```
* **Pour l'authentification personnalisée :**

  ```markup
  <location path="scim" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="MyCustomAuthModule" />
          </modules>
      </system.webServer>
  </location>
  ```

{% endhint %}

### Pour activer OpenID Connect Auth :

Dans IIS, convertissez `/wfgen/auth` en application avec un pool d’applications en .NET 4 (mode pipeline intégré), et ensuite configurez l’application webhook en mode d’authentification **Anonyme**.

{% hint style="info" %}
Si votre WorkflowGen est configuré avec l’authentification applicative WorkflowGen ou une authentification personnalisée, vous devez supprimer le module d’authentification du fichier `/auth/web.config` comme suit :

* **Pour l'authentification applicative WorkflowGen :**

  ```markup
  <location path="auth" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="ApplicationSecurityAuthenticationModule" />
          </modules>
      </system.webServer>
  </location>
  ```
* **Pour l'authentification personnalisée :**

  ```markup
  <location path="auth" inheritInChildApplications="false">
      <system.webServer>
          <modules>
              <remove name="MyCustomAuthModule" />
          </modules>
      </system.webServer>
  </location>
  ```

{% endhint %}

## Redémarrer le serveur WorkflowGen

Redémarrez votre serveur WorkflowGen.

## Nouvel emplacement des fichiers temporaires et journaux des applications de workflow <a href="#nouvel-emplacement-fichiers-temporaires-journaux-applications-workflow" id="nouvel-emplacement-fichiers-temporaires-journaux-applications-workflow"></a>

Les applications de workflow suivantes stockent leurs fichiers dans les nouveaux emplacements suivants :

* EFORMASPX : `\wfgen\App_Data\Files\EFormAspx`
* XMLTODATABASE : `\wfgen\App_Data\LogFiles\XmlToDatabase`&#x20;
* XMLTRANS : `\wfgen\App_Data\Files\XmlTrans` and `\wfgen\App_Data\LogFiles\XmlTrans`
