Ver Mensaje Individual
  #5  
Antiguo 26-09-2012
Avatar de lmpadron
lmpadron lmpadron is offline
Miembro
 
Registrado: feb 2009
Ubicación: Habana, Cuba
Posts: 204
Reputación: 16
lmpadron Va por buen camino
Talking

Cita:
Empezado por jcrios_9 Ver Mensaje
Buenas compañeros, tengo el siguiente codigo

Código Delphi [-]

 Table1->Edit();
            Table2->Edit();
            Table1->FieldByName("Dni")->Value = Edit1->Text;
            (...)
            Table1->FieldByName("Email")->Value = Edit6->Text ;
            Table1->Post();
            Table2->Post();

pero resulta que me sale el error: Error couldn't perform the edit because another user change the record.
El error sale justo antes de Table2->Post(); Es decir, el post de la tabla1 lo hace bien, pero el de la tabla 2 no.

Con una tabla simpre me sale bien, pero al meterle dos tablas sale dicho error. Alguien puede decirme a que se debe?'

Muchas gracias y un saludo.
Saludos

Algunas veces cuando insertas los datos manualmente debes avisarle al DataSet que vas a hacerlo, para eso se provee la función UpdateRecord():

UpdateRecord es usada internamente por algunos métodos del dataset para informar a los controles de datos(componentes DATA CONTROL) de cambios realizados y lanzar un evento OnUpdateRecord para atrapar las modificaciones. Las aplicaciones no necesitan llamar a UpdateRecord directamente a menos que se salten los métodos establecidos por el DataSet.
En tu caso estas saltándote esos métodos ya que estas asignando los valores manualmente. Ej: Error couldn't perform the edit because another user change the record. Tu codigo debería quedar así mas menos:

Código:
 Table1->Edit();
            Table2->Edit();
            Table1->FieldByName("Dni")->Value = Edit1->Text;
            (...)
            Table1->Post();
            Table2->UpdateRecord();
            Table2->Post();
o al menos eso creo !!! hehehe prueba y me dices que tal te salio !!!


P.D. Si usas C++ usa la etiqueta CODE y no la de Delphi ok !!!
__________________
Nunca esta de más volver a ver la "Guia de Estilo" o "La Otra Guia de Estilo". Recuerda siempre usar los "Tags" para una mejor legibilidad de tu código.


Cuando miras fijamente al abismo, este te devuelve la mirada


oo______ooo_____ooo_ooooooo_____ooo____oooooo____ooooooo______oooo____ooo____oo_
oo______oooo___oooo_oo____oo__oo___oo__oo____oo__oo____oo___oo____oo__oooo___oo_
oo______oo_oo_oo_oo_oo____oo_oo_____oo_oo_____oo_oo____oo__oo______oo_oo_oo__oo_
oo______oo__ooo__oo_oooooo___ooooooooo_oo_____oo_ooooooo___oo______oo_oo__oo_oo_
oo______oo_______oo_oo_______oo_____oo_oo____oo__oo____oo___oo____oo__oo___oooo_
ooooooo_oo_______oo_oo_______oo_____oo_oooooo____oo_____oo____oooo____oo____ooo_
________________________________________________________________________________

Última edición por lmpadron fecha: 26-09-2012 a las 17:22:44.
Responder Con Cita