Desarrollo de módulos MADS en VS Code
La extensión MADS V5 para Visual Studio Code es el entorno recomendado para trabajar con MADS. No sustituye a la herramienta mads: la ejecuta por ti, así que todo lo que haces en el editor se puede repetir en la terminal o en un servidor de integración continua.
La vista Mads
Al abrir una carpeta que contiene módulos MADS, aparece la vista Mads en el Explorador. Para cada módulo muestra:
| Sección | Qué contiene | Acciones habituales |
|---|---|---|
| Customization | Los ficheros XML de metadatos | Editar dominios, modelo de datos, textos y parámetros |
| Runtimes | Las configuraciones de ejecución | Añadir un runtime, elegir el de por defecto, ejecutar y depurar |
| Dependencies | Los módulos de los que depende | Editar las dependencias del módulo |
| Deployment | El descriptor de despliegue | Publicar el módulo o la app en WAPP |
Desde la barra de la vista puedes añadir un módulo nuevo (Add a new mads module) o refrescarla.
Editores e inspectores
- Editores de metadatos: Edit domains, Edit data model, Edit strings, Edit parameters, Edit default runtime, Edit module dependencies y Edit POM descriptor.
- Mads: Domains inspector y Mads: Metadata model inspector: consulta los dominios y el modelo de base de datos del módulo.
- Mads: Metadata model generator: genera el esquema de base de datos a partir de una base de datos existente.
- Mads: Database syncronizer: compara y sincroniza el modelo con una base de datos.
- Mads: Resources translator: traduce los textos del módulo.
- Mads: Security utility: gestiona la seguridad del módulo.
Metodología recomendada
- Empieza por el modelo. Define dominios y tablas antes que pantallas. Un buen dominio (por ejemplo, un importe o un código de estado) se reutiliza en muchas columnas y mantiene la coherencia.
- Genera después de cada cambio de metadatos. Mads: Generate module actualiza entidades, Peers, Filters y textos. Para un solo tipo de recurso tienes Generate java model, Generate flutter/dart model y Generate text resources.
- Deja que el compilador te guíe. Tras regenerar, los errores de compilación señalan exactamente el código afectado por el cambio. Corrígelos antes de seguir.
- Nunca escribas nombres de columnas como texto. Usa siempre el enumerado generado (
FacturaField.estado), también en renderers y editores de tabla. - Prueba en local. Mads: Run & Debug app lanza el módulo con su runtime por defecto; Mads: Run module tests ejecuta sus tests.
- Construye y versiona. Mads: Build module compila, empaqueta e instala en tu repositorio Maven local. Antes de entregar, Mads: Update module version fija la nueva versión.
- Despliega y publica. Mads: Deploy module publica el artefacto en el repositorio Maven; Mads: Publish module y Mads: Publish app lo publican en WAPP.
Trabajo en equipo
- Versiona los metadatos (
src/main/res) igual que el código: son la fuente de verdad del módulo. - Revisa los cambios de metadatos junto con el código regenerado en la misma revisión (pull request).
- Mantén los textos traducidos al día con Mads: Resources translator antes de cada versión.
Siguiente paso: automatizar el ciclo con Maven.