Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   No Permite Editar una tabla (https://www.clubdelphi.com/foros/showthread.php?t=12353)

Capo 13-07-2004 23:51:29

No Permite Editar una tabla
 
Buen dia a Todos, Gracias de antemano.
Mi problema es el siguiente;
tengo un DataModule el cual contiene todos los Ttable y Tquery que utilizo, en cada uno de mis Form le indico Uses DM; para poder utilizar cualquier tabla y/o query de mi DataModule. hasta alli todo va bien, puedo insertar registros en mis tablas, pero cuando intento Editarlas no me permite seleccionar el procedure Edit de la tabla, es decir, intento hacer eso:
DM1.REPORTADOS.Edit y no muestra el procedure Edit solo editKey, pero si puedo hacer DM1.REPORTADOS.Insert y luego Post..todas las tablas del DM estan llenas y son Ttable.

....¿Quien podra ayudarme?

Gracias de atemano por la atencion
Capo.

Pablo Carlos 14-07-2004 00:17:22

Que tablas usas?.... y con que componente o de que manera la pones en estado insert...

Capo 14-07-2004 00:41:10

Utilizo Access y componentes TTable y DataSource...,Como digo el me permite Insert y Post, pero cuando envez de Insert necesito hacer un edit no me permite seleccionar Edit. El error al utilizar Edit dice +- "no esta el dataSet en modo edicion o insercion".


Que quiero hacer: Tengo un Form que generar reportes en Qreport, Tiene un DBGRID cuyo DataSource es un TQuery, al visualizar el Reporte quiero que se registre en una tabla "REPORTADOS" la fecha y hora de la generacion del reporte, dicha tabla tabla tiene registros, solo debo buscarlos, editarlo, agregar fecha y hora y grabarlos, pero no puedo hacerlo por que no me permite seleccionar el procedure Edit en dicha tabla "REPORTADOS".

Código Delphi [-]
  
procedure TRPT_D.BitBtn2Click(Sender: TObject);
var I:integer;
begin
DM1.QP_S.First;
for I := 1 to DM1.QP_S.RecordCount do
   begin
   DM1.REPORTADOS.Edit;
   DM1.REPORTADOS.Locate('OS_NUMBER',DM1.QP_S.FieldByName('OS_NUMBER').Value,[loCaseInsensitive]);
   DM1.REPORTADOS.FieldByName('RSAD').Value := True;
   DM1.REPORTADOS.FieldByName('F_RSAD').Value := datetostr(Date);
   DM1.REPORTADOS.Post;
   DM1.QP_S.Next;
   end;
end;

Pablo Carlos 14-07-2004 01:04:43

y si pruebas poner en estado Edit despues que sea true
Saludos

Capo 14-07-2004 01:13:07

La autocompletacion de Delphi despues del un "." ejecuta un desplegable que te permite escoger las propiedades, funciones etc que un Objeto, bueno alli es donde no me permite ni me muestra "Edit" el que vez en el codigo que te envie es forzado por eso me generar el error "EL DATASET NO ESTA EN MODO EDICION NI INSERCION"

jachguate 14-07-2004 01:17:53

Al llamar al método locate, se cancela automáticamente la edición, puesto que se cambiará de registro.

Llamá al método Edit despues del Locate.

Hasta luego.

;)

Capo 14-07-2004 01:25:28

A Pablo carlos y Juan Antonio, GRACIAS POR TODAS LAS AYUDAS, LE CUENTO QUE DESPUES DE TANTOS INTENTOS, NOTE QUE LA CONEXION CON EL SERVIDOR EN DONDE TENGO EL DATABASES SE PERDIA, NO ME QUEDO DE OTRA QUE REINICIAR, AL REINICIAR INTENTE Y YA ME MUESTRA EL PROCEDURE EDIT Y LOGRO EDITARLA Y POSTEARLA SIN ERRORES,¿? GRACIAS AMIGOS...CAPO.


La franja horaria es GMT +2. Ahora son las 02:41:08.

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