I have been running a script that worked just fine until I changed an attribute in a writer. After that I am getting an error message saying something about an undefined macro and a derefence in file "wb-xlate-(a long number sequence)". What does it mean and how can I solve it?
"wb-xlate-..." is name of a temporary file which was created by FME at run-time, usually you don't need to care about it.
The major issue is described here - "Undefined macro `<macro name>'".
I think that an undefined user parameter (i.e. macro) name is used somewhere in your workspace.
Check if there is a reader/writer/transformer parameter that refers to an undefined user parameter, especially in the writer you have changed the setting.
Takashi
"wb-xlate-..." is name of a temporary file which was created by FME at run-time, usually you don't need to care about it.
The major issue is described here - "Undefined macro `<macro name>'".
I think that an undefined user parameter (i.e. macro) name is used somewhere in your workspace.
Check if there is a reader/writer/transformer parameter that refers to an undefined user parameter, especially in the writer you have changed the setting.
Takashi
Hi Takashi,
Just letting you know why I encountered the same issue :
In FME 2018, I used workspacerunners calling workspaces that were reading and writing files with dynamic paths using user parameters such as "..\\folder\\$(subfolder_parameter)\\file.json" with normal readers/writers. It worked perfectly fine.
But when I moved to FME2022 I got the same issue "Undefined macro 'subfolder_parameter' dereferenced in file `\\wb-xlate...." . After days of inquiries, I understood it all came from the relative paths inside the fmw files called by the worspacerunners. Eventually I found 3 solutions :
- use featurereaders/writers instead of normal readers/writers
- use fanout expressions (available in writer only seemingly)
- set the relative path from within the workspacerunner transformers
Not sure it helps, but I wanted to share to prevent anyone having as much trouble as me!