Skip to main content

Flex - Add Edit Delete rows using Data Grid


With Flex, I was scraching head for few days to achive

(a) How to use DataGrid to add, edit and delete records

(b) How to move XML data into ArrayCollection.

Now, here is the solution....



<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
backgroundAlpha="0" creationComplete="srv.send()">

<mx:Script>
import mx.collections.ArrayCollection;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;

[Bindable]
public var employees:ArrayCollection = new ArrayCollection();
private var xmldata:XML;

private function faultHandler(event:FaultEvent):void{
mx.controls.Alert.show(event.fault.message,"Error in getting result");
}

private function resultHandler(event:ResultEvent):void{
xmldata = new XML(event.result);

// Convert XML to ArrayCollection
for each(var s:XML in xmldata.employee){
employees.addItem(s);
}
}

private function addRow():void
{
if (frmName.text != "")
employees.addItem( {name: frmName.text, email: email.text, phone: phone.text} );
}

private function updateRow():void
{
if (dg.selectedIndex != -1)
employees.setItemAt({name: frmName.text, email: email.text, phone: phone.text}, dg.selectedIndex);
}

private function deleteRow():void
{
if (dg.selectedIndex != -1)
{
employees.removeItemAt(dg.selectedIndex);
frmName.text="";
email.text="";
phone.text="";
}
}
</mx:Script>

<mx:HTTPService id="srv" url="employees.xml" useProxy="false" resultFormat="e4x"
result="resultHandler(event)" fault="faultHandler(event)"/>

<mx:HBox width="100%" height="100%">
<mx:DataGrid id="dg" width="100%" height="100%" dataProvider="{employees}">
<mx:columns>
<mx:Array>
<mx:DataGridColumn dataField="name" headerText="Name"/>
<mx:DataGridColumn dataField="phone" headerText="Phone"/>
<mx:DataGridColumn dataField="email" headerText="Email"/>
</mx:Array>
</mx:columns>
</mx:DataGrid>

<mx:Form width="100%" height="100%">
<mx:FormItem label="Name">
<mx:TextInput id="frmName" width="200" text="{dg.selectedItem.name}"/>
</mx:FormItem>

<mx:FormItem label="Email">
<mx:TextInput id="email" width="200" text="{dg.selectedItem.email}"/>
</mx:FormItem>

<mx:FormItem label="Phone">
<mx:TextInput id="phone" width="200" text="{dg.selectedItem.phone}"/>
</mx:FormItem>

<mx:FormItem>
<mx:HBox>
<mx:Button label="Update" click="updateRow()"/>
<mx:Button label="Add" click="addRow()"/>
<mx:Button label="Delete" click="deleteRow()"/>
</mx:HBox>
</mx:FormItem>
</mx:Form>
</mx:HBox>
</mx:Application>





And here is the emplyees.xml


<?xml version="1.0" encoding="UTF-8"?>
<employees>
<employee>
<name>Santhosh</name>
<phone>123456</phone>
<email>santhosh@gmail.com</email>
</employee>

<employee>
<name>Abhi</name>
<phone>7890</phone>
<email>abhi@gmail.com</email>
</employee>

</employees>

Comments

Popular posts from this blog

SAAS Simple Maturity Model

There are two architectural models – commonly referred as SAAS Maturity models- that describe the transition of a service to what is called Multi-tenant efficient, highly scalable application. The SAAS Maturity model described by Microsoft has four distinct stages and is illustrated below. Another similar well-known model for SaaS-maturity is known as Forrester-model but adds another stage known as "Dynamic Business Apps-as-a-service". The three key Attributes of a SAAS Architecture: Configurability: Metadata used to configure the way the application behaves for customers Multi-tenant Efficiency : Maximizing the sharing of resources across tenants Scalability: Maximizing concurrency, resource efficiency SAAS Simple Maturity Model (Microsoft, 2006) SaaS Maturity Model (Forres

SpringBoot : Performance War

Reactive Systems are designed to address challenges posed by modern software systems - the challenges related to large number of users and high throughput. Reactive systems are expected to be highly responsive, resilient, elastic and message driven. In this article we will: Build a set of fully non-blocking REST API using SpringBoot 2.0, WebFlux and Reactive Redis. Performance test the above Reactive APIs against the traditional non-reactive APIs. The code used in this example can be downloaded from GitHub Step 1: Create a skeleton Reactive WebFlux SpringBoot project Create a SpringBoot maven project using - https://start.spring.io/ Add the following dependencies: spring-boot-starter-web spring-boot-starter-data-redis spring-webflux spring-boot-starter-data-redis-reactive Refer to the dependencies in pom.xml Step 2: Create Domain Objects The demo project uses the domain objects Customer and Account . A customer can have multiple accounts.

Java Web Framework Comparison

Wikipedia has listed over 85 web applications frame works with Java based on the top – 28. Below table lists of most widely used web Application Frameworks products available today. Product what type of project is best fit? Struts 2 The new version Struts 2.0 is a combination of the Sturts action framework and Webwork (a total redesign). Struts2 may a good fit for an enterprise application when there is existing Struts resource and projects of medium complexity. Spring MVC Good choice for medium sized project. Convention-based defaults for controllers, model object names, and view resolves. Spring MVC addresses request-driven processing at the HTTP level. It does not aim to provide a component model like JSF. Stripes