POST
|
Minor error in documentation in https://pro.arcgis.com/en/pro-app/latest/arcpy/mapping/guidelines-for-arcpy-mapping.htm An example of using the CURRENT keyword. aprx = arcpy.mp.ArcGISProject('current') should be aprx = arcpy.mp.ArcGISProject('CURRENT')
... View more
04-22-2021
07:16 PM
|
1
|
2
|
525
|
POST
|
Worked out how to do this using the Cartographic Information Model (https://pro.arcgis.com/en/pro-app/latest/arcpy/mapping/python-cim-access.htm) : ------------------------------------------------------------------------------------------------------------ #List of Fields to Format with comma delimiters
SpCommaDelimFields=["AllData_Ld","AllData_P", "AllData_SR"]
#List of Fields to Format with 2 decimal places
SpTwoDecFields=["AllData_Ld","AllData_P", "AllData_SR"]
currentProject = arcpy.mp.ArcGISProject("CURRENT")
currentMap = currentProject.listMaps()[0] #I think this assumes there is only one map
layers = currentMap.listLayers()
for layer in layers:
lyrCIM = layer.getDefinition('V2')
if layer.name == "TheLayer":
lyrCIM.showPopups = True # show popups
lyrCIM.expanded = True # At least one of these seems to help the map refresh
# Modify the display of numeric fields
for fd in lyrCIM.featureTable.fieldDescriptions:
fdNumFmt = fd.numberFormat
if fd.fieldName in SpCommaDelimFields:
fdNumFmt.useSeparator = True #Use a comma as a thousands separator
if fd.fieldName in SpTwoDecFields:
fdNumFmt.roundingValue = 2 #Two decimal places
-------------------------------------------------------------------------------------------------------------------
# Push the changes back to the layer object
layer.setDefinition(lyrCIM)
#Get the layer definition again to check that it has changed
lyrCIMNew = layer.getDefinition('V2')
messages.addMessage( layer.name + " showPopups after: " + str(lyrCIMNew.showPopups))
messages.addMessage( layer.name + " showMapTips after: " + str(lyrCIMNew.showMapTips))
currentProject.save Note that this is ArcPro 2.4 - the portion of the lyrx file that handles the format looks like this: { "type" : "CIMFieldDescription", "alias" : "Ld", "fieldName" : "AllData_Ld", "numberFormat" : { "type" : "CIMNumericFormat", "alignmentOption" : "esriAlignRight", "alignmentWidth" : 0, "roundingOption" : "esriRoundNumberOfDecimals", "roundingValue" : 2, "useSeparator" : true }, It's a good idea to export the Lyrx file and check the Json to see if it matches this example or check out the specification https://github.com/esri/cim-spec EDIT: in 2.8 I use a script to check the Layer file directly - see below
... View more
04-18-2021
09:28 PM
|
1
|
4
|
3609
|
IDEA
|
I have successfully managed to edit the numberFormats using Python CIM access so it should be possible to do this in a Python Toolbox with the Layer Name and the Field Name as inputs: e.g: ----------------------------------------------------------------------------- currentProject = arcpy.mp.ArcGISProject("CURRENT") currentMap = currentProject.listMaps()[0] #I think this assumes there is only one map layers = currentMap.listLayers() for layer in layers: lyrCIM = layer.getDefinition('V2') if layer.name == INPUT_LYR: lyrCIM.showPopups = True # Modify the display of numeric fields for fd in lyrCIM.featureTable.fieldDescriptions: if fd.fieldName == INPUT_FIELD: fdNumFmt = fd.numberFormat fdNumFmt.useSeparator = True #Use a comma as a thousands separator layer.setDefinition(lyrCIM) currentProject.save ---------------------------------------------------------------------------------------------------
... View more
04-12-2021
02:25 AM
|
0
|
0
|
1224
|
POST
|
Thanks Kory, I can confirm that the altering the layer properties via Python CIM access works a treat, this should be tagged as the answer.
... View more
04-12-2021
02:12 AM
|
0
|
0
|
419
|
POST
|
Hi Josh, Hosted Map Image Layers won't work for us as we are creating ArcGIS Pro maps on the fly from excel and loading them into ArcGIS Enterprise as Individual Map Image Layers. We create a couple a day during our peak season as the maps are used as an Audit tool for our data. The problem starts in ArcGIS Pro when TextFormatting.NewLine is ignored. Note that I've found some other info here: https://community.esri.com/t5/developers-questions/arcade-text-constant-for-textformatting-newline-is-adding-space/td-p/709762/page/4
... View more
04-07-2021
08:42 PM
|
0
|
0
|
53126
|
POST
|
Posted as an Idea Here: https://community.esri.com/t5/python-ideas/ability-to-access-the-popup-object-in-arcpy-arcgis-pro/idi-p/1041413
... View more
03-28-2021
07:36 PM
|
0
|
1
|
3460
|
IDEA
|
There is a need to be able to access and edit the Popup Object in ArcPy to: 1. Toggle the Popup on and off 2. Set expressions for the text Some of this can be achieved via ApplySymbobologyFromLayer but the "showPopups" : false, setting does not seem to be honoured at the moment. See also: https://community.esri.com/t5/python-questions/arcypy-custom-pop-ups/m-p/538954
... View more
03-28-2021
07:36 PM
|
0
|
3
|
2207
|
IDEA
|
This is related to the post: https://community.esri.com/t5/python-questions/turn-off-fields-with-python/td-p/403316/page/2 by @DylanHarwell There is a need to be able to turn on and off Fields in Python on Layers that have been created by joins or on existing layers in a project via ArcPy. This is a sample workflow: 1. Create a new feature class via Spatial Join of 2 Layers 2. Use Create Feature Layer to create a layer from the Feature Class 3. Create a creates a geoprocessing field info object from the new Layer. 4. Iterate through the field info object to set fields as hidden or visible 5. NEW: Use the Field Info object to set the fields in the new Layer created earlier. OR make the arcpy.Describe().FieldInfo function able to access a new Feature Class that not currently displayed as a Layer.There were (cumbersome) solutions for ArcMap.
... View more
03-28-2021
07:11 PM
|
0
|
3
|
1377
|
POST
|
Hi Manish - what version of ArcGIS Pro and Portal are you using?
... View more
03-28-2021
06:46 PM
|
0
|
0
|
53161
|
POST
|
Got it logged as a bug: https://my.esri.com/#/support/bugs/BUG-000138288 Excuse me coming across as a little whiney but I understand ESRI products in the USA are quite cheap per user, which explains why users in the US users tend to put up with a lot more. ESRI in Australia and elsewhere is VERY expensive per seat so we do expect things to pretty much, well, work.
... View more
03-21-2021
03:37 PM
|
0
|
0
|
2144
|
POST
|
How can I insert newline characters in an Arcade expression in ArcGIS Enterprise, the following: 'Rural SI VBP: ' +$feature.AllData_Rural_Site_Influences__VBP_ + textformatting.NewLine + ' SI Non VBP: ' +$feature.AllData_Site_Influences__Non_VBP_ + textformatting.newline seems to be ignored in ArcGIS Enterprise. The inital maps are being prepared in ArcGIS Pro 2.4 so if there is a way we could do this there and have the labels show up in Portal that would work for us too. I understand from previous questions that textformatting.NewLine isn't supported? But it is included in the documentation here: https://pro.arcgis.com/en/pro-app/latest/help/mapping/text/text-formatting-tags.htm This is how it looks for us currently in Mapinfo:
... View more
02-21-2021
06:56 PM
|
1
|
10
|
55279
|
POST
|
I tried using ApplySymbologyFromLayer in model builder and can confirm it doesn't work in Pro 2.7 as a standalone model on existing layers. The model seems to get confused on what is a Variable Name and what is a Variable Value: 1. Looks ok: 2. Looks ok 3. The Variable Name is now the Variable Value: It doesn't work in a Python Toolbox either -> https://my.esri.com/#/support/bugs/BUG-000136115
... View more
02-14-2021
10:06 PM
|
0
|
1
|
2199
|
POST
|
"You will get used to it, and things will change" Getting my users to reorder the layers every time isn't such a big ask. The bugs with Apply Symbology from Layer (bugs in a python toolbox, bugs when used in model builder) are another thing altogether. The commentary on Geonet also makes me think that this is an issue that has been going on for years. If I can't get a decent automated workflow up and running my users will abandon ESRI except for a couple of licences to produce something fancy for presentations and that's it. That's a fair bit of $$.
... View more
02-14-2021
08:29 PM
|
0
|
0
|
2235
|
Title | Kudos | Posted |
---|---|---|
1 | 11-25-2021 08:36 PM | |
1 | 10-18-2021 04:51 PM | |
1 | 11-28-2021 04:15 PM | |
1 | 11-29-2021 05:00 PM | |
1 | 12-09-2020 07:12 PM |
Online Status |
Offline
|
Date Last Visited |
07-25-2022
12:39 AM
|