Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Diseñar formularios (https://www.clubdelphi.com/foros/showthread.php?t=76827)

Mystery 29-11-2011 20:28:59

Diseñar formularios
 
Hola a todos...
se me ha ocurrido hacer una aplicación de BD donde el usuario pueda crear el mismo los forms (igual que en access) esto usando los componentes de Neftalí para redimensionar campos en tiempo de ejecución.
Y que después de que el user termine de diseñar estos (Forms) se guarden en la base de datos asi cuando el usuario quiera dependiendo de un rol pueda rediseñar o ejecutar estos forms…
Realmente no lo tengo muy claro pero acepto cualquier idea… he estado buscando en google para ver si me encontraba un compo que hiciera esto pero no he tenido surte…
Si alguien conoce alguno o se alumbra con una idea le estaría totalmente agradecido…
Bueno disculpen las molestias sin más

Mystery

newtron 30-11-2011 10:05:21

Hola.

El tema que estás proponiendo es bastante peliagudo y complicado. Yo tengo algo parecido hecho (aunque lo preparó otra persona que ya no trabaja en la empresa) y funciona de la siguiente forma.

Tenemos creado un formulario base con los botones de insertar, eliminar, siguiente, atrás, etc. que es al que se invoca cuando queremos mostrar uno de estos formularios configurables. Al mismo tiempo tenemos una serie de componentes propios para ese formulario, edits, labels, grids, combobox, etc. que están preparados con los campos necesarios de nombre de tabla, nombre del campo, tipo de campo, etc. y que se insertan dentro de nuestro formulario especial. Hasta ahí tenemos un formulario que de forma automática gestiona la tabla que le digamos con los campos que le insertemos.

La madre del cordero está en hacer eso configurable externamente y eso lo hacemos de la siguiente forma: cuando se crea el formulario se hace una llamada a un fichero de texto en el que se pueden crear o modificar todas las propiedades tanto del formulario como de los componentes que alberga de manera que los que no existen los crea, los que existen los modifica y los que no están en el fichero de texto no los toca.

El tema se complica hasta lo que quieras si quieres que los campos tengan opciones de búsqueda en otros archivos, poder crear registros de otras tablas dentro de ese formulario, campos con ecuaciones, etc.

Para esto tendrás que tener bastantes conocimientos de OOP para poder crear los componentes necesarios y echarle bastante tiempo para el desarrollo.

Espero haberte dado algo de luz sobre el tema.

Saludos

Neftali [Germán.Estévez] 30-11-2011 11:33:28

Cita:

Empezado por Mystery (Mensaje 419891)
se me ha ocurrido hacer una aplicación de BD donde el usuario pueda crear el mismo los forms (igual que en access) esto usando los componentes de Neftalí para redimensionar campos en tiempo de ejecución.

Eso está bien. ;-)

Cita:

Empezado por Mystery (Mensaje 419891)
Y que después de que el user termine de diseñar estos (Forms) se guarden en la base de datos asi cuando el usuario quiera dependiendo de un rol pueda rediseñar o ejecutar estos forms…

OK.
Puedes guardar los formulario en Base de Datos o en disco (como quieras) y podrás utilizarlos en tu aplicación.
Deberás crearlos en ejecución, al igual que se crea cualquier otro y luego añadir los elementos que has diseñado.
Creo que todo eso se puede hacer.

Mi duda o donde me quedo atascado es en la funcionalidad.

1) Si los formularios tienen una funcionalidad "predefinida", es decir, por ejemplo estás haciendo formularios de Browse o de edición, donde está claro y especificado la funcionalidad podrás hacerlo, habiéndola programado antes con anterioridad de forma genérica.

2) Si los formularios no tienen una funcionalidad "predefinida" y la tienen que crear el usuario, sólo se me ocurre que utilices algún paquete de "Scripting", pero en ese caso habría que ver las posibilidades de integración con lo que está haciendo.

Deberías explicar con más detalle qué tipo de formularios quieres crear. ¿Funcionalidad? ¿Si son estandard? ¿?¿?

NOTA: Si necesitas un componente para "inspector de Objetos" (link) y poder modificar propiedades de los componentes que creas, te recomiendo el de miTEC.


La franja horaria es GMT +2. Ahora son las 06:12:31.

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