Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2009
manueltp manueltp is offline
Miembro
 
Registrado: mar 2008
Posts: 29
Poder: 0
manueltp Va por buen camino
Angry error xsqlda index out of range en ventana login ayuda !!!!!!

hola que tal amigos aki de nuevo ....
con una duda mas .....
me sale el error de "xsqlda index out of range".....

les paso el codigo para que me chequen de favor haber que hago mal::

Código Delphi [-]
procedure TFLogin.BtnAceptarClick(Sender: TObject);
begin
   LoginOK := False;
   QryEntrar.Params.ParamByName('nom').AsString:= EUsuario.Text;
   QryEntrar.Active:= True;
   EUsuario.Text:= QryEntrar.Fields[0].AsString;
   If QryEntrar.RecordCount < 1 then
      Begin
         Cuenta := Cuenta + 1;
         MessageDlg('Usuario no encontrado',mtError, [mbOK], 0);
         EUsuario.Text := '';
         EClave.Text := '';
         QryEntrar.Active := False;
         If Cuenta = 3 then Close;
      end
   else
        If QryEntrarCLAVEU.AsString = EClave.Text then
           Begin
              LoginOk := True;
              Usuario := QryEntrarNOMBREU.AsString;
              QryEntrar.Active := False;
              Close;
           end
        else
            Begin
               Cuenta := Cuenta + 1;
               MessageDlg('Clave Inválida',mtError, [mbOK], 0);
               EClave.Text := '';
               QryEntrar.Active := False;
               If Cuenta = 3 then Close;
            end
end;

tengo un TIBQuery con un parametro..

se los agradeceria demasiado ... me interesa demasiado para el sistema que estoy realizando...
Responder Con Cita
  #2  
Antiguo 14-01-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Sería bueno que indicaras en qué linea te da el error. Así lo único que se me ocurre es que al activar el query:

Código Delphi [-]
QryEntrar.Active:= True;
EUsuario.Text:= QryEntrar.Fields[0].AsString;

quizá no estés obteniendo ningún registro, por lo que Fields estará vacío. Checa la propiedad QryEntrar.IsEmpty o QryEntrar.RecordCount para asegurarte que la consulta te está devolviendo registros.

// Saludos
Responder Con Cita
  #3  
Antiguo 14-01-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola manueltp, cual es la consulta que tienes en QryEntrar como te dice el amigo Roman sería bueno que nos indicaras la línea donde te da el error, ahora si el query no devuelve resultados y se hace esto QryEntrar.Fields[0].AsString; debería devolverte vacío, pero es bueno que controles con IsEmpty como te ha indicado Roman.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #4  
Antiguo 14-01-2009
manueltp manueltp is offline
Miembro
 
Registrado: mar 2008
Posts: 29
Poder: 0
manueltp Va por buen camino
gracias por sus respuestas...

en el query hagoo una consulta a todos los registros....
que en mi caso solo tengo un registro

EL SQL es :
select * from USUS

y con esto: If QryEntrar.RecordCount < 1 then

no obtengo nada de registros??
y que al hacer esto: QryEntrar.Active:= True;
no se activa la consulñta y obtengo el dato???
Responder Con Cita
  #5  
Antiguo 14-01-2009
manueltp manueltp is offline
Miembro
 
Registrado: mar 2008
Posts: 29
Poder: 0
manueltp Va por buen camino
otra cosa que se me paso...
el parametro nom debe ser de entrada verdad y el valor por defecto como iria???
Responder Con Cita
  #6  
Antiguo 15-01-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Y el parámetro? Porque la consulta que pones no lleva ninguno.

// Saludos
Responder Con Cita
  #7  
Antiguo 15-01-2009
manueltp manueltp is offline
Miembro
 
Registrado: mar 2008
Posts: 29
Poder: 0
manueltp Va por buen camino
muchisimas gracias roman por recordarme eso , no lo tomaba en cuenta...problema resuelto ,, no tenia el parametro en la consulta..
cosas de novatos verdad..

y ahora no puedo hacer que se muestre la ventana principal del programa....
y es con el mismo codigo que les mostre arriba.....

en los forms: pongo primero el data module, luego la ventana principal y enseguida la ventana de login.....para la ejecucion.
pero al logearme se cierra la ventana de login y no entro a la ventana principal..... en la ventana principal tengo este codigo:

Código Delphi [-]
procedure TFMenuprincipal.FormCreate(Sender: TObject);
begin
  FLogin:=TFLogin.Create(self);
   try
     FLogin.ShowModal;
   finally
     FLogin.Free;
   end;
end;

o en que parte del codigo de la ventana de login ....
creo la ventana principal y con cual codigo seria::
se los agradeceria demasido
Responder Con Cita
  #8  
Antiguo 16-01-2009
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Cita:
Empezado por manueltp Ver Mensaje
y ahora no puedo hacer que se muestre la ventana principal del programa....
y es con el mismo codigo que les mostre arriba.....

en los forms: pongo primero el data module, luego la ventana principal y enseguida la ventana de login.....para la ejecucion.
pero al logearme se cierra la ventana de login y no entro a la ventana principal..... en la ventana principal tengo este codigo:


Código Delphi [-]
procedure TFMenuprincipal.FormCreate(Sender: TObject);
begin
  FLogin:=TFLogin.Create(self);
   try
     FLogin.ShowModal;
   finally
     FLogin.Free;
   end;
end;




o en que parte del codigo de la ventana de login ....
creo la ventana principal y con cual codigo seria::
se los agradeceria demasido
Hola de nuevo, tu "main form" tiene que ser tu FMenuprincipal y tal como lo estas haciendo en el Oncreate crear FLogin una vez que cierres tu FLogin debería terminar de cargarse tu form principal.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
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
Problema con cliente servidor, error "xsqlda index out of range" Buelos Varios 0 18-07-2008 05:49:57
Ayuda [ERROR]XSQLDA index out of range ??? ManuelPerez Varios 1 14-03-2008 17:31:22
Grid index out of range jmlifi Varios 29 19-10-2007 17:50:01
XSQLDA Index out of range RESP 3.0 Firebird e Interbase 5 15-12-2006 15:14:34
Ayuda Con Ventana Para Login!!! jugomez MS SQL Server 5 23-10-2006 17:22:29


La franja horaria es GMT +2. Ahora son las 15:37:39.


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