Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
ada:howto:sicoferp:factory:sicoferpscriptsdb:process:createscripts [2020/10/06 13:06] carlos.torres |
ada:howto:sicoferp:factory:sicoferpscriptsdb:process:createscripts [2024/10/23 18:22] (actual) 192.168.175.15 [Conceptos Previos] |
||
---|---|---|---|
Línea 12: | Línea 12: | ||
* **Script de Actualización**: Son los scripts que contienen instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_definici%C3%B3n_de_datos|DDL]]((lenguaje de base de datos o lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés))) o instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_manipulaci%C3%B3n_de_datos|DML]]((Lenguaje de Manipulación de Datos (Data Manipulation Language, DML))) que serán aplicadas como solución en el modelo entidad relación de **SICOF ERP**, para soportar nuevos desarrollos, ajustes, mejoras o solicitudes. | * **Script de Actualización**: Son los scripts que contienen instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_definici%C3%B3n_de_datos|DDL]]((lenguaje de base de datos o lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés))) o instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_manipulaci%C3%B3n_de_datos|DML]]((Lenguaje de Manipulación de Datos (Data Manipulation Language, DML))) que serán aplicadas como solución en el modelo entidad relación de **SICOF ERP**, para soportar nuevos desarrollos, ajustes, mejoras o solicitudes. | ||
* **Script de Reversión**: Son los scripts que contienen instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_definici%C3%B3n_de_datos|DDL]]((lenguaje de base de datos o lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés))) o instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_manipulaci%C3%B3n_de_datos|DML]]((Lenguaje de Manipulación de Datos (Data Manipulation Language, DML))) que serán aplicadas devolver el estado anterior del modelo entidad relación de **SICOF ERP**. | * **Script de Reversión**: Son los scripts que contienen instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_definici%C3%B3n_de_datos|DDL]]((lenguaje de base de datos o lenguaje de definición de datos (Data Definition Language, DDL por sus siglas en inglés))) o instrucciones [[https://es.wikipedia.org/wiki/Lenguaje_de_manipulaci%C3%B3n_de_datos|DML]]((Lenguaje de Manipulación de Datos (Data Manipulation Language, DML))) que serán aplicadas devolver el estado anterior del modelo entidad relación de **SICOF ERP**. | ||
- | * **Funcionalidad Propietaria**:Se identifican como aquellos procesos un opciones que son utilizadas directamente por un usuario de **SICOF ERP**. | + | * **Funcionalidad Propietaria**: Se identifican como aquellos procesos u opciones que son utilizadas directamente por un usuario de **SICOF ERP**. |
- | * **Archivo Leeme.txt**: Es un archivo interno que debe estar en el directorio raíz de cada Funcionalidad Propietaria. Este archivo es de obligatorio registro y gestión por cada cambio realizado y debe contener por cada actualziación la lista ordena y secuencial de los scripts que integran la actualización además las reglas u observaciones a tener en cuenta. | + | * **Archivo Leeme.txt**: Es un archivo interno que debe estar en el directorio raíz de cada Funcionalidad Propietaria. Este archivo es de obligatorio registro y gestión por cada cambio realizado y debe contener por cada actualización la lista ordenada y secuencial de los scripts que integran la actualización, además las reglas u observaciones a tener en cuenta. |
===== Proceso de Nombramiento de Scripts ===== | ===== Proceso de Nombramiento de Scripts ===== | ||
Línea 21: | Línea 21: | ||
Asumiendo la siguiente Url genérica http://adacsc.co:1443/svn/repository/ADA/SICOF/ScriptsDB/SICOFERP/ se presentan los siguientes ejemplos: | Asumiendo la siguiente Url genérica http://adacsc.co:1443/svn/repository/ADA/SICOF/ScriptsDB/SICOFERP/ se presentan los siguientes ejemplos: | ||
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS.sql |
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/Revert/1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS REVERT.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/Revert/1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS REVERT.sql |
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/1001a ALTER TABLE ESQUEMAMAE_PRUEBAS.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/1001a ALTER TABLE ESQUEMAMAE_PRUEBAS.sql |
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/1002 CREATE OR REPLACE FORCE VIEW ESQUEMA.V_PRUEBAS.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/1002 CREATE OR REPLACE FORCE VIEW ESQUEMA.V_PRUEBAS.sql |
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/1003a CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS SPEC.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/1003a CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS SPEC.sql |
- | * branches/Versión 1.0/00000000 FUNCIONALIDAD PROPIETARIA/1003b CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS BODY.sql | + | * branches/00000000 FUNCIONALIDAD PROPIETARIA/V1.0/1003b CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS BODY.sql |
- | ^Rama - Almacenamiento^Versión^Numeración Externa^Funcionalidad Propietaria.^Numeración Interna.^Evolución^Sentencia^Nombre^Reversión^Tipo^ | + | ^Rama - Almacenamiento^Numeración Externa^Funcionalidad Propietaria.^Versión^Numeración Interna.^Evolución^Sentencia^Nombre^Reversión^Tipo^ |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1001| |CREATE TABLE|ESQUEMA.MAE_PRUEBAS| | | | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1001| |CREATE TABLE|ESQUEMA.MAE_PRUEBAS| | | |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1001| |CREATE TABLE|ESQUEMA.MAE_PRUEBAS|REVERT| | | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1001| |CREATE TABLE|ESQUEMA.MAE_PRUEBAS|REVERT| | |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1001|a|ALTER TABLE|ESQUEMA.MAE_PRUEBAS| | | | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1001|a|ALTER TABLE|ESQUEMA.MAE_PRUEBAS| | | |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1002| |CREATE OR REPLACE FORCE VIEW|ESQUEMA.V_PRUEBAS| | | | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1002| |CREATE OR REPLACE FORCE VIEW|ESQUEMA.V_PRUEBAS| | | |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1003|a|CREATE OR REPLACE PACKAGE|ESQUEMA.PCK_PRUEBAS| |SPEC| | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1003|a|CREATE OR REPLACE PACKAGE|ESQUEMA.PCK_PRUEBAS| |SPEC| |
- | |branches|Versión 1.0|00000000|FUNCIONALIDAD PROPIETARIA|1003|b|CREATE OR REPLACE PACKAGE|ESQUEMA.PCK_PRUEBAS| |BODY| | + | |branches|00000000|FUNCIONALIDAD PROPIETARIA|V1.0|1003|b|CREATE OR REPLACE PACKAGE|ESQUEMA.PCK_PRUEBAS| |BODY| |
- | A lo largo de la sección se definira cada fragmento del nombramiento de scripts | + | A lo largo de la sección se definirá cada fragmento del nombramiento de scripts |
==== Almacenamiento ==== | ==== Almacenamiento ==== | ||
Línea 42: | Línea 42: | ||
==== Versionamiento ==== | ==== Versionamiento ==== | ||
- | Toda [[#Conceptos Previos|Funcionalidad Propietaria]] debe estar versiona empezando con **Versión 1.0**. a Continuación se definen los siguientes lineamientos: | + | Toda [[#Conceptos Previos|Funcionalidad Propietaria]] debe estar versiona empezando con **V1.0**. A Continuación se definen los siguientes lineamientos: |
- | * La evolución de las versiones serán responsabilidad del lider técnico que soporte la funcionalidad. | + | * La evolución de las versiones serán responsabilidad del líder técnico que soporte la funcionalidad. |
* Cada versión debe tener su respectivo archivo Leeme.txt y su directorio Revert | * Cada versión debe tener su respectivo archivo Leeme.txt y su directorio Revert | ||
+ | * El versionamiento de script no correspondera al versionamiento del código fuente que soporta la [[#Conceptos Previos|Funcionalidad Propietaria]]. | ||
==== Extensión ==== | ==== Extensión ==== | ||
- | Se deben utilizar las extenciones registradas en la sección [[ada:howto:sicoferp:factory:sicoferpscriptsdb:process:standardandpref#PL/SQL|Estandares y Prefijos PL/SQL Extensiones de archivos]] | + | Se deben utilizar las extensiones registradas en la sección [[ada:howto:sicoferp:factory:sicoferpscriptsdb:process:standardandpref#PL/SQL|Estandares y Prefijos PL/SQL Extensiones de archivos]] |
==== Agrupación ==== | ==== Agrupación ==== | ||
Línea 128: | Línea 129: | ||
* Scripts DML (Insert, Delete, Update) | * Scripts DML (Insert, Delete, Update) | ||
- | Los scripts de evolución por estado deben ser nombrados por el mismo nombre del script original pero la numeración debe estar acompañada de letras en minusculas (al final de la numeración) de la [a-z] en caso de alcanzar el limite se procederá con las combianciones [aa-az] y asi sucesivamente. | + | Los scripts de evolución por estado deben ser nombrados por el mismo nombre del script original pero la numeración debe estar acompañada de letras en minúsculas (al final de la numeración) de la [a-z] en caso de alcanzar el limite se procederá con las combinaciones [aa-az] y así sucesivamente. |
Ejemplos: | Ejemplos: | ||
Línea 139: | Línea 140: | ||
==== Reversión de Scripts ==== | ==== Reversión de Scripts ==== | ||
- | Cada [[#Conceptos Previos|Funcionalidad Propietaria]] contiene un directorio llamado **Revert** el cual almacenará los scripts de reversión. A continuación se dictan los lineaminetos para crearlos: | + | Cada [[#Conceptos Previos|Funcionalidad Propietaria]] contiene un directorio llamado **Revert** el cual almacenará los scripts de reversión. A continuación se dictan los lineamientos para crearlos: |
* El nombre del [[#Conceptos Previos|Script de Reversión]] debe ser el mismo del script de actualización y debe finalizar con la palabra REVERT | * El nombre del [[#Conceptos Previos|Script de Reversión]] debe ser el mismo del script de actualización y debe finalizar con la palabra REVERT | ||
Línea 152: | Línea 153: | ||
==== Personalizaciones / Clientes ==== | ==== Personalizaciones / Clientes ==== | ||
- | En algunas situaciónes algunos procesos tienen particularidades entre clientes. En estas situaciones la [[#Conceptos Previos|Funcionalidad Propietaria]] tendra en sus versiones el código estandar que aplica a todos los clientes y la particularidades deben registrarse en un directorio interno con las siguientes condiciones: | + | En algunas situaciones algunos procesos tienen particularidades entre clientes. En estas situaciones la [[#Conceptos Previos|Funcionalidad Propietaria]] tendrá en sus versiones el código estándar que aplica a todos los clientes y la particularidades deben registrarse en un directorio interno con las siguientes condiciones: |
* Debe empezar con la descripción //ConfigCliente// seguido del nombre del cliente Ej: **ConfigClienteADA** | * Debe empezar con la descripción //ConfigCliente// seguido del nombre del cliente Ej: **ConfigClienteADA** | ||
Línea 158: | Línea 159: | ||
* Debe contener internamente su directorio **Revert** | * Debe contener internamente su directorio **Revert** | ||
* Desde el archivo Leeme.txt de la [[#Conceptos Previos|Funcionalidad Propietaria]] se debe orquestar la ejecución del directorio de personalización según la actualización que aplique. | * Desde el archivo Leeme.txt de la [[#Conceptos Previos|Funcionalidad Propietaria]] se debe orquestar la ejecución del directorio de personalización según la actualización que aplique. | ||
+ | |||
+ | ==== Archivo Leeme.txt ==== | ||
+ | Este archivo es muy importante para la gestión de script ya que en el se deben registrar las actualizaciones que se realizan en las [[#Conceptos Previos|Funcionalidades Propietarias]] para comprender el archivo se explicará por medio de una plantilla y finalmente se mostrará un archivo diligenciado según los ejemplos utilizados a lo largo de la sección: | ||
+ | |||
+ | ==== Plantilla Leeme.txt ==== | ||
+ | <code txt> | ||
+ | ########################################################################################### | ||
+ | # ARCHIVO DE IMPLEMENTACION - FUNCIONALIDAD PROPIETARIA - EJ: 00000000 FUNCIONALIDAD PROPIETARIA | ||
+ | ########################################################################################### | ||
+ | # Versión: Número de la Versión liberada. EJ: 1.0 | ||
+ | # Fecha: Fecha de liberación de la Funcionalidad Propietaria, por lo generar tiene la fecha del primer scritp registrado. EJ:06/10/2020 | ||
+ | # Desarrollador: Desarrollador que publica la funcionalidad propietaria. EJ:carlos.torres@ada.co | ||
+ | # Módulos: Módulos de la funcionalidad propietaria. EJ:Presupuesto 12.5.2.5.0 | ||
+ | ########################################################################################### | ||
+ | # A continuación se describe el proceso de implementación de los scripts requeridos para | ||
+ | # la actualización del proceso. Favor tener presente el orden descrito en este | ||
+ | # archivo ya que de no seguir el orden pueden generarse errores de compilación por | ||
+ | # referencias invalidas. | ||
+ | ########################################################################################### | ||
+ | # PASOS DE EJECUCION DE SCRIPTS DB | ||
+ | ########################################################################################### | ||
+ | # Alcance: | ||
+ | # Indica el alcance de la funcionalidad propietaria. EJ: Aplica para todos los clientes. | ||
+ | ########################################################################################### | ||
+ | # Ejecutar Script: En esta sección se registran de forma secuencial a lista de script | ||
+ | # que deben ser ejecutados para soportar la solución implementada. | ||
+ | # Ejemplo: | ||
+ | # 1. 1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS.sql | ||
+ | # 2. 1002 CREATE OR REPLACE FORCE VIEW ESQUEMA.V_PRUEBAS.sql | ||
+ | # 3. 1003a CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS SPEC.sql | ||
+ | # 4. 1003b CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS BODY.sql | ||
+ | ########################################################################################### | ||
+ | # OBSERVACIONES | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Aquí se deben registrar observaciones sobre la ejecución de los scripts. | ||
+ | # EJ: Alguna consideración externa a la ejecución del script, roles, permisos, etc. | ||
+ | # Se debe registrar la revisión inicial | ||
+ | # EJ: Revision History: 1.0 - carlos.torres@ada.co - 06/10/2020 07:58:34 : Liberación de versión | ||
+ | ########################################################################################### | ||
+ | # * Validar objetos inválidos al terminar la actualización. | ||
+ | # * Ejecutar actualización con un usuario que tenga permisos con el usuario ESQUEMA | ||
+ | ########################################################################################### | ||
+ | # HISTORIAL DE ACTUALIZACIONES | ||
+ | # En esta sección se registran las evoluciones de script | ||
+ | ########################################################################################### | ||
+ | # Se debe registrar la revisión de la actualización | ||
+ | # EJ: Revision History: 1.1 - carlos.torres@ada.co - 07/10/2020 08:58:34 : Adición de columnas | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Ejecutar Script: En esta sección se registran de forma secuencial a lista de script | ||
+ | # que deben ser ejecutados para soportar la solución implementada. | ||
+ | # Ejemplo: | ||
+ | # 1. 1001a ALTER TABLE ESQUEMAMAE_PRUEBAS.sql | ||
+ | # OBSERVACIONES | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Aquí se deben registrar observaciones sobre la ejecución de los scripts. | ||
+ | # * Ejecutar los scripts en el orden propuesto | ||
+ | # * Validar objetos inválidos al terminar la actualización. | ||
+ | # * Ejecutar actualización con un usuario que tenga permisos con el usuario ESQUEMA | ||
+ | </code> | ||
+ | |||
+ | ==== Ejemplo Leeme.txt ==== | ||
+ | <code txt> | ||
+ | ########################################################################################### | ||
+ | # ARCHIVO DE IMPLEMENTACION - 00000000 FUNCIONALIDAD PROPIETARIA | ||
+ | ########################################################################################### | ||
+ | # Versión: 1.0 | ||
+ | # Fecha: 06/10/2020 | ||
+ | # Desarrollador: carlos.torres@ada.co | ||
+ | # Módulos: Presupuesto 12.5.2.5.0 | ||
+ | ########################################################################################### | ||
+ | # A continuación se describe el proceso de implementación de los scripts requeridos para | ||
+ | # la actualización del proceso. Favor tener presente el orden descrito en este | ||
+ | # archivo ya que de no seguir el orden pueden generarse errores de compilación por | ||
+ | # referencias invalidas. | ||
+ | ########################################################################################### | ||
+ | # PASOS DE EJECUCION DE SCRIPTS DB | ||
+ | ########################################################################################### | ||
+ | # Alcance: | ||
+ | # Aplica para todos los clientes. | ||
+ | ########################################################################################### | ||
+ | # Ejecutar Script: | ||
+ | # 1. 1001 CREATE TABLE ESQUEMA.MAE_PRUEBAS.sql | ||
+ | # 2. 1002 CREATE OR REPLACE FORCE VIEW ESQUEMA.V_PRUEBAS.sql | ||
+ | # 3. 1003a CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS SPEC.sql | ||
+ | # 4. 1003b CREATE OR REPLACE PACKAGE ESQUEMA.PCK_PRUEBAS BODY.sql | ||
+ | ########################################################################################### | ||
+ | # OBSERVACIONES | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Revision History: 1.0 - carlos.torres@ada.co - 06/10/2020 07:58:34 : Liberación de versión | ||
+ | ########################################################################################### | ||
+ | # * Validar objetos inválidos al terminar la actualización. | ||
+ | # * Ejecutar actualización con un usuario que tenga permisos con el usuario ESQUEMA | ||
+ | ########################################################################################### | ||
+ | # HISTORIAL DE ACTUALIZACIONES | ||
+ | # En esta sección se registran las evoluciones de script | ||
+ | ########################################################################################### | ||
+ | # Revision History: 1.1 - carlos.torres@ada.co - 07/10/2020 08:58:34 : Adición de columnas | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Ejecutar Script: | ||
+ | # 1. 1001a ALTER TABLE ESQUEMAMAE_PRUEBAS.sql | ||
+ | # OBSERVACIONES | ||
+ | #------------------------------------------------------------------------------------------ | ||
+ | # Aquí se deben registrar observaciones sobre la ejecución de los scripts. | ||
+ | # * Ejecutar los scripts en el orden propuesto | ||
+ | # * Validar objetos inválidos al terminar la actualización. | ||
+ | # * Ejecutar actualización con un usuario que tenga permisos con el usuario ESQUEMA | ||
+ | </code> | ||
+ | |||
[[ada:howto:sicoferp:factory:sicoferpscriptsdb:process|←Volver atrás]] | [[ada:howto:sicoferp:factory:sicoferpscriptsdb:process|←Volver atrás]] |