<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic about async functions in ArcGIS API for Flex Questions</title>
    <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/about-async-functions/m-p/147936#M3429</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Im working on a widget that has the following structure:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;request (as solicitud in the code)&lt;/P&gt;&lt;P&gt;activity (as actividad in the code)&lt;/P&gt;&lt;P&gt;activityDetail (as detalleActividad in the code).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1 request can have 1..* activities.&lt;/P&gt;&lt;P&gt;1 activity can have 1..* detailActivity.&lt;/P&gt;&lt;P&gt;1 detailActivity can have 2 attachment associated (pictures) (its done through arcgisServer)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Im developing a code in a button that it has to validate the existence of 2 pictures on each detailActivity and say to the user:&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;if alldetailsActivityHasAttachment&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; change the requestState to Complete&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;else&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Msg(you need to make sure that all the detailsActivity has their pictures before to change the state to Complete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, my function that it is trigged by a button is the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;public&lt;/STRONG&gt;&lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; verificarRealizacion():&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; validado:String = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"NO"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE ACTIVIDADES RELACIONADAS&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask:QueryTask = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; QueryTask(widgets.MantenimientoPodas.URLS.URL_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query:Query = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Query();&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.where = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"COD_SAP= "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; +int(DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'CODIGO_SAP'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]); &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.outFields = [&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'*'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.returnGeometry = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;true&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask.execute(query, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResultQuery, onFaultQuery));&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//si hay conexion con el servicio&lt;/EM&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResultQuery(featureSet:FeatureSet, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//si no hay actividades asociadas a esa solicitud&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; (featureSet.features.length&amp;lt;=0){&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"NO HAY Actividades encontradas, asegúrese de haberlas creado junto con su detalle especificado."&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;


 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Si hay actividades asociadas. Verificar existencia de detalle&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Validar existencia de detalle&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;for&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(&lt;/SPAN&gt;&lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; k:int=0;k&amp;lt;featureSet.features.length;k++){&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE DETALLE DE ACTIVIDAD RELACIONADOS&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask:QueryTask = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; QueryTask(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query:Query = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Query();&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.where = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD= "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; +int(featureSet.features&lt;K&gt;.attributes[&lt;/K&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]); &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.outFields = [&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'*'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.returnGeometry = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;true&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask.execute(query, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult, onFault));&lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult(featureSet2:FeatureSet, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Hay detalle de actividades&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(featureSet2.features.length&amp;gt;0){&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE DOS FOTOS EN EL SERVICIO POR CADA DETALLE DE ACTIVIDAD&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;for&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(&lt;/SPAN&gt;&lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; m:int=0;m&amp;lt;featureSet2.features.length;m++)&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Alert.show(featureSet2.features&lt;M&gt;.attributes["OBJECTID"]);&lt;/M&gt;&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; myDetalle:FeatureLayer = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; FeatureLayer(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; objActividad:int= featureSet2.features&lt;M&gt;.attributes[&lt;/M&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"OBJECTID"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&amp;nbsp; &lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;&amp;nbsp; myDetalle.queryAttachmentInfos(objActividad,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult,onFault));&amp;nbsp; &lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult(event:Array, token:Object=&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp; &lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//tiene attachment&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; (event.length==2) &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud:* = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Object;&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"OBJECTID"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'OBJECTID'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= int(DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'CODIGO_SAP'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ESTADO_SOLICITUD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= DDLEstadoPoda.selectedItem.descripcion;&lt;/SPAN&gt;

 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; graficoEditadoActual:Graphic = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Graphic;&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; graficoEditadoActual = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Graphic(&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,ModificarEstadoSolicitud);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; mySolicitud:FeatureLayer = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; FeatureLayer(widgets.MantenimientoPodas.URLS.URL_SOLICITUD);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; mySolicitud.applyEdits(&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,[graficoEditadoActual],&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;false&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult, onFault));&lt;/SPAN&gt;


 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult():&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Estado de Solicitud de Poda Modificado"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; querySolicitudes();&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error al modificar el estado de solicitud "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;+info.toString());&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//no tiene attachment&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&amp;nbsp; 
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Falta adjuntar alguna fotografia. Revise por favor."&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Alert.show(event[0].url + " "+ event[1].url+ ""+ validado);&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(event:Object,token:Object=&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"No se pudo conectar al servicio de fotos adjuntas"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//for&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//if&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"No hay detalle de actividades asociado, asegúrese de haber ingresado al menos uno por cada actividad"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error obteniendo el estado de la solicitud: "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;+ info.toString());&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//no hay conexion&lt;/EM&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFaultQuery(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error al validar las actividades"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Carga de Actividades"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My issue is im just getting if the detailActivity has their attachment one by one.&lt;/P&gt;&lt;P&gt;Is there a way to ask for all of them or another way to validate (the logic mainly).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advice &lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/happy.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 11 Dec 2021 08:01:35 GMT</pubDate>
    <dc:creator>EvelynHernandez</dc:creator>
    <dc:date>2021-12-11T08:01:35Z</dc:date>
    <item>
      <title>about async functions</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/about-async-functions/m-p/147936#M3429</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Im working on a widget that has the following structure:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;request (as solicitud in the code)&lt;/P&gt;&lt;P&gt;activity (as actividad in the code)&lt;/P&gt;&lt;P&gt;activityDetail (as detalleActividad in the code).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1 request can have 1..* activities.&lt;/P&gt;&lt;P&gt;1 activity can have 1..* detailActivity.&lt;/P&gt;&lt;P&gt;1 detailActivity can have 2 attachment associated (pictures) (its done through arcgisServer)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Im developing a code in a button that it has to validate the existence of 2 pictures on each detailActivity and say to the user:&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;if alldetailsActivityHasAttachment&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; change the requestState to Complete&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;else&lt;/P&gt;&lt;P style="padding-left: 30px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Msg(you need to make sure that all the detailsActivity has their pictures before to change the state to Complete.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So, my function that it is trigged by a button is the following:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;public&lt;/STRONG&gt;&lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; verificarRealizacion():&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; validado:String = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"NO"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE ACTIVIDADES RELACIONADAS&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask:QueryTask = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; QueryTask(widgets.MantenimientoPodas.URLS.URL_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query:Query = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Query();&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.where = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"COD_SAP= "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; +int(DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'CODIGO_SAP'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]); &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.outFields = [&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'*'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.returnGeometry = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;true&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask.execute(query, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResultQuery, onFaultQuery));&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//si hay conexion con el servicio&lt;/EM&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResultQuery(featureSet:FeatureSet, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//si no hay actividades asociadas a esa solicitud&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; (featureSet.features.length&amp;lt;=0){&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"NO HAY Actividades encontradas, asegúrese de haberlas creado junto con su detalle especificado."&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;


 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Si hay actividades asociadas. Verificar existencia de detalle&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Validar existencia de detalle&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;for&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(&lt;/SPAN&gt;&lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; k:int=0;k&amp;lt;featureSet.features.length;k++){&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE DETALLE DE ACTIVIDAD RELACIONADOS&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask:QueryTask = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; QueryTask(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query:Query = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Query();&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.where = &lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD= "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; +int(featureSet.features&lt;K&gt;.attributes[&lt;/K&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]); &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.outFields = [&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'*'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; query.returnGeometry = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;true&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;;&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; queryTask.execute(query, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult, onFault));&lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult(featureSet2:FeatureSet, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Hay detalle de actividades&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(featureSet2.features.length&amp;gt;0){&lt;/SPAN&gt;

 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//VALIDAR EXISTENCIA DE DOS FOTOS EN EL SERVICIO POR CADA DETALLE DE ACTIVIDAD&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;for&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;(&lt;/SPAN&gt;&lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; m:int=0;m&amp;lt;featureSet2.features.length;m++)&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Alert.show(featureSet2.features&lt;M&gt;.attributes["OBJECTID"]);&lt;/M&gt;&lt;/EM&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; myDetalle:FeatureLayer = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; FeatureLayer(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; objActividad:int= featureSet2.features&lt;M&gt;.attributes[&lt;/M&gt;&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"OBJECTID"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&amp;nbsp; &lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;&amp;nbsp; myDetalle.queryAttachmentInfos(objActividad,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult,onFault));&amp;nbsp; &lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult(event:Array, token:Object=&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp; &lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//tiene attachment&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;if&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; (event.length==2) &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud:* = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Object;&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"OBJECTID"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'OBJECTID'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;];&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ID_ACTIVIDAD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= int(DataSolicitudes.selectedItem[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;'CODIGO_SAP'&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; ModificarEstadoSolicitud[&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"ESTADO_SOLICITUD"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;]= DDLEstadoPoda.selectedItem.descripcion;&lt;/SPAN&gt;

 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; graficoEditadoActual:Graphic = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Graphic;&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; graficoEditadoActual = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Graphic(&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,ModificarEstadoSolicitud);&lt;/SPAN&gt;
 &lt;STRONG style="color: #6699cc; font-size: 10.0pt; font-family: Consolas;"&gt;var&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; mySolicitud:FeatureLayer = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; FeatureLayer(widgets.MantenimientoPodas.URLS.URL_SOLICITUD);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; mySolicitud.applyEdits(&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,[graficoEditadoActual],&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;, &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;false&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;new&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; AsyncResponder(onResult, onFault));&lt;/SPAN&gt;


 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onResult():&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Estado de Solicitud de Poda Modificado"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; querySolicitudes();&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error al modificar el estado de solicitud "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;+info.toString());&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//no tiene attachment&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&amp;nbsp; 
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Falta adjuntar alguna fotografia. Revise por favor."&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//Alert.show(event[0].url + " "+ event[1].url+ ""+ validado);&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(event:Object,token:Object=&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;{&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"No se pudo conectar al servicio de fotos adjuntas"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//for&lt;/EM&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//if&lt;/EM&gt;
 &lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;else&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"No hay detalle de actividades asociado, asegúrese de haber ingresado al menos uno por cada actividad"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFault(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error obteniendo el estado de la solicitud: "&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;+ info.toString());&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;

&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;
 &lt;EM style="color: #009900; font-size: 10.0pt; font-family: Consolas;"&gt;//no hay conexion&lt;/EM&gt;
 &lt;STRONG style="color: #339966; font-size: 10.0pt; font-family: Consolas;"&gt;function&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; onFaultQuery(info:Object, token:Object = &lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;null&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;):&lt;/SPAN&gt;&lt;STRONG style="color: #0033ff; font-size: 10.0pt; font-family: Consolas;"&gt;void&lt;/STRONG&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; {&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; Alert.show(&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Error al validar las actividades"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;,&lt;/SPAN&gt;&lt;STRONG style="color: #990000; font-size: 10.0pt; font-family: Consolas;"&gt;"Carga de Actividades"&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt;);&lt;/SPAN&gt;
&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;


&lt;SPAN style="font-size: 10.0pt; font-family: Consolas; color: black;"&gt; }&lt;/SPAN&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My issue is im just getting if the detailActivity has their attachment one by one.&lt;/P&gt;&lt;P&gt;Is there a way to ask for all of them or another way to validate (the logic mainly).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advice &lt;IMG src="https://community.esri.com/legacyfs/online/emoticons/happy.png" /&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 08:01:35 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/about-async-functions/m-p/147936#M3429</guid>
      <dc:creator>EvelynHernandez</dc:creator>
      <dc:date>2021-12-11T08:01:35Z</dc:date>
    </item>
    <item>
      <title>Re: about async functions</title>
      <link>https://community.esri.com/t5/arcgis-api-for-flex-questions/about-async-functions/m-p/147937#M3430</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well , after 3 days i solved my problem doing this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;public function verificarRealizacion():void{
&amp;nbsp; var fotosEncontradas:int;
&amp;nbsp; var cantidadDetalle:int=0;
&amp;nbsp; var cantidadFotosTotales:int=0;

&amp;nbsp; var myDetalle:FeatureLayer = new FeatureLayer(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);

&amp;nbsp; var fotosTotales:int;
&amp;nbsp; //VALIDAR EXISTENCIA DE ACTIVIDADES RELACIONADAS
&amp;nbsp; var queryTask:QueryTask = new QueryTask(widgets.MantenimientoPodas.URLS.URL_DETALLE_ACTIVIDADES);
&amp;nbsp; var query:Query = new Query();
&amp;nbsp; query.where = "CODIGO_SAP= " +int(DataSolicitudes.selectedItem['CODIGO_SAP']);&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp; query.outFields = ['OBJECTID','ID_ACTIVIDAD'];
&amp;nbsp; query.returnGeometry = true;
&amp;nbsp; queryTask.execute(query, new AsyncResponder(onResultQuery, onFaultQuery));

&amp;nbsp; //si hay conexion con el servicio
&amp;nbsp; function onResultQuery(featureSet:FeatureSet, token:Object = null):void
&amp;nbsp; {
&amp;nbsp; //si no hay actividades asociadas a esa solicitud
&amp;nbsp; if (featureSet.features.length&amp;lt;=0){
&amp;nbsp; Alert.show("NO HAY DETALLES DE ACTIVIDADES ENCONTRADOS, asegúrese de haberlas creado alguno junto con su actividad especificada.");
&amp;nbsp; lblCantDetalleSolicitud.text = String(featureSet.features.length);

&amp;nbsp; //Si hay detalles asociados. Verificar existencia de fotos. Ex detalle 10, fotos = detallex2
&amp;nbsp; }else{
&amp;nbsp; //VALIDAR EXISTENCIA DE DOS FOTOS EN EL SERVICIO POR CADA DETALLE DE ACTIVIDAD
&amp;nbsp; //lblCantDetalleSolicitud.text = String(featureSet.features.length);
&amp;nbsp; cantidadDetalle = featureSet.features.length;
&amp;nbsp; cantidadFotosTotales = cantidadDetalle*2;
&amp;nbsp; for (var i:int = 0; i &amp;lt; featureSet.features.length; i++)
&amp;nbsp; {
&amp;nbsp; myDetalle.queryAttachmentInfos(featureSet.features&lt;I&gt;.attributes["OBJECTID"],new AsyncResponder(onResult1,onFault1));&lt;/I&gt;
&amp;nbsp; function onResult1(event:Array, token:Object=null):void{ 
&amp;nbsp; //tiene attachment
&amp;nbsp; if (event.length==2)
&amp;nbsp; {
&amp;nbsp; cantidadFotosTotales = cantidadFotosTotales - 2;

&amp;nbsp; //Verifica que estén todas las fotos.
&amp;nbsp; if (cantidadFotosTotales ==0) {
&amp;nbsp; //Alert.show("Estan todas");
&amp;nbsp; var ModificarEstadoSolicitud:* = new Object;

&amp;nbsp; ModificarEstadoSolicitud["OBJECTID"]= DataSolicitudes.selectedItem['OBJECTID'];
&amp;nbsp; ModificarEstadoSolicitud["ID_ACTIVIDAD"]= int(DataSolicitudes.selectedItem['CODIGO_SAP']);
&amp;nbsp; ModificarEstadoSolicitud["ESTADO_SOLICITUD"]= DDLEstadoPoda.selectedItem.descripcion;

&amp;nbsp; var graficoEditadoActual:Graphic = new Graphic;

&amp;nbsp; graficoEditadoActual = new Graphic(null,null,ModificarEstadoSolicitud);
&amp;nbsp; var mySolicitud:FeatureLayer = new FeatureLayer(widgets.MantenimientoPodas.URLS.URL_SOLICITUD);
&amp;nbsp; mySolicitud.applyEdits(null,[graficoEditadoActual],null, false,new AsyncResponder(onResult, onFault));


&amp;nbsp; function onResult():void
&amp;nbsp; {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 
&amp;nbsp; Alert.show("Estado de Solicitud de Poda Modificado");
&amp;nbsp; querySolicitudes();
&amp;nbsp; }

&amp;nbsp; function onFault(info:Object, token:Object = null):void
&amp;nbsp; {
&amp;nbsp; Alert.show("Error al modificar el estado de solicitud "+info.toString());
&amp;nbsp; }


&amp;nbsp; }//fin if

&amp;nbsp; }
&amp;nbsp; //no tiene attachment
&amp;nbsp; else 
&amp;nbsp; {
&amp;nbsp; Alert.show("Faltan fotografías, asegúrese que cada detalle de actividad contenga ambas fotos.");
&amp;nbsp; }



&amp;nbsp; }
&amp;nbsp; function onFault1(event:Object,token:Object=null):void{
&amp;nbsp; Alert.show("No se pudo conectar al servicio de fotos adjuntas. .");
&amp;nbsp; }
&amp;nbsp; }



&amp;nbsp; }
&amp;nbsp; }
&amp;nbsp; //no hay conexion
&amp;nbsp; function onFaultQuery(info:Object, token:Object = null):void
&amp;nbsp; { 
&amp;nbsp; Alert.show("No se pudo contactar con el servicio.","Carga de Actividades");
&amp;nbsp; }&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 11 Dec 2021 08:01:38 GMT</pubDate>
      <guid>https://community.esri.com/t5/arcgis-api-for-flex-questions/about-async-functions/m-p/147937#M3430</guid>
      <dc:creator>EvelynHernandez</dc:creator>
      <dc:date>2021-12-11T08:01:38Z</dc:date>
    </item>
  </channel>
</rss>

