Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-09-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Poder: 19
anghell77 Va por buen camino
Modificación de Datos mediante Consultas..


NOTA:
SOPAS!!!!!
Un Error, bien lo dice Román en la otra guía de estilo en el punto 1....
Pero este fue un error de Dedote....a pesar de no haberlo tecleado.... Presioné este Foro, previendo que fuera SQL, pero ya ven que a veces se nos van las cabras (nos despistamos).....Esta nota fue escrita luego de levantar el Post....Si algún moderador está pendiente, y desea moverlo, adelante...Gracias


Buen día, compañeros....
Trabajando en Delphi 7 y Paradox....

Como propone el buen amigo Lepe aquíhttp://clubdelphi.com/foros/showthread.php?t=31954
me enseñó a modificar en tiempo de ejecución los datos que arroja una consulta...

Pues bien, bajo ese precepto...agrego la duda, que nada tiene que ver con el código del hilo anterior: Realizo una consulta, me despliega los datos en un DBGrid, en evento OnDblClick de éste, me arroja un nuevo formulario con los datos seleccionados y todo bien. Bueno, pues éste Formulario es para Modificar los datos que hayan sido entrados erróneamente y que se desea corregir....

Código Modificar:

Código Delphi [-]
DataModule2.Selec_Cve.Close; 
DataModule2.Selec_Cve.RequestLive:=true;
DataModule2.Selec_Cve.Open;
//Esta es la consulta que me devuelve los datos seleccionados en el DBGrid

//Estos son los DBEdits correspondientes a la consulta, que se activan para poder modificarse
DBEdit1.ReadOnly:=false;          DBEdit2.ReadOnly:=false;
DBEdit3.ReadOnly:=false;          DBEdit4.ReadOnly:=false;
DBEdit5.ReadOnly:=false;          DBEdit6.ReadOnly:=false;
DBEdit7.ReadOnly:=false;          DBEdit8.ReadOnly:=false;
DBEdit9.ReadOnly:=false;          DBEdit10.ReadOnly:=false;
DBEdit11.ReadOnly:=false;         DBEdit12.ReadOnly:=false;
DBEdit13.ReadOnly:=false;         DBEdit14.ReadOnly:=false;
DBEdit15.ReadOnly:=false;         DBEdit16.ReadOnly:=false;

Bien, pues como éste formulario presenta a base de DBEdits los datos, he añadido (para facilidad del usuario) unos Combobox, para que batalle menos y de paso no escriba datos que no debe, como la selección de la ubicación del libro que está modificando. Y al evento on Change de éstos, he dispuesto que envíe lo que se ha seleccionado al campo correspondiente:

Ojalá lo haya podido explicar. Hasta aquí todo bien, el problema viene cuando, al momento de Actualizar.

Actualizar:

Código Delphi [-]
CveSelect:=DBEdit1.Text; //Variable que Almacena la Clave del Libro que se ha modificado
AutorSelect:=DBEdit3.Text; //Variable que Almacena el Autor del Libro Modificado
DataModule2.Selec_Cve.Refresh;
Info_Modif.Close; //Cierra el Formulario

//Aqui limpio el SQL de la primera consulta y muestra el primer formulario con los datos modificados

DataModule2.Cve_Tit_Aprox.Close;            DataModule2.Cve_Tit_Aprox.SQL.Clear;
DataModule2.Cve_Tit_Aprox.SQL.Add('select *from Inventario where Titulo=:entrada');
   DataModule2.Cve_Tit_Aprox.ParamByName('entrada').AsString:=CveSelect;
DataModule2.Cve_Tit_Aprox.Open;
DataModule2.HelpTableRecNo.Value:=DataModule2.Cve_Tit_Aprox.RecNo;
DataModule2.HelpTableRecordCount.Value:=DataModule2.Cve_Tit_Aprox.RecordCount;
   ShowMessage('Registro Actualizado');

//Actualiza la Consulta

Esa es la bronca, que en realidad no actualiza los campos si es que no se ha tecleado algo sobre los DBEdits...y suponiendo que se teclee pues bueno, eso funciona, pero si se entra directamente a los Combobox, sin tocar DBEdits, no actualiza nada.

Editando, los Combobox reemplazan DBEdits y la selección de algún Item de éstos se envía directamente al DBEdit correspondiente, y es de suponerse que debería de funcionar, pero como no se toca DBEdit alguno (vamos, suponiendo que la única parte "modificable" fuera donde se ubican los Combobox), al momento de cerrar el Formulario, y devolver el "Registro Actualizado" devuelve el correcto, mas no la actualización de éste.

Agradezco la ayuda..

{Saludos}
__________________
"...Ayer Bastaba un Sueño..."

Última edición por anghell77 fecha: 13-09-2006 a las 07:45:30.
Responder Con Cita
  #2  
Antiguo 18-09-2006
Avatar de xEsk
[xEsk] xEsk is offline
Miembro Premium
 
Registrado: feb 2006
Posts: 454
Poder: 19
xEsk Va por buen camino
No he usado nunca Paradox, pero diria q te falta hacer el "commit" o "post" tras actualizar los datos.

Y otra cosa, esq tambien podrias hacer el "update" via SQL.
Responder Con Cita
  #3  
Antiguo 18-09-2006
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
O usando el metodo ApplyUpdate del Query.


Saludos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 19-09-2006
Avatar de anghell77
anghell77 anghell77 is offline
Miembro
 
Registrado: may 2006
Posts: 194
Poder: 19
anghell77 Va por buen camino
Gracias, Compañeros!!!....Apenas hoy mismo que envian sus respuestas he vuelto de la zona serrana de Druango, México, ahí donde no hay luz (por ende ni comunicación alguna), y el cielo se ve como tan cerca y espléndido como éste hubiera nacido...

Me he decidido por hacer el Update Vía SQL y parámetros....muchas gracias compañeros....Me quedo con las opciones y también haré la prueba con el Commit, Post y ApplyUpdate que mencionaron...

Situación Resuelta...Gracias!!!

{Saludos}
__________________
"...Ayer Bastaba un Sueño..."
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
pasar datos mediante xml sobre http coletaun Varios 1 06-06-2006 21:10:40
Ordenar Datos en DBGrid mediante un Click anghell77 Varios 2 20-05-2006 17:59:27
¿Cómo conecto la base de datos mediante Interbase en una red local? nuri Firebird e Interbase 2 19-07-2005 17:50:38
Consultas a db en Access mediante el Tadoquery cancerbero Tablas planas 7 20-07-2004 22:52:23
Introduccion datos en IB mediante DBedit tomasgarcia Firebird e Interbase 2 09-07-2004 17:46:08


La franja horaria es GMT +2. Ahora son las 17:20:40.


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