<?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 Re: Why do I get two values for longName?? in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586072#M45993</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Sorry, here is the code with the indents (the results are still as they are above):&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import arcpy, sys, traceback
from arcpy.mapping import *&amp;nbsp; #Brings in entire functionality of the mapping module

#Create variables to hold vector files, tables, etc.
datapath = "M:\\Independent_Study\\PP4AG\\Chapter09\\"
mappath = datapath + 'MyData\\Maps\\'&amp;nbsp; # outpath for pdf documents
mxd = MapDocument(datapath + "MappingModule2Layer.mxd")

#4. Add try: and except: blocks
try:
#5. Add routines

&amp;nbsp;&amp;nbsp;&amp;nbsp; TOClayers = ListLayers(mxd)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in TOClayers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer LongName is : " + layer.longName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer name is : " + layer.name

&amp;nbsp;&amp;nbsp;&amp;nbsp; print"\nStart the dataframe loop."
&amp;nbsp;&amp;nbsp;&amp;nbsp; dataframes = ListDataFrames(mxd, '')
&amp;nbsp;&amp;nbsp;&amp;nbsp; for frame in dataframes:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layers = ListLayers(mxd, '', frame)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in layers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print '\nData Frame : ' + frame.name +'\tLayer longName ' + str(i) + ': ' + layer.longName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Data Frame : ' + frame.name +'\tLayer Name ' + str(i) + ': ' + layer.name
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i += 1
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 01:12:35 GMT</pubDate>
    <dc:creator>AnnaBarendt</dc:creator>
    <dc:date>2021-12-12T01:12:35Z</dc:date>
    <item>
      <title>Why do I get two values for longName??</title>
      <link>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586071#M45992</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;New at this.&amp;nbsp; Practicing my Python coding.&amp;nbsp;&amp;nbsp; In the first ListLayer I get the full longName for a layer.&amp;nbsp; In the second code I don't.&amp;nbsp; Any ideas why?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Code:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt; TOClayers = ListLayers(mxd)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in TOClayers:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer LongName is : " + layer.longName&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer name is : " + layer.name&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; print"\nStart the dataframe loop."&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; dataframes = ListDataFrames(mxd, '')&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for frame in dataframes:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layers = ListLayers(mxd, '', frame)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in layers:&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; print '\nData Frame : ' + frame.name +'\tLayer longName ' + str(i) + ': ' + layer.longName&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; print 'Data Frame : ' + frame.name +'\tLayer Name ' + str(i) + ': ' + layer.name&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; i += 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp; Results: &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Detail Map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Detail Map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Detail Map\Streets&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Streets&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Detail Map\Parcels&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Parcels&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Detail Map\Neighborhoods&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Neighborhoods&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer LongName is : Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer name is : Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Start the dataframe loop.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer longName 1: Detail Map&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer Name 1: Detail Map&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer longName 2: Streets&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer Name 2: Streets&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer longName 3: Parcels&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer Name 3: Parcels&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer longName 4: Neighborhoods&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer Name 4: Neighborhoods&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer longName 5: Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : MainLayer Layer Name 5: Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : Location_Layer Layer longName 1: Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Data Frame : Location_Layer Layer Name 1: Background&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;thx,&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Anna&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 15 Jul 2012 19:41:12 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586071#M45992</guid>
      <dc:creator>AnnaBarendt</dc:creator>
      <dc:date>2012-07-15T19:41:12Z</dc:date>
    </item>
    <item>
      <title>Re: Why do I get two values for longName??</title>
      <link>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586072#M45993</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Sorry, here is the code with the indents (the results are still as they are above):&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import arcpy, sys, traceback
from arcpy.mapping import *&amp;nbsp; #Brings in entire functionality of the mapping module

#Create variables to hold vector files, tables, etc.
datapath = "M:\\Independent_Study\\PP4AG\\Chapter09\\"
mappath = datapath + 'MyData\\Maps\\'&amp;nbsp; # outpath for pdf documents
mxd = MapDocument(datapath + "MappingModule2Layer.mxd")

#4. Add try: and except: blocks
try:
#5. Add routines

&amp;nbsp;&amp;nbsp;&amp;nbsp; TOClayers = ListLayers(mxd)
&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in TOClayers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer LongName is : " + layer.longName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer name is : " + layer.name

&amp;nbsp;&amp;nbsp;&amp;nbsp; print"\nStart the dataframe loop."
&amp;nbsp;&amp;nbsp;&amp;nbsp; dataframes = ListDataFrames(mxd, '')
&amp;nbsp;&amp;nbsp;&amp;nbsp; for frame in dataframes:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; layers = ListLayers(mxd, '', frame)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i = 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in layers:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print '\nData Frame : ' + frame.name +'\tLayer longName ' + str(i) + ': ' + layer.longName
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Data Frame : ' + frame.name +'\tLayer Name ' + str(i) + ': ' + layer.name
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i += 1
&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:12:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586072#M45993</guid>
      <dc:creator>AnnaBarendt</dc:creator>
      <dc:date>2021-12-12T01:12:35Z</dc:date>
    </item>
    <item>
      <title>Re: Why do I get two values for longName??</title>
      <link>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586073#M45994</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I don't see anything wrong with your code.&amp;nbsp; I ran it on some MXDs and it worked as expected. I did have to modify it because it would not run by itself.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Layer.longName returns the layer name preceeded by its group layer name (if it exists).&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Here is the code I ran:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;import arcpy from arcpy.mapping import *&amp;nbsp; #Brings in entire functionality of the mapping module&amp;nbsp; mxd = MapDocument(r"C:\Temp\Test.mxd")&amp;nbsp; TOClayers = ListLayers(mxd) for layer in TOClayers: &amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer LongName is : " + layer.longName &amp;nbsp;&amp;nbsp;&amp;nbsp; print "Layer name is : " + layer.name&amp;nbsp; print"\nStart the dataframe loop." dataframes = ListDataFrames(mxd) for frame in dataframes: &amp;nbsp;&amp;nbsp;&amp;nbsp; layers = ListLayers(mxd, '', frame) &amp;nbsp;&amp;nbsp;&amp;nbsp; for layer in layers: &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print '\nData Frame : ' + frame.name +'\tLayer longName ' + ': ' + layer.longName &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print 'Data Frame : ' + frame.name +'\tLayer Name ' + ': ' + layer.name&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Jeff&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Jul 2012 14:28:16 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586073#M45994</guid>
      <dc:creator>JeffBarrette</dc:creator>
      <dc:date>2012-07-16T14:28:16Z</dc:date>
    </item>
    <item>
      <title>Re: Why do I get two values for longName??</title>
      <link>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586074#M45995</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hi Jeff,&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;First, thank you for your input.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I took the code you wrote, modifying it for the path name to the mxd on my computer, and ran the code.&amp;nbsp; Still came up with two different values for the .longName.&amp;nbsp; The first .longName outside the dataFrame loop gave the proper results.&amp;nbsp; The .longName within the dataFrame loop was not correct.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;So, the next thing I will do is go to the college, use one of their computers, and see what happens.&amp;nbsp; If their computers give the correct response, I probably will strip Python off my comupter and reload it.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am using PythonWin 2.6.5 and version 10.0 of arcMap.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'll let you know the results, regardless.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Update:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I am at the college now, and on their machine(s) the code runs fine, getting the same correct results for the .longName object property.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks so much Jeff, if you hadn't replied, I never would have questioned that the IDLE or Esri programs could be loaded incorrectly on my computer.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;a&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks again for looking at this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;a&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 16 Jul 2012 16:31:29 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/why-do-i-get-two-values-for-longname/m-p/586074#M45995</guid>
      <dc:creator>AnnaBarendt</dc:creator>
      <dc:date>2012-07-16T16:31:29Z</dc:date>
    </item>
  </channel>
</rss>

