He creado un mapa web en ArcGIS Online que contiene polígonos de las zonas de recogida de residuos sólidos. Cada polígono contiene información sobre los días en que el camión pasa por esa zona y el horario en que lo hace. Pensé que sería buena idea crear una expresión Arcade que mostrara el próximo momento en que pasará el camión por cada zona.
Por alguna razón, el resultado de la expresión no aparece en la ventana emergente. El resultado de la expresión aparece en blanco para cualquier polígono seleccionado:

Probablemente se deba a algún error en la expresión, pero lo extraño es que la prueba en la ventana de Arcade sí devuelve un resultado válido:

Escribí algunos valores en la consola y, en este caso, se utilizó un polígono con la frecuencia «WS» (miércoles y sábado = Miércoles y Sábado😞

Entonces, ¿por qué obtengo un resultado en la prueba, pero no aparece ningún resultado en la ventana emergente para el mismo polígono y los mismos atributos?
A continuación, la configuración de la ventana emergente:

Y el script que tengo hasta ahora:
<SPAN class="comment token">// días de la semana 0=DO, 1=LU, 2=MA, 3=MI, 4=JU, 5=VI, 6=SA </SPAN>
<SPAN class="keyword token">var</SPAN> dias <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN><SPAN class="string token">'LJ'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">4</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'MV'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">2</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">5</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'WS'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">3</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">6</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'LWV'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">3</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">5</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'MJS'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">2</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">4</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">6</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'LaS'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">2</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">3</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">4</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">5</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">6</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> horas <SPAN class="operator token">=</SPAN> <SPAN class="punctuation token">{</SPAN><SPAN class="string token">'3PM A 7PM'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">15</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">19</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'6AM a 10AM'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">6</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">10</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'8AM a 12M.'</SPAN><SPAN class="punctuation token">:</SPAN> <SPAN class="punctuation token">[</SPAN><SPAN class="number token">8</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">12</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'9PM a 1AM'</SPAN><SPAN class="punctuation token">:</SPAN><SPAN class="punctuation token">[</SPAN><SPAN class="number token">21</SPAN><SPAN class="punctuation token">,</SPAN> <SPAN class="number token">24</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">}</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> ahora <SPAN class="operator token">=</SPAN> <SPAN class="token function">Now</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> hoy <SPAN class="operator token">=</SPAN> <SPAN class="token function">Weekday</SPAN><SPAN class="punctuation token">(</SPAN>ahora<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> hora <SPAN class="operator token">=</SPAN> <SPAN class="token function">Hour</SPAN><SPAN class="punctuation token">(</SPAN>ahora<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy:'</SPAN> <SPAN class="operator token">+</SPAN> hoy<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hora:'</SPAN> <SPAN class="operator token">+</SPAN> hora<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'Freq:'</SPAN><SPAN class="operator token">+</SPAN>$feature<SPAN class="punctuation token">.</SPAN>FRECUENCIA<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'horario:'</SPAN><SPAN class="operator token">+</SPAN>$feature<SPAN class="punctuation token">.</SPAN>HORARIO<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> lst_dias <SPAN class="operator token">=</SPAN> dias<SPAN class="punctuation token">[</SPAN>$feature<SPAN class="punctuation token">.</SPAN>FRECUENCIA<SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'lst_dias:'</SPAN> <SPAN class="operator token">+</SPAN> lst_dias<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> lst_hora_minmax <SPAN class="operator token">=</SPAN> horas<SPAN class="punctuation token">[</SPAN><SPAN class="token function">Upper</SPAN><SPAN class="punctuation token">(</SPAN>$feature<SPAN class="punctuation token">.</SPAN>HORARIO<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'lst_hora_minmax:'</SPAN> <SPAN class="operator token">+</SPAN> lst_hora_minmax<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> test <SPAN class="operator token">=</SPAN> <SPAN class="token function">IndexOf</SPAN><SPAN class="punctuation token">(</SPAN>lst_dias<SPAN class="punctuation token">,</SPAN> hoy<SPAN class="punctuation token">)</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'test:'</SPAN> <SPAN class="operator token">+</SPAN> test<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> resultado <SPAN class="operator token">=</SPAN> <SPAN class="string token">'Sin configurar'</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>test <SPAN class="operator token">!=</SPAN> <SPAN class="operator token">-</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy en lista'</SPAN><SPAN class="punctuation token">)</SPAN>
resultado <SPAN class="operator token">=</SPAN> <SPAN class="string token">'pasó hoy:'</SPAN> <SPAN class="operator token">+</SPAN> $feature<SPAN class="punctuation token">.</SPAN>HORARIO<SPAN class="punctuation token">;</SPAN>
hora_max <SPAN class="operator token">=</SPAN> lst_hora_minmax<SPAN class="punctuation token">[</SPAN><SPAN class="number token">1</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>hora <SPAN class="operator token"><</SPAN> hora_max<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
resultado <SPAN class="operator token">=</SPAN> <SPAN class="string token">'llega hoy: '</SPAN> <SPAN class="operator token">+</SPAN> $feature<SPAN class="punctuation token">.</SPAN>HORARIO<SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">else</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy no está en la lista, buscar el próximo día'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="comment token">// encontrar el próximo día</SPAN>
<SPAN class="keyword token">var</SPAN> dia_min <SPAN class="operator token">=</SPAN> lst_dias<SPAN class="punctuation token">[</SPAN><SPAN class="number token">0</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'dia_min:'</SPAN> <SPAN class="operator token">+</SPAN> dia_min<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> i <SPAN class="operator token">=</SPAN> <SPAN class="number token">0</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">for</SPAN> <SPAN class="punctuation token">(</SPAN><SPAN class="keyword token">var</SPAN> a <SPAN class="keyword token">in</SPAN> lst_dias<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
i<SPAN class="operator token">++</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'i:'</SPAN><SPAN class="operator token">+</SPAN>i<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> dia_max <SPAN class="operator token">=</SPAN> lst_dias<SPAN class="punctuation token">[</SPAN>i<SPAN class="number token">-1</SPAN><SPAN class="punctuation token">]</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'dia_max:'</SPAN> <SPAN class="operator token">+</SPAN> dia_max<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>hoy <SPAN class="operator token"><</SPAN> dia_min<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy < dia_min'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> dif_days <SPAN class="operator token">=</SPAN> dia_min <SPAN class="operator token">-</SPAN> hoy<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> next_day <SPAN class="operator token">=</SPAN> <SPAN class="token function">DateAdd</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="token function">Today</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> dif_days<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'days'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">else</SPAN> <SPAN class="keyword token">if</SPAN> <SPAN class="punctuation token">(</SPAN>hoy <SPAN class="operator token">></SPAN> dia_max<SPAN class="punctuation token">)</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy > dia_max'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> dif_days <SPAN class="operator token">=</SPAN> dia_min <SPAN class="operator token">+</SPAN> <SPAN class="number token">7</SPAN> <SPAN class="operator token">-</SPAN> hoy<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> next_day <SPAN class="operator token">=</SPAN> <SPAN class="token function">DateAdd</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="token function">Today</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> dif_days<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'days'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN> <SPAN class="keyword token">else</SPAN> <SPAN class="punctuation token">{</SPAN>
<SPAN class="comment token">// entre el mínimo y el máximo, ojo, hay más de un elemento</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="string token">'hoy entre min y max'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> dif_days <SPAN class="operator token">=</SPAN> dia_max <SPAN class="operator token">-</SPAN> hoy<SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> next_day <SPAN class="operator token">=</SPAN> <SPAN class="token function">DateAdd</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="token function">Today</SPAN><SPAN class="punctuation token">(</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">,</SPAN> dif_days<SPAN class="punctuation token">,</SPAN> <SPAN class="string token">'days'</SPAN><SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="token function">Console</SPAN><SPAN class="punctuation token">(</SPAN>next_day<SPAN class="punctuation token">)</SPAN><SPAN class="punctuation token">;</SPAN>
<SPAN class="keyword token">var</SPAN> mes <SPAN class="operator token">=</SPAN> <SPAN class="token function">Month</SPAN><SPAN class="punctuation token">(</SPAN>next_day<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="number token">1</SPAN><SPAN class="punctuation token">;</SPAN>
resultado <SPAN class="operator token">=</SPAN> <SPAN class="token function">Day</SPAN><SPAN class="punctuation token">(</SPAN>next_day<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">"-"</SPAN> <SPAN class="operator token">+</SPAN> mes <SPAN class="operator token">+</SPAN> <SPAN class="string token">"-"</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="token function">Year</SPAN><SPAN class="punctuation token">(</SPAN>next_day<SPAN class="punctuation token">)</SPAN> <SPAN class="operator token">+</SPAN> <SPAN class="string token">' - '</SPAN> <SPAN class="operator token">+</SPAN> $feature<SPAN class="punctuation token">.</SPAN>HORARIO<SPAN class="punctuation token">;</SPAN>
<SPAN class="punctuation token">}</SPAN>
<SPAN class="keyword token">return</SPAN> resultado<SPAN class="punctuation token">;</SPAN>
<SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
Esto todavía no está terminado, pero debería dar algún resultado y esperaría que me diera el mismo resultado que durante la prueba en el editor de expresiones de Arcade.
¿Alguien sabe qué podría estar fallando en la expresión o en algún otro sitio?
CC: KGerrow-esristaff
https://community.esri.com/community/developers?sr=search&searchId=a4c7f5bd-4c33-4c15-864d-ff3a75503093&searchIndex=1