Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   dsInsert a Ttable??????????????????????? (https://www.clubdelphi.com/foros/showthread.php?t=49496)

Milperrimo 23-10-2007 15:59:10

dsInsert a Ttable???????????????????????
 
Saludos compañeros, a una tabla le quiero asignar su .state := dsInsert, pero me manda un error de que no puedo mandarsela porque esta en readonly, pero cheke la tabla esa propiedad la tengo en false, entonces como le asigno su estado para poder hacer una rutina de insercion, ya que si la quiero hacer me dice que le falta que este en modo de insert pero si no es con su state a dsinsert, entonces como le hago?????????????
Lo que quiero hacer es, tengo una forma de registro/consulta manejada por un dbnavigator, en esta forma tengo campos de codigo, descripcion, precio, iva etc etc etc para un articulo, entonces lo que quiero hacer es poner un boton y al darle click que me permita poner un nuevo codigo pero que todos los demas registros esten iguales, y entonces mandarlo insertar a la base en firebird, todo igual pero solo con un diferente codigo que introduce el usuario. Todos los campos son dbedits y dbcombos y eso, entonces lo que yo intento hacer es
Código:

dbeditcodigo.text := newCodigo
table1.state := dsInsert;
dbnavigator.btnClick(nbPost);  //o algo asi, no tengo el codigo a la mano

y asi todos los campos quedan igual y solo cambio el campo de codigo y quiero mandar insertar, pero me manda error en el .state, y si no lo pongo, me manda un error de que a la tabla le falta la propiedad para insertar o editar. Alguna idea?????????????

jhonny 23-10-2007 16:09:01

Lo que te dice el error es que dicha propiedad es de solo lectura y no puedes asignarla, pero por otro lado tienes los metodos que hacen reaccionar dicha propiedad "automaticamente", te estoy hablando del metodo Insert, Edit o Append de la tabla.

Si lo que quieres es insertar un nuevo registro podras hacer, algo como:

Código Delphi [-]
Tabla1.Append;

o

Código Delphi [-]
Tabla1.Insert;

y despues de colocar los datos haces un:

Código Delphi [-]
Tabla.Post;

Y listo.

Lo curioso es que si estas usando un DBNavigator, pues ese componentes tiene unos botones asignados para ese efecto y no tendrias necesidad de escribir dicho llamado a esos metodos.

Espero que me haya hecho entender y que te sirva de algo ;).

Milperrimo 24-10-2007 03:52:28

Perfectirijillo, Thankyous:)


La franja horaria es GMT +2. Ahora son las 09:06:06.

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