From 27625fa8d8c5b360bcaa82535cd1dfd947dc81fb Mon Sep 17 00:00:00 2001 From: Dan Buch Date: Thu, 18 Feb 2010 13:30:10 -0500 Subject: [PATCH] adding employees dynamic crud example --- src/04-employee-crud/CRUDDynamic.mxml | 58 +++++++++++++++++++++++++++ src/04-employee-crud/Makefile | 16 ++++++++ src/04-employee-crud/employees.as | 43 ++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 src/04-employee-crud/CRUDDynamic.mxml create mode 100644 src/04-employee-crud/Makefile create mode 100644 src/04-employee-crud/employees.as diff --git a/src/04-employee-crud/CRUDDynamic.mxml b/src/04-employee-crud/CRUDDynamic.mxml new file mode 100644 index 0000000..7a8b6de --- /dev/null +++ b/src/04-employee-crud/CRUDDynamic.mxml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/04-employee-crud/Makefile b/src/04-employee-crud/Makefile new file mode 100644 index 0000000..3fc08a1 --- /dev/null +++ b/src/04-employee-crud/Makefile @@ -0,0 +1,16 @@ +MXMLC ?= mxmlc + + +all: CRUDDynamic.swf CRUDStatic.swf + + +CRUDDynamic.swf: CRUDDynamic.mxml + $(MXMLC) CRUDDynamic.mxml + + +CRUDStatic.swf: CRUDStatic.mxml + $(MXMLC) CRUDStatic.mxml + + +clean: + rm -f *.swf diff --git a/src/04-employee-crud/employees.as b/src/04-employee-crud/employees.as new file mode 100644 index 0000000..d0cc66a --- /dev/null +++ b/src/04-employee-crud/employees.as @@ -0,0 +1,43 @@ +import mx.rpc.events.ResultEvent; +import mx.collections.XMLListCollection; + +private var params:Object = new Object(); +[Bindable] +private var listData:XMLListCollection; + +public function resultHandler(event:ResultEvent):void { + var result:XML = XML(event.result); + var xmlList:XMLList = result.data.children(); + listData = new XMLListCollection(xmlList); +} + +public function insertItemHandler(event:ResultEvent):void { + fill(); +} + +public function fill():void{ + employeesService.removeEventListener(ResultEvent.RESULT,insertItemHandler); + employeesService.addEventListener(ResultEvent.RESULT,resultHandler); + employeesService.method = "GET"; + params['method'] = "FindAllEmployees"; + employeesService.cancel(); + employeesService.send(params); + viewstack1.selectedIndex=1; +} + +public function insertEmployee():void{ + employeesService.removeEventListener(ResultEvent.RESULT,resultHandler); + employeesService.addEventListener(ResultEvent.RESULT,insertItemHandler); + employeesService.method = "POST"; + params = {"method": "InsertEmployee", "id": NaN, "firstName": inputFirst.text, + "lastName": inputLast.text, "officePhone": inputPhone.text}; + employeesService.cancel(); + employeesService.send(params); + clearInputFields(); +} + +private function clearInputFields():void{ + inputFirst.text = ""; + inputLast.text = ""; + inputPhone.text = ""; +}