...
- Asignar las variables declaradas en su campo correspondiente PASO 2.
- Crear y asignar variable para el PASO 3.
- Crear y asignar variables para el PASO 5.
Declaración de cabecera y cierre del script completo
Dentro de la declaración de cabecera se declaran las variables a las cuales se le asignan los valores que se encuentran en el documento xlsx de alta de entidad provisto por los compañeros de entidades u operaciones, el cual menciona los valor a ser utilizados por la entidad para los parámetros de sus tarjetas de creditocrédito.
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Declaración de cabecera y cierre |
---|
linenumbers | true |
---|
collapse | true |
---|
|
declare
pi_emisor number;
pi_descripcion VARCHAR2(100);
pi_ruc_emisor VARCHAR2(16);
pi_direccion VARCHAR2(100);
pi_telefono VARCHAR2(100);
pi_contacto VARCHAR2(100);
pi_email_contacto VARCHAR2(100);
pi_debcta_s_n CHAR(1);
pi_seguro_vida_s_n CHAR(1);
pi_calc_impuesto_s_n CHAR(1);
pi_tasa_int_punit NUMBER;
pi_cuotas_financi_s_n CHAR(1);
pi_calculo_interes_s_n CHAR(1);
pi_decaimeinto_compulsi_s_n CHAR(1);
pi_apli_comis_mora_s_n CHAR(1);
pi_apli_comis_combus_s_n CHAR(1);
pi_apli_comis_super_s_n CHAR(1);
pi_apli_comis_adelefect_s_n CHAR(1);
pi_apli_comis_exceso_s_n CHAR(1);
pi_apli_entrega_extracto_s_n CHAR(1);
pi_apli_compra_ext_s_n CHAR(1);
pi_valida_mora_debaut_s_n CHAR(1);
pi_dias_perm_mora_debaut NUMBER;
pi_debita_cta_comercio_s_n CHAR(1);
pi_afinidad number := 0;
pi_cartera number := 0;
pi_tasa_interes_corriente number;
pi_tasa_plan_normal number;
pi_tasa_interes_moratorio number;
pi_tasa_interes_punitorio number;
pi_comision_ATM NUMBER;
pi_comision_Ventanilla NUMBER;
pi_aplica_s_n CHAR(1);
pi_monto_cargo number;
pi_cantidad_TRX_ATM NUMBER;
pi_cantidad number;
pi_aplica_seguro_fraude_s_n CHAR(1);
pi_aplica_seguro_vida_s_n CHAR(1);
pi_aplica_costo_emision NUMBER;
pi_montocostoemi_titu NUMBER;
pi_montocostoemi_adic NUMBER;
pi_cantcuotas_emision number;
pi_financiar_costorenov_s_n CHAR(1);
pi_cargo_anual_titular number;
pi_cargo_anual_adicional number;
po_retorno varchar2(512);
pi_aplica_costo_renovacion NUMBER;--1-AL GENERAR/2-AL ACTIVAR/0-NO APLICA
pi_montocostorenov_titu number;
pi_montocostorenov_adic number;
pi_cant_cuotas_renovacion number;
pi_financiar_costo_renov_s_n CHAR(1);
pi_porcentaje_pm number;
pi_importe_monto_pm number;
pi_aplica_comision_x_mora CHAR(1);
pi_aplica_cargo_x_exceso_s_n CHAR(1);
pi_aplica_cargo_com_exte_s_n CHAR(1);
pi_monto_cargo_com_exterior number;
pi_dias_mora_inhabilitar number;
pi_saldo_mora_inhabilitar number;
pi_dias_mora_bloq_auto number;
pi_saldo_mora_bloq_auto number;
pi_cargo_mora_inhabilitar number;
pi_porcen_cargo_excesolc number;
pi_usuario varchar2(8):= 'CEIBO';
vc_bandera varchar2(512);
VC_PROMOTOR varchar2(20);
VC_BIN VARCHAR2(16);
VC_BIN_CRIPTO VARCHAR2(16);
VC_BIN_EMISOR VARCHAR2(20);
VN_BIN_ID NUMBER(8);
vc_sftp_entidad varchar2(20);
vn_id_admin number;
vn_lc_minima number;
vn_lc_maximo number;
vc_linea_unificada char(1);
vc_descuenta_cuota char(1);
begin
pi_emisor :=125;
VC_PROMOTOR :='COOP. REDUCTO LTDA.';
VC_BIN := '604394';
VC_BIN_EMISOR := 'COOP. REDUCTO LTDA.';
VN_BIN_ID := 201;
vc_sftp_entidad := 'COOP. REDUCTO LTDA.';
vn_lc_minima := 500000;
vn_lc_maximo := 50000000;
vc_linea_unificada :='1';
vc_descuenta_cuota := '0';
pi_descripcion:='COOP. REDUCTO LTDA.';
pi_ruc_emisor:='80018850-0';
pi_direccion:='AV. LA VICTORIA C/ JUAN PABLO II';
pi_telefono:='21595000';
pi_contacto:='MG. ANGELA MARTINEZ';
pi_email_contacto:='amartinez@coopreducto.coop.py';
pi_debcta_s_n:='N';
pi_seguro_vida_s_n:='S';
pi_calc_impuesto_s_n:='N';
pi_tasa_int_punit:=30;
pi_cuotas_financi_s_n:='N';
pi_calculo_interes_s_n:='S';
pi_decaimeinto_compulsi_s_n:='N';
pi_apli_comis_mora_s_n:='S';
pi_apli_comis_combus_s_n:='N';
pi_apli_comis_super_s_n:='N';
pi_apli_comis_adelefect_s_n:='S';
pi_apli_comis_exceso_s_n:='S';
pi_apli_entrega_extracto_s_n:='N';
pi_apli_compra_ext_s_n:='N';
pi_valida_mora_debaut_s_n:='S';
pi_dias_perm_mora_debaut:=40;
pi_debita_cta_comercio_s_n:='N';
pi_tasa_interes_corriente :=17;
pi_tasa_plan_normal :=17;
pi_tasa_interes_moratorio :=17;
pi_tasa_interes_punitorio :=5.1;
pi_comision_ATM := 6;
pi_comision_Ventanilla := 8.5;
pi_aplica_s_n :='S';
pi_monto_cargo :=0;
pi_cantidad_TRX_ATM :=0;
pi_aplica_seguro_fraude_s_n := 'N';
pi_aplica_seguro_vida_s_n :='S';
pi_montocostoemi_titu :=0;
pi_montocostoemi_adic :=100000;
pi_cantcuotas_emision :=2;
pi_financiar_costorenov_s_n :='S';
pi_aplica_costo_emision := 2;
pi_cargo_anual_titular :=130000;
pi_cargo_anual_adicional :=130000;
pi_aplica_costo_renovacion :=2;
pi_montocostorenov_titu :=100000;
pi_montocostorenov_adic :=100000;
pi_cant_cuotas_renovacion :=2;
pi_financiar_costo_renov_s_n :='S';
pi_porcentaje_pm :=10;
pi_importe_monto_pm :=50000;
pi_aplica_comision_x_mora :='S';
pi_aplica_cargo_x_exceso_s_n := 'S';
pi_aplica_cargo_com_exte_s_n :='N';
pi_monto_cargo_com_exterior :=0;
pi_dias_mora_inhabilitar :=10;
pi_saldo_mora_inhabilitar :=1;
pi_dias_mora_bloq_auto :=30;
pi_saldo_mora_bloq_auto :=1;
pi_cargo_mora_inhabilitar :=15000;
pi_porcen_cargo_excesolc :=1.5;
SELECT FC_PAN2CRIPTO@bapy(RPAD(VC_BIN,16,'F')) bin
INTO VC_BIN_CRIPTO
from dual;
vn_id_admin:=79;
/*------------------------------------------
Luego aquí van los pasos expuestos mas abajo
------------------------------------------*/
end; |
...
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Cierres |
---|
linenumbers | true |
---|
collapse | true |
---|
|
-- =============== 3. CIERRES ================ --
vc_bandera := '3. CIERRES';
DBMS_OUTPUT.put_line(pi_emisor||';'||vc_bandera||';cierres;Registrado!');
insert into cierres (emisor, PRODUCTO, CIERRE, DIA, ultimo_periodo_cerrado)
values (pi_emisor, 1, 4, 25, 202308); |
Paso 4 - Cierres Habilitados
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Cierres Habilitados |
---|
linenumbers | true |
---|
collapse | true |
---|
|
-- =============== 4. CIERRES_HABILITADOS ================ --
vc_bandera := '4. CIERRES_HABILITADOS';
DBMS_OUTPUT.put_line(pi_emisor||';'||vc_bandera||';cierres_habilitados;Registrado!');
insert into cierres_habilitados (EMISOR, PRODUCTO, CIERRE, CLASE_TARJETA, GRUPO_AFINIDAD)
values (pi_emisor, 1, 4, 1, pi_emisor||'001'); |
Paso 5 - Calendario Cierres
Para esta sección, tomamos un emisor base que ya tenga parametrizado su calendario cierre, el emisor base elegido debe ser del mismo ciclo solicitado por la nueva entidad emisora.
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Calendario Cierres |
---|
linenumbers | true |
---|
collapse | true |
---|
|
insert into calendario_cierres
select distinct
ga.emisor,
cc.producto,
cc.cierre,
cc.periodo,
ga.grupo_afinidad,
cc.fecha_cierre,
cc.fecha_vencimiento
from calendario_cierres cc, grupos_afinidad ga
where cc.emisor = 119 --EMISOR_BASE
and ga.emisor = 125 --NUEVO_EMISOR
and cc.cierre = 4 --CICLO LIQUIDACION
and cc.periodo >= 202301;--PERIODO ACTUAL |
Paso 6 - Variables de Entorno - CREDITOPY.VARIABLES_ENTORNO
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Variables de entorno |
---|
linenumbers | true |
---|
collapse | true |
---|
|
-- =============== 6. VARIABLES ENTORNOS ================ -- --############################################################################################
vc_bandera := '6. VARIABLES ENTORNOS';
DBMS_OUTPUT.put_line(pi_emisor||';'||vc_bandera||';variables_entorno;Registrado!');
insert into CREDITOPY.variables_entorno (EMISOR, PRODUCTO, CIERRE, GRUPO_AFINIDAD, FECHA_CIERRE, FECHA_VENCIMIENTO, FECHA_CIERRE_ANT, FECHA_VENCIMIENTO_ANT, PERIODO_CIERRE, PERIODO_CIERRE_ANT)
values (pi_emisor, 1, 4, pi_emisor||'001', to_date('25-08-2023', 'dd-mm-yyyy'), to_date('08-09-2023', 'dd-mm-yyyy'), to_date('03-08-2023', 'dd-mm-yyyy'), to_date('11-08-2023', 'dd-mm-yyyy'), 202308, 202307);
|
Paso 7 - Variables de Entorno - CREDITOPY.PRM_CARTERAS
Code Block |
---|
language | sql |
---|
theme | Eclipse |
---|
title | Variables de entorno |
---|
linenumbers | true |
---|
collapse | true |
---|
|
-- =============== 7. VARIABLES ENTORNOS ================ --
vc_bandera := '7. VARIABLES ENTORNOS';
DBMS_OUTPUT.put_line(pi_emisor||';'||vc_bandera||';variables_entorno;Registrado!');
insert into prm_carteras (EMISOR, PRODUCTO, GRUPO_AFINIDAD, CARTERA, COD_PRM, VALOR_PRM)
values (pi_emisor, 1, pi_emisor||'001', 1, 1, 'C'); |