2

Using an ArcPy script run from a toolbox, I want to import a feature class from a geodatabase into an ArcGIS Pro 2.1.2 map and then symbolise that layer based on a lyrx file stored on disk.

Here is a simplified version:

import arcpy, os
aprx = arcpy.mp.ArcGISProject('CURRENT')
m = aprx.listMaps('*')[0]
outputWorkspace = r"C:\Path\To\MyProject.gdb"
arcpy.env.workspace = outputWorkspace
out_fc = "fc_data"
out_fc_p = os.path.join(outputWorkspace, out_fc)
ref_lyrx = r"C:\Path\To\symbol_ref.lyrx"
m.addDataFromPath(out_fc_p)
out_fc_lyr = m.listLayers()[0]
arcpy.ApplySymbologyFromLayer_management(out_fc_lyr, ref_lyrx)

The script completes without error but no visible change is made to the symbology.

Is this a bug?

I've reviewed many similar questions but have been unable to resolve this.

I tried also first converting the fc to a layer using arcpy.MakeFeatureLayer_management().getOutput() before adding to the map with m.addLayer() and then using arcpy.ApplySymbologyFromLayer_management() but get exactly the same outcome.

  • 1
    What happens if you hit refresh? – Midavalo Jun 14 '18 at 4:12
  • Yep, manually refreshing doesn't change anything. Also, it seems that the RefreshActiveView function from ArcMap has not been implemented in Pro so I can't implement it in the script. – smh Jun 14 '18 at 4:24
  • 1
    Have you tried manually adding a layer to your map and running just the arcpy.ApplySymbologyFromLayer() from the command line? Does that work? – Midavalo Jun 14 '18 at 4:28
  • Yes, same result - the line runs (no error) but symbology still not updated, which leads me to think it may be a bug?... – smh Jun 14 '18 at 4:37
  • How precisely did you turn the code snippet that you have presented into "an ArcPy script run from a toolbox"? As a test, have you tried giving a path to your *.aprx when you create the ArcGISProject object, and then saving aprx at the end to see whether the rest of your code works that way? – PolyGeo Jun 14 '18 at 22:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.