Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   filtrar DbLoockUpComboBox (https://www.clubdelphi.com/foros/showthread.php?t=70497)

eekkii 25-10-2010 00:44:28

filtrar DbLoockUpComboBox
 
Hola, les comento, estoy haciendo un reproductor de música en delphi 7 para la facultad, donde para comenzar a usar el programa cada usuario tiene que logearse con su usuario y contraseña y mi problema es el siguiente al momento de cargar las canciones:

Tengo 3 tablas con los siguientes campos:

Tabla users:
id
Nombre
-
-

Tabla Playlist:
id
Nombre
id_user

Tabla tracks:
id
-
-
id_pl

Ahora el problema esta, en que al cargar un nuevo track, quiero asignarle a que playlist iría, para esto uso un dbloockupcombobox, donde muestro el campo nombre de la tabla playlist, y le agrego el id de la tabla playlist, al id_pl de la tabla tracks. Hasta ahi me funciona perfecto, mi problema es que no se como filtrarla para que solo aparezcan los playlist con el mismo id_user que el id del usuario logeado.
No creo que sea algo difícil de realizar, pero no tengo la menor idea de como hacerlo.

Pido disculpas si el tema esta tratado, pero la verdad es que lo busque y no lo encontre.

Luis F. Orjuela 25-10-2010 01:13:57

Utiliza una variable gobal a tu programa donde guardes ei id_user, de tal suerte que cuando lo necesites pues lo usas.

Para ello creas un nuevo archivo.pas y dentro defines tu variable del mismo tipo que el utilizado en la tabla users, y en el Tform donde desees utilizar la variable pues solo adicionas el archivo miglobal.pas (por ejemplo) en la seccios uses de tu Tform.....


Así se definen variables globales para el programa

eekkii 25-10-2010 02:04:22

Tal vez me exprese mal, no necesito usar variables globales, ya que en ningun momento la tabla de users se mueve, asi que uso un locate de la tabla para saber quien es...
lo que queria hacer era que solamente aparescan los playlist del user dentro del dbloockupcombobox.

lo que hice fue lo siguiente:

en el evento ondropdown del dbloockupcombobox puse.

Código Delphi [-]
procedure Tform_newtrack.DBLookupComboBox4DropDown(Sender: TObject);
var
  x:string;
begin
  x:=data_db.table_users.FieldByName('id').AsString;
  Data_db.Table_pl.Filter:=('id_user=')+QuotedStr(x);
  Data_db.Table_pl.Filtered:=True;
end;

creo que con eso lo arregle pero no se si estara bien :P

gracias


La franja horaria es GMT +2. Ahora son las 14:00:22.

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