IF OBJECT_ID('STG.T_TABLON_VMVP_OPORTUNIDAD_BPE') IS NOT NULL DROP TABLE STG.T_TABLON_VMVP_OPORTUNIDAD_BPE
SELECT
V.CODDOC,
V.NUM_DOC,
V.FLG_PROD_RET_SF,
V.FLG_PROD_COM_SF,
V.FLG_CUENTA_IBK,
V.FLG_CUENCOM_IBK,
V.FLG_UNIVERSO_BPE,
ISNULL(C.FLG_TIENE_CREDITO_BPE, 0) FLG_TIENE_CREDITO_BPE,
CASE WHEN M.FLG_CARTERA IS NULL THEN 0
WHEN M.FLG_CARTERA = 'N' THEN 0
WHEN M.FLG_CARTERA = 'S' THEN 1
ELSE -1 END FLG_CARTERA,
CASE WHEN M.FLG_CARTERA_NO_G0 IS NULL THEN 0
WHEN M.FLG_CARTERA_NO_G0 = 'N' THEN 0
WHEN M.FLG_CARTERA_NO_G0 = 'S' THEN 1
ELSE -1 END FLG_CARTERA_NO_G0,
ISNULL(CD.FLG_TIENE_CUENTA_CASH_DEPOSITO, 0) FLG_TIENE_CUENTA_CASH_DEPOSITO,
ISNULL(CD.FLG_TIENE_CUENTA_NEGOCIO, 0) FLG_TIENE_CUENTA_NEGOCIO,
ISNULL(CD.FLG_TIENE_CUENTA_AHORRO, 0) FLG_TIENE_CUENTA_AHORRO,
ISNULL(CD.FLG_TIENE_CUENTA_NEGOCIO_PJ, 0) FLG_TIENE_CUENTA_NEGOCIO_PJ,
ISNULL(CD.FLG_TIENE_CUENTA_NEGOCIO_PN, 0) FLG_TIENE_CUENTA_NEGOCIO_PN,
ISNULL(C.FLG_TIENE_CREDITO_CIMA, 0) FLG_TIENE_CREDITO_CIMA,
CASE WHEN M.NUM_DOC IS NOT NULL THEN 1 ELSE 0 END FLG_BANCARIZADOS,
CASE WHEN M.NUM_DOC IS NOT NULL AND M.BANCA_FIN = 'BPE' THEN 1 ELSE 0 END FLG_BANCARIZADOS_BPE_VPC,
CASE WHEN P.CODDOC IS NOT NULL THEN 1 ELSE 0 END FLG_PERTENECE_UNIV_POS,
--ISNULL(M.ESTADO_CONTRIBUYENTE, S.ESTADO_CONTRIBUYENTE) ESTADO_CONTRIBUYENTE,
--ISNULL(M.CIIU, S.CIIU) CIIU,
--ISNULL(M.SEI, S.SEI_MCDO) SEI,
--ISNULL(M.UBIGEO, S.UBIGEO) UBIGEO,
CASE WHEN M.TIP_CLASIF_RIESGO_SBS IS NULL THEN 'SIN CLASIFICACION'
WHEN M.TIP_CLASIF_RIESGO_SBS = 0 THEN 'NORMAL'
WHEN M.TIP_CLASIF_RIESGO_SBS = 1 THEN 'CPP'
WHEN M.TIP_CLASIF_RIESGO_SBS = 2 THEN 'DEFICIENTE'
WHEN M.TIP_CLASIF_RIESGO_SBS = 3 THEN 'DUDOSO'
WHEN M.TIP_CLASIF_RIESGO_SBS = 4 THEN 'PERDIDA'
--WHEN S.FLG_NORMAL = 1 THEN 'NORMAL'
--WHEN S.FLG_NORMAL = 1 THEN 'NO NORMAL'
ELSE 'SIN CLASIFICACION' END CLASIF_SBS,
CASE WHEN E.CODDOC IS NOT NULL THEN 1 ELSE 0 END FLG_PROVEEDOR_CLIENTE_IBK,
CASE WHEN E.CODDOC IS NOT NULL AND IMP_ABONO_SOL_MAX >= 500 THEN 1 ELSE 0 END FLG_PROVEEDOR_CLIENTE_IBK_UP_500,
CASE WHEN E.CODDOC IS NOT NULL AND IMP_ABONO_SOL_MAX >= 1000 THEN 1 ELSE 0 END FLG_PROVEEDOR_CLIENTE_IBK_UP_1000,
ISNULL(IMP_ABONO_SOL_PROM, 0) IMP_ABONO_SOL_PROM,
ISNULL(IMP_ABONO_SOL_MAX, 0) IMP_ABONO_SOL_MAX
--V.*,
--M.*,
INTO STG.T_TABLON_VMVP_OPORTUNIDAD_BPE
FROM (
SELECT
CASE WHEN LEN(CODDOC) = 11 AND SUBSTRING(CODDOC,1, 2) = '10' THEN SUBSTRING(CODDOC,3, 8)
ELSE CODDOC END CODDOC,
MAX(CODDOC) NUM_DOC,
MAX(TIPO_CONTRIBUYENTE) TIPO_CONTRIBUYENTE,
MAX(NOMBRE_COMPLETO) NOMBRE_COMPLETO,
MAX(SITUACION_LABORAL) SITUACION_LABORAL,
MAX(DISTRITO) DISTRITO,
MAX(DEPARTAMENTO) DEPARTAMENTO,
MAX(REGION) REGION,
MAX(FLG_CON_RCC_ULTM) FLG_CON_RCC_ULTM,
MAX(FLG_PROD_COM_SF) FLG_PROD_COM_SF,
MAX(FLG_PROD_RET_SF) FLG_PROD_RET_SF,
MAX(FLG_SALDO_COM_IBK) FLG_SALDO_COM_IBK,
MAX(FLG_POS_MERCADO) FLG_POS_MERCADO,
MAX(FLG_POSVENTA_IBK) FLG_POSVENTA_IBK,
MAX(FLG_CREDITO_CIMA_IBK) FLG_CREDITO_CIMA_IBK,
MAX(FLG_CREDITO_BPE_IBK) FLG_CREDITO_BPE_IBK,
MAX(FLG_REALIZA_PAGPROV_IBK) FLG_REALIZA_PAGPROV_IBK,
MAX(PAG_PROVEED_IBK_PROM) PAG_PROVEED_IBK_PROM,
MAX(FLG_RECIB_PGO_PROV) FLG_RECIB_PGO_PROV,
MAX(FLG_CUENTA_IBK) FLG_CUENTA_IBK,
MAX(FLG_CUENCOM_IBK) FLG_CUENCOM_IBK,
MAX(FLG_CUENTA_NEGOCIO) FLG_CUENTA_NEGOCIO,
MAX(RANGO_MAX_12M_SAL) RANGO_MAX_12M_SAL,
MAX(FLG_UNIVERSO_BPE) FLG_UNIVERSO_BPE,
MAX(FLG_UNIV_BPE_CAMPAÑA) FLG_UNIV_BPE_CAMPAÑA,
MAX(FLG_UNIV_BPE_CAMPAÑA_LINRET) FLG_UNIV_BPE_CAMPAÑA_LINRET,
MAX(FLG_UNIV_BPE_CAMPAÑA_POS) FLG_UNIV_BPE_CAMPAÑA_POS,
MAX(FLG_UNIV_BPE_CAMPAÑA_POS_LINRET) FLG_UNIV_BPE_CAMPAÑA_POS_LINRET,
MAX(FLG_SAL_PROD_COMEX) FLG_SAL_PROD_COMEX,
MAX(FLG_SAL_PROD_INDIR) FLG_SAL_PROD_INDIR,
MAX(FLG_SAL_PROD_DESC) FLG_SAL_PROD_DESC,
MAX(FLG_SAL_PROD_FACT) FLG_SAL_PROD_FACT,
MAX(FLG_SAL_PROD_SOBRE_AVAN) FLG_SAL_PROD_SOBRE_AVAN,
MAX(FLG_SAL_PROD_TC) FLG_SAL_PROD_TC,
MAX(FLG_SAL_PROD_OTROS) FLG_SAL_PROD_OTROS
from VPC_BASE_FINAL_COMP_SEGMENTO
WHERE 1 = 1
AND FLG_UNIV_BPE_CAMPAÑA_ALL = 1
AND PERIODO = (SELECT MAX(PERIODO) FROM VPC_BASE_FINAL_COMP_SEGMENTO)
GROUP BY (CASE WHEN LEN(CODDOC) = 11 AND SUBSTRING(CODDOC,1, 2) = '10' THEN SUBSTRING(CODDOC,3, 8)
ELSE CODDOC END)
) V
LEFT JOIN (
SELECT
CASE WHEN LEN(NUM_DOC) = 11 AND SUBSTRING(NUM_DOC,1, 2) = '10' THEN SUBSTRING(NUM_DOC,3, 8)
ELSE NUM_DOC END CODDOC,
MAX(NUM_DOC) NUM_DOC,
MAX(PERIODO) PERIODO,
MAX(FLG_CARTERA) FLG_CARTERA,
MAX(FLG_CARTERA_NO_G0) FLG_CARTERA_NO_G0,
MAX(ESTADO_CONTRIBUYENTE) ESTADO_CONTRIBUYENTE,
MAX(BANCA_FIN) BANCA_FIN,
MAX(CNT_ENTIDADES) CNT_ENTIDADES,
MAX(SEGMENTO_FIN) SEGMENTO_FIN,
MAX(REGION_FIN) REGION_FIN,
MAX(DEPARTAMENTO_FIN) DEPARTAMENTO_FIN,
MAX(ZONAL_CA) ZONAL_CA,
MAX(DES_GRUPO_ECONOMICO) DES_GRUPO_ECONOMICO,
MAX(CIIU) CIIU,
MAX(SEI) SEI,
MAX(MTO_DEUDA_COL_DIR_IBK) MTO_DEUDA_COL_DIR_IBK,
MAX(MTO_DEUDA_COL_DIR_SF) MTO_DEUDA_COL_DIR_SF,
MAX(MTO_DEUDA_COL_IND_IBK) MTO_DEUDA_COL_IND_IBK,
MAX(MTO_DEUDA_COL_IND_SF) MTO_DEUDA_COL_IND_SF,
MAX(UBIGEO) UBIGEO,
MAX(TIP_CLASIF_RIESGO_SBS) TIP_CLASIF_RIESGO_SBS,
MAX(COD_UNICO) COD_UNICO
--SELECT COUNT(1)
FROM ODS.HM_MERCADO
WHERE PERIODO = (SELECT MAX(PERIODO) FROM ODS.HM_MERCADO)
GROUP BY (CASE WHEN LEN(NUM_DOC) = 11 AND SUBSTRING(NUM_DOC,1, 2) = '10' THEN SUBSTRING(NUM_DOC,3, 8)
ELSE NUM_DOC END)
) M -- MERCADO
ON V.CODDOC = M.CODDOC
LEFT JOIN(
SELECT
CASE WHEN LEN(NUM_RUC) = 11 AND SUBSTRING(NUM_RUC, 1, 2) = '10' THEN SUBSTRING(NUM_RUC, 3, 8)
ELSE NUM_RUC END CODDOC,
*
FROM T_KLI_VAR_POS_BPE
WHERE PERIODO = (SELECT MAX(PERIODO) FROM T_KLI_VAR_POS_BPE)
) P -- UNIVERSO POS
ON V.CODDOC = P.CODDOC
--LEFT JOIN ODS.MM_SUNAT S WITH (NOLOCK)
--ON V.CODDOC = (
-- CASE WHEN LEN(S.NUMRUC) = 11 AND SUBSTRING(S.NUMRUC, 1, 2) = '10' THEN SUBSTRING(S.NUMRUC, 3, 8)
-- ELSE S.NUMRUC END
-- )
LEFT JOIN STG.T_VMVP_DETALLE_CARTERA_DIARIA C -- CARTERA DIARIA BPE
ON V.CODDOC = C.CODDOC
LEFT JOIN (
SELECT CASE WHEN LEN(NRO_DOC_BEN) = 11 AND SUBSTRING(NRO_DOC_BEN, 1, 2) = '10' THEN SUBSTRING(NRO_DOC_BEN, 3, 8)
ELSE NRO_DOC_BEN END CODDOC,
AVG(IMP_ABONO_SOL) IMP_ABONO_SOL_PROM,
MAX(IMP_ABONO_SOL) IMP_ABONO_SOL_MAX
from ODS.HD_CASH_PAGOSMASIVOS
WHERE 1 = 1
AND PERIODO >= '202008'
AND RUB='03'
GROUP BY (CASE WHEN LEN(NRO_DOC_BEN) = 11 AND SUBSTRING(NRO_DOC_BEN, 1, 2) = '10' THEN SUBSTRING(NRO_DOC_BEN, 3, 8)
ELSE NRO_DOC_BEN END)
) E -- ECOSISTEMA PROVEEDORES
ON V.CODDOC = E.CODDOC
LEFT JOIN STG.T_VMVP_DETALLE_CASH_DEPOSITO CD
ON V.CODDOC = CD.CODDOC
WHERE 1 = 1
Add a code snippet to your website: www.paste.org