Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Tablas planas (https://www.clubdelphi.com/foros/forumdisplay.php?f=20)
-   -   problemas avance locate (https://www.clubdelphi.com/foros/showthread.php?t=44853)

anubis 16-06-2007 03:40:06

problemas avance locate
 
Hola, nose donde esta el problema por mas vueltas que le doy
tengo una tabla en paradox:

tiene de campos:
numerohabitacion numerico clave principal
Codigot numerico (clave secundaria)
Tipodehabitacion cadena 25 longitud (clave secundaria)

los registros van ordenador por numerohabitacion asi que el codigot esta salteado.

el codigo que uso para visualizar todas las habitaciones segun un codigot es este:
Código Delphi [-]
mcamas.tcamas.Open;
 mcamas.tcamas.IndexFieldNames:='Codigot';
 mcamas.tcamas.First;
 cv:=itemindex;
 while mcamas.tcamas.locate('Codigot',cv,[]) do
 begin
 contador1:=mcamas.tcamas.fieldbyname('Numerohabitacion').AsInteger;
 dibujacell;
 mcamas.tcamas.Next;
 end;
al pasar por ahi, hace el while y lo ejecuta a pesar de hacer el next al siguiente registro pero nunca lo hace.

alguna idea ?

anubis 16-06-2007 05:27:17

Pues me contesto yo solo, quiza por el cansancio y demas....;)
Código Delphi [-]
 while mcamas.tcamas.locate('Codigot',cv,[]) do
si hago eso siempre se va a quedar ahi, mientras que si lo pongo antes
Código Delphi [-]
mcamas.tcamas.Open;
 mcamas.tcamas.IndexFieldNames:='Codigot';
 mcamas.tcamas.First;
 cv:=itemindex;
  mcamas.tcamas.locate('Codigot',cv,[]);
 while ((mcamas.tcamas.fieldbyname('Codigot').AsInteger)=cv) and (not mcamas.tcamas.Eof) do
 begin
 contador1:=mcamas.tcamas.fieldbyname('Numerohabitacion').AsInteger;
 mcamas.tcamas.Next;
 dibujacell;

 end;
 mcamas.tcamas.Close;

asi si funciona

gracias


La franja horaria es GMT +2. Ahora son las 21:37:09.

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