Solved

Is there anyway I can force FME to utilize the ArcGIS Pro libraries rather than the ArcGIS Desktop libraries when both are installed?

  • 4 December 2020
  • 20 replies
  • 141 views

Badge

I’m using FME 2020.2 (FME(R) 2020.2.0.0 (20201027 - Build 20787 - WIN64)) and I have ArcGIS Pro 2.6 and ArcGIS Desktop 10.4 (with 64 bit background geo-processing) installed. I have a File Geodatabase (FGDB) that FME is unable to read.  The error I'm getting is :

 

“It could have failed to open because it contains ArcGIS Pro-only features, for example Arcade expressions. If this is the case, please install ArcGIS Pro-compatible ArcGIS Sever and 64-bit FME."

 

This FGDB contains a relatively new ESRI field type called contingent values on a feature class.  ESRI notes this makes the FGDB incompatible with ArcMap and releases prior to ArcGIS Pro 2.3 and ArcGIS Enterprise 10.7.x. It appears that FME is defaulting to using the ArcGIS Desktop libraries rather than the newer ArcGIS Pro libraries when both application are installed. The only work around I have identified at this time is uninstalling ArcGIS Desktop.  Once I do this FME will read the File Geodatabase without any errors

icon

Best answer by rahulsharma 6 August 2021, 17:51

View original

20 replies

Userlevel 4

Have you tried making sure that the ArcGIS Pro library path appears before the ArcGIS Desktop on the PATH environment variable? If you end up changing the PATH, a reboot of the server my be necessary for all the components to pick it up.

There's some mention about it here: https://community.safe.com/s/article/setting-different-license-levels-for-arcgis-and-fm

Badge +8

Hi @camwatson​ ,

You should easily switch the version of Esri Python by changing Python Compatibility from "Esri ArcGIS Python 2.7" to "Esri ArcGIS Python 3.6"

Badge

Have you tried making sure that the ArcGIS Pro library path appears before the ArcGIS Desktop on the PATH environment variable? If you end up changing the PATH, a reboot of the server my be necessary for all the components to pick it up.

There's some mention about it here: https://community.safe.com/s/article/setting-different-license-levels-for-arcgis-and-fm

Hi David - I checked my path and neither Pro or ArcGIS Desktop are actually listed. I'm assuming FME must be picking up the locations of the applications from somewhere else. Just for fun I added the ArcGIS Pro bin folder to my path to see if that might solve the problem, but I'm seeing the same error.

Badge

Hi @camwatson​ ,

You should easily switch the version of Esri Python by changing Python Compatibility from "Esri ArcGIS Python 2.7" to "Esri ArcGIS Python 3.6"

In this case it's not a Python issue. I was already asking to use ESRI ArcGIS Python 3.6 interpreter, and it didn't change the result.

Badge

The one workaround we've come up with is to use the "Esri Geodatabase (File Geodb Open API)" reader rather than the "Esri Geodatabase (File Geodb)" reader. I haven't had good luck with the Open API version in the past. This time it opened the File Geodatabase without issue. I would still like to know if there is a way to prioritize which ESRI libraries are used within FME.

Badge +8

Hi @camwatson​ 

Changing the Python Compatibility would work but it requires a simple python code (in startup script) as follow 

import os

Once you add this, FME will detect that there is some Python in the workspace and it will enable User Specified Python (in your case it would be Esri ArcGIS Pro 3.6) libraries. 

 

 

Badge +11

Also came across this today even though my machine has Pro (2.6.4, alongside ArcGIS Desktop 10.6.1). Thankfully the server that the particular scheduled process works on has ArcGIS Server installed (10.6.1 alongside Pro 2.6.4) so that enables this to work. I'm currently on FME 2020.2. Seems one that will hopefully be attended to in 2021 or 2022 @Dale Lutz​ ?

Badge +8

Hi @chriswilson​ , 

In FME Desktop 2021.x and newer, we have added a new option in Navigator Window to pick Esri ArcGIS Pro / ArcGIS Desktop. 

 In your FME Workspace, go to Navigator --> Workspace Parameter --> Translation --> Esri ArcGIS Compatability --> Set this to "Esri ArcGIS Pro"

EsriCompatabilityFor FME Desktop/Server 2020.0 or earlier 

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility 

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under 

"Startup Python Script" 

import os

This will ensure that FME does not overwrite Python Compatibility when editing workspace.

Badge +11

Hi @chriswilson​ , 

In FME Desktop 2021.x and newer, we have added a new option in Navigator Window to pick Esri ArcGIS Pro / ArcGIS Desktop. 

 In your FME Workspace, go to Navigator --> Workspace Parameter --> Translation --> Esri ArcGIS Compatability --> Set this to "Esri ArcGIS Pro"

EsriCompatabilityFor FME Desktop/Server 2020.0 or earlier 

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility 

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under 

"Startup Python Script" 

import os

This will ensure that FME does not overwrite Python Compatibility when editing workspace.

Thanks.  So this is a workspace-by-workspace workaround, but it would be better to be a workspace default going forwards.  As we all know ArcMap is not going beyond 10.9 and python 2.7 is now deprecated.

Hi @chriswilson​ , 

In FME Desktop 2021.x and newer, we have added a new option in Navigator Window to pick Esri ArcGIS Pro / ArcGIS Desktop. 

 In your FME Workspace, go to Navigator --> Workspace Parameter --> Translation --> Esri ArcGIS Compatability --> Set this to "Esri ArcGIS Pro"

EsriCompatabilityFor FME Desktop/Server 2020.0 or earlier 

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility 

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under 

"Startup Python Script" 

import os

This will ensure that FME does not overwrite Python Compatibility when editing workspace.

Like @chriswilson​,  I'd also like to see the option for making workspaces default to the ArcGIS Pro libraries.

Hi @chriswilson​ , 

In FME Desktop 2021.x and newer, we have added a new option in Navigator Window to pick Esri ArcGIS Pro / ArcGIS Desktop. 

 In your FME Workspace, go to Navigator --> Workspace Parameter --> Translation --> Esri ArcGIS Compatability --> Set this to "Esri ArcGIS Pro"

EsriCompatabilityFor FME Desktop/Server 2020.0 or earlier 

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility 

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under 

"Startup Python Script" 

import os

This will ensure that FME does not overwrite Python Compatibility when editing workspace.

If the Esri ArcGIS Compatibility parameter is set to "Auto", and both ArcGIS Desktop and ArcGIS Pro are installed, which one does FME choose to use?

How is this parameter used by FME if the FME Workbench is run with FME Server on a machine that has ArcGIS Server installed?

Badge +9

Hi @thejando​ 

 

If you have both programs and the compatibility is set to Auto, then it should pick up ArcGIS Desktop first.

 

I spoke to a developer about your second question. Even if you have ArcGIS Desktop or ArcGISPro set it should still work with ArcGIS Server. He did note, there could potentially be an issue if you have a very old ArcServer without ArcPro compatibility and you set the compatibility to ArcPro but we haven't heard of users having issues.

 

Please let me know if you have any questions!

Hi @thejando​ 

 

If you have both programs and the compatibility is set to Auto, then it should pick up ArcGIS Desktop first.

 

I spoke to a developer about your second question. Even if you have ArcGIS Desktop or ArcGISPro set it should still work with ArcGIS Server. He did note, there could potentially be an issue if you have a very old ArcServer without ArcPro compatibility and you set the compatibility to ArcPro but we haven't heard of users having issues.

 

Please let me know if you have any questions!

Thank you @siennaatsafe​, yes that answers my question. It would be useful if this information was made available in the online documentation, here:

 

https://docs.safe.com/fme/html/FME_Desktop_Documentation/FME_Workbench/Workbench/workspace_parameters.htm

 

I would also prefer if the "Auto" setting defaulted to ArcGIS Pro considering that ArcGIS Pro is planned to superseded ArcGIS Desktop. It would also be useful if this setting could be configured in

FME Options as the default for when new FME Workbenches are created.

 

@rahulsharma My company runs ArcMap 10.8 , ArcPro 2.8 and FME 2019.1. We cannot upgrade our FME to 2021 because of the programs we have running. Is there an install order for the applications or a setting we can change to have FME 2019.1 call on ArcPro rather than ArcMap to stop getting this error in our workbenches. Some of our workstations do not have this issue so there must be something. Do you have an idea?

Error image

Badge +8

@rahulsharma My company runs ArcMap 10.8 , ArcPro 2.8 and FME 2019.1. We cannot upgrade our FME to 2021 because of the programs we have running. Is there an install order for the applications or a setting we can change to have FME 2019.1 call on ArcPro rather than ArcMap to stop getting this error in our workbenches. Some of our workstations do not have this issue so there must be something. Do you have an idea?

Error image

Hi @jzanoni​ 

For FME Desktop/Server 2020.0 or earlier

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under

"Startup Python Script"

import os

 

This will ensure that FME does not overwrite Python Compatibility when editing the workspace.

NOTE: Based on the information you have provided i.e. ArcGIS Pro 2.8 and FME Desktop 2019.1, these are not compatible produces see (Esri and FME Compatibility

My suggestion would be if you can not upgrade FME Desktop to downgrade ArcGIS Pro to version 2.4 

@rahulsharma​ the python compatibility is set at 3.7 already. Is there any other solution?python compatibility

Badge +8

@rahulsharma​ the python compatibility is set at 3.7 already. Is there any other solution?python compatibility

@jzanoni​ Can you change this setting to Esri ArcGIS Pro 1.4 -2.0 python and downgrade ArcGIS Pro to version 2.4? This is the only solution in your scenario given the fact that you have mentioned that you are unable to upgrade FME Desktop.

@rahulsharma​ We cannot downgrade our ArcPro (we need certain features for mapping). It looks like we will have to upgrade out FME then, we were hoping there would be a solution for our versions rather than upgrading FME as this will be a long process with the number of workbenches we use. As I mentioned some of our work stations are running these versions. Oh well, only so much we can do, better to upgrade now! Thank you for your help. :)

Badge +7

Hi @chriswilson​ , 

In FME Desktop 2021.x and newer, we have added a new option in Navigator Window to pick Esri ArcGIS Pro / ArcGIS Desktop. 

 In your FME Workspace, go to Navigator --> Workspace Parameter --> Translation --> Esri ArcGIS Compatability --> Set this to "Esri ArcGIS Pro"

EsriCompatabilityFor FME Desktop/Server 2020.0 or earlier 

Go to Navigator --> Workspace Parameter --> Scripting --> Python Compatibility 

Set the Python Compatibility to "Esri ArcGIS Desktop 3.6 /3.7"

If there is no python transformer in the workspace, you may need to add a single line under 

"Startup Python Script" 

import os

This will ensure that FME does not overwrite Python Compatibility when editing workspace.

In my case, using FME Desktop 2022.1 and FME Server 2022.1 in the same machine where ArcGIS Server 10.8.1 and ArcGIS Pro 3.0 is installed.

 

Esri ArcGIS Compatibility option was set to Esri ArcGIS Pro in the workspace.

 

When this workspace executed in FME Desktop, it's picking up ArcGIS Pro license. However, with FME Server it was picking ArcGIS Server license (I wanted it to pick ArcGIS Pro license).

 

Note 1: I have already followed the article https://community.safe.com/s/article/Using-ArcGIS-Pro-with-FME-Server to make sure the ArcGIS Pro licensed under the service account that of FME Server related windows services.

 

Note 2: Followed the suggestion given for FME Server 2020.0 or earlier for my FME Server 2022.1 i.e. setting the workspace's Python Compatibility to Esri ArcGIS Python 3.9+ and Startup Python Script as import os, FME Server  workspace was nicely picked up the ArcGIS Pro license.

 

Your comments please...

 

 

Badge +2

Hi, We have a user running FME Desktop 2022.0.0 with ArcMap 10.7.1 and ArcGIS Pro 3.0 installed. I cannot get his FME session to use ArcGIS Pro no matter what we choose in the Esri ArcGIS Compatibility setting. The translation always defaults to ArcMap.

Reply