Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   actualizar datos mediante un dbgrid (https://www.clubdelphi.com/foros/showthread.php?t=58577)

chass 24-07-2008 16:04:51

actualizar datos mediante un dbgrid
 
hola tengo una consulta.-
yo traigo los datos de mi bd en un data set y luego lo muestro en un dbgrid, lo que yo quiero hacer es modificar solo una columna del data grid y q esta se actualice cada vez que yo salgo del campo.. es decir si tengo tres columnas de la siguiente forma
|id |% |descrip|
|1 | 4 | cuota |
|2 | 5 | cuota |
|3 | 6 | cuota |

inicialmente la columna |%| esta en 0 y cada vez que yo lo modifique este se guarde tambien en la base de datos:confused:

lKinGl 24-07-2008 23:30:06

Salu2

esta seria una solución:
agrega 3 edit en tu formulario donde se mostraria los datos para actualizarlos

entra en eventos del dbgrid >>Oncellclick
y escribe este codigo:

Código Delphi [-]
edit1.text:=dbgrid1.fields[0].asstring;
edit2.text:=dbgrid1.fields[1].asstring;
edit3.text:=dbgrid1.fields[2].asstring;

luego

edit1>>eventos>>keypress

Código Delphi [-]
if key=13 then
   begin
      tutabla1.edit;
      tutabla1.fieldvalues['campo1']:=trim(edit1.text);
      tutabla1.post;
      application.messagebox('Actualizado con éxito','');
   end

lo mismo para los otros 2 edit

salu2 espero que te sirva

martinzcr 28-07-2008 23:01:59

Hola:

Si el DBGrid esta conectado a un DataSet lo que puedes hacer es editar directamente sobe el grid. Para esto debes marcar en las probirdades del DBGrid la opción "dgEditing=True" y "dgRowSelect=False".
Si no quieres que el usuario modifique los valores de las otras columnas lo que debes hacer es colocar el siguiente código en al evento "onShow" del Form.

Código Delphi [-]
GridDatos.Columns[0].ReadOnly := True;
GridDatos.Columns[2].ReadOnly := True;

Salu2!


La franja horaria es GMT +2. Ahora son las 20:45: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