Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #10  
Antiguo 25-08-2010
Avatar de afunez2007
afunez2007 afunez2007 is offline
Miembro
 
Registrado: oct 2007
Ubicación: La Ceiba, Honduras
Posts: 170
Poder: 19
afunez2007 Va por buen camino
Lightbulb

Cita:
Empezado por Dclase Ver Mensaje
Igual con post y sin post me da el mismo error..


Código Delphi [-]With ClientDataSet3 Do Begin Close; ClientDataSet1.Commantext := ' Select * from TablaA'; Open If Not Eof Then Begin First; While Not Eof Do Begin ClientDataSet2.Append; ClientDataSet2.FieldByName('Codigo').AsString := FieldByName('Codigo').AsString; ClientDataSet2.FieldByName('CAMPO1').AsFloat := 0; ClientDataSet2.Post; Next; End; End; End; With ClientDataSet1 Do Begin ClientDataSet1.Close; ClientDataSet1.Commantext := ' Select * from TablaB'; ClientDataSet1.Open If Not Eof Then Begin First; While Not Eof Do Begin IF ClientDataSet2.Locate('Codigo', FieldByName('Codigo').AsString, []) Then Begin ClientDataSet2.Edit; //Este Cds no esta conectado a ningun provider //Solo lo utilizo para actializar datos en memoria ClientDataSet2.FieldByName('CAMPO1').AsFloat := FieldByName('CAMPO1').AsFloat; ClientDataSet2.Post; End; Next; End; End; End;


(Aproposito, el codigo aqui no importa, solo puse este de prueba para k se entienda mejor lo que queria explicar, pero si es la misma sintaxis y logica de lo que busco hacer.)
veamos yo veo que hay un ciclo redundante el if para mi esta demas, prueba asi:
Código Delphi [-]
With ClientDataSet3 Do
Begin
   Close;
   ClientDataSet1.Commantext := ' Select * from TablaA';
   Open;
        First;
        While Not Eof Do
        Begin   
          ClientDataSet2.Append;
          ClientDataSet2.FieldByName('Codigo').AsString := FieldByName('Codigo').AsString;
           ClientDataSet2.FieldByName('CAMPO1').AsFloat := 0;
           ClientDataSet2.Post;
        Next;
        End;
End;


With ClientDataSet1 Do
Begin

ClientDataSet1.Close;
ClientDataSet1.Commantext := ' Select * from TablaB';
ClientDataSet1.Open;
     First;
     While Not Eof Do
     Begin
         IF ClientDataSet2.Locate('Codigo', FieldByName('Codigo').AsString, []) Then
         Begin
         ClientDataSet2.Edit;  //Este Cds no esta conectado a ningun provider 
                                      //Solo lo utilizo para actializar datos en memoria
         ClientDataSet2.FieldByName('CAMPO1').AsFloat := FieldByName('CAMPO1').AsFloat;
         ClientDataSet2.Post;
         End;
     Next; 
     End;
End;

a mi en lo personal, solo utilizaria el dataset para recoger el id del registro a modificar, y haria un Insert con un query o un update en el segundo ciclo, el tema de modificar directamente los datos del data set te suele provocar estos incomodos errorcillos
__________________
Si robas, roba un beso, si mientes que sea por amor y si engañas que sea a la muerte!!
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Cannot Modify mantraxer21 Varios 8 26-08-2010 18:17:22
Error 'Cannot modify a read-only dataset' karaoke Varios 8 10-12-2007 06:38:31
Al intentar modificar un campo me dice "Cannot modify a read-only dataset" raulahol SQL 1 22-01-2007 05:16:53
error cannot modify a read-only dataset Renees Varios 2 30-09-2006 00:39:27
Query1 cannot modify a read-only dataset Nbull SQL 14 14-12-2004 10:29:35


La franja horaria es GMT +2. Ahora son las 15:07:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi