Résumé
Permet d’organiser une définition de service. Un fichier de définition de service (.sd) organisé contient toutes les informations nécessaires au partage d’une couche web, d’un outil web ou d’un service.
Utilisation
Cet outil convertit un fichier brouillon de définition de service (.sddraft) en une définition de service qui peut alors être insérée dans l’outil Télécharger la définition du service en vue de charger et de publier une couche web, un outil web ou un service sur ArcGIS Online, ArcGIS Enterprise ou ArcGIS Server. Il est impossible d’utiliser des brouillons de définitions de service pour publier directement une couche web, un outil web ou un service.
Lorsque vous partagez une couche web, un outil web ou un service avec ArcGIS Pro, l’outil Organiser le service est exécuté et une entrée apparaît dans l’élément Geoprocessing History (Historique de géotraitement) de la fenêtre Catalog (Catalogue).
Cet outil analyse les fichiers .sddraft pour déterminer l’adéquation et les sources des problèmes de performance éventuels avant de convertir un fichier brouillon de la définition du service (.sd). Lorsque l’outil est en cours d’exécution, vous pouvez survoler la barre de progression pour afficher une fenêtre contextuelle contenant des informations complètes relatives à l’outil, notamment les messages de l’analyseur. Vous pouvez également cliquer sur View Details (Afficher les détails) pour afficher les mêmes informations détaillées dans une fenêtre distincte, ou cliquer sur Open History (Ouvrir l’historique) pour ouvrir l’historique de géotraitement du projet. Au terme de l’exécution de l’outil, la barre de progression affiche une icône et un message d’état de l’outil. Pour en savoir plus sur la visualisation des messages dans les outils de géotraitement, consultez la rubrique Exécution d’un outil de géotraitement.
Lors de l’analyse d’un fichier .sddraft, deux types de messages peuvent apparaître : des erreurs et des avertissements. Les erreurs d’analyseur doivent être traitées avant de créer un fichier de définition de service. Les avertissements d’analyseur identifient les problèmes relatifs aux performances, à l’apparence et à l’accès des données, mais ne vous empêchent pas de convertir le fichier brouillon de la définition du service en un fichier de définition de service. Chaque messages de l’analyseur a une rubrique d’aide associée. Pour plus d'informations sur la résolution de ces problèmes, reportez-vous à la rubrique Analyser votre ressource SIG.
Les brouillons de la définition du service peuvent être créés à l’aide du module arcpy.sharing ou des fonctions ArcPy CreateGeocodeSDDraft, CreateGPSDDraft ou CreateImageSDDraft.
Syntaxe
StageService(in_service_definition_draft, out_service_definition, {staging_version})
Paramètre | Explication | Type de données |
in_service_definition_draft | La définition de service de brouillon en entrée Les brouillons de la définition du service peuvent être créés à l’aide du module arcpy.sharing ou des fonctions ArcPy CreateGeocodeSDDraft, CreateGPSDDraft ou CreateImageSDDraft. | File |
out_service_definition | La définition de service résultante. Par défaut, il convient d'écrire la définition de service dans le même répertoire que la définition de service de brouillon. | File |
staging_version (Facultatif) | La version du service sous laquelle la définition du service va être publiée. Lorsque vous partagez une couche d’entités, de tuiles ou d’imagerie dans ArcGIS Enterprise, utilisez 5. Lorsque vous partagez une couche d’images de carte ou un outil web dans ArcGIS Enterprise, et n’importe quel type de couche dans ArcGIS Online, utilisez 102. Il s’agit de l’option par défaut. | Long |
Exemple de code
Les scripts suivants publient une liste de couches à partir d’une carte en tant que couche de tuiles web vers ArcGIS Enterprise ou ArcGIS Online. Les informations de portail sont obtenues à partir de la page Portails dans ArcGIS Pro.
import arcpy
import os
# Set output file names
outdir = r"C:\Project\Output"
service = "TileSharingDraftExample"
sddraft_filename = service + ".sddraft"
sddraft_output_filename = os.path.join(outdir, sddraft_filename)
# Reference map to publish
aprx = arcpy.mp.ArcGISProject(r"C:\Project\World.aprx")
m = aprx.listMaps("World")[0]
lyrs = []
lyrs.append(m.listLayers('cities')[0])
lyrs.append(m.listLayers('counties')[0])
# Create TileSharingDraft and set service properties
sharing_draft = m.getWebLayerSharingDraft("HOSTING_SERVER", "TILE", service, lyrs)
sharing_draft.summary = "My Summary"
sharing_draft.tags = "My Tags"
sharing_draft.description = "My Description"
sharing_draft.credits = "My Credits"
sharing_draft.useLimitations = "My Use Limitations"
# Create Service Definition Draft file
sharing_draft.exportToSDDraft(sddraft_output_filename)
# Stage Service
sd_filename = service + ".sd"
sd_output_filename = os.path.join(outdir, sd_filename)
arcpy.StageService_server(sddraft_output_filename, sd_output_filename)
# Share to portal
print("Uploading Service Definition...")
arcpy.UploadServiceDefinition_server(sd_output_filename, "My Hosted Services")
print("Successfully Uploaded service.")
Le script suivant organise un brouillon de la définition du service existante et affiche les avertissements et les erreurs de l’analyseur.
import arcpy
try:
arcpy.StageService_server(r"C:\Data\World.sddraft", r"C:\Data\World.sd")
warnings = arcpy.GetMessages(1)
print(warnings)
except Exception as stage_exception:
print("Sddraft not staged. Analyzer errors encountered - {}".format(str(stage_exception)))
Environnements
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?