Por ejemplo imaginaos que tenemos un programa "principal", que sirve para llevar la gestión de un almacén de materiales.
Luego tenemos un programa aparte ("un módulo"), que lleva el tema de "Facturación".
Hay clientes que le vendemos solo el módulo principal, y otros quieren el modulo principal y el de facturación.
¿como se ampliaría el programa "principal", con las opciones de facturación?
Si llevaría un menu, este se debería incluir las opciones de facturación, en el menu principal
Si lleva una nueva barra de herramientas, tambien se debería incluir en "la barra principal de herramientas"
¿esto como se puede hacer?
Se me ocurre que el programa principal, tendría una carpeta donde se guarda la información de los modulo incluidos, cada vez que se añade un nuevo modulo , se añade un archivo con información del modulo (este archivo por contendría las opciones del menu, iconos, etc). Luego por código se crea este nuevo menu, o nueva barra de herramientas
¿pero como llamo a los procedimientos del modulo añadido?
Se me ocurre que el ejemplo de "Paint", ejecuta código fuente desde el propio programa... pero para ello hay que pasarle el código fuente, y no el codebyte .gambas...
O tambien se puede usar parametros de entrada en el ejecutable .gambas, que cada vez que se pulse una opción, se le pase un parametro al modulo .gambas (por ejemplo ./facturacion.gambas ListadoFacturas), y asi, dependiendo del parametro que se le pase, el modulo inicie tal o cual formulario....
Otra forma que se me ocurre de como hacerlo es creando pestañas, (una pestaña por módulo), y en cada pestaña se embebe la aplicación o módulo...pero veo que esta opción es algo "forzada", no es la que usa los programas "comerciales"
Otro problema ¿como hacer la comunicación entro los distintos módulos?
Es de suponer que se usan bases de datos con distintas tablas, asi todos los módulos tienen acceso a la misma base de datos ... quizas sea la forma mas sencillo de hacerlo.
Bueno, ¿que opinais? ¿alguna idea? ¿alguna experiencia respecto a esto?
Nota:
Buscando por el foro, he visto este hilo Enlace, donde jguardon comenta:
Citar:
Le hecho un vistaso a la documentación y al ejemplo que trae gambas3, a ver si me entero como se usa...
Tambien es interesante esta enlace de la documentación oficial: http://gambasdoc.org/help/doc/dbus?es&v3
Saludos