Proyecto de aplicación
Última actualización
Última actualización
La organización de carpetas del módulo de aplicación es similar en la parte de módulos, a partir de ahí las subcarpetas siguen un criterio orientado a organizar los objetos teniendo presente que se usan para la interfaz de la aplicación.
En caso de que el proyecto contenga el objeto AUTOEXEC es recomendable poner la carpeta de Marco (icono Marco) la primera.
Esta carpeta contendrá diferentes subcarpetas organizadas por orden alfabético para contener objetos relaciones con los proceso arranque, barra de menú, docks, formulario principal y menú general. En definitiva objetos relaciones con el marco general de la aplicación.
Cada de uno de los módulos dispondrá de una carpeta general y en su interior pueden darse 2 casos: crear subcarpetas con submódulos o crear subcarpetas por tabla. Este segundo caso se da con las tablas de configuración (icono Objetos 5)
Y con las tablas maestras (icono Objetos 3) comunes para todos los módulos.
En las carpetas de módulos (icono Objetos 1) suelen crearse unas subcarpetas para organizar mejor funcionalmente las tablas.
Dentro de cada subcarpeta suelen estar las subcarpetas (icono Objetos 1) relativas a las diferentes tablas organizadas por orden alfabético.
Dentro de cada carpeta de tabla se aplica el criterio de organización que denominados “semáforo” por la coincidencia en los colores y orden con el objeto físico.
También podemos apreciar como dentro de una tabla se pueden organizar subcarpetas de tablas relacionadas (icono Objetos 1) como en el caso de las líneas de detalle de pedidos y presupuestos que están organizadas dentro de la carpeta de sus cabecera de documento correspondientes.
Por cada tabla es habitual tener que crear las 3 carpetas que describiremos a continuación, aunque en algunos casos puede ocurrir que solo tengamos que crear una o dos de ellas. Dentro los objetos se agrupan por tipo y dentro de cada tipo por orden alfabético del identificador salvo en algunas excepciones que se especifican.
En la carpeta roja o de interfaz (icono Interfaz) incluiremos todos los objetos que tiene que ver con la interfaz organizados de la siguiente forma:
Menú.
Formularios principales de edición. El formulario de edición irá en segundo lugar. En muchos casos se utiliza un único formulario para alta baja y modificación. En caso de tener formulario independientes podremos ubicarlos juntos por orden alfabético.
Subformularios. Detrás de cada formulario se ubicarán los subformularios en el mismo orden en que están incluidos en el objeto separador de formularios, facilitando así su localización y edición.
Formularios específicos.
Formularios QML.
Alternadores de lista.
Multivistas.
Rejillas.
Rejillas avanzadas.
Árboles visor de tablas.
Casilleros.
ComboViews.
ListViews.
ViewFlows.
Listas QML.
Gráficos.
Informes.
Esquemas con objetos visuales asociados.
En caso de que existiesen muchos objetos de un determinado tipo podemos crear subcarpetas para organizarlas mejor, normalmente estas subcarpetas tendrán un nombre específico ya que los objetos estarán relacionados con alguna funcionalidad. En la imagen vemos un ejemplo de como se han agrupado en una subcarpeta todos los subformularios de configuración.
En la carpeta amarilla (icono General) incluiremos los objetos de ejecución que no tienen interfaz, se ubicarán por orden alfabético dentro de cada tipo. El orden de organización será el siguiente:
Búsquedas.
Localizadores.
Lupas.
Cestas.
Procesos.
Funciones.
Tubos de ficha.
Tubos de lista.
Colas.
Impresoras lógicas.
Protocolos TCP/IP.
Dispositivos serie.
Librerías externas.
Ficheros adjuntos.
En la carpeta verde (icono Acciones y Menús) incluiremos las acciones, menús y barras de herramientas asociadas a la tabla. El orden de objetos es el siguiente:
Acción para ejecutar el menú.
Subcarpeta general para todos los menús de botón.
Subcarpeta por cada menú de botón.
Menú.
Acciones incluidas en el menú.
Subcarpeta con las toolbars
.
Toolbar.
Menú.
Acciones usadas en la toolbar o los menús.
Acciones para puntos de inserción.
Si estamos desarrollando un módulo que sirva de núcleo para nuestros desarrollos o un aplicación estándar que puede ser heredada por otras personalizaciones para sectores o clientes es importante añadir en todas las toolbars y menús un punto de inserción sin origen y en caso de que sea para una tabla añadir un segundo punto de inserción con el origen de la tabla.