Buenas tengo la siguiente duda
Tengo una BD y en ella tengo tres tablas
Cadena_SQL:='CREATE TABLE IF NOT EXISTS "main"."mesas" ("id" INTEGER
PRIMARY KEY,"mesa" VARCHAR(30),"ocupado" VARCHAR(30));';
Sqlite3Dataset1.SQL:=Cadena_SQL;
Sqlite3Dataset1.ExecSQL;
Cadena_SQL:='CREATE TABLE IF NOT EXISTS "main"."cliente" ("nombre"
VARCHAR(30), "rif" VARCHAR(30),"id_mesa" INTEGER,"id_factura" INTEGER);';
Sqlite3Dataset1.SQL:=Cadena_SQL;
Sqlite3Dataset1.ExecSQL;
Cadena_SQL:='CREATE TABLE IF NOT EXISTS "main"."factura" ("id" INTEGER
PRIMARY KEY,"producto" VARCHAR(30),"precio" INTEGER,"rif_cliente"
VARCHAR(30));';
Sqlite3Dataset1.SQL:=Cadena_SQL;
Sqlite3Dataset1.ExecSQL;Entonces el detalle esta en que tengo tres dbgrids, en la primera se muestra los datos de la tabla mesas, esta va a estar fija.
En la segunda se va a mostrar el cliente dependiendo de la tabla mesa, Supongamos que la mesa 2 esta ocupada por lo tanto tiene un cliente, entonces al yo seleccionar la mesa dos en la dbgrid2 me deberia de aparecer
los datos del cliente.
Lo pude hacer utilizando un reloj haciendo la consulta de la mesa que seleccione guardando el id en una variable
========================================================
Sqlite3Dataset2.close;
Sqlite3Dataset2.SQL:='SELECT * FROM cliente where id_mesa="'+mesa+'";';
Sqlite3Dataset2.ExecSQL;
Sqlite3Dataset2.Open;
Sqlite3Dataset3.close;
Sqlite3Dataset3.SQL:='SELECT * FROM factura where id="'+nfactura+'";';
Sqlite3Dataset3.ExecSQL;
Sqlite3Dataset3.Open;donde mesa y nfactura son variables que toman un valor respectivo
========================================================
Lo muestra pero es muy feo ya que la pantalla parpadea porq el reloj realiza la consulta cada 200ms.
Me dijeron que haciendo esto
query1 datasource1 para tabla1
query2 datasource2 para tabla2
query3 datasource3 para tabla3
y haciendo esto en sus opciones
al primer query le coloque solo conexion=zconexion
al segundo query igual conexion=zconexion y
en datasourse=datasource1
al tercer query igual conexion=zconexion y en datasourse=datasource2
Ya no se necesita el reloj pero solo muestra la tabla mesa y cuando selecciono la mesa que tiene un cliente no me aparecen los datos en la dbgrib2
Ayuda por favor y gracias de antemano
------------ pr�xima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus-es/attachments/20121001/7684e41d/attachment.html>
