Page tree
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

DimoSecurity  BBDD- v1.0.0.0

AutorManuel Baez
Fecha

 

Estado
  • PENDIENTE
  • IMPLEMENTADO
Ambiente
  • PRE-PRODUCCION
  • PRODUCCION

REGISTRO DE CAMBIOS

  1. CREAR UN PKG EN PROD.

OBJETOS AFECTADOS

  1. BBDD BAPY@CREDITOPY (10.5.3.5:1521)

PRE-REQUISITOS

IMPLEMENTACION

  1. EJECUTAR EN LA BBDD DE BAPY@CREDITOPY (10.5.3.5:1521) EL SGTE QUERY:
CREAR CABECERA DEL PAQUETE
CREATE OR REPLACE PACKAGE PKG_DIMO_SECURITY IS
  PROCEDURE PR_VALIDAR_TOKEN_TARJ (
    P_NUM_TARJ IN NUMBER,
    P_AFINIDAD OUT NUMBER,
    P_EMISOR OUT NUMBER,
    P_VINCULADO OUT NUMBER,
    P_DOCUMENTO OUT VARCHAR2,
    P_VINC_DESC OUT VARCHAR2
  );
END PKG_DIMO_SECURITY;
CREAR BODY DEL PAQUETE
CREATE OR REPLACE PACKAGE BODY PKG_DIMO_SECURITY IS
  PROCEDURE PR_VALIDAR_TOKEN_TARJ (
    P_NUM_TARJ IN NUMBER,
    P_AFINIDAD OUT NUMBER,
    P_EMISOR OUT NUMBER,
    P_VINCULADO OUT NUMBER,
    P_DOCUMENTO OUT VARCHAR2,
    P_VINC_DESC OUT VARCHAR2
  ) IS
    V_VALIDAR NUMBER;
    P_TARJ_ENCRI VARCHAR2(100); -- Declarar la variable que faltaba
  BEGIN
    
    SELECT CREDITOPY.FC_PAN2CRIPTO(P_NUM_TARJ)
    INTO P_TARJ_ENCRI
    FROM DUAL;
    
    
    -- Primera consulta corregida (remover la coma antes de INTO)
    SELECT T.EMISOR,
           T.DOCUMENTO,
           T.GRUPO_AFINIDAD
    INTO P_EMISOR, P_DOCUMENTO, P_AFINIDAD
    FROM CREDITOPY.TARJETAS T
    WHERE T.TARJETA = P_TARJ_ENCRI;

    P_DOCUMENTO := TO_CHAR(TO_NUMBER(SUBSTR(P_DOCUMENTO, 4)));
    
    BEGIN
    -- Tercera consulta
       SELECT ESTADO
       INTO V_VALIDAR
       FROM CREDITOPY.DIMO_TC_VINC_PROCESO dtvp
       WHERE dtvp.DOCUMENTO = P_DOCUMENTO
        AND dtvp.TARJETA = P_TARJ_ENCRI
        AND ROWNUM = 1
        ORDER BY dtvp.fecha_hora_ins DESC;
    EXCEPTION
        WHEN NO_DATA_FOUND THEN
            V_VALIDAR := 3;  -- Si no se encuentra ninguna fila, asigna el valor 3
    END;

    -- Estructura condicional IF en lugar de CASE
  CASE V_VALIDAR
      WHEN 0 THEN
          P_VINCULADO := 0;
          P_VINC_DESC := 'EL USUARIO NO COMPLETO EL INTENTO';
      WHEN 1 THEN
          P_VINCULADO := 1;
          P_VINC_DESC := 'EL USUARIO VINCULO CORRECTAMENTE';
      WHEN 2 THEN
          P_VINCULADO := 0;
          P_VINC_DESC := 'EL USUARIO FALLO EN RESPONDER LAS PREGUNTAS DE SEGURIDAD';
      ELSE
          P_VINCULADO := 0;
          P_VINC_DESC := 'EL USUARIO AUN NO INTENTO VINCULAR';
  END CASE;
    
  END PR_VALIDAR_TOKEN_TARJ;
END PKG_DIMO_SECURITY;


ROLLBACK

  1. NO POSEE ROLLBACK



  • No labels