Diccionario de datos de los modelos de COÉXITO
| 🏠 Menú principal | ← Volver a vistas materializadas |
Base de datos origen: ORCLSMM
Tipo de objeto: MATERIALIZED VIEW
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
);