Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:sicoferpscriptsdb:process:createscripts

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

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 ​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ónademá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**. Continuación se definen los siguientes lineamientos:​ +Toda [[#​Conceptos Previos|Funcionalidad Propietaria]] debe estar versiona empezando con **V1.0**. 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]]
ada/howto/sicoferp/factory/sicoferpscriptsdb/process/createscripts.1601989571.txt.gz · Última modificación: 2020/10/06 13:06 por carlos.torres