> For the complete documentation index, see [llms.txt](https://docs.workflowgen.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.workflowgen.com/upgrade/9.7.0/optional.md).

# Optional

## Remote Approval

**Remote Approval** is now an integrated feature in WorkflowGen, and is no longer a separate module.

For instructions on configuring Remote Approval, see the [Remote Approval](https://docs.workflowgen.com/admin/remote-approval) section in the [WorkflowGen Administration Guide](https://docs.workflowgen.com/admin/).

If you have the former Remote Approval module configured, you can keep using it, but if you want to migrate to the new integrated feature, you must perform the following steps.

1. Uninstall the Remote Approval module (it's recommended that you make a backup of all previous Remote Approval files and folders beforehand):
   1. Open the Windows Services list and stop the Remote Approval service, usually named `WorkflowGen RemoteApproval` or `WorkflowGen EmailListener`.
   2. Delete the `DRIVE:\Program Files (x86)\Advantys\WorkflowGen\RemApp\` folder.
   3. Delete the `\wfgen\bin\RemoteApprovalConfig.dll` and `\wfgen\admin\RemoteApprovalConfig.aspx` files.
2. In `\wfgen\App_Data\CustomMenus\admin.xml`, remove the Remote Approval `menuItem` node (you can delete the file entirely if it contains only this node).
3. Check **Activate** on the **Remote Approval** tab in the Administration Module **Configuration** panel.

{% hint style="warning" %}

* Verify your Remote Approval settings, which should be the same as in the former module, since they're inherited with the WorkflowGen upgrade.
* Remote Approval no longer requires WorkflowGen application-specific credentials, since it now uses the WorkflowGen Engine service.
* Whenever you change the Remote Approval refresh interval, you must restart the WorkflowGen Engine service for the new settings to take effect.
* **Optional:** Remove the following `web.config` settings, which are no longer used as of WorkflowGen 7.3.0 (you should make a backup of the existing `web.config` file beforehand):

  `RemoteApprovalWorkflowGenAppDomain RemoteApprovalEmailListenerServiceName RemoteApprovalWorkflowGenAppUsername RemoteApprovalWorkflowGenAppPassword`
* **Optional:** Test Remote Approval with an existing process for which Remote Approval was configured using the former module. You can also use the [Remote Approval sample process](https://app.box.com/s/s72fh4fv426p4ni099zukde1q14lsics) available on the [WorkflowGen Forum & Knowledge Base](http://discuss.workflowgen.com/).
  {% endhint %}

## Enable Change events

This procedure applies when the Change events feature has not previously been enabled. Change events activation is optional. Complete the mandatory database, application setting, root route, permission, and node consistency steps in the main upgrade section before enabling capture.&#x20;

1. Confirm the upgraded database contains the Change events structures and initialized integrity state.
2. Confirm the three [Change events root rewrite rules](/upgrade/9.7.0/workflowgen-upgrade.md#change-events-rules) are present in the correct order.
3. Generate one cryptographically random 32-byte key and Base64-encode it.
4. Store the key through the approved protected configuration mechanism and keep a recoverable protected copy.
5. Set `ApplicationSecurityChangeEventIntegrityKey` in the active `wfgen\web.config` to the generated value.
6. For a multi-node installation, follow the instructions in **Change events consistency** in the Technical Guide Web Farm Architecture documentation: deploy the same key and mode to every web node and the same key and retention to every Engine Service node sharing the database.
7. Recycle all web applications and restart all Engine Service instances after external configuration changes.
8. In the **Change events** section in the Administration Module **Configuration** panel, select **Standard** as the audit mode and save.
9. Follow the instructions in the **Verify Change events activation** in the Technical Guide Operations documentation.
10. Consider **Full** mode only after reviewing database capacity, expected navigation volume, privacy, and retention.

### **Generating a PowerShell 5.1 key**

```powershell
$keyBytes = New-Object byte[] 32
$rng = [System.Security.Cryptography.RandomNumberGenerator]::Create()

try {
    $rng.GetBytes($keyBytes)
}
finally {
    $rng.Dispose()
}

$integrityKey = [Convert]::ToBase64String($keyBytes)

if ([Convert]::FromBase64String($integrityKey).Length -ne 32) {
    throw "Invalid Change Events integrity key."
}

$integrityKey
```

{% hint style="warning" %}
The command writes the new key to the console. Transfer it directly into the approved secret store in a controlled administrator session. Never paste it into a ticket, log, screenshot, or documentation file. Keep a recoverable protected backup separate from ordinary database access.
{% endhint %}

## Disable and remove workflow applications in IIS

The following workflow applications have been integrated as built-in or assembly applications. The corresponding web applications can be disabled and removed in IIS and file system folders since they're no longer used.

* EFORMASPX: `\wfgen\WfApps\WebApps\EFormASPX`
* GETUSERSFROMDIR: `\wfgen\WfApps\WebServices\GetUsersFromDir`
* RAISEEXCEPTION: `\wfgen\WfApps\WebServices\RaiseException`
* XMLTODATABASE: `\wfgen\WfApps\WebServices\XmlToDatabase`
* XMLTRANS: `\wfgen\WfApps\WebServices\XmlTrans`

## Create a clean WorkflowGen database

To create a clean WorkflowGen database, you must use the full WorkflowGen manual installation pack, which is available at <https://github.com/advantys/workflowgen-releases/releases>.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.workflowgen.com/upgrade/9.7.0/optional.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
