Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-10-2004
SaLvaGe SaLvaGe is offline
Miembro
 
Registrado: sep 2004
Posts: 17
Poder: 0
SaLvaGe Va por buen camino
Meter el resultado de un quey en una variable.

Buenos Dias haber si podeis decirme si hay forma de que el resultado de una consulta Query almacenarlo en alguna variable un edit lo que sea de forma que despues yo pueda conparar ese resultado con otro para poder hacer ciertas acciones dependiendo del usuario.
Es una duda que me lleva quitando el sueño ya varios dias

Muchas Gracias.
Responder Con Cita
  #2  
Antiguo 01-10-2004
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Código:
query1.Open;
Valor:= query1.fieldByName('ElCampoQueTeInterese').asString;
query1.Close;

if Valor = OtraVariable then  HazLoQueSea;
__________________
Saludos,
Peter Investment
Responder Con Cita
  #3  
Antiguo 01-10-2004
SaLvaGe SaLvaGe is offline
Miembro
 
Registrado: sep 2004
Posts: 17
Poder: 0
SaLvaGe Va por buen camino
este es mi codigo

//Cerramos y desactivamos la consulta.
Query_control_usuario.Active:=false;
Query_control_usuario.Close;

//Pasamos los parametros a la consulta.
Query_control_usuario.ParamByName('nu').AsString := Form2.Edit1.Text;

//Activamos y Abrimos la consulta.
Query_control_usuario.Active:=true;
Query_control_usuario.Open;

//Guardamos el resultado de la consulta en una variable ya declarada arriba.
resultado := query_control_usuario.FieldByName('TipoUsuario').AsString;

//Dependiendo del resultado que nos devuelva la consulta se haran distintas cosas.
If resultado='Administrador' then
gbadmin.Visible:=true
else
gbadmin.Visible:=false;
end;

Este es mi codigo y lo e echo como me as dicho pero no me lo esta haciendo no se si es porque no me esta devolviendo el valor de esa variable no lo se .
Haber si me puedes echar una manilla.

Muchas gracias
Responder Con Cita
  #4  
Antiguo 01-10-2004
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Código:
//Cerramos y desactivamos la consulta.
Query_control_usuario.Active:=false;
Query_control_usuario.Close;
//Pasamos los parametros a la consulta.
Query_control_usuario.ParamByName('nu').AsString := Form2.Edit1.Text;
//Activamos y Abrimos la consulta.
Query_control_usuario.Active:=true;
Query_control_usuario.Open;
//Guardamos el resultado de la consulta en una variable ya declarada arriba.
resultado := query_control_usuario.FieldByName('TipoUsuario').AsString;
//Dependiendo del resultado que nos devuelva la consulta se haran distintas cosas.
If resultado='Administrador' then
  gbadmin.Visible:=true
else
  gbadmin.Visible:=false;
end;
Para controlar si te devuelve algun valor tu query deberias hacer lo siguiente antes del if:
Código:
 
  if Query_control_usuario.EOF then
    ShowMessage('La consulta no ha devuelto nada')
  else
    ShowMessage('La consulta ha devuelto: ' + resultado  )
__________________
Saludos,
Peter Investment
Responder Con Cita
  #5  
Antiguo 01-10-2004
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Por cierto, no se pq pones la query como active = true y luego la haces un open. Una de las dos cosas te sobra:

Código:
  //Cerramos y desactivamos la consulta.
  Query_control_usuario.Close;

  //Pasamos los parametros a la consulta.
  Query_control_usuario.ParamByName('nu').AsString := Form2.Edit1.Text;

  //Activamos y Abrimos la consulta.
  Query_control_usuario.Open;

  //Guardamos el resultado de la consulta en una variable ya declarada arriba.
  resultado := query_control_usuario.FieldByName('TipoUsuario').AsString;

  if Query_control_usuario.EOF then
    ShowMessage('La consulta no ha devuelto nada')
  else
    ShowMessage('La consulta ha devuelto: ' + resultado  )  ;

  //Dependiendo del resultado que nos devuelva la consulta se haran distintas cosas.
  If resultado='Administrador' then
    gbadmin.Visible:=true
  else
    gbadmin.Visible:=false;
  end;
__________________
Saludos,
Peter Investment
Responder Con Cita
  #6  
Antiguo 01-10-2004
Avatar de Investment
Investment Investment is offline
Miembro
 
Registrado: may 2003
Posts: 378
Poder: 21
Investment Va por buen camino
Tambien puede ser un problema de mayusculas y minusculas... o de espacios. Puedes asegurla con lo siguiente:

Código:
  If Trim(Uppercase(resultado))='ADMINISTRADOR' then
    gbadmin.Visible:=true
  else
    gbadmin.Visible:=false;
  end;
__________________
Saludos,
Peter Investment
Responder Con Cita
  #7  
Antiguo 01-10-2004
Avatar de raffagia
raffagia raffagia is offline
Miembro
 
Registrado: sep 2004
Posts: 31
Poder: 0
raffagia Va por buen camino
con un dbedit???

Hola,
yo tengo el mismo drama,,,,
lo ke hago es, poner un DBEDIT no visible, y poner el datasource del dbedit enganchado con el source de la query,, o sea ke levante en ele dbedit lo ke devuelve la quuery,,,
despues con un DBEDIT.TEXT recupero el contenido,,,
es algo chancho, pero anda,,,

espero ke sirva,,,
saludos

RAffa
Responder Con Cita
  #8  
Antiguo 04-10-2004
SaLvaGe SaLvaGe is offline
Miembro
 
Registrado: sep 2004
Posts: 17
Poder: 0
SaLvaGe Va por buen camino
Muchas Gracias investiment ya todo va a las mil maravillas.

Muchas gracias.
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


La franja horaria es GMT +2. Ahora son las 05:03:35.


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