Ejemplo de caso de uso:
ASUNTO - ERROR AL INTENTAR CARGAR LAS TASAS DE INTERÉS (CORRIENTE Y MORATORIO) EN LA OPCIÓN DEL @CCESO CABAL SOCIOS/PARAMETROS EMISOR/TASAS DE INTERES/CONFIGURAR TASAS
SOLICITUD: generar espacio en la opción que permita cargar al emisor.
Se debe ejecutar la siguiente función para un solo parametro:
| Code Block | ||||
|---|---|---|---|---|
| ||||
begin
-- Call the function
:result := f_get_param_interes_del(fn_emisor => :fn_emisor,
fn_cod_prm => :fn_cod_prm);
end; |
Se debe ejecutar el siguiente query para mas de un parámetro.
| Code Block | ||||
|---|---|---|---|---|
| ||||
declare
vn_emisor number := 52;-- Se debe editar el código de entidad.
vc_cursor sys_refcursor;
vc_registro varchar2(4000);
vn_cantidad number;
vn_total number;
procedure pl_cantidad(np_emisor in number, np_codigo in number) as
begin
vn_cantidad := 0;
vc_cursor := f_get_param_interes_del(np_emisor, np_codigo);
fetch vc_cursor
into vc_registro;
while vc_cursor%found loop
vn_cantidad := vn_cantidad + 1;
fetch vc_cursor
into vc_registro;
end loop;
vn_total := vn_total + vn_cantidad;
end;
begin
vn_total := 0;
for r in (SELECT *
FROM PRM_PARAMETROS A
WHERE lower(A.DESC_PRM) LIKE '%inter%'--Se debe de cambiar la palabra clave para buscar los cod_prm
and a.cod_prm IN (2 --B-Tasa de interes corriente
,
3 --C-Tasa de interes moratorio
,
16 --Tasa de interes sobre compras
,
31 --E-Tasa de interes cuotas - PLAN NORMAL
,
34 --V-Tasa de interés punitorio
,
59 --Tasa interes cuotas - PLAN 1RA. CUOTA A PLAZOS
,
60 --Tasa interes cuotas - PLAN SALUD
)--- Se deben de editar los códigos de parámetros que se desea resguardar y eliminar. Esto en caso de querer realizarlo en mas de uno
ORDER BY A.COD_PRM) loop
pl_cantidad(vn_emisor, r.cod_prm);
dbms_output.put_line(lpad('-', 80, '-'));
dbms_output.put_line('-- COD_PRM=' || r.cod_prm || ' ' || r.desc_prm ||
' Cantidad Eliminados:' || vn_cantidad);
dbms_output.put_line(lpad('-', 80, '-'));
vc_cursor := f_get_param_interes_del(vn_emisor, r.cod_prm);
fetch vc_cursor
into vc_registro;
while vc_cursor%found loop
dbms_output.put_line(vc_registro);
fetch vc_cursor
into vc_registro;
end loop;
end loop;
dbms_output.put_line(lpad('-', 80, '-'));
dbms_output.put_line('-- TOTAL Cantidad Eliminados:' || vn_total);
dbms_output.put_line(lpad('-', 80, '-'));
end; |
Pasos a realizar:
- Para ejecutar esta función debemos ingresar a la BD PROD con el usuario CREDITOPY,
- e ir a donde se encuentra ubicada la función ubicada(dentro de la carpeta Functions),
- damos un clic derecho sobre la función y luego,
- clic sobre la opción "TEST",
- ingresamos los parámetros de emisor y cod_prm y lo ejecutamos, este nos devuelve como resultado las sentencias de inserción,
- las cuales tenemos que exportar en un archivo SQL,
- para luego ejecutarlas en BAPY PROD.
| Code Block | ||||||||
|---|---|---|---|---|---|---|---|---|
| ||||||||
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'A';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'A';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'B';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'B';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'C';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'C';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'D';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'D';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'E';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'E';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'F';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'F';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'G';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'G';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'H';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'H';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'I';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'I';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'J';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'J';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'K';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'K';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'L';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'L';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'M';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'M';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'N';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'N';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'O';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'O';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'P';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'P';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'Q';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'Q';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'R';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'R';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'S';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'S';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'T';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'T';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'U';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'U';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'V';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'V';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'W';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'W';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'X';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'X';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'Y';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = 'Y';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '0';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '0';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '1';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '1';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '2';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '2';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '3';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '3';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '4';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '4';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '5';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '5';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '6';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '6';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '7';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '7';
insert into creditopy.PRM_CODIGOS_VALORES_HIST
(emisor, cod_prm, cod_valor_prm, valor_prm, fecha_insercion)
select D.EMISOR, D.COD_PRM, D.COD_VALOR_PRM, D.VALOR_PRM, SYSDATE
from creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '8';
delete creditopy.PRM_CODIGOS_VALORES D
where D.EMISOR = 40
AND D.COD_PRM = 2
AND D.COD_VALOR_PRM = '8'; |
Obs.: Toda acción que no sea de consulta dentro de BAPY PROD debemos pedir a algún compañero de TI que las ejecute.

