Instrução

Publicar um serviço de impressão personalizado com credenciais incorporadas do ArcGIS Pro em um site ArcGIS Server independente

Last Published: January 19, 2023

Procedimento

  1. Modifique a tarefa Exportar Mapa da Web.
    1. Copie o conteúdo do script Python de Ferramentas de Geoprocessamento> Ferramentas de Servidor > Ferramentas de Impressão > Exportar Mapa da Web em um novo arquivo na área de trabalho do projeto denominado ExportWebMapSecured.py.
    2. Adicione uma nova caixa de ferramentas à área de trabalho do projeto e adicione o script à nova caixa de ferramentas.
      • Certifique-se de que os parâmetros do novo script correspondam às propriedades originais da ferramenta, conforme mostrado nas imagens a seguir.
Configurando parâmetros na caixa de diálogo de propriedades da ferramenta de script Exportar Mapa da Web
Configurando parâmetros na caixa de diálogo de propriedades da ferramenta de script Exportar Mapa da Web
  1. Modifique o script adicionando as funções ImportCredentials e ClearCredentials, (consulte o exemplo 8 na documentação ConvertWebMapToArcGISProject do ArcGIS Pro) isso pode incluir uma matriz de arquivos de conexão do ArcGIS Server (.ags), mas eles devem estar acessíveis a partir de uma máquina do ArcGIS Server no mesmo local).

O exemplo a seguir é um script que obtém o estado de um mapa da web em um aplicativo da web (por exemplo, serviços incluídos, configurações de visibilidade de camada e gráficos do lado do cliente) e retorna um layout de página imprimível ou mapa básico da área de interesse especificada no vetor (como pdf, svg, etc.) ou imagem (como png, jpeg, etc.).

# Import required modules # import sys import os import arcpy import uuid # constants # SERVER_PROD_NAME = 'Server' PRO_PROD_NAME = 'ArcGIS Pro' PAGEX_FILE_EXT = 'pagx' MAP_ONLY = 'map_only' # Specify credentials for secured services in the WebMap JSON secure_server_connections = [r'C:\Users\<username>\server on <connection file name>.ags'] # Import credentials importedConnections = arcpy.ImportCredentials(secure_server_connections) # default location and current product name # _defTmpltFolder = os.path.join (arcpy.GetInstalledInfo()['InstallDir'], r"Resources\ArcToolBox\Templates\ExportWebMapTemplates") _prodName = arcpy.GetInstallInfo()['ProductName'] _isMapOnly = False # export only map without any layout elements # def exportMap(result, outfile, outFormat): # Set output parameter # arcpy.SetParameterAsText(1, outfilename) # Clear credentials arcpy.ClearCredentials(importedConnections) if __name__ == "__main__": main()
  1. Execute o script no ArcGIS Pro.
    1. Certifique-se de preencher o campo Modelo de Layout.
Configuração de parâmetros na caixa de diálogo de propriedades de geoprocessamento ExportWebMapSecured

A seguir está um WebMap como um exemplo JSON:

{"mapOptions":{"showAttribution":true,"extent":{"xmin":-37570328.14272009,"ymin":-15552387.679177042,"xmax":37570328.14272009,"ymax":19552387.679177042,"spatialReference":{"wkt":"PROJCS[\"WGS_1984_Web_Mercator_Auxiliary_Sphere\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Mercator_Auxiliary_Sphere\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0],PARAMETER[\"Standard_Parallel_1\",0.0],PARAMETER[\"Auxiliary_Sphere_Type\",0.0],UNIT[\"Meter\",1.0]]"}},"spatialReference":{"wkt":"PROJCS[\"WGS_1984_Web_Mercator_Auxiliary_Sphere\",GEOGCS[\"GCS_WGS_1984\",DATUM[\"D_WGS_1984\",SPHEROID[\"WGS_1984\",6378137.0,298.257223563]],PRIMEM[\"Greenwich\",0.0],UNIT[\"Degree\",0.0174532925199433]],PROJECTION[\"Mercator_Auxiliary_Sphere\"],PARAMETER[\"False_Easting\",0.0],PARAMETER[\"False_Northing\",0.0],PARAMETER[\"Central_Meridian\",0],PARAMETER[\"Standard_Parallel_1\",0.0],PARAMETER[\"Auxiliary_Sphere_Type\",0.0],UNIT[\"Meter\",1.0]]"},"scale":147914381.897889},"operationalLayers":[{"id":"defaultBasemap","title":"World Topographic Map","opacity":1,"minScale":0,"maxScale":0,"url":"https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer"}],"exportOptions":{"outputSize":[670,500],"dpi":96},"layoutOptions":{"titleText":"","authorText":"","copyrightText":"","customTextElements":[{"Date":"12/9/2019, 9:17:04 AM"}],"scaleBarOptions":{"metricUnit":"esriKilometers","metricLabel":"km","nonMetricUnit":"esriMiles","nonMetricLabel":"mi"},"legendOptions":{"operationalLayers":[]}}}
  1. Conecte-se ao site do ArcGIS Server e altere o tipo de conexão para Conexão do Administrador para publicar o Serviço de Geoprocessamento.
Configurando o tipo de conexão na caixa de diálogo Propriedades de Conexão do ArcGIS Server
  1. Publique o resultado de sucesso como um Serviço de Geoprocessamento.
Publicação do serviço de geoprocessamento
  1. Teste o serviço de geoprocessamento publicado substituindo a URL pela URL protegida por IWA do site do servidor interno no mapa da web como exemplo JSON.

ID do Artigo:000026010

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com suporte técnico

Baixe o Esri Support App

Ir para opções de download