Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #4  
Antiguo 18-12-2006
runnerfrog runnerfrog is offline
Registrado
 
Registrado: dic 2006
Posts: 3
Poder: 0
runnerfrog Va por buen camino
Muchas gracias por la gran disposicion que has tenido, Lepe.
Igualmente estaré pasando muy mal los parámetros de una unit a otra, porque sigue buscando numeros de registro; en ambos casos con el archivo binario abierto, recibo un Stack Overflow cuando hago una búsqueda de números bajos, como los nº de registro ordinales del record. Si busco por DNI (números superiores a la cantidad de registros) "El Número de registro está fuera de rango"; si modifico el codigo para buscar nombres o apellidos "EConvert error (nombre ingresado) no es un integer valido". Sigue buscando numeros de registro.

( Project Project1.exe raised exception class EStackOverflow with message 'Stack overflow'. )

El codigo actual:

Código:
Código Delphi [-]
--- UNIT1:

procedure TForm1.BuscarSocio1Click(Sender: TObject);
                            var i:string; c:Socio; mensaje:string;
begin
 i:=Edit1.Text;
 z.BuscarSocio(i,c,mensaje);

 If mensaje='OK' then
      begin
       Edit2.Text:=c.Apellido;
       Edit3.Text:=c.Nombres;
       Edit1.Text:=IntToStr(c.DNI);
       Edit4.Text:=IntToStr(c.dn);
       Edit5.Text:=IntToStr(c.mn);
       Edit6.Text:=IntToStr(c.an);
      end
                  else
       ShowMessage(mensaje);
end;


--- UNIT2:

procedure TManejoSocios.BuscarSocio(p:string;var c:Socio; var m:string);
   var Largo:word; b:integer;
   begin
   {$I-} Largo:=FileSize(archi);{$I+};
    If (IOResult<>0)
      then
       begin
     m:='Problemas con el archivo. Está creado o abierto ?';
     exit // sale del procedure
       end
      else  if strtoint(p)>=Largo then
       begin
         m:='El Número de registro está fuera de rango.';
         exit; // sale del procedure
         end;

m := 'OK';
b:=0;
while m = 'OK' do
begin
 inc(b);
 BuscarSocio( inttostr(b), c,m);
 if m = 'OK' then
 if c.Nombres = p then
   break; // salimos del bucle porque lo hemos encontrado.
end;
end;
Saludos cordiales.
Responder Con Cita
 



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
como usar object pascal y gtk Lionheart OOP 6 09-12-2005 19:31:08
manual de excepciones de object pascal para free pascal??? Garion OOP 3 27-05-2005 00:42:29
error couldn't perform the edit because another user changed the record marcelofabiani Conexión con bases de datos 3 25-01-2005 01:55:11
¿Object Pascal para todo? ReigDidion OOP 10 12-02-2004 08:28:07
que significa RECORD,OBJECT OR CLASS REQUIRED cesarjbf Varios 2 07-07-2003 14:07:20


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


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi