<?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 Script config issue using arcpy vs. arcgisscripting in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586895#M46053</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm updating some Py scripts to use ArcPy (v.10.0, not 10.1) instead of arcgisscripting and I've run into a 'structural' problem. I have a 'master' script/child script set-up I used with arcgisscripting where the master script imports arcpy, gets/checks parameters, then calls the child script. My questions are 1) is this script structure no longer allowed because the arcpy modules must be imported only once (or aliased to prevent conflicts) and 2) Do I have to convert this type of structure to a single script that has explicitly defined (i.e. def()) functions that use one arcpy module definition?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Master *.py script:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import sys, os, arcpy
#do checks...
#Call child script:
Message = child_Script(
&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_GDB,
&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_Feature_Class
&amp;nbsp;&amp;nbsp;&amp;nbsp; )
#Resume master script 
print Message
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Child *.py script:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def child_Script(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_GDB_Name,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_Feature_Class_Name):

&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; import sys, string, os, shutil, time, traceback, arcpy #Have to import arcpy again!!!!&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; import arcpy.sa # Doesn't work... module not found&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Finished!!"
&amp;nbsp;&amp;nbsp;&amp;nbsp; except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for any ideas!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Lisa&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 12 Dec 2021 16:39:50 GMT</pubDate>
    <dc:creator>LisaNelson</dc:creator>
    <dc:date>2021-12-12T16:39:50Z</dc:date>
    <item>
      <title>Script config issue using arcpy vs. arcgisscripting</title>
      <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586895#M46053</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Hello, &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I'm updating some Py scripts to use ArcPy (v.10.0, not 10.1) instead of arcgisscripting and I've run into a 'structural' problem. I have a 'master' script/child script set-up I used with arcgisscripting where the master script imports arcpy, gets/checks parameters, then calls the child script. My questions are 1) is this script structure no longer allowed because the arcpy modules must be imported only once (or aliased to prevent conflicts) and 2) Do I have to convert this type of structure to a single script that has explicitly defined (i.e. def()) functions that use one arcpy module definition?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Master *.py script:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import sys, os, arcpy
#do checks...
#Call child script:
Message = child_Script(
&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_GDB,
&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_Feature_Class
&amp;nbsp;&amp;nbsp;&amp;nbsp; )
#Resume master script 
print Message
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Child *.py script:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def child_Script(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_GDB_Name,
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Input_Feature_Class_Name):

&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; import sys, string, os, shutil, time, traceback, arcpy #Have to import arcpy again!!!!&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; import arcpy.sa # Doesn't work... module not found&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp;&amp;nbsp;&amp;nbsp; return "Finished!!"
&amp;nbsp;&amp;nbsp;&amp;nbsp; except:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thanks for any ideas!&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Lisa&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:39:50 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586895#M46053</guid>
      <dc:creator>LisaNelson</dc:creator>
      <dc:date>2021-12-12T16:39:50Z</dc:date>
    </item>
    <item>
      <title>Re: Script config issue using arcpy vs. arcgisscripting</title>
      <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586896#M46054</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I have imported child scripts that call arcpy without any problems.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Are you sure by this line&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import arcpy.sa&lt;/PRE&gt;&lt;BR /&gt;&lt;SPAN&gt;You don't mean this?&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;from arcpy import sa&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:13:54 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586896#M46054</guid>
      <dc:creator>MathewCoyle</dc:creator>
      <dc:date>2021-12-12T01:13:54Z</dc:date>
    </item>
    <item>
      <title>Re: Script config issue using arcpy vs. arcgisscripting</title>
      <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586897#M46055</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;BLOCKQUOTE class="jive-quote"&gt;I have imported child scripts that call arcpy without any problems.&lt;BR /&gt;&lt;BR /&gt;Are you sure by this line&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import arcpy.sa&lt;/PRE&gt;&lt;BR /&gt;You don't mean this?&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;from arcpy import sa&lt;/PRE&gt;&lt;/BLOCKQUOTE&gt;&lt;BR /&gt;&lt;SPAN&gt; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Hi - thanks for replying!&amp;nbsp; Apologies, I shoulld have noted that I tried 'from arcpy import *' and 'from arcpy import sa' syntax too; that gives me a 'cannot import module error'.&amp;nbsp; &lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;So, are you declaring a child function explicitly using def() and placing the&amp;nbsp; 'from arcpy import *' inside it?&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 01:13:56 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586897#M46055</guid>
      <dc:creator>LisaNelson</dc:creator>
      <dc:date>2021-12-12T01:13:56Z</dc:date>
    </item>
    <item>
      <title>Re: Script config issue using arcpy vs. arcgisscripting</title>
      <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586898#M46056</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;The imports for mine were setup like this.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;master&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;import dataset_conversion, dataset_conversion27_83, dataset_conversion83_CSRS def func(): &amp;nbsp;&amp;nbsp;&amp;nbsp; dataset_conversion.export() &amp;nbsp;&amp;nbsp;&amp;nbsp; dataset_conversion27_83.conversion() &amp;nbsp;&amp;nbsp;&amp;nbsp; dataset_conversion83_CSRS.conversion()&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;first child&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;import arcpy, datetime, sys def export(): &amp;nbsp;&amp;nbsp;&amp;nbsp; try: ...&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I tested this way and it works as well.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Master&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;import arcpy,testing_arcpy&amp;nbsp; print testing_arcpy.test()&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;BR /&gt;&lt;SPAN&gt;Child&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="plain" name="code"&gt;def test(): &amp;nbsp;&amp;nbsp;&amp;nbsp; import arcpy &amp;nbsp;&amp;nbsp;&amp;nbsp; import arcpy.sa &amp;nbsp;&amp;nbsp;&amp;nbsp; arcpy.env.workspace = r"C:\GIS\testing" &amp;nbsp;&amp;nbsp;&amp;nbsp; return arcpy.env.workspace&lt;/PRE&gt;&lt;DIV style="display:none;"&gt; &lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 Jun 2012 20:57:23 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586898#M46056</guid>
      <dc:creator>MathewCoyle</dc:creator>
      <dc:date>2012-06-27T20:57:23Z</dc:date>
    </item>
    <item>
      <title>Re: Script config issue using arcpy vs. arcgisscripting</title>
      <link>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586899#M46057</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;OK - that makes sense! I cleaned up my example similar to yours (just not as elegant). It works as long as I explicitly declare geoprocessing function names. &lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Master: &lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
import sys, os, arcpy as arcpy0
...
Message = childScript(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; params...)
arcpy0.AddMessage("Script Complete:\n" + Message)
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Child:&lt;/SPAN&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;
def childScript(
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; params...):
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try:
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; import sys, string, os, shutil, time, traceback, arcpy
&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; outputRaster = arcpy.sa.ExtractByMask(hddRaster, Input_AOA_Feature_Class) 
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; print "Finished"
&lt;/PRE&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;No explicit 'sa' imports needed, although it would make the script more readable. Thanks for your help!&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 16:39:52 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/script-config-issue-using-arcpy-vs-arcgisscripting/m-p/586899#M46057</guid>
      <dc:creator>LisaNelson</dc:creator>
      <dc:date>2021-12-12T16:39:52Z</dc:date>
    </item>
  </channel>
</rss>

