Welcome, guest! Login / Register - Why register?
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 ( 4 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

Your Name: Code Language: