Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 17
Elite237 Va por buen camino
Red face Error al guardar datos

Hola, quisiera saber si a alguien al igual que a mi le ha pasado que cuando queire guardar un dato en la bd le sale el siguiente error:
Código Delphi [-]
invalid variant type conversion

mi codigo es el siguiente:
Código Delphi [-]
procedure TForm11.btnAgregarClick(Sender: TObject);
var
i:string;
begin
if form11.table1.locate('preg_clave',edclave.text,[])then
             begin
              edclave.clear;
              showmessage('La clave ya existe')
             end
              else
                begin
                    i:=copy(cmbEvaluacion.text,0,pos('-',cmbEvaluacion.text)-1);
                    i:=copy(cmbSeccion.text,0,pos('-',cmbSeccion.text)-1);
                    form11.table1.insert;
                    form11.table1.fieldvalues['preg_evaluacion']:=i;
                    form11.table1.fieldvalues['preg_secc']:=i;
                    form11.table1.fieldvalues['preg_clave']:=EdClave.text;
                    form11.table1.fieldvalue['preg_descripcion']:=EdPregunta.text;
                    form11.table1.post;
                    cmbEvaluacion.clear;
                    cmbSeccion.clear;
                    edClave.clear;
                    edPregunta.clear;
                    showmessage('Los datos se guardaron con exito!');
                 end;
end;

lo que hago es guardar solamente la clave de una evaluacion, de una seccion y de una clave. Tengo 2 combobox, 2 edit y un boton. Utilizo un database,table y query. Gracias
Responder Con Cita
  #2  
Antiguo 07-10-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por Elite237 Ver Mensaje
Hola, quisiera saber si a alguien al igual que a mi le ha pasado que cuando queire guardar un dato en la bd le sale el siguiente error:
Código Delphi [-]invalid variant type conversion


lo que hago es guardar solamente la clave de una evaluacion, de una seccion y de una clave. Tengo 2 combobox, 2 edit y un boton. Utilizo un database,table y query. Gracias
Como decia en el otro post, evita los fieldvalues usando AsInteger, asString o lo que sea, y te ahorraras muchos problemas.

Saludos
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita
  #3  
Antiguo 07-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 17
Elite237 Va por buen camino
Te refieres a usarlo asi?:
Código Delphi [-]
cmbEvaluacion.text:=form12.table1.AsInteger['preg_evaluacion'];

o como no entiendo, de hecho no me da esa opcion despues del punto
Responder Con Cita
  #4  
Antiguo 07-10-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por Elite237 Ver Mensaje
Te refieres a usarlo asi?:
No, asi

Código Delphi [-]
cmbEvaluacion.text:=form12.table1.FieldByName('preg_evaluacion').AsString;

Saludos
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita
  #5  
Antiguo 07-10-2008
Elite237 Elite237 is offline
Miembro
 
Registrado: jul 2007
Posts: 162
Poder: 17
Elite237 Va por buen camino
Lo hize como me dijiste pero me sigue saliendo el mismo error:
Código Delphi [-]
invalid variant type conversion

te muestro como lo deje:
Código Delphi [-]
procedure TForm11.btnAgregarClick(Sender: TObject);
var
i:string;
begin
if form11.table1.locate('preg_clave',edclave.text,[])then
             begin
              edclave.clear;
              showmessage('La clave ya existe')
             end
              else
                begin
                    i:=copy(cmbEvaluacion.text,0,pos('-',cmbEvaluacion.text)-1);
                    i:=copy(cmbSeccion.text,0,pos('-',cmbSeccion.text)-1);
                    table1.insert;
                    i:=form11.table1.FieldByName('preg_evaluacion').AsString;
                    i:=form11.Table1.fieldbyname('preg_secc').AsString;
                    EdClave.text:=form11.table1.fieldbyname('preg_clave').AsString;
                    EdPregunta.text:=form11.table1.fieldbynam('preg_descripcion').AsString;
                    form11.table1.post;
                    cmbEvaluacion.clear;
                    cmbSeccion.clear;
                    edClave.clear;
                    edPregunta.clear;
                    showmessage('Los datos se guardaron con exito!');
                 end;
end;
Responder Con Cita
  #6  
Antiguo 07-10-2008
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por Elite237 Ver Mensaje
Lo hize como me dijiste pero me sigue saliendo el mismo error:
Amigo es que debes colocar según el tipo de dato que sea,

que tipo de dato tiene los campos:

'preg_evaluacion', 'preg_secc',
'preg_clave',
'preg_descripcion'

debes hacer un paso a paso para ver en que linea da error la conversion.

Saludos.
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita
  #7  
Antiguo 07-10-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 24
maeyanes Va por buen camino
Hola...

¿Por que le asignas el valor del campo a las variables y los edits y no al revés?

Otra cosa, ¿todos los campos son de tipo string?

Y ya para finalizar, ¿exactamente en que línea se produce el error?


Saludos...
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
guardar datos en base de datos lis983 Varios 4 16-07-2008 07:47:49
error al guardar megaredoxk Varios 10 19-01-2008 00:53:28
Error al guardar datos Manuel Firebird e Interbase 1 05-09-2006 23:01:01
Guardar en 1 base de datos SQL, datos procedentes de 2 tablas distintas adaypr C++ Builder 1 05-09-2006 11:56:33
ERROR al guardar en base de datos emeceuy Conexión con bases de datos 1 23-06-2003 15:40:07


La franja horaria es GMT +2. Ahora son las 21:53:58.


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