I have three consecutive scripts that 1) update features in a map, 2) zip them, then copy them to a new folder, 3) append a .txt file to the zip. But, I can't quite grasp how to run all of them in order. I ran RemoveAddLayer.py assuming I was calling the other two scripts correctly. There was an error(s) (see very bottom).
<SPAN class="comment token">###RemoveAddLayer.py###</SPAN>
<SPAN class="keyword token">import</SPAN> arcpy
<SPAN class="keyword token">import</SPAN> os
<SPAN class="keyword token">from</SPAN> arcpy <SPAN class="keyword token">import</SPAN> env
<SPAN class="comment token">#import functions</SPAN>
<SPAN class="keyword token">import</SPAN> ZipFiles
<SPAN class="keyword token">import</SPAN> Append2Zip
arcpy<SPAN class="punctuation token">.</SPAN>overwriteOutput <SPAN class="operator token">=</SPAN> <SPAN class="token boolean">True</SPAN>
env<SPAN class="punctuation token">.</SPAN>workspace <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"Database Connections\ims to plainfield.sde\gisedit.DBO.MGU_Will"</SPAN>
<SPAN class="comment token">#set path to mxd </SPAN>
mxd <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>MapDocument<SPAN class="punctuation token">(</SPAN>r<SPAN class="string token">"Z:\Jared\Data_Request.mxd"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token">#reference the dataframe</SPAN>
<SPAN class="keyword token">for</SPAN> df <SPAN class="keyword token">in</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListDataFrames<SPAN class="punctuation token">(</SPAN>mxd<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">print</SPAN> df
<SPAN class="comment token">#reference the layers to be removed</SPAN>
<SPAN class="keyword token">for</SPAN> lyr <SPAN class="keyword token">in</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListLayers<SPAN class="punctuation token">(</SPAN>mxd<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"gisedit.DBO.Address_Points"</SPAN><SPAN class="punctuation token">,</SPAN> df<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>RemoveLayer<SPAN class="punctuation token">(</SPAN>df<SPAN class="punctuation token">,</SPAN> lyr<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> lyr
<SPAN class="keyword token">for</SPAN> lyr <SPAN class="keyword token">in</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>ListLayers<SPAN class="punctuation token">(</SPAN>mxd<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"gisedit.DBO.Street"</SPAN><SPAN class="punctuation token">,</SPAN> df<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>RemoveLayer<SPAN class="punctuation token">(</SPAN>df<SPAN class="punctuation token">,</SPAN> lyr<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> lyr
<SPAN class="comment token">#reference the layers to be added</SPAN>
addLayer <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>Layer<SPAN class="punctuation token">(</SPAN>r<SPAN class="string token">"Database Connections\ims to plainfield.sde\gisedit.DBO.MGU_Will\gisedit.DBO.Address_Points"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>AddLayer<SPAN class="punctuation token">(</SPAN>df<SPAN class="punctuation token">,</SPAN> addLayer<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"TOP"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> addLayer
addLayer <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>Layer<SPAN class="punctuation token">(</SPAN>r<SPAN class="string token">"Database Connections\ims to plainfield.sde\gisedit.DBO.MGU_Will\gisedit.DBO.Street"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>AddLayer<SPAN class="punctuation token">(</SPAN>df<SPAN class="punctuation token">,</SPAN> addLayer<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"TOP"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> addLayer
<SPAN class="comment token">#delete old files</SPAN>
<SPAN class="keyword token">if</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>Exists<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"WillCounty_AddressPoint"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Delete_management<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"WillCounty_AddressPoint"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">if</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>Exists<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"WillCounty_Street"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Delete_management<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"WillCounty_Street"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token">#address points variables to be copied/saved in folder</SPAN>
inFeatures <SPAN class="operator token">=</SPAN> <SPAN class="string token">"gisedit.DBO.Address_Points"</SPAN>
outLocation <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"Z:\Jared\Python Scripts\Data"</SPAN>
outFeatureClass <SPAN class="operator token">=</SPAN> <SPAN class="string token">"WillCounty_AddressPoint"</SPAN>
<SPAN class="comment token">#execute and copy/save in folder. FeatureClassToFeatureClass_conversion syntax (in_features, out_path, out_name,</SPAN>
<SPAN class="comment token">#{where_clause}, {field_mapping}, {config_keyword})</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>FeatureClassToFeatureClass_conversion<SPAN class="punctuation token">(</SPAN>inFeatures<SPAN class="punctuation token">,</SPAN> outLocation<SPAN class="punctuation token">,</SPAN> outFeatureClass<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> <SPAN class="string token">"finished Address_Point.shp"</SPAN>
<SPAN class="comment token">#variables to be copied/saved in folder</SPAN>
inFeatures <SPAN class="operator token">=</SPAN> <SPAN class="string token">"gisedit.DBO.Street"</SPAN>
outLocation <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"Z:\Jared\Python Scripts\Data"</SPAN>
outFeatureClass <SPAN class="operator token">=</SPAN> <SPAN class="string token">"WillCounty_Street"</SPAN>
<SPAN class="comment token">#execute and copy/save in folder. FeatureClassToFeatureClass_conversion syntax (in_features, out_path, out_name,</SPAN>
<SPAN class="comment token">#{where_clause}, {field_mapping}, {config_keyword})</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>FeatureClassToFeatureClass_conversion<SPAN class="punctuation token">(</SPAN>inFeatures<SPAN class="punctuation token">,</SPAN> outLocation<SPAN class="punctuation token">,</SPAN> outFeatureClass<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> <SPAN class="string token">"finished Street.shp"</SPAN>
<SPAN class="keyword token">del</SPAN> mxd
<SPAN class="keyword token">if</SPAN> __name__ <SPAN class="operator token">==</SPAN> <SPAN class="string token">'__main__'</SPAN><SPAN class="punctuation token">:</SPAN>
path <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"Z:\Jared\Python Scripts\Data"</SPAN>
out_path <SPAN class="operator token">=</SPAN> r<SPAN class="string token">"W:\Data"</SPAN>
ZipShapes<SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">,</SPAN> out_path<SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN><SPAN class="comment token">###ZipFiles.py</SPAN>
<SPAN class="keyword token">import</SPAN> arcpy
<SPAN class="keyword token">import</SPAN> os
<SPAN class="keyword token">from</SPAN> arcpy <SPAN class="keyword token">import</SPAN> env
<SPAN class="keyword token">from</SPAN> os <SPAN class="keyword token">import</SPAN> path <SPAN class="keyword token">as</SPAN> p
<SPAN class="keyword token">import</SPAN> zipfile
<SPAN class="keyword token">def</SPAN> <SPAN class="token function">ZipShapes</SPAN><SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">,</SPAN> out_path<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>env<SPAN class="punctuation token">.</SPAN>workspace <SPAN class="operator token">=</SPAN> path
shapes <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>ListFeatureClasses<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token">#iterate through list of shapefiles</SPAN>
<SPAN class="keyword token">for</SPAN> shapes <SPAN class="keyword token">in</SPAN> shapes<SPAN class="punctuation token">:</SPAN>
name <SPAN class="operator token">=</SPAN> p<SPAN class="punctuation token">.</SPAN>splitext<SPAN class="punctuation token">(</SPAN>shapes<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN>
<SPAN class="keyword token">print</SPAN> name
<SPAN class="keyword token">print</SPAN> shapes
zip_path <SPAN class="operator token">=</SPAN> p<SPAN class="punctuation token">.</SPAN>join<SPAN class="punctuation token">(</SPAN>out_path<SPAN class="punctuation token">,</SPAN> name <SPAN class="operator token">+</SPAN> <SPAN class="string token">'.zip'</SPAN><SPAN class="punctuation token">)</SPAN>
zip <SPAN class="operator token">=</SPAN> zipfile<SPAN class="punctuation token">.</SPAN>ZipFile<SPAN class="punctuation token">(</SPAN>zip_path<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'w'</SPAN><SPAN class="punctuation token">,</SPAN> compression<SPAN class="operator token">=</SPAN>zipfile<SPAN class="punctuation token">.</SPAN>ZIP_DEFLATED<SPAN class="punctuation token">)</SPAN>
zip<SPAN class="punctuation token">.</SPAN>write<SPAN class="punctuation token">(</SPAN>p<SPAN class="punctuation token">.</SPAN>join<SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">,</SPAN>shapes<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> shapes<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">for</SPAN> f <SPAN class="keyword token">in</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>ListFiles<SPAN class="punctuation token">(</SPAN><SPAN class="string token">'%s*'</SPAN> <SPAN class="operator token">%</SPAN>name<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="operator token">not</SPAN> f<SPAN class="punctuation token">.</SPAN>endswith<SPAN class="punctuation token">(</SPAN><SPAN class="string token">'.shp'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN>
zip<SPAN class="punctuation token">.</SPAN>write<SPAN class="punctuation token">(</SPAN>p<SPAN class="punctuation token">.</SPAN>join<SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">,</SPAN>f<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN>f<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">print</SPAN> <SPAN class="string token">'All file written to %s'</SPAN> <SPAN class="operator token">%</SPAN>zip_path
zip<SPAN class="punctuation token">.</SPAN>close<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
<SPAN class="comment token">###Append2Zip.py</SPAN>
<SPAN class="keyword token">def</SPAN> <SPAN class="token function">append2Zip</SPAN><SPAN class="punctuation token">(</SPAN>zipfolder<SPAN class="punctuation token">,</SPAN> path<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="comment token"># define function; name of function followed by any arguments in ()</SPAN>
<SPAN class="keyword token">print</SPAN> <SPAN class="string token">'Appending to '</SPAN> <SPAN class="operator token">+</SPAN> zipfolder
zf <SPAN class="operator token">=</SPAN> zipfile<SPAN class="punctuation token">.</SPAN>ZipFile<SPAN class="punctuation token">(</SPAN>zipfolder<SPAN class="punctuation token">,</SPAN> mode<SPAN class="operator token">=</SPAN> <SPAN class="string token">'a'</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">try</SPAN><SPAN class="punctuation token">:</SPAN>
zf<SPAN class="punctuation token">.</SPAN>write<SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">,</SPAN> os<SPAN class="punctuation token">.</SPAN>path<SPAN class="punctuation token">.</SPAN>basename<SPAN class="punctuation token">(</SPAN>path<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">finally</SPAN><SPAN class="punctuation token">:</SPAN>
zf<SPAN class="punctuation token">.</SPAN>close<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN>
path <SPAN class="operator token">=</SPAN> r<SPAN class="string token">'Z:\Jared\Disclaimer - Final.txt'</SPAN>
zipfolders <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">[</SPAN>r<SPAN class="string token">'W:\Data\WillCounty_AddressPoint.zip'</SPAN><SPAN class="punctuation token">,</SPAN> r<SPAN class="string token">'W:\Data\WillCounty_Street.zip'</SPAN><SPAN class="punctuation token">]</SPAN> <SPAN class="comment token">#list of zip folders</SPAN>
<SPAN class="keyword token">for</SPAN> zipfolder <SPAN class="keyword token">in</SPAN> zipfolders<SPAN class="punctuation token">:</SPAN> <SPAN class="comment token"># loop through zipfolders</SPAN>
append2Zip<SPAN class="punctuation token">(</SPAN>zipfolder<SPAN class="punctuation token">,</SPAN> path<SPAN class="punctuation token">)</SPAN> <SPAN class="comment token">#call function above</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
