Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Cual es la Mejor forma de Agregar,Modificar y Eliminar en ADO ? (https://www.clubdelphi.com/foros/showthread.php?t=51984)

LENOCB 06-01-2008 18:02:59

el formgrupos es en donde estan el edit1 (referncia al nombre), tengo el edit2 (referencia al codigo), y 2 botones, uno de aceptar y otro de canclar
lo raro es que cuando busco por el nombre del grupo lo hace barbaro y sin ningun problema, ahora cuando lo buca por el codigo del grupo salta ese error ;

Caral 06-01-2008 18:08:25

Hola
El campo del codigo de que tipo es?
Pareciera numerico, es asi?.
Saludos

LENOCB 06-01-2008 18:11:57

si en la tabla de acces esta el campo Nombre (Texto) y el campo Cod_G (Numerico)

Caral 06-01-2008 18:20:05

Hola
Veamos asi:
Código Delphi [-]
FormGrupos.ADOQuery1.SQL.Text:= 'Select Cod_G From TGrupos Where Cod_G = :Cod';
FormGrupos.ADOQuery1.Parameters[0].Value:= Edit2.Text;
FormGrupos.ADOQuery1.Active:=true;
o asi:
Código Delphi [-]
FormGrupos.ADOQuery1.SQL.Text:= 'Select Cod_G From TGrupos Where Cod_G = :Cod';
FormGrupos.ADOQuery1.Parameters[0].Value:=QuotedStr(Edit2.Text);
FormGrupos.ADOQuery1.Active:=true;
Saludos

LENOCB 06-01-2008 18:26:44

hola
el error sale cuando hago :
FormGrupos.ADOQuery1.Active:=True;

con respecto a las 2 soluciones es le mismo, en la 1º sale ese mismo error, en la segunda con el squared(edit2.text), sale un error que dice que la aplicacion no trabaja con ese formato o algo así !!!!

Caral 06-01-2008 18:30:18

Hola
Es muy grande el programa y la base de datos?
Si no lo son, ponlos en un adjunto y lo reviso.
Vas a avanzado, presionas gestionar archivos adjuntos, lo buscas y lo colocas.
Seria bueno colocarlos en un zip, ocuparan menos espacio.
Saludos

LENOCB 06-01-2008 18:36:51

Hola
no es tan grande, fijate que para entrar al sistema, hay que poner una clave, esa clave es (pepe) jeje !!!
no me deja subirlo pesa solo 400k !!! no tiene email ?

Caral 06-01-2008 18:38:46

Hola
Pon la base de datos en un zip y el programa en otro, si el programa es grande quitale el exe que es lo que mas pesa, yo lo trato de compilar aqui.
Saludos

LENOCB 06-01-2008 18:42:41

aca va la base de datos

LENOCB 06-01-2008 18:45:07

y ahora no me deja subir el programa !!! dice que me execedi el limite

Caral 06-01-2008 18:47:26

Partelo en varios pedazos
Si son varios form, pon unos en un zip y otros en otro, acuerdate de quitarle el exe asi pesara menos
Saludos

LENOCB 06-01-2008 18:59:51

falta una parte , porque dice que me pase por 4,5 kb jeje

Caral 06-01-2008 19:04:11

Hola
Ya tengo estos
Arriba hay en la franja azul ahy un titulo que dice USER CP
Presionalo, vas a entrar en tu perfil
Al lado izquierdo hay varias opciones, al final veras archivos adjuntos
presionala y eliminas los que hay, esto te dara el espacio que necesitas
Luego envia los que faltan
En la tarde lo reviso, voy a almorzar.
Saludos

LENOCB 06-01-2008 19:11:15

1 Archivos Adjunto(s)
Hola
Muchas Gracias por la ayuda !! de donde sos ?? yo soy de Argentina y aca son las 4:13 hs de la tarde, te lo pregunto porque que me quede sorprendido porque que te ivas a almorzar , jeje
bueno acá va la ultima tanda ....

LENOCB 06-01-2008 22:46:28

Hola
Gracias a dios lo puse lograr, el problema era en la bd, el campo al final era un autoincremental, borre la tabla y la hice de nuevo y lo setee como numerico y funciona al pelo .....

Caral 06-01-2008 23:05:36

Hola
El problema esta muy facil de solucionar, el campo no se llama como lo tienes, revisalo.
Código Delphi [-]
Var
 agregar:String;
 Co:Integer;
begin
 //Primero Buscar el Registro para ver si está .  Y verifica tambien el codigo
  FormGrupos.ADOQuery1.Active := False;
  FormGrupos.ADOQuery1.SQL.Text := 'Select Nombre From TGrupos WHERE Nombre = :Nombre';
  FormGrupos.ADOQuery1.Parameters.Parambyname('Nombre').Value:= Edit1.Text;
  FormGrupos.ADOQuery1.Active := True;
  If Edit1.Text = FormGrupos.ADOQuery1.Fields[0].Value then   begin
     MessageDlg('El Grupo :  '+Edit1.Text+' ya Existe ',mtError,[mbOK],0);
     Edit1.text:='';
     Edit1.SetFocus;
     end
  else begin
    //Ahora me fijo el Código si ya existe.
        FormGrupos.ADOQuery1.SQL.Clear;
        FormGrupos.ADOQuery1.Active := False;
        FormGrupos.ADOQuery1.SQL.Text:= 'Select Codigo_G  From TGrupos Where Codigo_G = :Cod';
        FormGrupos.ADOQuery1.Parameters.Parambyname('Cod').Value:= Edit2.Text;
        FormGrupos.ADOQuery1.Active:=true;
        If Edit2.Text = FormGrupos.ADOQuery1.Fields[0].Value Then begin
           MessageDlg('El Código: '+Edit2.Text+', ya existe', mtError,[mbOk],0);
           Edit2.Text:='';
           Edit2.SetFocus;
         end

         else   //Esta todo bien entonces agrego.
                begin
                        FormGrupos.ADOQuery1.Active := False;
                        FormGrupos.ADOQuery1.SQL.Text:= 'Insert Into TGrupos (Nombre, Codigo_G) Values (:Nombre, :Codigo)';
                        FormGrupos.ADOQuery1.Parameters.Parambyname('Nombre').Value:= Edit1.Text;
                        FormGrupos.ADOQuery1.Parameters.Parambyname('Codigo').Value:= StrToInt(Edit2.Text);
                        FormGrupos.ADOQuery1.ExecSQL;
                        Showmessage('El Grupo se inserto bien');

          end;
       end;
En algun momento le cambiaste el nombre.
Estoy viendo el programita, quieres algo mas?
Saludos

LENOCB 06-01-2008 23:36:01

Hola, sisi gracias, ahora estoy en la parte de modificacion del grupo ...
en un form tengo un dbcombobox, un edit para el nombre del grupo y otro para la contraseña, la cosa es así, hago una consulta que me llene el dbcombobox, para que puede elegir el nombre del grupo a modificar, cuando lo encuentra, en el evento onclick del dbcombobox, copio lo seleccionado en el edit que edita el nombre del campo, ahora bien, yo quiero que ahora, me aparezca en el otro edit (que el setea el codigo), el codigo correspondiente a ese nombre del grupo, me explico ?

Caral 06-01-2008 23:39:58

Hola
No se si sera una tarea, pero en casos de modificacion, edicion y borrado, el componente DBNavigator lo hace solo, sin codigo ni nada.
Por que usar algo mas?
Me lo explicas.
Saludos

LENOCB 06-01-2008 23:44:37

porque me gusta más los botones jeje, para mi queda un poco mejor a la vista:D,

Caral 06-01-2008 23:49:45

Hola
Bueno no entiendo bien.
Tienes un combobox, en este vas a poner el numbre del grupo (sacado de la tabla).
Tienes un edit (nombre nuevo)
otro edit (codigo nuevo).
Y luego lo cambias con un boton.
Es asi?
Saludos


La franja horaria es GMT +2. Ahora son las 05:41:42.

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