Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #21  
Antiguo 13-10-2011
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Ejemplo de llamada a la función

Código Delphi [-]
ghCopyDataSetProps (SQLDSClienteDesde, SQLDSClienteHasta,'Name',True,'');

Definición de la función - Sacada de GHFreebrary de Al González
Código Delphi [-]
  { Copy Data Set Props }
  Procedure ghCopyDataSetProps (
    Const Source, Dest :TDataSet; -- datasource origen, datasource Destino
    Const Excludeds :String = ''; -- aqui ponemos las propiedad que queremos excluir , en el ejemplo el nombre
  Const IncludeFields :Boolean = True; -- aqui indicamos si incluimos los campos o no en la copia
    Const ExcludedFieldProps :String = '' -- aqui indicamos la propiedad de los campos que queremos excluir
  );

Saludos
PD: Con el permiso del maestro. Un abrazo FREE
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #22  
Antiguo 14-10-2011
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Muchas gracias Javier.

Bueno, primeramente decir que GH Freebrary viene dentro del paquete MagiaData7.zip que subí, y es que las clases TMagiaXXX llaman a algunas funciones "sueltas" de GH Freebrary. Por ejemplo, la propiedad DataSetCloned de TMagiaDataSource causa que internamente se llame a la función ghCloneDataSet de la unidad GHFData, misma unidad donde se encuentra también la función que amablemente ilustró fjcg02.

Neeruu, yo uso todo el tiempo la anterior característica. Es decir, coloco en uno o varios módulos de datos los data sets, pero pongo los data sources (TMagiaDataSource) en los formularios, activándoles a estos la propiedad DataSetCloned para que el formulario trabaje con una copia propia y local del conjunto de datos (un "clon"), y así darle mayor autonomía y evitar conflictos con otros formularios que también necesiten trabajar con el mismo conjunto de datos (ya sea simultáneamente o después en la misma sesión).

Así no tengo necesidad de crear varias instancias de un mismo módulo de datos y tampoco me preocupo de las propiedades que le establezco en tiempo de ejecución al conjunto de datos, porque es un clon que sólo afecta al ámbito del formulario y será destruido cuando el formulario se destruya también.

No obstante, comentas que sin usar nada de esto tienes demoras en las conexiones o aperturas de los conjuntos de datos. Entonces quizá convenga que primero revises por qué se tarda al abrir. Tal vez me equivoque, pero puede que estés trayendo muchos registros al activar alguna tabla o consulta. Creo que sería oportuno atacar primero ese problema.

Mencionas también que leíste ya algo sobre Magia Data. Probablemente se trata de este material. De cualquier manera lo enlazo para ayudar a explicar de forma más clara por qué había necesidad de algo así y las ventajas que se obtienen con el componente.
Responder Con Cita
  #23  
Antiguo 14-10-2011
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Qué mejor que el padre de la criatura dando las explicaciones oportunas y precisas.

Al, ya que te has lanzado, ahora sería estupendo que nos ilustraras con algún ejemplo práctico de cómo usas todas esas piezas del puzzle que has confeccionado a lo largo del tiempo !!

Ya sabes que me gusta lo bueno, aunque desgraciadamente no tenga dinero para pagarlo. A veces sólo la esencia es suficiente ... y con gusto la disfruto !!

Un abrazo
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #24  
Antiguo 26-04-2012
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por fjcg02 Ver Mensaje
Al, ya que te has lanzado, ahora sería estupendo que nos ilustraras con algún ejemplo práctico de cómo usas todas esas piezas del puzzle que has confeccionado a lo largo del tiempo !!
Hola Javier, disculpa la demora de seis meses.

De momento esto puede servir: http://www.clubdelphi.com/foros/show...d=1#post431019

Ojalá hubiera un alma en este mundo que se animara (pero en serio) a echarme una mano con la biblioteca.

Saludos.

Al.
Responder Con Cita
  #25  
Antiguo 26-04-2012
Avatar de fjcg02
[fjcg02] fjcg02 is offline
Miembro Premium
 
Registrado: dic 2003
Ubicación: Zamudio
Posts: 1.410
Poder: 22
fjcg02 Va camino a la fama
Nunca es tarde si la "picha" es buena !!!

jajajajajaj
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino -
Responder Con Cita
  #26  
Antiguo 28-04-2012
Avatar de PepeLolo
PepeLolo PepeLolo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Fuenlabrada - Madrid - Espagna
Posts: 265
Poder: 21
PepeLolo Va por buen camino
Una solución simple; almacena en la BBDD las SQL que necesites en tu aplicación. En una segunda tabla almacenas (Formulario, campo y idSQL).
En tu aplicación en el evento "oncreate" del formulario creas en tiempo de ejecución los objetos de datos y los "datasource" correspondientes y lo conectas al campo correspondiente de tu formulario. No necesitas clonar nada y simplificas. La próxima vez que necesites una SQL en otro formulario, ya lo tienes y solo tienes que incluir los datos en la tabla (formulario, campo, idsql)
__________________
PepeLolo
El hombre el único virus que mide más de unas cuantas micras
Responder Con Cita
Respuesta



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
Componentes Dinamicos (contenedores) JULIOCTORRESG Varios 7 22-11-2020 00:48:39
como crear componentes dinamicos sErgis .NET 3 06-06-2011 17:10:05
Problemas con componentes dinámicos mamaro OOP 2 14-10-2004 17:14:06
Destrucción de componentes dinámicos rafita OOP 5 16-04-2004 18:06:17
Crear Forms Dinamicos diegofhernando Varios 1 25-01-2004 02:26:19


La franja horaria es GMT +2. Ahora son las 20:32:13.


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
Copyright 1996-2007 Club Delphi