Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #5  
Antiguo 25-08-2003
ElSanto24 ElSanto24 is offline
Miembro
 
Registrado: ago 2003
Ubicación: Elche
Posts: 14
Poder: 0
ElSanto24 Va por buen camino
Lightbulb

valeeeeeeeeeeeeeeeeeeeeeeee tio!!!! jejejejejejeje ya lo he lograo!!!!!

lo comento para la gente que esté en la misma situación que yo....

Este trozo de mensaje va destinado a esos resignados programadores en delphi que ven como su tiempo de desarrollo se alaaaarga por "chorradas" (jejeje ahora puedo decirlo) como esta....no se si os ocurre, pero cuando estais dias intentando solucionar problemas aparentemente sencillos y nadie consigue ayudarte y tan solo te dan pistas pues....frustra un poco...y el subidon cuando despues de todo el tiempo estrujando las pocas neuronas que la pantalla te deja despues de horas delante....consigues "aparentemente" y a falta de que algún Master de delphi /interbase me corriga (dios mio!!! espero que no!!) en fin...no me alargo más... aquí está la respuesta a las actualizaciones....seguid atentamente estos pasos!!!!

si leeis el primer mensaje que posteé...ahí decia como tenia configuardo todos los componentes, si algo no entendeis, estaré gustoso en explicaros con detalle...lo mas importante es:

Tal como dice el gran kinobi (gracias tio!!!...haces que uno se sienta a gusto escribiendo aki!!!) se supone que si el nivel de aislamiento es Read-commited solo con cerrar y abrir el dataset deberia actualizarse.....pero, amigo mio, en mi opinion lo dejas un poco en el aire....aquí está el codigo que hará funcionar el refresco de información para un puesto concurrente (otro cliente).

Ya leí con anterioridad que la forma de actualizar la info era cerrando y abriendo el dataset...pero como y donde meter ese cierre y apertura???

se me ocurrió como prueba poner un botón de cierre de dataset y otro de apertura para ver como funcionaba en sus entrañas...y efectivamente....reproduciendo los pasos de......
inserta registro...
actualiza su info...
grabalo (post, el codigo está en el anterior mensaje)
vete al otro cliente
cierra el ibdataset
abre el ibdataset

Solo con eso....veia como se cerraba la tabla y al abrirla la info estaba actualizada....eureka??? nop...todavia no...pq cuando queria meterme en el ultimo registro (last) me daba un mensaje de error (este ultimo caso no se si será solo a mi o si quien reproduzca estos pasos le ocurrirá lo mismo...siempre dije que era...alguien muy especial :P )....en fin...

Este mensaje lo conseguí eliminar haciendo la siguiente secuencia lógica
cierra...
abre....
refresh....
con ello...yendo al ultimo registro ya no daba el mensaje de error....ahora si.....EUREKAAAAAAAAAAAAAAAAAAAAAAAA!!!!!!

El ultimo escollo era saber donde meter esa secuencia de instrucciones para que todo funcionara ok...entonces pensé:
"bueno, mientras estoy editando nop.....no tiene sentido....sin embargo....cuando inserto un registro nuevo, si que seria interesante ver la info que hay en la tabla antes de editar el registro actual....eso me lleva al......BEFOREINSERT...aquí está el código

procedure TFFPago.IBDataSet1BeforeInsert(DataSet: TDataSet);
begin
ibdataset1.Close;
ibdataset1.open;
ibdataset1.refresh;
end;

mientras escribo estas palabras se me ocurre que tambien debo hacer esa actualización tanto en el beforedelete como en el beforecancel...beforerefresh.....no sé....he de madurar más la idea....pero valorad esa posibilidad, de momento el tema de la actualización está solucionado.......jejejejeje



Espero que este texto os sirva tanto como me sirve a mi...si es así...habrá merecido la pena haberlo escrito

Un saludo a todos los del foro (a los que conozco (pocos...a decir verdad....1 ) y a los que no conozco

Bye!
__________________
El camino para llegar al conocimiento de las cosas pasa por el aprendizaje humilde de lo que nos rodea
Responder Con Cita
 



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


La franja horaria es GMT +2. Ahora son las 20:01:47.


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