Professional Documents
Culture Documents
CARGA DE ARCHIVOS
1. STG
Para generar las bases con la información de Reserva se han identificado las tablas que se van a
utilizar para el desarrollo de acuerdo con la fuente de extracción.
Las tablas que se están utilizando en SQN_STG_RESERVAS son las siguientes:
SYBASE
PV_HEADER
TTIPO_ENDO
TGRUPO_ENDO
TTIPO_AGENTE
TTIPO_DOC
MPERSONA
TRAMO
RAMO_GERENCIAL
TTIPO_RAMO
MASEG
TCAUSA_STRO
TMUNICIPIO
TCANTON
TDPTO
TREGION
TPAIS
TSUC
TSECTOR
TUSUARIO
TTIPO_PRES
TESPECIALIDAD
MPRES
TTIPO_ASEG
MASEG_HEADER
TMONEDA
STRO_HEADER
TCOD_ESTIM
1
Los Jobs que se están utilizando en la malla SISE_SP_SINIESTROS_MENSUAL son los siguientes:
STG
JOB_SPI_CIERRE_SINIESTROS_ESTIMACIONES
JOB_SP_CIERRE_SINIESTRO
SISE_STG_EXT_CIERRE_SINIESTRO_ESTIM_D
STG
TMP_RESERVAS_TRANS
Una vez definida las tablas, se procede a la verificación de los posibles catálogos que se debían
crear:
El catálogo BIEN_SINIESTRADO, esta formado de manera secuencial y su descripción está compuesta por
IdStro y BienSiniestrado (IdStro_BienSiniestrado).
CATÁLOGO
NOMBRE ORIGEN
SISE_STG_EXT_CATALOGO_BIEN_STRADO BIEN_SINIESTRADO
2. SOR
Una vez identificadas la tabla utilizada en el desarrollo se genera el respectivo codigo:
TABLA 1. SPI_RESERVA_STROS_CBLE_STR
FUENTE STG
CREATE OR REPLACE PROCEDURE
ADMIN.SPI_RESERVA_STROS_CBLE_STR(DATE, NATIONAL CHARACTER
VARYING(30), NATIONAL CHARACTER VARYING(1))
RETURNS CHARACTER VARYING(ANY)
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE
fecha_proceso ALIAS FOR $1;
usuario ALIAS FOR $2;
ramo ALIAS FOR $3;
fecha_desde date;
anioi integer;
aniof integer;
mesi integer;
mesf integer;
periodoi numeric(6,0);
periodof numeric(6,0);
vig_des_cal date;
2
vig_has_cal date;
BEGIN
--delete from tmp_reservas_mov where cod_usuario =
usuario;
--delete from tmp_reserva_stro_mov where cod_usuario =
usuario;
fecha_desde = '2006-01-01';
anioi = date_part('YEAR', fecha_desde);
aniof = date_part('YEAR', fecha_proceso);
mesi = date_part('MONTH', fecha_desde);
mesf = date_part('MONTH', fecha_proceso);
periodoi = cast(cast(date_part('YEAR', fecha_desde) as
varchar(4))||(case when DATE_PART('MONTH', fecha_desde)<10
then '0' || DATE_PART('MONTH', fecha_desde) else
DATE_PART('MONTH', fecha_desde) || '' end) as
numeric(6,0));
periodof = cast(cast(date_part('YEAR', fecha_proceso)
as varchar(4))||(case when DATE_PART('MONTH',
fecha_proceso)<10 then '0' || DATE_PART('MONTH',
fecha_proceso) else
DATE_PART('MONTH', fecha_proceso) || '' end) as
numeric(6,0));
h.nro_pol,h.nro_endoso,ph.aaaa_endoso,ph.cod_aseg,cod_
causa,-1
sn_asegurado,txt_nombre,isnull(sum(imp_estimado_actual-
imp_estimado_anterior),0) as imp_reserva,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior)+sum(imp_estimado_reas_ext_ac
tual-imp_estimado_reas_ext_anterior),0) as imp_reas,
SUM(imp_pagos) as imp_pago,
isnull(sum(imp_pagos_reas_nac+imp_pagos_reas_ext),0)
as imp_pago_reas,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior),0) as imp_reas_nac,
3
isnull(sum(imp_estimado_reas_ext_actual-
imp_estimado_reas_ext_anterior),0) as imp_reas_ext,
sum(imp_pagos_reas_nac) as imp_pago_reas_nac,
sum(imp_pagos_reas_ext) as imp_pago_reas_ext,
isnull(sum(imp_estimado_actual-
imp_estimado_anterior),0) as imp_reserva_eq,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior)+sum(imp_estimado_reas_ext_ac
tual-imp_estimado_reas_ext_anterior),0) as imp_reas_eq,
sum(imp_pagos) as imp_pago_eq,
isnull(sum(imp_pagos_reas_nac-
imp_pagos_reas_ext),0) as imp_pago_reas_eq,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior),0) as imp_reas_nac_eq,
isnull(sum(imp_estimado_reas_ext_actual-
imp_estimado_reas_ext_anterior),0) as imp_reas_ext_eq,
sum(imp_pagos_reas_nac) as
imp_pago_reas_nac_eq,
sum(imp_pagos_reas_ext) as
imp_pago_reas_ext_eq,
usuario,
0 imp_estimado
FROM tmp_procesos tmp
inner join sise_his_cierre_siniestro h on
h.mes_proceso = tmp.mes_proceso and h.anio_proceso =
tmp.anio_proceso
inner join sise_pv_header ph on ph.id_pv =
h.id_pv
WHERE
h.id_pv > 0
AND h.cod_item > 0
AND cod_estim not in (5,7)
AND h.id_stro not in (79052, 93386, 97317, 99147,
187154, 155593, 158107, 140184,84999, 90116, 95383,159087)
GROUP BY
id_stro, cod_item, cod_ind_cob, cod_tercero,
h.cod_moneda, cod_estim, h.cod_ramo, h.cod_suc, nro_stro,
h.nro_pol, h.nro_endoso, ph.aaaa_endoso,
ph.cod_aseg, cod_causa, txt_nombre, aaaa_ejercicio;
4
round(1389.23*60/100,2) imp_reas, 0 imp_pago, 0
imp_pago_reas, 0 imp_reas_nac,
round(1389.23*60/100,2)
imp_reas_ext, 0 imp_pago_reas_nac, 0 imp_pago_reas_ext,
1389.23 imp_reserva_eq, round(1389.23*60/100,2) imp_reas_eq,
0 imp_pago_eq,
0 imp_pago_reas_eq,
imp_reas_nac_eq, round(1389.23*60/100,2) imp_reas_ext_eq, 0
imp_pago_reas_nac_eq, 0 imp_pago_reas_ext_eq, cod_usuario, 0
imp_estimado
from tmp_reservas_mov
where id_stro = 238596 and cod_item = 3 and
cod_ind_cob=1 and cod_tercero= 222200 and cod_estim=1
and cod_usuario=usuario;
imp_pago_reas_ext= imp_pago_reas_ext+
round(126.51*50/100,2), imp_pago_eq = imp_pago_eq + 126.51,
imp_pago_reas_eq = imp_pago_reas_eq+
round(126.51*50/100,2), imp_pago_reas_ext_eq
=imp_pago_reas_ext_eq+ round(126.51*50/100,2)
where id_stro=181957 and cod_item=1 and
cod_ind_cob=2 and cod_tercero=185288 and cod_estim=1
and cod_usuario=usuario;
END IF;
5
id_stro,
cod_item,
cod_ind_cob,
cod_tercero,
h.cod_moneda,
cod_estim,
h.cod_ramo,
aaaa_ejercicio,
h.cod_suc,
nro_stro,
fec_hora_reclamo as fec_ocurrido,
h.nro_pol,
h.nro_endoso,
ph.aaaa_endoso,
ph.cod_aseg,
cod_causa,
-1 sn_asegurado,
txt_nombre,
isnull(sum(imp_estimado_actual-
imp_estimado_anterior),0) as imp_reserva,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior)+sum(imp_estimado_reas_ext_ac
tual-imp_estimado_reas_ext_anterior),0) as imp_reas,
SUM(imp_pagos) as imp_pago,
isnull(sum(imp_pagos_reas_nac+imp_pagos_reas_ext),0)
as imp_pago_reas,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior),0) as imp_reas_nac,
isnull(sum(imp_estimado_reas_ext_actual-
imp_estimado_reas_ext_anterior),0) as imp_reas_ext,
sum(imp_pagos_reas_nac) as imp_pago_reas_nac,
sum(imp_pagos_reas_ext) as imp_pago_reas_ext,
isnull(sum(imp_estimado_actual-
imp_estimado_anterior),0) as imp_reserva_eq,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior)+sum(imp_estimado_reas_ext_ac
tual-imp_estimado_reas_ext_anterior),0) as imp_reas_eq,
sum(imp_pagos) as imp_pago_eq,
isnull(sum(imp_pagos_reas_nac-
imp_pagos_reas_ext),0) as imp_pago_reas_eq,
isnull(sum(imp_estimado_reas_nac_actual-
imp_estimado_reas_nac_anterior),0) as imp_reas_nac_eq,
isnull(sum(imp_estimado_reas_ext_actual-
imp_estimado_reas_ext_anterior),0) as imp_reas_ext_eq,
sum(imp_pagos_reas_nac) as
imp_pago_reas_nac_eq,
sum(imp_pagos_reas_ext) as
imp_pago_reas_ext_eq,
usuario as cod_usuario,
0 imp_estimado
from tmp_cierre_siniestro h, sise_pv_header ph
where
cod_estim not in (5,7)
and h.id_pv = ph.id_pv
group by id_stro, cod_item, cod_ind_cob, cod_tercero,
h.cod_moneda, cod_estim, h.cod_ramo,aaaa_ejercicio,
h.cod_suc, nro_stro,
fec_hora_reclamo, h.nro_pol, h.nro_endoso,
ph.aaaa_endoso, ph.cod_aseg, cod_causa, txt_nombre;
6
select
id_proc, id_stro, cod_item, cod_ind_cob,
cod_tercero, cod_moneda, cod_estim,
cod_ramo, aaaa_ejercicio, cod_suc,
nro_stro, fec_ocurrido, nro_pol,
nro_endoso, aaaa_endoso, cod_aseg,
cod_causa, sn_asegurado, txt_nombre,
imp_reserva, imp_reas, imp_pago,
imp_pago_reas, imp_reas_nac, imp_reas_ext,
imp_pago_reas_nac, imp_pago_reas_ext,
imp_reserva_eq,
imp_reas_eq, imp_pago_eq, imp_pago_reas_eq,
imp_reas_nac_eq, imp_reas_ext_eq,
imp_pago_reas_nac_eq, imp_pago_reas_ext_eq, usuario, 0
from sise_saldos
where cod_estim not in(5,7);
7
sum(imp_reas_eq) as imp_reas_eq,
sum(imp_pago_eq) as imp_pago_eq,
sum(imp_pago_reas_eq) as imp_pago_reas_eq,
sum(imp_reas_nac_eq) as imp_reas_nac_eq,
sum(imp_reas_ext_eq) as imp_reas_ext_eq,
sum(imp_pago_reas_nac_eq) as imp_pago_reas_nac_eq,
sum(imp_pago_reas_ext_eq) as imp_pago_reas_ext_eq,
cod_usuario,
imp_estimado
from tmp_reservas_mov
group by
id_proc,id_stro,cod_item,cod_ind_cob,cod_tercero,cod_m
oneda,cod_estim,
cod_ramo,aaaa_ejercicio,cod_suc,nro_stro,
nro_pol,nro_endoso,aaaa_endoso,cod_aseg,cod_usuario,im
p_estimado;
8
and tmp.cod_item = h.cod_item
and tmp.cod_ind_cob = h.cod_ind_cob
and tmp.cod_tercero = h.cod_tercero
and tmp.cod_moneda = h.cod_moneda;
9
imp_reas, imp_pago, imp_pago_reas, imp_reas_nac,
imp_reas_ext, imp_pago_reas_nac,
imp_pago_reas_ext, imp_reserva_eq, imp_reas_eq,
imp_pago_eq, imp_pago_reas_eq,
imp_reas_nac_eq, imp_reas_ext_eq,
imp_pago_reas_nac_eq, imp_pago_reas_ext_eq, cod_usuario,
imp_estimado, fec_registro,cod_bien_siniestrado,
txt_bien_strado, cod_tipo_agente, cod_agente,
txt_nom_agente,
cod_usuario_stro, txt_causa, fec_conta,
cod_ajustador_inicial
FROM tmp_trans1;
END;
END_PROC;
1. MALLAS DE EJECUCIÓN
AGRUPACION BASE
SISE_PV_HEADER
SQN_STG_RESERVAS
SISE_TTIPO_ENDO
SISE_TGRUPO_ENDO
SISE_TTIPO_AGENTE
SISE_TTIPO_DOC
SISE_MPERSONA
SISE_TRAMO
SISE_RAMO_GERENCIAL
SISE_TTIPO_RAMO
SISE_MASEG
SISE_TCAUSA_STRO
SISE_TMUNICIPIO
SISE_TCANTON
SISE_TDPTO
SISE_TREGION
SISE_TPAIS
SISE_TSUC
SISE_TSECTOR
SISE_TUSUARIO
SISE_TTIPO_PRES
SISE_TESPECIALIDAD
SISE_MPRES
SISE_TTIPO_ASEG
SISE_MASEG_HEADER
SISE_TMONEDA
SISE_STRO_HEADER
SISE_TCOD_ESTIM
10
ATM_POLIZA_ENDOSO
SQN_ATM_RESERVAS
ATM_TIPO_AGENTE
ATM_TIPO_DOCUMENTO
ATM_PERSONA
ATM_AGENTE
ATM_TIPO_RAMO
ATM_TIPO_RAMO_GERENCIAL
ATM_RAMO
ATM_CAUSA_SINIESTRO
ATM_CIUDAD
ATM_CANTON
ATM_PROVINCIA
ATM_REGION
ATM_PAIS
ATM_SUCURSAL
ATM_SECTOR
11
ATM_USUARIO
ATM_TIPO_AJUSTADOR
ATM_ESPECIALIDAD
ATM_AJUSTADOR
ATM_TIPO_ASEGURADO
ATM_ASEGURADO
ATM_MONEDA
ATM_SINIESTRO
ATM_TIPO_ESTIMACION
ATM_IND_COB
ATM_BIEN_SINIESTRADO
ATM_RESERVAS
DM_POLIZA
SQN_ANL_RESERVAS
DM_TIPO_AGENTE
DM_TIPO_DOCUMENTO
DM_PERSONA
DM_AGENTE
12
DM_TIPO_RAMO
DM_TIPO_RAMO_GERENCIAL
DM_RAMO
DM_CAUSA_SINIESTRO
DM_CIUDAD
DM_CANTON
DM_PROVINCIA
DM_REGION
DM_PAIS
DM_SUCURSAL
DM_SECTOR
DM_USUARIO
DM_TIPO_AJUSTADOR
DM_ESPECIALIDAD
DM_AJUSTADOR
DM_TIPO_ASEGURADO
DM_ASEGURADO
DM_MONEDA
DM_SINIESTRO
DM_INDICADOR_COBERTURA
DM_TIPO_ESTIMACION
DM_BIEN_SINIESTRADO
FC_RESERVAS
13
SQN MODELO TECNICO PRODUCCION MALLA FINAL
RECOMENDACIONES
14