Potřebuji automatizovat publikování mého mxd na ArcGIS Online jako veřejně přístupnou službu prvků. Takže bude sdílena všemi. Používám ArcGIS 10.1, takže nemohu použít nástroj MXDToWebMap_server, protože je dostupný pouze od ArcGIS 10.3 a výše.<\/P>
<\/P>
Většinu automatizace se mi daří provést podle nápovědy:<\/P>
ArcGIS Help 10.1<\/A> pro spuštění následujících nástrojů ve správném pořadí<\/P>arcpy.mapping.CreateMapSDDraft<\/LI>Aktualizace souboru sddraft pro povolení nahrazení (přepsání již publikované služby prvků)<\/LI>arcpy.StageService_server<\/LI>arcpy.SignInToPortal_server<\/LI>arcpy.UploadServiceDefinition_server<\/LI><\/OL><\/P>Problém, na který jsem narazil, je, že služba prvků je nahrazena a vlastnosti sdílení jsou změněny na prvivate<\/STRONG>, i když jsem ručně nastavil Shared with Everyone<\/STRONG>.<\/P><\/P>Nápověda nespecifikuje, zda a jak můžeme nastavit vlastnosti sdílení v souboru sd před nahráním.<\/P><\/P>Nalezl jsem, že existuje spousta parametrů pro nástroj arcpy.UploadServiceDefinition_server:<\/P>UploadServiceDefinition_server (in_sd_file, in_server, {in_service_name}, {in_cluster}, {in_folder_type}, {in_folder}, {in_startupType}, {in_override}, {in_my_contents}, {in_public}, {in_organization}, {in_groups})<\/P><\/P>Předpokládám, že parametr {in_public} je ten, který potřebuji použít. Ale raději bych měl funkční příklad použití těchto parametrů v kontextu publikování na ArcGIS Online (tj. 'My Hosted Services').<\/P><\/BODY><\/HTML>
Problém, na který jsem narazil, je, že služba prvků je nahrazena a vlastnosti sdílení jsou změněny na prvivate<\/STRONG>, i když jsem ručně nastavil Shared with Everyone<\/STRONG>.<\/P><\/P>Nápověda nespecifikuje, zda a jak můžeme nastavit vlastnosti sdílení v souboru sd před nahráním.<\/P><\/P>Nalezl jsem, že existuje spousta parametrů pro nástroj arcpy.UploadServiceDefinition_server:<\/P>UploadServiceDefinition_server (in_sd_file, in_server, {in_service_name}, {in_cluster}, {in_folder_type}, {in_folder}, {in_startupType}, {in_override}, {in_my_contents}, {in_public}, {in_organization}, {in_groups})<\/P><\/P>Předpokládám, že parametr {in_public} je ten, který potřebuji použít. Ale raději bych měl funkční příklad použití těchto parametrů v kontextu publikování na ArcGIS Online (tj. 'My Hosted Services').<\/P><\/BODY><\/HTML>
Did you ever find a solution to your problem? I'm having the same issue. I'd love to see an example of someone using the `in_public` parameter successfully.
I'm using:
in_public='PUBLIC'
This still sets my service to private.
I was having same issue.
Trying to schedule overwriting a service on ArcGIS Online, script being triggered from a machine running ArcGIS Pro 2.3
The following works for me.
Make sure you include the in_override parameter.
arcpy<SPAN class="punctuation token">.</SPAN>UploadServiceDefinition_server<SPAN class="punctuation token">(</SPAN>sd_output_filename<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"My Hosted Services"</SPAN><SPAN class="punctuation token">,</SPAN> in_override<SPAN class="operator token">=</SPAN><SPAN class="string token">"OVERRIDE_DEFINITION"</SPAN><SPAN class="punctuation token">,</SPAN> in_public<SPAN class="operator token">=</SPAN><SPAN class="string token">"PUBLIC"</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN></SPAN>
Thank you, I have no idea why this works but it does
Thanks it works, I had the same problem with arcgis pro 2.6.0 and portal 10.7
Přihlášení členové mohou přispívat, sledovat aktualizace a další. Jste tu noví? Zaregistrujte si bezplatný účet.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.