Psst.. new poll here.
[email protected] web/email now available. Want one? Go here.
Cannot use outlook/hotmail/live here to register as they blocking our mail servers. #microsoftdeez
Obey the Epel!
Paste
Pasted as SQL by registered user vvillacorta ( 7 months ago )
--- UNIVERSO DE CLIENTES CON LINEA
drop table DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS;
CREATE MULTISET TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS as (
SELECT
distinct PERIODO,
A.CUC_CLIENTE,
numero_identificacion,
Producto_Desc,
--estado_desc,
banca_wbc_desc,
B.KEY_VALUE,
1 as TARGET_LINEA
/*CASE WHEN Producto_Desc IN ('Descuento físico de Facturas') THEN 1 ELSE 0 END AS FACTURA_NEGOCIABLE,
CASE WHEN Producto_Desc IN ('Descuento electrónico de facturas') THEN 1 ELSE 0 END AS DESCUENTO_ELECTRONICO,
CASE WHEN Producto_Desc IN ('Factoring electrónico de facturas') THEN 1 ELSE 0 END AS FACTORING
*/
FROM (SELECT * FROM E_DW_VIEWS.V_MST_WBC_LINEAS_VPC
where Producto_Desc IN ('Descuento físico de Facturas','Descuento electrónico de facturas','Factoring electrónico de facturas') AND PERIODO >= 202201) A
LEFT JOIN E_DW_VIEWS.V_MST_ENCRIP_NRO_DOC_MDL_HISTDIA B ON A.numero_identificacion = B.NRO_DOC
) WITH DATA PRIMARY INDEX (PERIODO, CUC_CLIENTE, NUMERO_IDENTIFICACION);
-- AGRUPANDO PRODUCTOS
DROP TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_FINAL;
CREATE MULTISET TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_FINAL as (
SELECT
PERIODO,
CUC_CLIENTE,
numero_identificacion,
banca_wbc_desc,
KEY_VALUE,
MAX(CASE WHEN Producto_Desc IN ('Descuento físico de Facturas') THEN 1 ELSE 0 END) AS FACTURA_NEGOCIABLE,
MAX(CASE WHEN Producto_Desc IN ('Descuento electrónico de facturas') THEN 1 ELSE 0 END) AS DESCUENTO_ELECTRONICO,
MAX(CASE WHEN Producto_Desc IN ('Factoring electrónico de facturas') THEN 1 ELSE 0 END) AS FACTORING,
TARGET_LINEA
FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS
GROUP BY
PERIODO,
CUC_CLIENTE,
numero_identificacion,
banca_wbc_desc,
KEY_VALUE,
TARGET_LINEA
) WITH DATA PRIMARY INDEX (PERIODO, CUC_CLIENTE, NUMERO_IDENTIFICACION);
-- UNIVERSO TARGET CON DESEMBOLSO
drop table DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO;
CREATE MULTISET TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO as (
SELECT
DISTINCT
A.PERIODO_VAL,
A.CUC_GIRADOR_CD,
B.NUM_RUC_VAL,
A.Producto_val,
C.KEY_VALUE,
1 as TARGET_LINEA_SALDO
FROM (SELECT DISTINCT PERIODO_VAL,
CUC_GIRADOR_CD,
Producto_val
FROM E_DW_VIEWS.V_MST_VPC_FCD_FINCOB_DOCUMENTOS
where Producto_val IN ('Dscto. de Facturas','Dscto. Elect. de Facturas','Fact. Elect. de Facturas') AND
PERIODO_val >= 202201 AND
ESTADO_LINEA_ACEPTANTE_VAL IN ('Vigente','Cancelado','Devuelto')) A
LEFT JOIN E_DW_VIEWS.V_VPC_CLIENTE_BANCA_FINAL_HST B ON A.CUC_GIRADOR_CD = B.CUC_NUM
LEFT JOIN E_DW_VIEWS.V_MST_ENCRIP_NRO_DOC_MDL_HISTDIA C ON B.NUM_RUC_VAL = C.NRO_DOC
) WITH DATA PRIMARY INDEX (PERIODO_VAL, CUC_GIRADOR_CD, NUM_RUC_VAL);
drop table DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO_FINAL;
CREATE MULTISET TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO_FINAL as (
SELECT
PERIODO_VAL,
CUC_GIRADOR_CD,
NUM_RUC_VAL,
KEY_VALUE,
TARGET_LINEA_SALDO ,
MAX(CASE WHEN Producto_val IN ('Dscto. de Facturas') THEN 1 ELSE 0 END) AS FACTURA_NEGOCIABLE_DES,
MAX(CASE WHEN Producto_val IN ('Dscto. Elect. de Facturas') THEN 1 ELSE 0 END) AS DESCUENTO_ELECTRONICO_DES,
MAX(CASE WHEN Producto_val IN ('Fact. Elect. de Facturas') THEN 1 ELSE 0 END) AS FACTORING_DES
FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO WHERE NUM_RUC_VAL <> '.'
GROUP BY
PERIODO_VAL,
CUC_GIRADOR_CD,
NUM_RUC_VAL,
KEY_VALUE,
TARGET_LINEA_SALDO
) WITH DATA PRIMARY INDEX (PERIODO_VAL, CUC_GIRADOR_CD, NUM_RUC_VAL);
--- UNIENDO LAS TABLAS
drop table DLAB_PROGRAMADATOSVPC.HM_JRRM_TARGET;
CREATE MULTISET TABLE DLAB_PROGRAMADATOSVPC.HM_JRRM_TARGET as (
SELECT
A.*,
CASE
WHEN A.FACTURA_NEGOCIABLE = 1 AND B.FACTURA_NEGOCIABLE_DES = 1 THEN 1
WHEN A.DESCUENTO_ELECTRONICO = 1 AND B.DESCUENTO_ELECTRONICO_DES = 1 THEN 1
WHEN A.FACTORING = 1 AND B.FACTORING_DES = 1 THEN 1
ELSE 0 END TARGET_DESEMBOLSO
FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_FINAL A
LEFT JOIN DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO_FINAL B ON A.KEY_VALUE = B.KEY_VALUE AND A.PERIODO = B.PERIODO_VAL
) WITH DATA PRIMARY INDEX (PERIODO, CUC_CLIENTE, NUMERO_IDENTIFICACION);
SELECT * FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_TARGET;
/*
SELECT COUNT(1) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_FINAL;
SELECT PERIODO_VAL, NUM_RUC_VAL, COUNT(1) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO_FINAL GROUP BY PERIODO_VAL, NUM_RUC_VAL HAVING COUNT(1)>1;
SELECT PERIODO,TARGET_LINEA, TARGET_DESEMBOLSO ,COUNT(1) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_TARGET GROUP BY PERIODO,TARGET_LINEA, TARGET_DESEMBOLSO;
SELECT PERIODO_VAL, COUNT(1) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_DESEMBOLSO_FINAL GROUP BY PERIODO_VAL;
SELECT PERIODO, COUNT(1) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_LINEAS_FINANCIAMIENTO_VENTAS_FINAL GROUP BY PERIODO;
SELECT PERIODO, SUM(TARGET_LINEA), SUM(TARGET_DESEMBOLSO) FROM DLAB_PROGRAMADATOSVPC.HM_JRRM_TARGET WHERE FACTURA_NEGOCIABLE = 1 GROUP BY PERIODO;
SELECT DISTINCT ESTADO_LINEA_ACEPTANTE_VAL FROM E_DW_VIEWS.V_MST_VPC_FCD_FINCOB_DOCUMENTOS WHERE PERIODO_VAL = 202307
TABLA --> E_DW_VIEWS.V_MST_VPC_FCD_FINCOB_DOCUMENTOS
Dscto. de Facturas --> FACTURA NEGOCIABLE
Dscto. Elect. de Facturas --> DESCUENTO ELECTRONICO
Fact. Elect. de Facturas --> FACTORING
SELECT * FROM E_DW_VIEWS.V_MST_VPC_FCD_FINCOB_DOCUMENTOS WHERE PERIODO_VAL = 202307
-- 49560444
-- 12837151
SELECT * FROM E_DW_VIEWS.V_MST_ENCRIP_NRO_DOC_MDL_HISTDIA WHERE NRO_DOC = '12837151'
SELECT TOP 100 * FROM E_DW_VIEWS.V_VPC_CLIENTE_BANCA_FINAL_HST
--
*/
Revise this Paste