Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus-es / 2009-07

BD no guarda cambios

2 messages · 2 people ·

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Yuri Pacoricona Palomino

Hola amigos, espero puedan ayudarme en este lio que aun no logro resolverlo con mi base de datos.
Tengo algunos registros que no puedo actualizar, al guardar el registro en la BD, no reporta error, aparentemente esta bien, visualizo todo, tambien los reportes que imprimo, pero al reingresar a la aplicacion obtengo los datos anteriores, es decir simplemente no guarda algunos registros.
Inicialmente estuve trabajando con sqlite, luego migre la data a postgresql, pero el resultado es el mismo. Antes anduvo todo bien, incluso el ingreso de datos los realize con la aplicacion. No tengo idea de que pueda estar pasando, he trabajado con zeos 6.6.3, 6.6.5, 7.0, y lazarus 0.9.27 svn 20817, 0.9.27 svn 20665, , Ubuntu 8.10, pero el problema persiste. Hice lo propio en windows xp, y el resultado es el mismo.

Aqui parte del codigo

var nTotPtd:real;
begin
    nTotPtd :=
0.00;
fDB.tdPtd.first;
    while not fDB.tdPtd.eof do
begin
fDB.tdPtd.edit;
       fDB.tdPtdxPreUni.asCurrency :=
redondear(Fdb.tDPtdxPreUniItm.AsCurrency,3);
       fDB.tdPtdxImpItm.asCurrency :=
redondear(Fdb.tdPtdxPreUni.AsCurrency * Fdb.tdPtdxCanItm.AsCurrency,3);
       nTotPtd := nTotPtd +
fDB.tdPtdxImpItm.asCurrency;
       try
fDB.tdPtd.post;
except
fDB.tdPtd.CancelUpdates;
      end;
fDB.tdPtd.next;
end;
fDB.qmPtd.Edit;
    fDB.qmPtdxCtoDir.asCurrency :=
redondear(nTotPtd,3);
    fDB.qmPtdxGtoGrl.asCurrency :=
redondear(nTotPtd*0.1,3);
    fDB.qmPtdxCtoOpr.asCurrency := redondear(nTotPtd
+fDB.qmPtdxGtoGrl.asCurrency,3);
    fDB.qmPtdxBasImp.asCurrency :=
redondear(fDB.qmPtdxCtoOpr.asCurrency,2 );
    fDB.qmPtdxIGV.asCurrency    :=
redondear(fDB.qmPtdxBasImp.asCurrency*0.19,2);
    fDB.qmPtdxImpTot.asCurrency := redondear(fDB.qmPtdxBasImp.asCurrency
+ fDB.qmPtdxIGV.asCurrency,2);
try
fDB.qmPtd.post;
//        ShowMessage('Guardado
');
except
fDB.qmptd.CancelUpdates;
        ShowMessage('Error
');
end;
end;

Les agradezco alguna luz a mi problema.

Saludos

Yuri Pacoricona Palomino
Puno-Peru
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20090719/a0924149/attachment.html>

Reply by email

Alejandro D. Burne
to Yuri Pacoricona Palomino

Esto suena a que inicias una transacci�n al principio de tu aplicaci�n (con un begin impl�cito o no) y luegos nunca la terminas (con un commit), por ello mientras esta conexi�n est� activa vas a ver los cambios reflejados, cuando te desconectas se hace un rollback impl�cito.
Para sacarte la duda abre una segunda instancia de tu aplicaci�n, haz alguna modificaci�n sobre algun dato en la primera y ve si se reflejan en la segunda, si esto no sucede seguramente es esto que te estoy comentando.

Saludos, Alejandro

2009/7/19 Yuri Pacoricona Palomino <recursosgerenciales en infopuno.com>:

Show quoted text 88 lines
Hola amigos, espero puedan ayudarme en este lio que aun no logro resolverlo con mi base de datos. Tengo algunos registros que no puedo actualizar, al guardar el registro en la BD, no reporta error, aparentemente esta bien, visualizo todo, tambien los reportes que imprimo, pero al reingresar a la aplicacion obtengo los datos anteriores, es decir simplemente no guarda algunos registros. Inicialmente estuve trabajando con sqlite, luego migre la data a postgresql, pero el resultado es el mismo. Antes anduvo todo bien, incluso el ingreso de datos los realize con la aplicacion. No tengo idea de que pueda estar pasando, he trabajado con zeos 6.6.3, 6.6.5, 7.0, y lazarus 0.9.27 svn 20817, 0.9.27 svn 20665, , Ubuntu 8.10, pero el problema persiste. Hice lo propio en windows xp, y el resultado es el mismo. Aqui parte del codigo var nTotPtd:real; begin ��� nTotPtd := 0.00; fDB.tdPtd.first; ��� while not fDB.tdPtd.eof do begin fDB.tdPtd.edit; ������ fDB.tdPtdxPreUni.asCurrency := redondear(Fdb.tDPtdxPreUniItm.AsCurrency,3); ������ fDB.tdPtdxImpItm.asCurrency := redondear(Fdb.tdPtdxPreUni.AsCurrency * Fdb.tdPtdxCanItm.AsCurrency,3); ������ nTotPtd := nTotPtd + fDB.tdPtdxImpItm.asCurrency; ������ try fDB.tdPtd.post; except fDB.tdPtd.CancelUpdates; ����� end; fDB.tdPtd.next; end; fDB.qmPtd.Edit; ��� fDB.qmPtdxCtoDir.asCurrency := redondear(nTotPtd,3); ��� fDB.qmPtdxGtoGrl.asCurrency := redondear(nTotPtd*0.1,3); ��� fDB.qmPtdxCtoOpr.asCurrency := redondear(nTotPtd+fDB.qmPtdxGtoGrl.asCurrency,3); ��� fDB.qmPtdxBasImp.asCurrency := redondear(fDB.qmPtdxCtoOpr.asCurrency,2 ); ��� fDB.qmPtdxIGV.asCurrency��� := redondear(fDB.qmPtdxBasImp.asCurrency*0.19,2); ��� fDB.qmPtdxImpTot.asCurrency := redondear(fDB.qmPtdxBasImp.asCurrency + fDB.qmPtdxIGV.asCurrency,2); try fDB.qmPtd.post; //������� ShowMessage('Guardado '); except fDB.qmptd.CancelUpdates; ������� ShowMessage('Error '); end; end; Les agradezco alguna luz a mi problema. Saludos Yuri Pacoricona Palomino Puno-Peru _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es

Reply by email