Considerations
When opening and saving older workspaces created before FME Form 2021.0 in newer versions, translations may fail with errors such as:
“The dataset ‘C:\Path\To\Dataset’ could not be located. Please check that it exists.”
“<FormatName>: The encoded string is not a valid UTF-8 string: ‘\x83g\x83\x8A\x83A’”This typically occurs after moving a workspace between machines with different system locale settings.
Why This Happens
FME Form handles character encoding differently across versions. Workspaces created before FME Form 2021.0 do not store any information about the system’s character encoding. Workspaces created or saved in FME Form 2021.0 or newer store encoding information using the FME_NAMES_ENCODING field.
This can lead to conflicts when:
- A workspace is originally authored on a machine with one OS locale (for example, Shift_JIS)
- The same workspace is later opened and saved on another machine with a different OS locale (for example, win-1252)
When the workspace is saved in the newer version, the FME_NAMES_ENCODING value is updated to match the current machine. This may not match the original encoding used to define strings in the workspace.
As a result, FME cannot correctly interpret certain string values, leading to dataset path errors or invalid UTF-8 encoding messages.
How to Resolve It
Option 1: Preserve the Original Encoding Environment (Recommended)
If you know the workspace was created in an older version:
1. Keep a backup of the original workspace before opening it in a newer version.
2. Store or access that backup on a machine with the same OS locale as the original authoring environment.
3. Avoid saving the workspace in a different locale unless necessary.
Option 2: Rebuild Affected Workspace Components
If the workspace has already been opened and saved in a newer version on a different OS locale:
1. Regenerate all readers and writers in the workspace.
2. Recreate any schema-related transformers.
3. Update downstream parameters and connections that reference these components.
This ensures that all elements are rebuilt using the correct encoding for the current environment.
Additional Notes
- You can view the FME_NAMES_ENCODING value in the Translation Log by enabling Log Debug in FME Options.
- Encoding-related issues are more likely when working with non-ASCII characters or region-specific encodings.
- Standardizing OS locale settings across machines can help prevent this issue in collaborative environments.