Herramientas de usuario

Herramientas del sitio


ada:howto:sicoferp:factory:sicoferpscriptsdb:fe:fase3:updateip

¡Esta es una revisión vieja del documento!


Fabrica: Factura Electrónica - Actualizar IP/Dominio (Scripts DB)

En ocasiones los clientes realizan modificaciones en su infraestructura de red, ya sea por procesos de seguridad, cambios de proveedor de servicio de internet, auditorias o procesos administrativos o por cualquier otro motivo, en esas situaciones es necesario actualizar la ip o dominio de la funcionalidad ya que el desarrollo requiere que se parametrice la ip del consumo del web service interno y el dominio que estará incluido en el link del correo electrónico que permite los eventos de aceptación y rechazo. A continuación se explica el script de actualización el cual ha sido documentado para identificar el caso de actualización y proceder con la ejecución en el ambiente requerido. Este proceso aplica para el PST Interno en los modos de instalación:

  • In-house: Instalación infraestructura ADA
  • On-premise: Instalación infraestructura cliente.

Ubicación

El directorio de scripts se encuentra en la url del svn: SVN Directorio

Script: 0001a Actualizar IP - Dominio.sql

Este script se utiliza para actualizar IP y Dominio (Si aplica). Se debe ingresar los campos requeridos y se debe ejecutar con el usuario del módulo presupuesto. La IP o Dominio la debe suministrar la persona que brinda el soporte (Consultor, Fabrica o por Ticket) y debe ejecutarse en la base de datos del cliente.

DECLARE
  --==============================================================================
  -- Fecha: 7:15 a. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- Variables de control
  --==============================================================================  
  ERROR_FE EXCEPTION;
  PRAGMA EXCEPTION_INIT(ERROR_FE, -20999); 
 
  GCVA_HTTP CONSTANT VARCHAR2(32) := 'http://';
  GCVA_HTTPS CONSTANT VARCHAR2(32) := 'https://'; 
 
  GCVN_ERROR_NUMBER       CONSTANT NUMBER := -20999; 
  lva_msg VARCHAR2(2048)  DEFAULT NULL;
 
  GCVA_URL_VALID CONSTANT VARCHAR2(1024) := '/ADAFE/webresources/forms/efevento/{codigo_cliente}/{nit_empresa}/{pst}/{cufe}';  
  GCVA_URL_FORM CONSTANT VARCHAR2(1024) := '/ADAFE/webresources/forms/formulario/{codigo_cliente}/{nit_empresa}/{pst}/{cufe}';
  GCVA_URL_WS CONSTANT VARCHAR2(1024) := '/ADAFE/webresources/pst/ef/';
 
  --==============================================================================
  -- Fecha: 7:15 a. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- Variables de procesos
  --==============================================================================  
  lva_CODIGO_CLIENTE  VARCHAR2(256)  DEFAULT NULL;
  lva_COD_PST         VARCHAR2(256)  DEFAULT NULL;
  lva_IP              VARCHAR2(256)  DEFAULT NULL;
  lva_DOMINIO         VARCHAR2(1024)  DEFAULT NULL;
 
  lvb_http            BOOLEAN DEFAULT NULL;
  lva_URL_VALID       VARCHAR2(1024)  DEFAULT NULL;
  lva_URL_FORM        VARCHAR2(1024)  DEFAULT NULL;
  lva_URL_WS          VARCHAR2(1024)  DEFAULT NULL;
  lva_protocolo       VARCHAR2(32)  DEFAULT NULL;
 
BEGIN  
  --==============================================================================
  -- Fecha: 12:11 p. m. sábado, 21 de noviembre de 2020 - carlos.torres@ada.co
  -- Captura de parametros de configuración del cliente
  --==============================================================================
  ROLLBACK;
  lva_msg := 'Captura de parametros de configuración del cliente';
 
  --==============================================================================
  -- Fecha: 12:42 p. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- PASO 1: Configuración de resolución
  --==============================================================================
  lva_msg := 'PASO 1: Registro de configuración';  
 
  --==============================================================================
  -- Fecha: 12:55 p. m. sábado, 21 de noviembre de 2020 - carlos.torres@ada.co
  -- El codigo del cliente por lo generar se refiere al nombrede cliente sin espacios acompañado del contexto de ejecución
  -- Ejemplo para el cliente ADA en el ambiente de producción seria ADA_PROD
  -- Ejemplo para el cliente ADA en el ambiente de pruebas seria ADA_TEST
  --==============================================================================  
  lva_CODIGO_CLIENTE := NULL;--REQUERIDO: código del cliente con el contexto (TEST o PROD)
 
  --==============================================================================
  -- Fecha: 7:20 a. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- El código del PST es una codificación interna que se le denota al cliente
  -- del servicio web que realizará el envio de documentos para los PST internos
  -- este código será ADA para los PST Externos este codigo será un acronimo
  -- del nombre del proveedor externo EJ (BytheWave = BTW, Tecnofactor = TNF) 
  --==============================================================================  
  lva_COD_PST  := NULL;--REQUERIDO: código del pst 
 
  --==============================================================================
  -- Fecha: 11:33 a. m. jueves, 18 de febrero de 2021 - carlos.torres@ada.co
  -- La nueva ip que se desea actualizar esto requiere que actualice la ACL
  -- y que el servidor de la base datos pueda acceder al domino de red de la nueva IP
  --==============================================================================  
  lva_IP  := NULL;--REQUERIDO: ip del servidor
 
  --==============================================================================
  -- Fecha: 4:10 p. m. jueves, 18 de febrero de 2021 - carlos.torres@ada.co
  -- Se debe indicar si la petición es segura o no por lo tanto debe 
  -- validarlo con el servicio. true: https false:http
  --==============================================================================  
  lvb_http := NULL;
 
  --==============================================================================
  -- Fecha: 11:34 a. m. jueves, 18 de febrero de 2021 - carlos.torres@ada.co
  -- Respresenta el domino público que puede ser accedido desde los link del 
  -- correo de los documentos enviados y permite el acceso al portal de consulta 
  -- de documentos (No es equerido para actualizar la IP pero si se requiere que 
  -- el dominio actual sea actualizado a la nueva IP)
  --==============================================================================
  lva_DOMINIO := NULL;--NO REQUERIDO dominio que mapea la ip del servidor
 
  --******************************************************************************
  --******************************************************************************
  -- NO MODIFICAR EL CODIGO FUENTE A PARTIR DE ACA
  --******************************************************************************
  --****************************************************************************** 
 
  --==============================================================================
  -- Fecha: 12:42 p. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- PASO 2: Validaciones
  --==============================================================================
  lva_msg := 'PASO 2: Validaciones';  
 
  --==============================================================================
  -- Fecha: 7:17 a. m. domingo, 22 de noviembre de 2020 - carlos.torres@ada.co
  -- Validaciones de control
  --==============================================================================
  lva_msg := 'Validaciones de control';
 
  IF lva_CODIGO_CLIENTE IS NULL THEN
    lva_msg := 'No se ha definido el codigo del cliente en la configuración';
    RAISE ERROR_FE;
  END IF;
 
  IF lva_COD_PST IS NULL THEN
    lva_msg := 'No se ha definido el codigo del pst en la configuración';
    RAISE ERROR_FE;
  END IF;
 
  IF lva_IP IS NULL THEN
    lva_msg := 'No se ha definido la ip del servidor web';
    RAISE ERROR_FE;
  END IF;
 
--  if lvb_http is null then
--    lva_msg := 'No se ha definido el protoco de la petición (true: https false:http)';
--    RAISE ERROR_FE;
--  end if;
 
  --==============================================================================
  -- Fecha: 7:53 a. m. viernes, 19 de febrero de 2021 - carlos.torres@ada.co
  -- Identificar el protocolo
  --==============================================================================  
  IF lvb_http = TRUE THEN
    lva_protocolo := GCVA_HTTP;
  ELSIF lvb_http = FALSE THEN
    lva_protocolo := GCVA_HTTPS;
  ELSE
    lva_protocolo := GCVA_HTTP;
  END IF;
 
  --==============================================================================
  -- Fecha: 1:58 p. m. jueves, 18 de febrero de 2021 - carlos.torres@ada.co
  -- PASO 3: Actualizaciones
  --==============================================================================
  lva_msg := 'PASO 3: Actualizaciones';
 
  --==============================================================================
  -- Fecha: 7:55 a. m. viernes, 19 de febrero de 2021 - carlos.torres@ada.co
  -- Actualizar Dominio
  --==============================================================================  
  IF lva_DOMINIO IS NOT NULL THEN
    lva_msg := 'Actualizar Dominio';
    lva_URL_VALID := lva_protocolo || lva_DOMINIO || GCVA_URL_VALID;
    lva_URL_FORM  := lva_protocolo || lva_DOMINIO || GCVA_URL_FORM;    
    UPDATE  TBL_FE_CONEXION_CLIENTE
    SET     URL_VAL_ACEPTACION      = NVL(lva_URL_VALID, URL_VAL_ACEPTACION),
            URL_VAL_ACEPTACION_FORM = NVL(lva_URL_FORM, URL_VAL_ACEPTACION_FORM)
    WHERE   CODIGO_CLIENTE          = lva_CODIGO_CLIENTE;    
  END IF;
 
  --==============================================================================
  -- Fecha: 7:56 a. m. viernes, 19 de febrero de 2021 - carlos.torres@ada.co
  -- Actualizar IP
  --==============================================================================  
  IF lva_IP IS NOT NULL THEN
    lva_msg := 'Actualizar IP';
    lva_URL_WS := lva_protocolo || lva_IP || GCVA_URL_WS;
    UPDATE PRESUP01.PARAMETROS_FE_PST
    SET    SERVICIO_URL          = NVL(lva_URL_WS, SERVICIO_URL)
    WHERE  COD_PST               = lva_COD_PST
    AND    COD_CLIENTE           = lva_CODIGO_CLIENTE;
  END IF;  
 
  COMMIT;
 
EXCEPTION WHEN OTHERS THEN
  dbms_output.put_line(SQLCODE || ' - ' || SQLERRM || ' - msg: ' || lva_msg);
  ROLLBACK;
  SICOF.PCK_UTILIDADES.P_REGISTER_ERROR(SQLCODE, lva_msg, 'ERROR: ' || SQLERRM || dbms_utility.format_error_backtrace, 'BLOQUE ANONIMO');
  raise_application_error(GCVN_ERROR_NUMBER,lva_msg);
END;

←Volver atras

ada/howto/sicoferp/factory/sicoferpscriptsdb/fe/fase3/updateip.1613743364.txt.gz · Última modificación: 2021/02/19 14:02 por administraidor