Hi
I created a geoprocessing service that I published it in our ArcGIS server. After, I created a web map application with Web AppBuilder and using a geoprocessing widget I was able to call my GPS and execute it without any error.
The problem is that I can not see the results. I tried arcpy.AddMessage() and also acpy.MakeFeatureLayer_management() but no results. Regarding Addmessage, instead of calling mxd = arcpy.mapping.MapDocument, I just create some variable, did my calculation and add the results to and AddMessage()
Here is my code. At the bottom, my addMessage code.
<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
env<SPAN class="punctuation token">.</SPAN>outputZFlag <SPAN class="operator token">=</SPAN> <SPAN class="string token">"DISABLED"</SPAN>
env<SPAN class="punctuation token">.</SPAN>outputMFlag <SPAN class="operator token">=</SPAN> <SPAN class="string token">"DISABLED"</SPAN>
mxdfile <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Mxd\\AreaMCT.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>mxdfile<SPAN class="punctuation token">)</SPAN>
df <SPAN class="operator token">=</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="string token">"Layers"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN>
<SPAN class="comment token"># Set all the parameters</SPAN>
fClass1 <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>GetParameterAsText<SPAN class="punctuation token">(</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">)</SPAN>
fClass2 <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>GetParameterAsText<SPAN class="punctuation token">(</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">)</SPAN>
fClass3 <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>GetParameterAsText<SPAN class="punctuation token">(</SPAN><SPAN class="number token">2</SPAN><SPAN class="punctuation token">)</SPAN>
fClass4 <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>GetParameterAsText<SPAN class="punctuation token">(</SPAN><SPAN class="number token">3</SPAN><SPAN class="punctuation token">)</SPAN>
Union1 <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Scratch\\Scratch.gdb\\Union1"</SPAN>
Union <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Scratch\\Scratch.gdb\\Union"</SPAN>
Union_Diss <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Scratch\\Scratch.gdb\\Union_Diss"</SPAN>
Union_Diss_inter <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Scratch\\Scratch.gdb\\Union_Diss_inter"</SPAN>
Union_Diss_inters <SPAN class="operator token">=</SPAN> <SPAN class="string token">"\\\\vsonkengis01\\Oceans\\Projects\\2017\\GPS\\AreaMCT\\Scratch\\Scratch.gdb\\Union_Diss_inters"</SPAN>
<SPAN class="comment token"># Union</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Union_analysis <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN>fClass1<SPAN class="punctuation token">,</SPAN> fClass2<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> Union1<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"ONLY_FID"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Union_analysis <SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN>Union1<SPAN class="punctuation token">,</SPAN> fClass3<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN>Union<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"ONLY_FID"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Delete_management<SPAN class="punctuation token">(</SPAN>Union1<SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddField_management<SPAN class="punctuation token">(</SPAN>Union<SPAN class="punctuation token">,</SPAN><SPAN class="string token">"Diss"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"LONG"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>CalculateField_management<SPAN class="punctuation token">(</SPAN>Union<SPAN class="punctuation token">,</SPAN><SPAN class="string token">"Diss"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"PYTHON"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token"># Generalization</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Dissolve_management <SPAN class="punctuation token">(</SPAN>Union<SPAN class="punctuation token">,</SPAN> Union_Diss<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"Diss"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">""</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"MULTI_PART"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="comment token"># Intersect</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Intersect_analysis<SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">[</SPAN>Union_Diss<SPAN class="punctuation token">,</SPAN> fClass4<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> Union_Diss_inter<SPAN class="punctuation token">,</SPAN><SPAN class="string token">"ALL"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>Dissolve_management <SPAN class="punctuation token">(</SPAN>Union_Diss_inter<SPAN class="punctuation token">,</SPAN> Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">""</SPAN><SPAN class="punctuation token">,</SPAN><SPAN class="string token">"MULTI_PART"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddField_management<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"TArea"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"DOUBLE"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddField_management<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"AreaEEZ"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"DOUBLE"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddField_management<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"PTArea"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"DOUBLE"</SPAN><SPAN class="punctuation token">)</SPAN>
exp <SPAN class="operator token">=</SPAN> <SPAN class="string token">"!SHAPE.AREA@SQUAREKILOMETERS!"</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>CalculateField_management<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"AreaEEZ"</SPAN><SPAN class="punctuation token">,</SPAN> exp<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"PYTHON_9.3"</SPAN><SPAN class="punctuation token">)</SPAN>
TArea <SPAN class="operator token">=</SPAN> <SPAN class="number token">0</SPAN>
urows <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>UpdateCursor<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">for</SPAN> row <SPAN class="keyword token">in</SPAN> urows<SPAN class="punctuation token">:</SPAN>
TArea <SPAN class="operator token">+=</SPAN> row<SPAN class="punctuation token">.</SPAN>getValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"AreaEEZ"</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">del</SPAN> urows
urows <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>UpdateCursor<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">for</SPAN> row <SPAN class="keyword token">in</SPAN> urows<SPAN class="punctuation token">:</SPAN>
row<SPAN class="punctuation token">.</SPAN>setValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"TArea"</SPAN><SPAN class="punctuation token">,</SPAN> TArea<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">if</SPAN> row<SPAN class="punctuation token">.</SPAN>getValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="operator token">==</SPAN><SPAN class="string token">"Atlantic and Arctic"</SPAN><SPAN class="punctuation token">:</SPAN>
row<SPAN class="punctuation token">.</SPAN>setValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"PTArea"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">(</SPAN>row<SPAN class="punctuation token">.</SPAN>getValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"AreaEEZ"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="operator token">/</SPAN>TArea<SPAN class="punctuation token">)</SPAN><SPAN class="operator token">*</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">if</SPAN> row<SPAN class="punctuation token">.</SPAN>getValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Name"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="operator token">==</SPAN><SPAN class="string token">"Pacific"</SPAN><SPAN class="punctuation token">:</SPAN>
row<SPAN class="punctuation token">.</SPAN>setValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"PTArea"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="punctuation token">(</SPAN>row<SPAN class="punctuation token">.</SPAN>getValue<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"AreaEEZ"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="operator token">/</SPAN>TArea<SPAN class="punctuation token">)</SPAN><SPAN class="operator token">*</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">)</SPAN>
urows<SPAN class="punctuation token">.</SPAN>updateRow<SPAN class="punctuation token">(</SPAN>row<SPAN class="punctuation token">)</SPAN>
<SPAN class="keyword token">del</SPAN> urows
<SPAN class="keyword token">if</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>Exists<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"AreaMCT"</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">"AreaMCT"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>MakeFeatureLayer_management<SPAN class="punctuation token">(</SPAN>Union_Diss_inters<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"AreaMCT"</SPAN><SPAN class="punctuation token">)</SPAN>
layer <SPAN class="operator token">=</SPAN> arcpy<SPAN class="punctuation token">.</SPAN>mapping<SPAN class="punctuation token">.</SPAN>Layer<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"AreaMCT"</SPAN><SPAN class="punctuation token">)</SPAN>
layer<SPAN class="punctuation token">.</SPAN>visible <SPAN class="operator token">=</SPAN> <SPAN class="token boolean">True</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> layer<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"TOP"</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><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>
---------------------------------------------------------------------------------------------------------------------------------------------
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Total Atrea Protected = "</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>TArea<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">" km2"</SPAN><SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Area protected in Pacific EEZ = "</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>TAreaPacific<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">" km2"</SPAN> <SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Percentage Area protected in Pacific EEZ = "</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>PTAreaPacific<SPAN class="operator token">*</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">" %"</SPAN> <SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Area protected in Atlantic-Arctic EEZ = "</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>TAreaATArcti<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">" km2"</SPAN> <SPAN class="punctuation token">)</SPAN>
arcpy<SPAN class="punctuation token">.</SPAN>AddMessage<SPAN class="punctuation token">(</SPAN><SPAN class="string token">"Percentage Area protected in Atlantic-Arctic EEZ = "</SPAN> <SPAN class="operator token">+</SPAN> str<SPAN class="punctuation token">(</SPAN>PTAreaATArcti<SPAN class="operator token">*</SPAN><SPAN class="number token">100</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">" %"</SPAN> <SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
An other question:
The GPS is related to a set of data. When I published the GPS, used a registered path for the data. So, the data is not copied to the server.
How can I load the data related to this GPS? do I have to publish a WMS the the same registed path and load it into t Web Map?
Thanks a lot