Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 06-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
duda con el uso de los TDBEdit

tngo un form para mostrar articulos y los muestro mediante dbedit, el problema surge que si modifico cualkier dbedit ese cambio se produce inmediatamente en la la tabla de la base de datos tambien. me gustaría saber si hay alguna forma de poder hacer que no se modifiquen en la base de datos hasta que yo no pulse un boton de confirmacion.

Gracias!!!
Responder Con Cita
  #2  
Antiguo 06-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues si tienes varias posibilidades una sería poner los DbEdiit sobre un panel y este ponerle su propiedad enabled = False, otra poner la propiedad Autoedit del Dataset a False y otra utilizar la propiedad ReadOnly de estos controles....


Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 06-07-2005
Avatar de dmagui
dmagui dmagui is offline
Miembro
 
Registrado: may 2005
Posts: 168
Poder: 20
dmagui Va por buen camino
Coloca la propiedad default action del Ibtransaction en rollback, y coloca un boton y cuando estes seguro de hacer el cambio sobre la base coloca el siguiente codigo:

IBDataSet1.ApplyUpdates;
IBTransaction.commit;


puedes hacerlo mas o menos asi ojala te sirva de algo, besos chupos y abrazos
__________________
El espiritu humano no se acaba cuando es derrotado se termina cuando se rinde.
Responder Con Cita
  #4  
Antiguo 07-07-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 20
el_barto Va por buen camino
Pues no se puedo equivocarme pero acaso colocar el transaction en rollback obligaria a tener un boton u otro componente para siempre hacer el commit??
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #5  
Antiguo 07-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
si lo hago mediante lo del transaction en rollback en el caso de que no kiera realizar los cambios aplicados tendría que realizar algo o se encargaría de realizarlo todo delphi??
gracias!
Responder Con Cita
  #6  
Antiguo 07-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
perdonad pero donde se modifica el transaction??es k no lo encuentro!!!
Responder Con Cita
  #7  
Antiguo 07-07-2005
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.549
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por dmagui
...Coloca la propiedad default action del Ibtransaction en rollback,...
¿...pero en qué momento se ha dicho que trabaja con IB????? (me lo he perdido)
Porque si no es así, el pobre va a estar un buen rato buscando el dichoso IBTransaction... Y ya no te digo nada para encontrar la propiedad...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #8  
Antiguo 07-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
estoy trabajando con Ttables, como lo realizo con este tipo de tablas??
Responder Con Cita
  #9  
Antiguo 07-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Con lo que he dicho puede ser más que suficiente, lo que no entiendo es si quieres habilitar en un momento dado los campos por medio de un botón

Código Delphi [-]
MiPanel.Enabled:=True;

O quieres que se pueda escribir pero si pulsas el botón aceptar que se guarden los cambios.
Código Delphi [-]
MiTabla.Post;
o si pulsas cancelar que no se lleven a cabo éstos.
Código Delphi [-]
MiTabla.Cancel;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #10  
Antiguo 07-07-2005
Avatar de el_barto
el_barto el_barto is offline
Miembro
 
Registrado: may 2005
Ubicación: Bogota Colombia
Posts: 533
Poder: 20
el_barto Va por buen camino
Espera antes que nada y despues de todo, usas los componentes IB para hacer la conexion a la base de datos???, o como la haces??, usas un DataBase o un IBTransaction o como lo haces esplicanos
__________________
Una forma de alcanzar tus metas es ayudando a otros a alcanzar las suyas
Responder Con Cita
  #11  
Antiguo 07-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
uso componentes del tipo BDE, uso un componente DBTable para enlazarla. espero me podais ayudar!!
muchas gracias!!
Responder Con Cita
  #12  
Antiguo 07-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
marcos, creo no me has entendido. mi idea es que los cambios que realizo al modificar los tdbedit solo se lleven a cabo en caso de pulsar algún boton de confirmacion, lo cual tu me dices que lo haga mediante el post, pero es k cuando modifico algun dbedit automaticamente es como si el programa hiciera el post aunqeu yo no kiera, es decir, que estas modificaciones las realiza directamente en la tabla tambien. Gracias, espero haberme explicado bien ahora!
Responder Con Cita
  #13  
Antiguo 07-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Pues aunque veas los cambios, solamente se realizarán si haces un "Post", por lo tanto por eso te indico que si tienes 2 botones por ejemplo Aceptar y Cancelar y colocas MiTabla.Post y MiTabla.Cancel, con el primero guardarías los cambios y con el contrario los cancelarías.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #14  
Antiguo 07-07-2005
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por ercrizeporta
es decir, que estas modificaciones las realiza directamente en la tabla tambien.
Toma en cuenta que un post se hace automáticamente cuando realizas una operación que fuerce al dataset a moverse de registro. ¿No tendrás algún evento que cause algo así?

// Saludos
Responder Con Cita
  #15  
Antiguo 09-07-2005
ercrizeporta ercrizeporta is offline
Miembro
 
Registrado: jun 2005
Posts: 131
Poder: 20
ercrizeporta Va por buen camino
creo que el unico evento posible que tngo que haga algo así es el poder mostrar otro registro. segun ustedes entonces si lo modifico y acto seguido cierro la tabla, entonces esos cambios no se realizan, es así?'
saludos
Responder Con Cita
  #16  
Antiguo 09-07-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si modificas pero le aplicas Cancel en vez de Post no se harán los cambios.

Lo que te dice Román, es que por ejemplo si estás en una rejilla y haces un cambio y luego cambias de fila, esto implica un Post y por lo tanto los cambios se confirmarán.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
Respuesta



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 01:24:50.


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