Comunidad de diseño web y desarrollo en internet online

hacer editable un datagrid y que se refleje en la BD?

Citar            
MensajeEscrito el 17 Ene 2011 06:37 pm
bueno mi problema es el siguiente, yo uso amfphp para conectarme a mi base de datos en oracle!!!! y ya hice mi clase para conectarme!!!! me conecto y agregue botones para eliminar, modificar ya agregar a la base de datos!!!! pero quiero hacer editable mi datagrid para ahorrarme el poner botones!!!!! para que solo lo agregue directamente en el datagrid pero no me sale!!! no se como hacerlo que cuando agregue algo al datagrid haga alguna llamada para que actualice a base de datos directamente!!!!! porfavor ayudenme les dejo mi codigo!!!!! para que lo analisen y me digan que tengo que agregar para ello!!!!


<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
creationComplete="onInit();">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.events.CloseEvent;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;

private var datos:ArrayCollection;
private var datos2:Array;

private function onInit():void
{
SistemaGastosOracle.obtenerDivisas.send();
}
private function onResult():void
{
datos= SistemaGastosOracle.obtenerDivisas.lastResult;
datos2= datos.source;
}
private function onResultAddivisa():void
{
SistemaGastosOracle.obtenerDivisas.send();
}
private function onResultDeletedivisa():void
{
SistemaGastosOracle.obtenerDivisas.send();
}
private function onResultModificardivisa():void
{
SistemaGastosOracle.obtenerDivisas.send();
}
private function nuevaDivisa():void
{
SistemaGastosOracle.insertarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}
private function eliminarDivisa():void
{
SistemaGastosOracle.eliminarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}
private function modificarDivisa():void
{
SistemaGastosOracle.modificarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}

private function copiaDatos():void
{
txtId.text=dataDivisas.selectedItem.INTNUMDIVISA;
txtDivisa.text=dataDivisas.selectedItem.STRNOMBRE;
txtSimbolo.text=dataDivisas.selectedItem.STRSIMBOLO;
}
]]>
</fx:Script>
<fx:Declarations>
<s:RemoteObject id="SistemaGastosOracle" destination="amfphp" source="SistemaGastosOracle" showBusyCursor="true"
endpoint="http://localhost/AMFPHP/gateway.php">
<s:method name="obtenerDivisas" result="onResult()"/>
<s:method name="insertarDivisa" result="onResultAddivisa()"/>
<s:method name="eliminarDivisa" result="onResultDeletedivisa()"/>
<s:method name="modificarDivisa" result="onResultModificardivisa()"/>
</s:RemoteObject>
</fx:Declarations>
<mx:DataGrid x="91" y="142" id="dataDivisas" dataProvider="{SistemaGastosOracle.obtenerDivisas.lastResult}" creationComplete="SistemaGastosOracle.obtenerDivisas()" click="copiaDatos();">
<mx:columns>
<mx:DataGridColumn headerText="ID" dataField="INTNUMDIVISA"/>
<mx:DataGridColumn headerText="DIVISAS" dataField="STRNOMBRE"/>
<mx:DataGridColumn headerText="SIMBOLO" dataField="STRSIMBOLO"/>
</mx:columns>
</mx:DataGrid>
<s:Label x="91" y="55" text="ID:"/>
<s:Label x="91" y="79" text="DIVISA:"/>
<s:Label x="91" y="109" text="SIMBOLO:"/>
<s:TextInput x="114" y="49" id="txtId"/>
<s:TextInput x="136" y="73" id="txtDivisa"/>
<s:TextInput x="155" y="103" id="txtSimbolo"/>
<s:Button x="334" y="55" label="NUEVO" click="nuevaDivisa();" id="btNuevo"/>
<s:Button x="335" y="113" label="ELIMINAR" click="eliminarDivisa();" id="bteliminar"/>
<s:Button x="334" y="84" label="MODIFICAR" click="modificarDivisa();" id="btmodificar"/>

</s:Application>

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 17 Ene 2011 06:59 pm
osea yo ya puedo eliminar, modificar y añadir informacion a la base de datos!!!!!! pero lo que quiero es que cuando le de clic al datagrid pueda modificar la informacion y que esta se vea reflejada en la base de datos igual ya que pues solo activandole el editable=true solo se modifica en la aplicacion pero no en la base datos!!!!! uso amfphp y lo conecto con un remoteobject!!!! y pues quiero imaginar que tengo que redireccionar algo pero no se que cosa!!!!!

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 17 Ene 2011 07:26 pm
Es un approach ineficiente, porque por cada pequeño cambio generarías un query, siendo lo mejor hacer todo junto. De todas formas, busca el evento adecuado (DataGridEvent.ITEM_EDIT_END) para llamr a la función de update, consulta la ayuda para ver la info que te trae el evento

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 18 Ene 2011 08:52 pm
Y COMO LO HARIAS ENTONCES? COMO HARIAS EFICIENTE? NO ENTIENDO SOY UN POCO NUEVO EN FLEX!!! Y ESTA ES LA FORMA EN QUE ME FUNCIONA EL LLAMAR A AMFPHP!!!!! Y QUE ES ESO DE DATAGRIDEVENT.ITEM_EDIT_END?

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 18 Ene 2011 09:14 pm

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 20 Ene 2011 08:12 pm
NO HAY NADIE QUE ME DIGA COMO HACERLO? NO SE INGLES!!!!!!

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 20 Ene 2011 08:15 pm
YA LO CORREGI PARA NO MANDAR A LLAMAR TANTAS FUNCIONES SOLO A UNA

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
creationComplete="onInit();">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.events.CloseEvent;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.rpc.events.FaultEvent;

private var datos:ArrayCollection;
private var datos2:Array;

private function onInit():void
{
SistemaGastosOracle.obtenerDivisas.send();
}
private function onResult():void
{
datos= SistemaGastosOracle.obtenerDivisas.lastResult;
datos2= datos.source;
}
private function onResultEvent():void
{
SistemaGastosOracle.obtenerDivisas.send();
}

private function nuevaDivisa():void
{
SistemaGastosOracle.insertarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}
private function eliminarDivisa():void
{
SistemaGastosOracle.eliminarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}
private function modificarDivisa():void
{
SistemaGastosOracle.modificarDivisa.send(txtId.text,txtDivisa.text,txtSimbolo.text);
}

private function copiaDatos():void
{
txtId.text=dataDivisas.selectedItem.INTNUMDIVISA;
txtDivisa.text=dataDivisas.selectedItem.STRNOMBRE;
txtSimbolo.text=dataDivisas.selectedItem.STRSIMBOLO;
}
]]>
</fx:Script>
<fx:Declarations>
<s:RemoteObject id="SistemaGastosOracle" destination="amfphp" source="SistemaGastosOracle" showBusyCursor="true"
endpoint="http://localhost/AMFPHP/gateway.php">
<s:method name="obtenerDivisas" result="onResult()"/>
<s:method name="insertarDivisa" result="onResultEvent()"/>
<s:method name="eliminarDivisa" result="onResultEvent()"/>
<s:method name="modificarDivisa" result="onResultEvent()"/>
</s:RemoteObject>
</fx:Declarations>
<mx:DataGrid x="91" y="142" id="dataDivisas" dataProvider="{SistemaGastosOracle.obtenerDivisas.lastResult}" creationComplete="SistemaGastosOracle.obtenerDivisas()" click="copiaDatos();">
<mx:columns>
<mx:DataGridColumn headerText="ID" dataField="INTNUMDIVISA"/>
<mx:DataGridColumn headerText="DIVISAS" dataField="STRNOMBRE"/>
<mx:DataGridColumn headerText="SIMBOLO" dataField="STRSIMBOLO"/>
</mx:columns>
</mx:DataGrid>
<s:Label x="91" y="55" text="ID:"/>
<s:Label x="91" y="79" text="DIVISA:"/>
<s:Label x="91" y="109" text="SIMBOLO:"/>
<s:TextInput x="114" y="49" id="txtId"/>
<s:TextInput x="136" y="73" id="txtDivisa"/>
<s:TextInput x="155" y="103" id="txtSimbolo"/>
<s:Button x="334" y="55" label="NUEVO" click="nuevaDivisa();" id="btNuevo"/>
<s:Button x="335" y="113" label="ELIMINAR" click="eliminarDivisa();" id="bteliminar"/>
<s:Button x="334" y="84" label="MODIFICAR" click="modificarDivisa();" id="btmodificar"/>

</s:Application>

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 20 Ene 2011 08:16 pm
PERO NADIE ME DICE COMO PONERLO EDITABLE Y QUE CUANDO SE EDITE SE MANDE A LA BASE DE DATOS.......

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox
Citar            
MensajeEscrito el 20 Ene 2011 09:42 pm
Sigues escribiendo en mayúsculas

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 24 Ene 2011 06:53 pm
bueno ayuda entonces!!!!!

Por CLAnonimo

Claber

600 de clabLevel

5 tutoriales
1 articulo

 

Este es un usuario anónimo genérico para las cuentas borradas o perdidas.

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.