Hola,
Intento editar un dataGrid directamente, y con esta función me actualiza la base de datos correctamente:
protected function agentesDg_itemEditEndHandler(event:DataGridEvent): void
{
agentes[event.dataField]=(agentesDg.itemEditorInstance as MXDataGridItemRenderer).text;
pinguService.updateAgentes(agentes);
}
El problema me surge cuando busco uno o varios ítmes y con el resultado relleno el dataGrid, entonces, la misma función de editar ya no ve vuelve a funcionar:
protected function searchTxt_focusOutHandler(event:FocusEvent):void
{
if(searchTxt.text!=""){
getAgentesResult.token = pinguService.getAgentesByName(searchTxt.text);
}
else{
getAgentesResult.token = pinguService.getAgentesByName('Josep');
}
}
El error es un poco raro y estandar:
ypeError: Error #1009: No se puede acceder a una propiedad o a un método de una referencia a un objeto nulo.
at pingu_db/agentesDg_itemEditEndHandler()[C:\Documents and Settings\jviladomat\Adobe Flash Builder 4 Plug-in\pingu_db\src\pingu_db.mxml:108]
at pingu_db/__agentesDg_itemEditEnd()[C:\Documents and Settings\jviladomat\Adobe Flash Builder 4 Plug-in\pingu_db\src\pingu_db.mxml:149]
at flash.events::EventDispatcher/dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.core::UIComponent/dispatchEvent()[E:\dev\4.x\frameworks\projects\framework\src\mx\co re\UIComponent.as:12528]
at mx.controls::DataGrid/endEdit()[E:\dev\4.x\frameworks\projects\framework\src\mx\co ntrols\DataGrid.as:4514]
at mx.controls::DataGrid/findNextItemRenderer()[E:\dev\4.x\frameworks\projects\framework\src\mx\co ntrols\DataGrid.as:4403]
at mx.controls::DataGrid/keyFocusChangeHandler()[E:\dev\4.x\frameworks\projects\framework\src\mx\co ntrols\DataGrid.as:5183]
Creo que tengo algún problema con
agentes[event.dataField]=(agentesDg.itemEditorInstance as MXDataGridItemRenderer).text;
¿Alguien me puede ayudar?
Muchas gracias.