<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Sorting Layers with Python in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/sorting-layers-with-python/m-p/400320#M31547</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So finally I made some progress in programming. But I am still not completely happy.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It works fine ,if there are only "normal" layers (raster, shape) BUT if I use GroupLayers it gets totally messed up. What happens is that the code "destroys" the group layer and converts it to a "normal" layer. This causes the longName of layers in the former grouplayer to change and my sorting Code is useless. GroupAnnotationLayers get messed up totally and several new singleannotation layers are generated. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Any idea how to access the grouplayer or any other samrt idea to solve this problem. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Chris&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;p.s. here my code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd = arcpy.mapping.MapDocument("Current")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df = arcpy.mapping.ListDataFrames(mxd, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd2 = arcpy.mapping.MapDocument(r"C:\Master\Master.mxd")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df2 = arcpy.mapping.ListDataFrames(mxd2, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;refLayer = arcpy.mapping.ListLayers(mxd,"",df)[1]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for lyr2 in arcpy.mapping.ListLayers(mxd2,"",df2):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; c=lyr2.longName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; d=lyr2.description&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; MasterLayer=c+d&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; print MasterLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; for lyr in arcpy.mapping.ListLayers(mxd,"",df):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a=lyr.longName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b=lyr.description&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveLayer= a+b&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if MasterLayer==moveLayer:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveLayer=lyr&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MoveLayer(df,refLayer,moveLayer, "After")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; refLayer=moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print MasterLayer,moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd.save()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del mxd&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 13 May 2011 17:34:42 GMT</pubDate>
    <dc:creator>chriss_</dc:creator>
    <dc:date>2011-05-13T17:34:42Z</dc:date>
    <item>
      <title>Sorting Layers with Python</title>
      <link>https://community.esri.com/t5/python-questions/sorting-layers-with-python/m-p/400319#M31546</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I want to write a code that sorts my layers in a map in a certain order. The order shall be exactly like in a "master.mxd" where i loaded all layers and sorted them. The tool shall be used for different maps so that not all layers might be in the map where i run the code.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;In my mind there are the following steps.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Make new lists called CurrentLyr and MasterLyr&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CurrentLyr =[]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;MasterLyr =[]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Defining Map and Dataframe of Master map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd = arcpy.mapping.MapDocument(r"C:/Python/Master.mxd")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df = arcpy.mapping.ListDataFrames(mxd, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Append all Layers in the list&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;MasterLyr.append (arcpy.mapping.ListLayers(mxd, "", df):)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Defining Map and Dataframe of CurrentMap&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd = arcpy.mapping.MapDocument("Current")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df = arcpy.mapping.ListDataFrames(mxd, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Append all Layers in the list&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;CurrentLyr.append (arcpy.mapping.ListLayers(mxd, "", df):)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Step through each Master layer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for i in MasterLyr:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#compare MasterLyr with CurrentLyr&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp; if cmp(MasterLyr,CurrentLyr)= true&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;#Add Layer to current map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.mapping.AddLayer(df, "", "bottom")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.RefreshActiveView()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.RefreshTOC()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thats my first Python Code ever so please be patient.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Any ideas or pieces of code?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;best regards&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Chris&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 12 May 2011 11:14:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/sorting-layers-with-python/m-p/400319#M31546</guid>
      <dc:creator>chriss_</dc:creator>
      <dc:date>2011-05-12T11:14:38Z</dc:date>
    </item>
    <item>
      <title>Sorting Layers with Python</title>
      <link>https://community.esri.com/t5/python-questions/sorting-layers-with-python/m-p/400320#M31547</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi!&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So finally I made some progress in programming. But I am still not completely happy.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;It works fine ,if there are only "normal" layers (raster, shape) BUT if I use GroupLayers it gets totally messed up. What happens is that the code "destroys" the group layer and converts it to a "normal" layer. This causes the longName of layers in the former grouplayer to change and my sorting Code is useless. GroupAnnotationLayers get messed up totally and several new singleannotation layers are generated. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Any idea how to access the grouplayer or any other samrt idea to solve this problem. &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Chris&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;p.s. here my code&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;import arcpy&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd = arcpy.mapping.MapDocument("Current")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df = arcpy.mapping.ListDataFrames(mxd, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd2 = arcpy.mapping.MapDocument(r"C:\Master\Master.mxd")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;df2 = arcpy.mapping.ListDataFrames(mxd2, "")[0]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;refLayer = arcpy.mapping.ListLayers(mxd,"",df)[1]&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;for lyr2 in arcpy.mapping.ListLayers(mxd2,"",df2):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; c=lyr2.longName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; d=lyr2.description&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; MasterLayer=c+d&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; print MasterLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; for lyr in arcpy.mapping.ListLayers(mxd,"",df):&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; a=lyr.longName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; b=lyr.description&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveLayer= a+b&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if MasterLayer==moveLayer:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; moveLayer=lyr&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.mapping.MoveLayer(df,refLayer,moveLayer, "After")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; refLayer=moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print MasterLayer,moveLayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;mxd.save()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del mxd&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 13 May 2011 17:34:42 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/sorting-layers-with-python/m-p/400320#M31547</guid>
      <dc:creator>chriss_</dc:creator>
      <dc:date>2011-05-13T17:34:42Z</dc:date>
    </item>
  </channel>
</rss>

