Browse Source

CRM-NAF

Script PL/SQL
Johann Alexis Gil Valenzuela 5 years ago
parent
commit
e1aa01c720
5 changed files with 1696 additions and 0 deletions
  1. 201 0
      Script/PKG_FACT_NAF.pks
  2. 1123 0
      Script/PKG_FACT_NAF_SOL.pkb
  3. 227 0
      Script/PKG_FACT_NAF_SOL.pks
  4. 67 0
      Script/SSO_ADENDA.sql
  5. 78 0
      Script/SSO_FDIN_DET_SOL.sql

+ 201 - 0
Script/PKG_FACT_NAF.pks

@@ -0,0 +1,201 @@
+CREATE OR REPLACE PACKAGE NAF47.PKG_FACT_NAF AS
+/******************************************************************************
+   NAME:       PKG_FACT_NAF
+   PURPOSE:
+
+   REVISIONS:
+   Ver        Date        Author           Description
+   ---------  ----------  ---------------  ------------------------------------
+   1.0        25/05/2016      Edgar Ajanel       1. Created this package.
+******************************************************************************/
+
+  FUNCTION ULTIMO_TIPOCAMBIO(Pmoneda varchar2) RETURN NUMBER;
+  
+  FUNCTION Existe_Cliente_Activo(pNO_CIA IN NUMBER,
+                                 pNO_CLIENTE IN NUMBER) RETURN NUMBER;
+  
+
+  FUNCTION Existe_Cliente(pNO_CIA IN NUMBER,
+                          pNO_CLIENTE IN VARCHAR2,
+                          pNit VARCHAR2,
+                          pNOMBRE VARCHAR2) RETURN BOOLEAN;
+                                                  
+    FUNCTION DIFERENCIAL(pcia number,pcliente number,pInstalacion number,pnotransaccion number,pValorAct number,pCodMoneda VARCHAR2) RETURN NUMBER;
+    
+    FUNCTION EXISTE_ENLACE_ACTIVO(pCODEMPRESA NUMBER,
+                                  pCODCLIENTE NUMBER,
+                                  pINSTALACION NUMBER,
+                                  pNOTRANSACCION NUMBER,
+                                  pCODTRANSACCION varchar2,
+                                  pGrupo_fac in out number,
+                                  pProducto in out number) RETURN BOOLEAN;
+                                                
+    FUNCTION SIGUENTE_CORRELATIVO(PCIA NUMBER,popcion VARCHAR2) RETURN NUMBER;
+
+                                                  
+  PROCEDURE CREAR_CLIENTE(pNO_CIA IN VARCHAR2,
+                          pCOD_CLIENTE_SIEBEL IN VARCHAR2,
+                          pGRUPO IN VARCHAR2,
+                          pTIPO_CLIENTE IN VARCHAR2,
+                          pNOMBRE IN VARCHAR2,
+                          pNOMBRE_COMERCIAL IN VARCHAR2,
+                          pDIRECCION IN VARCHAR2,
+                          pFecha_Ingre IN DATE,
+                          pExcento_Imp IN VARCHAR2,
+                          pMONEDA_LIMITE IN VARCHAR2,
+                                                    pTELEFONO IN VARCHAR2,
+                                                    pPLAZO IN Number,
+                                                    pCedula IN VARCHAR2,
+                                                    pCLIENTE_NACIONAL IN VARCHAR2,
+                                                    pIND_ACEPTA_RETENCION IN VARCHAR2,
+                                                    pEXENTO_IVA IN VARCHAR2,
+                                                    pTipoPrecio IN VARCHAR2,
+                                                    pCentro varchar2,
+                                                    pBALANCEFACTURA VARCHAR2,
+                                                    pNOMBRE_FISCAL VARCHAR2,
+                                                    PDIRECCION_FACTURA VARCHAR2,
+                                                    pFac_ANTICIPADO VARCHAR2,
+                                                    pCOD_CLIENTE_NAF IN OUT NUMBER,
+                                                    id_resultado IN OUT NUMBER,
+                                                    Desc_resultado IN OUT VARCHAR2);
+                              
+    PROCEDURE ASIGNAR_GRUPOFAC(pcia number, 
+                               pcliente number, 
+                               pUSUARIO_INGRESO VARCHAR2,
+                               pNOMBRE_FISCAL VARCHAR2,
+                               PDIRECCION_FACTURA VARCHAR2);
+                            
+    PROCEDURE ACTUALIZAR_CLIENTE(pNO_CIA IN VARCHAR2,
+                                pCOD_CLIENTE IN VARCHAR2,
+                                pNOMBRE IN VARCHAR2,
+                                pNOMBRE_COMERCIAL IN VARCHAR2,
+                                pDIRECCION IN VARCHAR2,
+                                pExcento_Imp IN VARCHAR2,
+                                pMONEDA_LIMITE IN VARCHAR2,
+                                pTELEFONO IN VARCHAR2,
+                                pPLAZO IN Number,
+                                pCedula IN VARCHAR2,
+                                pCLIENTE_NACIONAL IN VARCHAR2,
+                                pIND_ACEPTA_RETENCION IN VARCHAR2,
+                                pEXENTO_IVA IN VARCHAR2,
+                                pNOMBRE_FISCAL VARCHAR2,
+                                PDIRECCION_FACTURA VARCHAR2,
+                                pFac_ANTICIPADO VARCHAR2,        
+                                id_resultado IN OUT NUMBER,
+                                Desc_resultado IN OUT VARCHAR2);
+                                
+    PROCEDURE BAJA_CLIENTE(pNO_CIA IN VARCHAR2,
+                                pNO_CLIENTE IN VARCHAR2,
+                                pFECHA_BAJA date,
+                                pMOTIVO VARCHAR2,
+                                id_resultado IN OUT NUMBER,
+                                Desc_resultado IN OUT VARCHAR2);
+                                
+    FUNCTION OBTENER_CODANCHOBANDA(pCODEMPRESA NUMBER,
+                                   pCODPRODUCTO VARCHAR2,
+                                   pANCHO_BANDA VARCHAR2) return varchar2;
+    
+                             
+    PROCEDURE REGISTRO_DE_TRANSACCION(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                pCONTRATO    NUMBER,
+                                                pANEXO NUMBER,
+                                                pINSTALACION_SIEBEL VARCHAR2,
+                                                pNOTRANSACCION_SIEBEL VARCHAR2,
+                                                pTIPOSERVICIO VARCHAR2,
+                                                pCODTRANSACCION VARCHAR2,
+                                                pCODMONEDA VARCHAR2,
+                                                pDESCRIPCION VARCHAR2,
+                                                pCANTIDAD NUMBER,
+                                                pVINSTALACION NUMBER,
+                                                pVMENSUAL NUMBER,
+                                                pFECHA DATE,
+                                                pProducto Varchar2,
+                                                pPROXIMAFACTURA DATE,
+                                                pUSUARIO_INGRESO VARCHAR2,
+                                                pFECHA_INGRESO DATE,
+                                                pCODPRODUCTO VARCHAR2,
+                                                pCODANCHOBANDA VARCHAR2,
+                                                pCENTRO VARCHAR2,
+                                                pBODEGA VARCHAR2,
+                                                pANCHO_BANDA VARCHAR2,
+                                                pGEOGRAFIA_VENTA VARCHAR2,
+                                                pGEOGRAFIA_PUNTO_INI VARCHAR2,
+                                                pGEOGRAFIA_PUNTO_FIN VARCHAR2,
+                                                pACTIVO VARCHAR2,
+                                                pPUNTO_INICIO VARCHAR2,
+                                                pPUNTO_FINAL VARCHAR2,
+                                                pPAIS_INICIAL VARCHAR2,
+                                                pPAIS_FINAL VARCHAR2,
+                                                pPERIODO_INICIO NUMBER,
+                                                pSPLIT VARCHAR2,  -- P=padre, H=hijo, N= no aplica 
+                                                pINSTALACION_PADRE IN NUMBER, -- Numero de instalacion del padre cuando es split
+                                                pNOTRANSACCION_PADRE IN NUMBER, --Numero de transaccion del padre cuando es split
+                                                pCODEMPRESA_PADRE NUMBER, -- Codigo de empresa del padre cuand es split
+                                                pCODCLIENTE_PADRE NUMBER, -- Codigo del cliente padre cuando es split
+                                                pCODEMPRESA_NUEVA NUMBER, -- Nueva Empresa para la transaccion de cambio de cliente 'CC=cambio de cliente a enlace'
+                                                pCODCLIENTE_NUEVO NUMBER, -- Nuevo cliente para la transaccion de cambio de cliente 'CC=cambio de cliente a enlace'
+                                                pINSTALACION_NAF IN OUT NUMBER, 
+                                                pNOTRANSACCION_NAF IN OUT NUMBER, 
+                                                pId_BUNDLE VARCHAR2,
+                                                pAplicaDesc varchar2,
+                                                id_resultado IN OUT NUMBER,
+                                                Desc_resultado IN OUT VARCHAR2,
+                                                pFecha_ini_fac in out date, 
+                                                pIdSolucion Varchar2 Default Null);
+                                                
+    
+    PROCEDURE BAJA_DE_ENLACE(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                pINSTALACION NUMBER,
+                                                pNOTRANSACCION NUMBER,
+                                                pTIPOSERVICIO VARCHAR2,
+                                                pCODTRANSACCION VARCHAR2,
+                                                pFECHA_BAJA DATE,
+                                                pMOTIVO_BAJA VARCHAR2,
+                                                pENCARGADO_BAJA VARCHAR2,
+                                                id_resultado IN OUT NUMBER,
+                                                Desc_resultado IN OUT VARCHAR2);
+                                                
+    FUNCTION VALIDAR_ENLACE(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                pINSTALACION NUMBER,
+                                                pNOTRANSACCION NUMBER,
+                                                pTIPOSERVICIO VARCHAR2,
+                                                pTIPO_VALIDACION NUMBER -- 1=validar meses facturado; 2=facturas pendientes de pago
+                                                ) RETURN NUMBER;
+
+    PROCEDURE INFO_FACTURACION(pCODEMPRESA NUMBER,     -- Codigo de la empresa
+                                                pCODCLIENTE NUMBER,                -- Codigo del cliente
+                                                pINSTALACION NUMBER,            -- Codigo del enlace
+                                                pNOTRANSACCION NUMBER,    -- Numero de la orden de trabajo de la instalacion del enlace
+                                                pPROXIMAFACTURA IN OUT DATE, --Fecha de proxima factura en NAF
+                                                pVMENSUAL IN OUT NUMBER,     --Valor recurrente del enlace
+                                                id_resultado IN OUT NUMBER,  -- codigo del resultado de la consultado
+                                                Desc_resultado IN OUT VARCHAR2 -- Descripcion del resultado de la consulta
+                                                );
+                                                
+    FUNCTION VALIDA_EXENTO_IMP(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                PCLAVE VARCHAR2, --IV=Iva Venta , IC=Iva Compra
+                                                PMONTO NUMBER
+                                                ) RETURN NUMBER;
+
+    FUNCTION VALIDA_DIAS_GRACIA(
+                          pcia number,
+                          pfecha_ini date,
+                          pDias_Gracia NUMBER
+                          ) RETURN DATE;
+                          
+    FUNCTION GET_MSG_DESCRIPTION(ID_RESULTADO IN NUMBER) RETURN VARCHAR2;
+    
+    FUNCTION VERIFICA_DET_ERROR(pCODEMPRESA NUMBER,
+                            pCODCLIENTE NUMBER,
+                            pINSTALACION NUMBER,
+                            pNOTRANSACCION NUMBER,
+                            pCODTRANSACCION varchar2,
+                            pFECHA_BAJA DATE,
+                            Desc_resultado IN OUT VARCHAR2) RETURN NUMBER;
+                                                    
+END; -- PKG_FACT_NAF;
+/

File diff suppressed because it is too large
+ 1123 - 0
Script/PKG_FACT_NAF_SOL.pkb


+ 227 - 0
Script/PKG_FACT_NAF_SOL.pks

@@ -0,0 +1,227 @@
+CREATE OR REPLACE PACKAGE NAF47.PKG_FACT_NAF_SOL AS
+/******************************************************************************
+   NAME:       PKG_FACT_NAF_SOL
+   PURPOSE:
+
+   REVISIONS:
+   Ver        Date        Author           Description
+   ---------  ----------  ---------------  ------------------------------------
+   1.0        25/05/2016      Edgar Ajanel       1. Created this package.
+   2.0        27/11/2019  Innovare (HHGR/JAGV)  1. Adaptación del paquete para recibir soluciones
+******************************************************************************/
+
+  FUNCTION ULTIMO_TIPOCAMBIO(Pmoneda varchar2) RETURN NUMBER;
+
+  FUNCTION Existe_Cliente_Activo(pNO_CIA IN NUMBER,
+                                 pNO_CLIENTE IN NUMBER) RETURN NUMBER;
+
+
+  FUNCTION Existe_Cliente(pNO_CIA IN NUMBER,
+                          pNO_CLIENTE IN VARCHAR2,
+                          pNit VARCHAR2,
+                          pNOMBRE VARCHAR2) RETURN BOOLEAN;
+
+    FUNCTION DIFERENCIAL(pcia number,pcliente number,pInstalacion number,pnotransaccion number,pValorAct number,pCodMoneda VARCHAR2) RETURN NUMBER;
+
+    FUNCTION EXISTE_ENLACE_ACTIVO(pCODEMPRESA NUMBER,
+                                  pCODCLIENTE NUMBER,
+                                  pINSTALACION NUMBER,
+                                  pNOTRANSACCION NUMBER,
+                                  pCODTRANSACCION varchar2,
+                                  pGrupo_fac in out number,
+                                  pProducto in out number) RETURN BOOLEAN;
+
+    FUNCTION SIGUENTE_CORRELATIVO(PCIA NUMBER,popcion VARCHAR2) RETURN NUMBER;
+
+
+  PROCEDURE CREAR_CLIENTE(pNO_CIA IN VARCHAR2,
+                          pCOD_CLIENTE_SIEBEL IN VARCHAR2,
+                          pGRUPO IN VARCHAR2,
+                          pTIPO_CLIENTE IN VARCHAR2,
+                          pNOMBRE IN VARCHAR2,
+                          pNOMBRE_COMERCIAL IN VARCHAR2,
+                          pDIRECCION IN VARCHAR2,
+                          pFecha_Ingre IN DATE,
+                          pExcento_Imp IN VARCHAR2,
+                          pMONEDA_LIMITE IN VARCHAR2,
+                                                    pTELEFONO IN VARCHAR2,
+                                                    pPLAZO IN Number,
+                                                    pCedula IN VARCHAR2,
+                                                    pCLIENTE_NACIONAL IN VARCHAR2,
+                                                    pIND_ACEPTA_RETENCION IN VARCHAR2,
+                                                    pEXENTO_IVA IN VARCHAR2,
+                                                    pTipoPrecio IN VARCHAR2,
+                                                    pCentro varchar2,
+                                                    pBALANCEFACTURA VARCHAR2,
+                                                    pNOMBRE_FISCAL VARCHAR2,
+                                                    PDIRECCION_FACTURA VARCHAR2,
+                                                    pFac_ANTICIPADO VARCHAR2,
+                                                    pCOD_CLIENTE_NAF IN OUT NUMBER,
+                                                    id_resultado IN OUT NUMBER,
+                                                    Desc_resultado IN OUT VARCHAR2);
+
+    PROCEDURE ASIGNAR_GRUPOFAC(pcia number,
+                               pcliente number,
+                               pUSUARIO_INGRESO VARCHAR2,
+                               pNOMBRE_FISCAL VARCHAR2,
+                               PDIRECCION_FACTURA VARCHAR2);
+
+    PROCEDURE ACTUALIZAR_CLIENTE(pNO_CIA IN VARCHAR2,
+                                pCOD_CLIENTE IN VARCHAR2,
+                                pNOMBRE IN VARCHAR2,
+                                pNOMBRE_COMERCIAL IN VARCHAR2,
+                                pDIRECCION IN VARCHAR2,
+                                pExcento_Imp IN VARCHAR2,
+                                pMONEDA_LIMITE IN VARCHAR2,
+                                pTELEFONO IN VARCHAR2,
+                                pPLAZO IN Number,
+                                pCedula IN VARCHAR2,
+                                pCLIENTE_NACIONAL IN VARCHAR2,
+                                pIND_ACEPTA_RETENCION IN VARCHAR2,
+                                pEXENTO_IVA IN VARCHAR2,
+                                pNOMBRE_FISCAL VARCHAR2,
+                                PDIRECCION_FACTURA VARCHAR2,
+                                pFac_ANTICIPADO VARCHAR2,
+                                id_resultado IN OUT NUMBER,
+                                Desc_resultado IN OUT VARCHAR2);
+
+    PROCEDURE BAJA_CLIENTE(pNO_CIA IN VARCHAR2,
+                                pNO_CLIENTE IN VARCHAR2,
+                                pFECHA_BAJA date,
+                                pMOTIVO VARCHAR2,
+                                id_resultado IN OUT NUMBER,
+                                Desc_resultado IN OUT VARCHAR2);
+
+    FUNCTION OBTENER_CODANCHOBANDA(pCODEMPRESA NUMBER,
+                                   pCODPRODUCTO VARCHAR2,
+                                   pANCHO_BANDA VARCHAR2) return varchar2;
+
+
+    PROCEDURE REGISTRO_DE_TRANSACCION(pCODEMPRESA NUMBER,
+                                  pCODCLIENTE NUMBER,
+                                  pCONTRATO    NUMBER,
+                                  pANEXO NUMBER,
+                                  pINSTALACION_SIEBEL VARCHAR2,
+                                  pNOTRANSACCION_SIEBEL VARCHAR2,
+                                  pTIPOSERVICIO VARCHAR2,
+                                  pCODTRANSACCION VARCHAR2,
+                                  pCODMONEDA VARCHAR2,
+                                  pDESCRIPCION VARCHAR2,
+                                  pCANTIDAD NUMBER,
+                                  pVINSTALACION NUMBER,
+                                  pVMENSUAL NUMBER,
+                                  pFECHA DATE,
+                                  pProducto Varchar2,
+                                  pPROXIMAFACTURA DATE,
+                                  pUSUARIO_INGRESO VARCHAR2,
+                                  pFECHA_INGRESO DATE,
+                                  pCODPRODUCTO VARCHAR2,
+                                  pCODANCHOBANDA VARCHAR2,
+                                  pCENTRO VARCHAR2,
+                                  pBODEGA VARCHAR2,
+                                  pANCHO_BANDA VARCHAR2,
+                                  pGEOGRAFIA_VENTA VARCHAR2,
+                                  pGEOGRAFIA_PUNTO_INI VARCHAR2,
+                                  pGEOGRAFIA_PUNTO_FIN VARCHAR2,
+                                  pACTIVO VARCHAR2,
+                                  pPUNTO_INICIO VARCHAR2,
+                                  pPUNTO_FINAL VARCHAR2,
+                                  pPAIS_INICIAL VARCHAR2,
+                                  pPAIS_FINAL VARCHAR2,
+                                  pPERIODO_INICIO NUMBER,
+                                  pSPLIT VARCHAR2,  -- P=padre, H=hijo, N= no aplica
+                                  pINSTALACION_PADRE IN NUMBER, -- Numero de instalacion del padre cuando es split
+                                  pNOTRANSACCION_PADRE IN NUMBER, --Numero de transaccion del padre cuando es split
+                                  pCODEMPRESA_PADRE NUMBER, -- Codigo de empresa del padre cuand es split
+                                  pCODCLIENTE_PADRE NUMBER, -- Codigo del cliente padre cuando es split
+                                  pCODEMPRESA_NUEVA NUMBER, -- Nueva Empresa para la transaccion de cambio de cliente 'CC=cambio de cliente a enlace'
+                                  pCODCLIENTE_NUEVO NUMBER, -- Nuevo cliente para la transaccion de cambio de cliente 'CC=cambio de cliente a enlace'
+                                  pINSTALACION_NAF IN OUT NUMBER,
+                                  pNOTRANSACCION_NAF IN OUT NUMBER,
+                                  pId_BUNDLE VARCHAR2,
+                                  pAplicaDesc varchar2,
+                                  id_resultado IN OUT NUMBER,
+                                  Desc_resultado IN OUT VARCHAR2,
+                                  pFecha_ini_fac in out date,
+                                  /*Parámetros para el proyecto de Soluciones*/
+                                  FechaPactada IN DATE, 
+                                  TipoFactura IN VARCHAR2, 
+                                  NombreSucursal IN VARCHAR2, 
+                                  DireccionLineaUno IN VARCHAR2,  
+                                  DireccionLineaDos IN VARCHAR2,  
+                                  DireccionLineaTres IN VARCHAR2, 
+                                  Pais IN VARCHAR2, 
+                                  Departamento IN VARCHAR2, 
+                                  Municipio IN VARCHAR2, 
+                                  pIDsolucion IN VARCHAR2,
+                                  DetalleFactura IN VARCHAR2, 
+                                  PagoUnico IN VARCHAR2, 
+                                  Plazo IN NUMBER   );
+
+
+    PROCEDURE BAJA_DE_ENLACE(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                pINSTALACION NUMBER,
+                                                pNOTRANSACCION NUMBER,
+                                                pTIPOSERVICIO VARCHAR2,
+                                                pCODTRANSACCION VARCHAR2,
+                                                pFECHA_BAJA DATE,
+                                                pMOTIVO_BAJA VARCHAR2,
+                                                pENCARGADO_BAJA VARCHAR2,
+                                                id_resultado IN OUT NUMBER,
+                                                Desc_resultado IN OUT VARCHAR2);
+
+    FUNCTION VALIDAR_ENLACE(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                pINSTALACION NUMBER,
+                                                pNOTRANSACCION NUMBER,
+                                                pTIPOSERVICIO VARCHAR2,
+                                                pTIPO_VALIDACION NUMBER -- 1=validar meses facturado; 2=facturas pendientes de pago
+                                                ) RETURN NUMBER;
+
+    PROCEDURE INFO_FACTURACION(pCODEMPRESA NUMBER,     -- Codigo de la empresa
+                                                pCODCLIENTE NUMBER,                -- Codigo del cliente
+                                                pINSTALACION NUMBER,            -- Codigo del enlace
+                                                pNOTRANSACCION NUMBER,    -- Numero de la orden de trabajo de la instalacion del enlace
+                                                pPROXIMAFACTURA IN OUT DATE, --Fecha de proxima factura en NAF
+                                                pVMENSUAL IN OUT NUMBER,     --Valor recurrente del enlace
+                                                id_resultado IN OUT NUMBER,  -- codigo del resultado de la consultado
+                                                Desc_resultado IN OUT VARCHAR2 -- Descripcion del resultado de la consulta
+                                                );
+
+    FUNCTION VALIDA_EXENTO_IMP(pCODEMPRESA NUMBER,
+                                                pCODCLIENTE NUMBER,
+                                                PCLAVE VARCHAR2, --IV=Iva Venta , IC=Iva Compra
+                                                PMONTO NUMBER
+                                                ) RETURN NUMBER;
+
+    FUNCTION VALIDA_DIAS_GRACIA(
+                          pcia number,
+                          pfecha_ini date,
+                          pDias_Gracia NUMBER
+                          ) RETURN DATE;
+
+    FUNCTION GET_MSG_DESCRIPTION(ID_RESULTADO IN NUMBER) RETURN VARCHAR2;
+
+    FUNCTION VERIFICA_DET_ERROR(pCODEMPRESA NUMBER,
+                            pCODCLIENTE NUMBER,
+                            pINSTALACION NUMBER,
+                            pNOTRANSACCION NUMBER,
+                            pCODTRANSACCION varchar2,
+                            pFECHA_BAJA DATE,
+                            Desc_resultado IN OUT VARCHAR2) RETURN NUMBER;
+PROCEDURE GENERA_COBRO_INS(pCODEMPRESA NUMBER,
+                           pCODCLIENTE NUMBER,
+                           pINSTALACION_NAF NUMBER,
+                           pNOTRANSACCION_NAF NUMBER,
+                           pTIPOSERVICIO VARCHAR2,
+                           pVINSTALACION NUMBER
+                           /*Para el uso de soluciones*/
+                           ,pIdSolucion Varchar2 Default Null);                             
+
+PROCEDURE CANCELA_ACTIVOS_PAGO_UNICO(PCODEMPRESA IN NUMBER, 
+                                     PCODCLIENTE IN NUMBER, 
+                                     PINSTALACION IN NUMBER, 
+                                     PFECHAFACTURA IN DATE);
+END; -- PKG_FACT_NAF_SOL;
+/

+ 67 - 0
Script/SSO_ADENDA.sql

@@ -0,0 +1,67 @@
+ALTER TABLE NAF47.SSO_ADENDA
+ DROP PRIMARY KEY CASCADE;
+
+DROP TABLE NAF47.SSO_ADENDA CASCADE CONSTRAINTS;
+
+CREATE TABLE NAF47.SSO_ADENDA
+(
+  IDSOLUCION     VARCHAR2(20 BYTE),
+  TIPOADENDA     VARCHAR2(25 BYTE),
+  ACTIVOSCRM     NUMBER,
+  ACTIVOSNAF     NUMBER,
+  CODEMPRESA     NUMBER,
+  CODCLIENTE     NUMBER,
+  INSTALACION    NUMBER,
+  TIPOSERVICIO   VARCHAR2(5 BYTE),
+  NOTRANSACCION  NUMBER
+)
+TABLESPACE NAF47
+RESULT_CACHE (MODE DEFAULT)
+PCTUSED    0
+PCTFREE    10
+INITRANS   1
+MAXTRANS   255
+STORAGE    (
+            MAXSIZE          UNLIMITED
+            PCTINCREASE      0
+            BUFFER_POOL      DEFAULT
+            FLASH_CACHE      DEFAULT
+            CELL_FLASH_CACHE DEFAULT
+           )
+LOGGING 
+NOCOMPRESS 
+NOCACHE
+NOPARALLEL
+MONITORING;
+
+
+CREATE UNIQUE INDEX NAF47.PK_SSO_ADENDA ON NAF47.SSO_ADENDA
+(IDSOLUCION, CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, 
+NOTRANSACCION)
+LOGGING
+TABLESPACE NAF47
+PCTFREE    10
+INITRANS   2
+MAXTRANS   255
+STORAGE    (
+            MAXSIZE          UNLIMITED
+            PCTINCREASE      0
+            BUFFER_POOL      DEFAULT
+            FLASH_CACHE      DEFAULT
+            CELL_FLASH_CACHE DEFAULT
+           )
+NOPARALLEL;
+
+
+ALTER TABLE NAF47.SSO_ADENDA ADD (
+  CONSTRAINT PK_SSO_ADENDA
+  PRIMARY KEY
+  (IDSOLUCION, CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, NOTRANSACCION)
+  USING INDEX NAF47.PK_SSO_ADENDA
+  ENABLE VALIDATE);
+
+ALTER TABLE NAF47.SSO_ADENDA ADD (
+  CONSTRAINT FK_SSO_ADENDA_1 
+  FOREIGN KEY (CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, NOTRANSACCION) 
+  REFERENCES NAF47.SSO_FDIN (CODEMPRESA,CODCLIENTE,INSTALACION,TIPOSERVICIO,NOTRANSACCION)
+  ENABLE VALIDATE);

+ 78 - 0
Script/SSO_FDIN_DET_SOL.sql

@@ -0,0 +1,78 @@
+ALTER TABLE NAF47.SSO_FDIN_DET_SOL
+ DROP PRIMARY KEY CASCADE;
+
+DROP TABLE NAF47.SSO_FDIN_DET_SOL CASCADE CONSTRAINTS;
+
+CREATE TABLE NAF47.SSO_FDIN_DET_SOL
+(
+  ID_SOLUCION     VARCHAR2(20 BYTE),
+  CODEMPRESA      NUMBER,
+  CODCLIENTE      NUMBER,
+  INSTALACION     NUMBER,
+  TIPOSERVICIO    VARCHAR2(5 BYTE),
+  NOTRANSACCION   NUMBER,
+  TIPOFACTURA     VARCHAR2(200 BYTE),
+  NOMBRESUCURSAL  VARCHAR2(400 BYTE),
+  DIRECCIÓN       VARCHAR2(4000 BYTE),
+  PAIS            VARCHAR2(400 BYTE),
+  DEPARTAMENTO    VARCHAR2(400 BYTE),
+  MUNICIPIO       VARCHAR2(400 BYTE),
+  IDBUNDLE        VARCHAR2(200 BYTE),
+  DETALLEFACTURA  VARCHAR2(100 BYTE),
+  PAGOUNICO       VARCHAR2(1 BYTE),
+  PLAZO           NUMBER
+)
+TABLESPACE NAF47
+RESULT_CACHE (MODE DEFAULT)
+PCTUSED    0
+PCTFREE    10
+INITRANS   1
+MAXTRANS   255
+STORAGE    (
+            MAXSIZE          UNLIMITED
+            PCTINCREASE      0
+            BUFFER_POOL      DEFAULT
+            FLASH_CACHE      DEFAULT
+            CELL_FLASH_CACHE DEFAULT
+           )
+LOGGING 
+NOCOMPRESS 
+NOCACHE
+NOPARALLEL
+MONITORING;
+
+
+CREATE UNIQUE INDEX NAF47.PK_SSO_SDIN_DET_SOL ON NAF47.SSO_FDIN_DET_SOL
+(ID_SOLUCION, CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, 
+NOTRANSACCION)
+LOGGING
+TABLESPACE NAF47
+PCTFREE    10
+INITRANS   2
+MAXTRANS   255
+STORAGE    (
+            MAXSIZE          UNLIMITED
+            PCTINCREASE      0
+            BUFFER_POOL      DEFAULT
+            FLASH_CACHE      DEFAULT
+            CELL_FLASH_CACHE DEFAULT
+           )
+NOPARALLEL;
+
+
+ALTER TABLE NAF47.SSO_FDIN_DET_SOL ADD (
+  CONSTRAINT PK_SSO_SDIN_DET_SOL
+  PRIMARY KEY
+  (ID_SOLUCION, CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, NOTRANSACCION)
+  USING INDEX NAF47.PK_SSO_SDIN_DET_SOL
+  ENABLE VALIDATE);
+
+ALTER TABLE NAF47.SSO_FDIN_DET_SOL ADD (
+  CONSTRAINT FK1_SSO_SDIN_DET_SOL 
+  FOREIGN KEY (ID_SOLUCION, CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, NOTRANSACCION) 
+  REFERENCES NAF47.SSO_ADENDA (IDSOLUCION,CODEMPRESA,CODCLIENTE,INSTALACION,TIPOSERVICIO,NOTRANSACCION)
+  ENABLE VALIDATE,
+  CONSTRAINT FK2_SSO_FDIN 
+  FOREIGN KEY (CODEMPRESA, CODCLIENTE, INSTALACION, TIPOSERVICIO, NOTRANSACCION) 
+  REFERENCES NAF47.SSO_FDIN (CODEMPRESA,CODCLIENTE,INSTALACION,TIPOSERVICIO,NOTRANSACCION)
+  ENABLE VALIDATE);