Diccionario de Datos

Logo

Diccionario de datos de los modelos de COÉXITO

🏠 Menú principal ← Volver a vistas materializadas

SIMACMOBILE.VM_GVTA_PAGO_COMERCIOS

Base de datos origen: ORCLSMM

Tipo de objeto: MATERIALIZED VIEW

SQL


  CREATE MATERIALIZED VIEW "SIMACMOBILE"."VM_GVTA_PAGO_COMERCIOS" ("ID_PAGO", "ID_COMERCIO", "ID_VOUNCHER", "FECHA_RECIBO", "ESTADO_PAGO", "VALOR_RECIBO", "CODIGO_MONEDA", "ORIGEN_TIPO", "ID_ORIGEN", "OBSERVACION_PAGO", "ID_DOCUMENTO", "ID_DOCUMENTO_GOBIERNO", "TIPO_DOCUMENTO", "ID_COMERCIO_VENTA", "FECHA_VENCIMIENTO_FACTURA", "FECHA_FACTURA", "CANTIDAD_VALOR_SUBTOTAL", "MONTO_TOTAL", "ID_VENDEDOR", "ESTADO_DOCUMENTO", "CANTIDAD_PAGAR", "TIPO_DETALLE_PAGO", "VALOR_DETALLE_PAGO", "ID_GLOBAL_USUARIO", "ID_TRANSACCION", "NOMBRE_BANCO", "CUENTA_BANCARIA", "TIPO_CUENTA_BANCARIA", "FECHA_VALIDACION", "VALIDAR_NUMERO", "ID_INTERNO_PAGO", "FECHA_CREACION", "FECHA_MODIFICACION", "ID_DOCUMENTO_PADRE", "VALOR_DESCUENTO", "VALOR_ENVIO", "VALOR_IMPUESTO", "DOCUMENTO_PAGO_ID", "TIPO_TARJETA", "FECHA_CHEQUE", "NUMERO_CHEQUE")
  SEGMENT CREATION IMMEDIATE
  ORGANIZATION HEAP PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 
 NOCOMPRESS LOGGING
  BUILD DEFERRED
  USING INDEX 
  REFRESH FORCE ON DEMAND
  USING DEFAULT LOCAL ROLLBACK SEGMENT
  USING ENFORCED CONSTRAINTS DISABLE ON QUERY COMPUTATION DISABLE QUERY REWRITE
  AS WITH VENTA_TIPO AS (
    SELECT 
        NUMERO_FACTURA,
        CLIENTE_SITE AS ID_COMERCIO_VENTA, -- Renombrado para evitar conflicto
        FECHA_CREACION,
        MONTO_INGRESO,
        MONTO_TOTAL,
        CODIGO_VENDEDOR,
        CASE 
            WHEN SUBSTR(TIPO_TRANS, 1, INSTR(TIPO_TRANS || ' ', ' ') - 1) IN ('FV', 'FVI', 'FVC', 'POS') THEN 'invoice'
            WHEN SUBSTR(TIPO_TRANS, 1, INSTR(TIPO_TRANS || ' ', ' ') - 1) IN ('NC', 'NCI') THEN 'credit_note'
            WHEN SUBSTR(TIPO_TRANS, 1, INSTR(TIPO_TRANS || ' ', ' ') - 1) IN ('ND', 'NDI', 'Cargos') THEN 'debit_note'
            WHEN SUBSTR(TIPO_TRANS, 1, INSTR(TIPO_TRANS || ' ', ' ') - 1) IN ('RB', 'BP') THEN 'bill'
            ELSE 'unknown'
        END AS TIPO_DOCUMENTO,
        MONTO_IMPUESTO,
        TIPO_TRANS
    FROM SIMACMOBILE.VENTA_HISTORICO_ERP
)
SELECT 
    RPE.NUMERO_RECIBO || '_' || TO_CHAR(RPE.FECHA_RECIBO, 'YYYYMMDDHH24MI') AS ID_PAGO, --paymentId
    CLE.SITE AS ID_COMERCIO, --commerceId
    RPE.NUMERO_RECIBO AS ID_VOUNCHER, --voucherId
    --TO_CHAR(RPE.FECHA_RECIBO, 'YYYY-MM-DD"T"HH24:MI:SS"Z"') AS FECHA_RECIBO,
    RPE.FECHA_RECIBO AS FECHA_RECIBO, --date
    CASE 
        WHEN RPE.ESTADO_TRANSACCION = 'APLICADO' THEN 'accepted'
        WHEN RPE.ESTADO_TRANSACCION IN ('REVERSADO', 'FONDOS INSUFICIENTES', 'NO APLICADO', 'STOP', 'CC_CHARGEBACK_REV') THEN 'rejected'
        ELSE 'pending' 
    END AS ESTADO_PAGO, --status
    RPE.IMPORTE AS VALOR_RECIBO, --amount
    RPE.MONEDA AS CODIGO_MONEDA, --currencyCode
    'seller' AS ORIGEN_TIPO, --source
    VT.CODIGO_VENDEDOR AS ID_ORIGEN,
    RPE.DESCRIPCION_PAGO AS OBSERVACION_PAGO, --observation
    VT.NUMERO_FACTURA AS ID_DOCUMENTO, --documentId
    VT.NUMERO_FACTURA AS ID_DOCUMENTO_GOBIERNO, --governmentDocumentId
    VT.TIPO_DOCUMENTO, --type
    VT.ID_COMERCIO_VENTA AS ID_COMERCIO_VENTA, -- commerceId
    --TO_CHAR(TRUNC(FCE.FECHA_VENCIMIENTO), 'YYYY-MM-DD"T"HH24:MI:SS"Z"') AS FECHA_VENCIMIENTO_FACTURA,
    --TO_CHAR(TRUNC(VT.FECHA_CREACION), 'YYYY-MM-DD"T"HH24:MI:SS"Z"') AS FECHA_FACTURA,
    FCE.FECHA_VENCIMIENTO AS FECHA_VENCIMIENTO_FACTURA, --dueDate
    VT.FECHA_CREACION AS FECHA_FACTURA, --date
    VT.MONTO_INGRESO AS CANTIDAD_VALOR_SUBTOTAL, --subtotalAmount
    VT.MONTO_TOTAL AS MONTO_TOTAL, --discountAmount
    VT.CODIGO_VENDEDOR AS ID_VENDEDOR, --sellerId
    'in_collection' AS ESTADO_DOCUMENTO, --collectionStatus
    VT.MONTO_TOTAL AS CANTIDAD_PAGAR, --totalAmount
    'cash' AS TIPO_DETALLE_PAGO, --type
    VT.MONTO_TOTAL AS VALOR_DETALLE_PAGO, --type
    VT.ID_COMERCIO_VENTA AS ID_GLOBAL_USUARIO, --globalUserId
    RPE.NUMERO_RECIBO || '_' || TO_CHAR(RPE.FECHA_RECIBO, 'YYYYMMDDHH24MI') AS ID_TRANSACCION, --transactionId
    CAST(NULL AS VARCHAR2(50)) AS NOMBRE_BANCO, --bankName
    CAST(NULL AS VARCHAR2(50)) AS CUENTA_BANCARIA, --bankAccount
    CAST(NULL AS VARCHAR2(50)) AS TIPO_CUENTA_BANCARIA, --bankAccountType
    CAST(NULL AS VARCHAR2(50)) AS FECHA_VALIDACION,
    CAST(NULL AS VARCHAR2(50)) AS VALIDAR_NUMERO,
    'YOM-PAY001' AS ID_INTERNO_PAGO, --internalPaymentId
    RPE.FECHA_CREACION,
    RPE.FECHA_MODIFICACION,
    
    ------
    CAST(NULL AS VARCHAR2(50)) AS ID_DOCUMENTO_PADRE, --parentDocumentId
    CAST(NULL AS VARCHAR2(50)) AS VALOR_DESCUENTO, --discountAmount
    CAST(NULL AS VARCHAR2(50)) AS VALOR_ENVIO, --shippingAmount
    VT.MONTO_IMPUESTO AS VALOR_IMPUESTO, --taxAmount
     VT.NUMERO_FACTURA   AS DOCUMENTO_PAGO_ID,--paymentDocumentId
    CAST(NULL AS VARCHAR2(50)) AS TIPO_TARJETA,--cardType
    CAST(NULL AS VARCHAR2(50)) AS FECHA_CHEQUE,--checkDate
    CAST(NULL AS VARCHAR2(50)) AS NUMERO_CHEQUE--checkNumber

FROM SIMACMOBILE.RECIBO_PAGO_ERP RPE
JOIN SIMACMOBILE.CLIENTE_ERP CLE 
    ON CLE.ID_CLERP = RPE.ID_CLERP
LEFT JOIN VENTA_TIPO VT
    ON VT.NUMERO_FACTURA = RPE.NUMERO_FACTURA
LEFT JOIN SIMACMOBILE.FACTURA_CXC_ERP FCE
    ON FCE.NUMERO_DOCUMENTO = VT.NUMERO_FACTURA
WHERE --RPE.CODIGO_ORACLE = '400'
--AND TO_CHAR(RPE.FECHA_RECIBO,'mm/yyyy') = '03/2025' ;
--AND 
(TO_CHAR(RPE.FECHA_CREACION,'mm/yyyy') = '06/2025' OR TO_CHAR(RPE.FECHA_CREACION,'mm/yyyy') = '07/2025' OR TO_CHAR(RPE.FECHA_CREACION,'mm/yyyy') = '08/2025') 
AND SUBSTR(TIPO_TRANS, 1, INSTR(TIPO_TRANS || ' ', ' ') - 1) IN ('FV', 'FVI', 'FVC', 'POS')    
AND EXISTS ( -- Clientes segmentados
        SELECT 1 
        FROM SIMACMOBILE.VM_GVTA_COMERCIO VGM 
        WHERE VGM.ID_COMERCIO = CLE.SITE
    );

← Volver al esquema SIMACMOBILE

🏠 Volver al menú principal