Muestra las diferencias entre dos versiones de la página.
plugins:microcomponents [2020/02/21 13:52] fcristina [Nuevo formato para AD_ComponentObjectUID] |
plugins:microcomponents [2021/04/30 19:19] |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== Soporte para desarrollo de microcomponentes ====== | ||
- | |||
- | Las modificaciones aquí detalladas aplican tanto para el desarrollo de micro componentes como para componentes tradicionales. | ||
- | |||
- | ===== Definición general ===== | ||
- | |||
- | Micro componentes refiere a desarrollos con tiempo de vida acotado, encapsulando modificaciones de LY CORE específicamente (CORELEVEL = 0), sobre una base de datos independiente y un proyecto en Eclipse independiente que referencia a org.libertya y que modifica clases de CORE exclusivamente. | ||
- | |||
- | Los micro componentes nacen de requerimientos para LY CORE o bien a partir de necesidades de modificaciones de CORE sobre una instancia en producción de un cliente en particular; pero que luego estos cambios eventualmente serán parte de LY Standard (bbdd libertya_core y proyecto org.libertya). | ||
- | |||
- | Un micro componente implica: | ||
- | |||
- | * Ítem de lista desordenadaCreación de una BBDD exclusiva para su desarrollo y de un componente (con CORELEVEL 0) con un prefijo que denote la finalidad del desarrollo | ||
- | * Ítem de lista desordenadaCreacion de un proyecto en Eclipse que referencia a org.libertya y solo modifica clases de CORE (además del preinstall, etc). | ||
- | |||
- | Los micro componentes se incorporarán a LY Standard cuando se considere necesario, mediante merge de fuentes y el uso de COPYTOCHANGELOG para metadatos. Los UIDs serán únicos desde el momento de su creación y para siempre, bajo una nueva definición de los mismos. Por consiguiente bajo la nueva metodología, | ||
- | |||
- | Una instancia en producción que requiera actualizar su versión de CORE y que tenga micro componentes necesitará “certificar” la instancia en cuestión, realizando los merges necesarios si es que dichos micro componentes deben mantenerse en la instancia. | ||
- | |||
- | Cabe destacar la diferencia de una redefinición específica de una clase de CORE alojada en un componente tradicional (plugin de customización) con respecto a los desarrollos en un micro componente. | ||
- | |||
- | |||
- | ===== Nueva ventana para prefijos de micro componentes ===== | ||
- | |||
- | Existe una nueva ventana **Prefijos de Micro Componentes** para la reserva de prefijos. | ||
- | |||
- | Los prefijos tendran una longitud de 10 caracteres y deberán ser únicos. | ||
- | |||
- | La descripción que acompaña al prefijo deberá ser una intuitiva, a fin de dar una idea sobre la funcionalidad y alcance del micro componente que se está desarrollando. | ||
- | |||
- | Estos prefijos luego se referencian desde la ventana de Componentes. | ||
- | |||
- | ===== Desarrollando un micro componente ===== | ||
- | |||
- | El inicio del desarrollo es similar al desarrollo de un componente tradicional. | ||
- | |||
- | Sin embargo, si al iniciar el desarrollo se detectan entradas en la bitácora (AD_Changelog) registradas para este micro componente, se presentará un warning a modo de aviso, indicando que ya hubo desarrollo previo para dicho micro componente, por ejemplo: | ||
- | |||
- | WARNING: Existes 3675 entradas en el changelog con el prefijo de microcomponente EXAMPLE | ||
- | |||
- | |||
- | ===== Nuevo formato para AD_ComponentObjectUID ===== | ||
- | |||
- | El nuevo formato de los AD_ComponentObjectUID se conforma de la siguiente manera: | ||
- | |||
- | * Prefijo del micro componente | ||
- | * Nombre de tabla | ||
- | * Timestamp | ||
- | * 6 dígitos adicionales: | ||
- | |||
- | Esto garantiza unicidad ante cualquier tipo de desarrollo en paralelo. | ||
- | |||
- | ABCDEFGHIJ-AD_Message-20191206142716886-780778 | ||
- | |||
- | Este valor **no cambiará nunca**, y se mantendrá el mismo al momento de incorpora el desarrollo del micro componente a CORE (mediante [[plugins: | ||
- | |||
- | |||
- | |||
- | |||