[Lazarus-es] forms i querys

Martin Gomez mmgomez en gmail.com
Vie Jul 5 01:24:54 CEST 2013


No estoy muy seguro al respecto (tendría que recurrir a la documentación)
pero hasta Delphi 7 sólo podía haber 1 datamodule por proyecto... En
Lázarus creo que no existe esa limitación.


2013/7/4 Ulises Díaz <udiaz60 en hotmail.com>

> Hola
>
> Si, Aprendí en Visual Basic, pero cuando se trata de aplicaciones Web
> utilizo MVC, separando los datos  de la lógica de negocio, se me hace
> difícil hacerlo acá, sobre todo por lo confuso que es tener un datamodule
> con todas las querys, a menos que por cada sección o formulario del
> programa se cree un datamodule, cosa que utilice una vez pero por cada
> datamodule necesitaba una conexión, lo que no me gustó.
>
> Voy a volver a intetarlo pero quetal si creamos un datamodule
> ("prinicpal") que tenga la conexion y para cada form creamos otro data
> module cuyas querys se asignen a la conexion de datamodule "principal", que
> opinan? o les parece poco funcional. Lo que busco es mejor organización.
>
> Gracias por la recomendación.
>
>
>
> ------------------------------
> Date: Thu, 4 Jul 2013 18:49:31 -0300
> From: mmgomez en gmail.com
> To: lazarus-es en lists.lazarus.freepascal.org
> Subject: Re: [Lazarus-es] forms i querys
>
>
> Está considerado una "buena practica" el separar el acceso a datos con un
> datamodule, al menos esa es la recomendación de Borland desde el Delphi 1.
>
> Si venías del Visual Basic es una costumbre dificil de adoptar, pero una
> vez que te acostumbras empiezan los beneficios :)
>
>
> 2013/7/4 Ulises Díaz <udiaz60 en hotmail.com>
>
> Hola
>
> Me pasaba igual, a veces pienso igual, por un tiempo utilicé un Data
> Module con una conexión, las querys (tzquery de Zeos) y el datasource de
> cada formulario juntos, luego empecé a ver algo confuso tantas querys que
> decidí crear un datamodule con una única conexión desde la que se conectan
> las querys que se encuentran en cada formulario junto con su datasource,
> agregó la unidad del datamodule en los uses de cada form y asigno la
> propiedad de conexion de las querys a la mencionada conexión.
>
> Muchas veces no utilizo componentes gráficos, especificamente en los casos
> que tengo que cargar información a listas, stringGrids, realizar inserts o
> udpates desde stringGrids, entre otros si no que lo hago por código en el
> evento OnCreate de los forms, por ejemplo:
>
> var
>   QCargarComboboxs : tzquery; //declaro la query, Zeos
> begin
>   QCargarComboboxs : tzquery.create(nil); //Instancio
>   QCargarComboboxs.conection := MiDataModule.conexion; //asigno la
> conexión del datamodule.
>
>
> QCargarComboboxs .SQL.add('select * from years');
> QCargarComboboxs.execsql;
> //Realizo la consulta
>
> //Cargo un combo por ejemplo
> While not QCargarCombobox.Eof do
> begin
> Combo1.add(QCargarComboboxs.fielbyname('year').asstring);  //Adiciono el
> elemento al combo
> QCargarComboboxs.next; //siguiente registro
> end;
>
> .
> .
> .
>  Luego utilizo la misma query para cargar otros combos.
>
> Bueno se puede crear una función que realice esta operación pasandole como
> argumentos el nombre de la tabla, los campos, y los combobox a rellenar.
>
> Para lo demás me gusta utilizar componentes gráficos, todo depende de las
> circunstancias.
>
>
> Esperaré otras respuestas tal vez me sirvan para mejorar la forma en que
> programo.
>
>
> Espero que sea de utilidad, saludos desde Colombia
>
>
> Ulises Díaz
> Ingeniero de Sistemas, UNAD.
>
>
>
>
> > Date: Thu, 4 Jul 2013 22:51:30 +0200
> > From: alfred en arsistemes.com
> > To: lazarus-es en lists.lazarus.freepascal.org
> > Subject: [Lazarus-es] forms i querys
>
> >
> > Saludos de nuevo,
> >
> > Estoy incorporando forms para editar registros con doble click en un
> > dbgrid lazarus + Zeoslib + postgres
> >
> > Por algún motivo que desconozco siempre acabo dudando entre usar el
> > Datamodule... incorporar el query y el Datasource en el mismo form o
> > incluso realizarlo todo por código.
> >
> > No acabo de decidirme por uno u otro método y voy alternando según va
> > saliendo.
> >
> > ¿Existe algun convenio sobre cuál es el mejor método ?
> >
> > Gracias
> >
> > _______________________________________________
> > Lazarus-es mailing list
> > Lazarus-es en lists.lazarus.freepascal.org
> > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>
>
>
> --
> Try not to become a man of success but rather to become a man of value. *Albert
> Einstein*
>
> _______________________________________________ Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>


-- 
Try not to become a man of success but rather to become a man of value. *Albert
Einstein*
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20130704/fed00698/attachment-0002.html>


More information about the Lazarus-es mailing list