Suite

Publier une carte sur ArcGIS Server Manager sans utiliser ArcGIS for Desktop ?

Publier une carte sur ArcGIS Server Manager sans utiliser ArcGIS for Desktop ?


Je souhaite publier mes cartes sur le gestionnaire de serveur.

Mes données cartographiques sont dans PostgreSQL et je souhaite les connecter sans utiliser ArcGIS Desktop.

Existe-t-il une possibilité de publier un service sans impliquer ArcGIS Desktop ?


Vous pouvez utiliser le module arcpy.mapping en Python pour le faire sans lancer Desktop à l'aide des fonctions CreateMapSDDraft et StageService et UploadServiceDefinintion.

Le code ressemblera à ceci :

importer arcpy mxd = arcpy.mapping.MapDocument() sddraft=  service =  inconvénient =  dossier =  sd =  arcpy.mapping.CreateMapSDDraft(mxd,sddraft,service,"ARCGIS_SERVER",con,False, Folder) del mxd arcpy.StageService_server(sddraft, sd) arcpy.UploadServiceDefinition_server(sd, con)

De plus, vous pouvez inclure arcpy.mapping.AnalyzeForSD(sddraft) avec une instruction if/else pour analyser votre définition de service avant de publier et publier le service si aucune erreur n'est trouvée.

analysis = arcpy.mapping.AnalyzeForSD(sddraft) if analysis['errors'] == {}: # Execute StageService arcpy.StageService_server(sddraft, sd) # Execute UploadServiceDefinition arcpy.UploadServiceDefinition_server(sd, con) print ("… Map Service Créé") else : # Si l'analyse du brouillon contenait des erreurs, affichez-les print(analysis['errors']) print ("Le service n'a pas pu être publié car des erreurs ont été trouvées lors de l'analyse.")

Cependant, cela nécessite d'avoir une licence ArcMap et ArcGIS for Server.


Jetez un œil à la définition de service de téléchargement (serveur) et à certains exemples de code


Voir la vidéo: Publishing a Service to ArcGIS Server