Creé un servicio de impresión personalizado con ArcPy. Está alojado como GPServer en mi servidor de pruebas. El servicio de impresión utiliza un archivo de configuración JSON para extraer los datos del mxd. El JSON que se envía desde la aplicación web reemplaza varios elementos de texto. Sin embargo, no tengo claro cómo mostrar la leyenda usando el JSON enviado desde el mapa web. En mi MXD tengo un elemento de leyenda llamado «Route_Legend».
En este ejemplo, envío este JSON al servicio de impresión:
layout_Options<SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'legendOptions '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'operationalLayers'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'id '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'WV_Base_Route_Webmap_022019_Comments_1982'</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">]</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'copyrightText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'Condado de Los Ángeles, Oficina de Gestión de Tierras, Esri, HERE, Garmin, INCREMENT P, USGS, METI/NASA, EPA, USDA | VENOM'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'scaleBarOptions '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">{</SPAN> <SPAN class="string token">'nonMetricUnit'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'esriMiles'</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'nonMetricLabel'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'mi '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' metricUnit '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' esriKilometers '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'metricLabel'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'km '</SPAN> <SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'customTextElements'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="punctuation token">{</SPAN> <SPAN class="string token">' Date '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' 3 / 5 / 2019, 9: 02: 34 AM'</SPAN> <SPAN class="punctuation token">}</SPAN> <SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' authorText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">' Web AppBuilder para ArcGIS '</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">' titleText '</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">'PRUEBA '</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN></SPAN>Mi pregunta es: ¿cómo se incluyen los datos de la leyenda en el resultado? La mayor parte del tiempo trabajo con PDF. He investigado en Internet, pero no encontré ningún ejemplo que utilizara un archivo de configuración JSON. El archivo de configuración JSON tiene este aspecto:
<SPAN class="punctuation token">{</SPAN> <SPAN class="string token">"layer_title"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Route_Title"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"district_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"District"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"scenario_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Scenario"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"version_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Version"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"cis_link_id_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"CISLINKID"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"map_title_fld"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Map_Title"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"out_flds"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"District,Scenario,Version,Map_Title,CISLINKID"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"title_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Número de ruta"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"district_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Distrito"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"scenario_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Escenario: xyz"</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">"version_element_text"</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="string token">"Versión: xyz"</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="line-numbers-rows"><SPAN></SPAN></SPAN>