<?xml version="1.0" encoding="utf-8"?> <viewer:BaseWidget xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:esri="http://www.esri.com/2008/ags" xmlns:viewer="com.esri.viewer.*"> <fx:Script> <![CDATA[ import com.esri.ags.FeatureSet; import com.esri.ags.Graphic; import com.esri.ags.layers.FeatureLayer; import com.esri.ags.layers.supportClasses.FeatureEditResults; import com.esri.ags.tasks.QueryTask; import com.esri.ags.tasks.supportClasses.Query; import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.rpc.AsyncResponder; import mx.rpc.Fault; private var service:String = "http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/SanFrancisco/311Incidents/FeatureServer/0"; private var eventsLayer:FeatureLayer = new FeatureLayer(service); protected function btDelete_clickHandler(event:MouseEvent):void { try{ const deletes:Array = [dgFeatures.selectedItem.gra]; eventsLayer.applyEdits(null, null, deletes, false, new AsyncResponder(featureLayer_editsCompleteHandler, featureLayer_faultHandler)); function featureLayer_editsCompleteHandler(featureEditResults:FeatureEditResults, token:Object = null):void { Alert.show("delete sucessfull") } function featureLayer_faultHandler(event:Fault, token:Object = null):void { Alert.show("delete failed: " + event.message) } } catch (error:Error) { Alert.show("error at deleting process" + error.toString()) } } protected function btLoad_clickHandler(event:MouseEvent):void { try{ var queryTask:QueryTask = new QueryTask(service); var query:Query = new Query(); query.where = "1=1"; query.outFields = ['*']; query.returnGeometry = true; queryTask.execute(query, new AsyncResponder(onResultQuery, onFaultQuery)); function onResultQuery(featureSet:FeatureSet, token:Object = null):void { try { var ac:ArrayCollection = new ArrayCollection(); var k:int; for(k=0;k<featureSet.features.length;k++) { var recordGraphic:Graphic = featureSet.features; ac.addItem({Id:recordGraphic.attributes["objectid"], Name:recordGraphic.attributes["req_type"], gra:recordGraphic }); } dgFeatures.dataProvider = ac; } catch (error:Error) { Alert.show("Error processing features") dgFeatures.dataProvider = null; } } function onFaultQuery(info:Object, token:Object = null) : void { Alert.show("query error") } } catch (error:Error) { Alert.show("query processing error") } } ]]> </fx:Script> <viewer:WidgetTemplate id="wTemplate" height="340" width="430"> <mx:Form fontSize="12"> <mx:FormItem horizontalAlign="center"> <s:Button id="btLoad" label="Load" click="btLoad_clickHandler(event)"/> <mx:DataGrid id="dgFeatures" width="350" height="200" > <mx:columns> <mx:DataGridColumn dataField="Id" /> <mx:DataGridColumn dataField="Name" /> </mx:columns> </mx:DataGrid> <s:Button id="btDelete" label="Delete" click="btDelete_clickHandler(event)"/> </mx:FormItem> </mx:Form> </viewer:WidgetTemplate> </viewer:BaseWidget>
Signed in members can post, follow updates, and more. New here? Register a free account.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.