Muchas gracias mounstruo!!

Si visto así parece sencillo pero no daba con la forma de capturar las filas(item) añadidas y es que entre tanto Delta, DeltaPacket, Iterator y DeltaItem me hago unos lios...

A mejorarse, que ya he leido que estas con gripe.
Un saludo.


From: "Joseba Alonso" <[EMAIL PROTECTED]>
Reply-To: [email protected]
To: <[email protected]>
Subject: RE: [ASNativos]  De vueltas con Dataset y Deltapackets
Date: Wed, 8 Mar 2006 11:22:59 +0100

Le he hecho alguna modificacion al script, a ver si este te sirve...

<code>
import mx.data.components.DataSet;
import mx.data.components.datasetclasses.Delta;
import mx.data.components.datasetclasses.DeltaPacket;
import mx.utils.Iterator;

var ds:DataSet = new DataSet();
// datos iniciales
ds.dataProvider = [     {nombre:"nombre1",edad:1},
                                        {nombre:"nombre2",edad:2} ];

// Modificamos el segundo
ds.first();
ds.next();
ds.nombre = "nombre2_modificado";

// Eliminamos el primero
ds.first();
ds.removeItem();

// Añadimos uno
ds.addItem({nombre:"nombre2",edad:3});

// Mostramos los cambios
ds.applyUpdates();
var deltapkt:DeltaPacket = ds.deltaPacket;
var OPS:Array = new Array("añadido", "eliminado", "modificado");
var dpCursor:Iterator = deltapkt.getIterator();
var dpDelta:Delta;
var op:Number;
var it:Object;
while(dpCursor.hasNext()) {
    dpDelta = Delta(dpCursor.next());
    op=dpDelta.getOperation();
        it=dpDelta.getSource();
        trace(OPS[op]);
                if(op==2){ // modificado
                        ds.locateById(it.__ID__);
                        it = ds.currentItem;
                }
        trace(mx.data.binding.ObjectDumper.toString(it));
        trace("----------------------------------------");
}
</code>

> -----Mensaje original-----
> De: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] En nombre de Felipe
> Fernandez Sanchez
> Enviado el: lunes, 06 de marzo de 2006 22:55
> Para: [email protected]
> Asunto: [ASNativos] De vueltas con Dataset y Deltapackets
>
> Hola, ¿alguien ha trabajado con los deltapacket pero sin
> apoyarse en resolvers y accediendo directamente a los datos
> que contiene?
> Joseba me paso un ejemplo que he completado pero todavía no
> consigo verlo claro.
>
> Por ejemplo, tengo un Datagrid "bindeado" con un DataSet y al
> que puedo añadir filas, borrarlas o editar determinados campos.
>
> El caso es que, a pesar de detectar todos los cambios,  no me
> dice (o no lo encuentro), por ejemplo, qué fila (item) se ha
> añadido/borrado del DataGrid/Dataset.
>
> Lo que quiero es detectar qué filas del grid han sido
> cambiadas para mandarlas al servidor para su actualización en la BD.
>
> Un saludo.
>
>
> ----------------------------------
> Lista ASNativos:[email protected]
> http://www.5dms.com/listas
> ----------------------------------

----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------


----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------

Responder a