Skip to main content

I'm working on a script that I downloaded from the server and want to run this on the desktop version.

It requires a couple parameter changes to make that working, but it's quite a hassle to do that properly whenever switching between desktop and server.

For instances changing the featureReader file path from $(FME_SHAREDRESOURCE_TEMP)/$(FME_MF_NAME)/foo.json to ~/documents/FME/foo.json

I noticed that I can set FME server parameters on the desktop, which are currently all empty.

Can I for example set $(FME_SHAREDRESOURCE_TEMP) = ~/documents and $(FME_MF_NAME) = FME so it works on the desktop and server without the need to change these parameters whenever I switch between server and desktop?

It didn't quite do what I expected. First, $(FME_MF_NAME) cannot be set manually.

So I set $(FME_SHAREDRESOURCE_TEMP) = ~/documents/FME.

However, it reads this as relative path, so it created the folders from the location of the script: ~/documents/FME/~/documents/FME/$(FME_MF_NAME)/

Setting $(FME_SHAREDRESOURCE_TEMP) = output fixes it, creating the output files in ~/documents/FME/output/$(FME_MF_NAME)/


As you've discovered, you cannot set FME_MF_NAME, it will always correspond to the workspace name.

For the FME Server parameters, you can override them in FME Desktop and point them to a local path. When you execute the workspace on FME Server the "local overrides" are automatically overwritten by the server values.

All paths in FME are interpreted as relative to the workspace file, as far as possible. This is to make it easier to move workspaces and associated files between systems.


As you've discovered, you cannot set FME_MF_NAME, it will always correspond to the workspace name.

For the FME Server parameters, you can override them in FME Desktop and point them to a local path. When you execute the workspace on FME Server the "local overrides" are automatically overwritten by the server values.

All paths in FME are interpreted as relative to the workspace file, as far as possible. This is to make it easier to move workspaces and associated files between systems.

Ah, that is really nice. I couldn't find any documentation on how they can be used on the desktop version.

This'll save me quite a lot of time


As you've discovered, you cannot set FME_MF_NAME, it will always correspond to the workspace name.

For the FME Server parameters, you can override them in FME Desktop and point them to a local path. When you execute the workspace on FME Server the "local overrides" are automatically overwritten by the server values.

All paths in FME are interpreted as relative to the workspace file, as far as possible. This is to make it easier to move workspaces and associated files between systems.

can you flesh this out with an example please? When I set a parameter to "$(FME_SHAREDRESOURCE_TEMP)" in desktop CSV2 Writer after closing the dialog it goes blank and the script fails when running.

 


can you flesh this out with an example please? When I set a parameter to "$(FME_SHAREDRESOURCE_TEMP)" in desktop CSV2 Writer after closing the dialog it goes blank and the script fails when running.

 

Did you define the value of FME_SHAREDRESOURCE_TEMP in the Workspace Navigator first?

image


can you flesh this out with an example please? When I set a parameter to "$(FME_SHAREDRESOURCE_TEMP)" in desktop CSV2 Writer after closing the dialog it goes blank and the script fails when running.

 

No I hadn't done that. Thanks!


can you flesh this out with an example please? When I set a parameter to "$(FME_SHAREDRESOURCE_TEMP)" in desktop CSV2 Writer after closing the dialog it goes blank and the script fails when running.

 

@david_r​ Is there a way of setting this value for all workspaces run from Desktop? Now I need to set this over and over for each workspace.


can you flesh this out with an example please? When I set a parameter to "$(FME_SHAREDRESOURCE_TEMP)" in desktop CSV2 Writer after closing the dialog it goes blank and the script fails when running.

 

Not that I know of, unfortunately.


Reply