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"."VISTA_RECAUDOS_COMISION_ERP" ("ID", "CODIGO", "PRIMER_NOMBRE", "APELLIDOS", "SUCURSAL", "NUMERO_FACTURA", "FECHA_FACTURA", "FECHA_DEPOSITO", "VALOR_PAGADO", "DESCUENTO", "EDAD_COBRO", "MONTO_SINIVA", "MONTO_IMPUESTO", "MONTO_TOTAL", "PORCENTAJE_FACTURA_PAGADO", "TASA_IVA", "IVA_RECIBO_PAGO", "MONTO_BASE_COMISION", "FECHA_VENTA", "ESTADO_TRANSACCION", "MONTO_RECIBO", "NUMERO_RECIBO", "CLIENTE", "FECHA_APLICACION_RECIBO")
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 SELECT rperp.ID_PEFAERP AS ID, CASE WHEN INSTR(ve.CODIGO, '_') > 0 THEN REPLACE(ve.CODIGO,'_', '') ELSE ve.CODIGO END as CODIGO,
ve.PRIMER_NOMBRE, ve.APELLIDOS, --rperp.CODIGO_ORACLE AS SUCURSAL,
substr(vherp.CODIGO_VENDEDOR,1,3) AS SUCURSAL,
rperp.NUMERO_FACTURA, rperp.FECHA_FACTURA, rperp.FECHA_DEPOSITO,
CASE WHEN rperp.ESTADO_TRANSACCION = 'REVERSADO' THEN rperp.VALOR_PAGADO * -1 ELSE rperp.VALOR_PAGADO END AS VALOR_PAGADO,
rperp.DESCUENTO, CASE WHEN (rperp.FECHA_DEPOSITO - rperp.FECHA_FACTURA) < 0 THEN 0 ELSE (rperp.FECHA_DEPOSITO - rperp.FECHA_FACTURA) end AS EDAD_COBRO,
vherp.MONTO_INGRESO AS MONTO_SINIVA, vherp.MONTO_IMPUESTO, vherp.MONTO_TOTAL,
((rperp.VALOR_PAGADO + rperp.DESCUENTO) * 100) / CASE WHEN vherp.MONTO_TOTAL = 0 THEN 1 ELSE vherp.MONTO_TOTAL END AS PORCENTAJE_FACTURA_PAGADO, --porcentaje de factura pagado
CEIL((vherp.MONTO_IMPUESTO * 100)/CASE WHEN vherp.MONTO_INGRESO = 0 THEN 1 ELSE vherp.MONTO_INGRESO END) AS TASA_IVA,
CEIL(((rperp.VALOR_PAGADO + rperp.DESCUENTO) * ((vherp.MONTO_IMPUESTO * 100)/CASE WHEN vherp.MONTO_INGRESO = 0 THEN 1 ELSE vherp.MONTO_INGRESO END))/ 100) AS IVA_RECIBO_PAGO,
CEIL(rperp.VALOR_PAGADO - (((rperp.VALOR_PAGADO) * ((vherp.MONTO_IMPUESTO * 100)/CASE WHEN vherp.MONTO_TOTAL = 0 THEN 1 ELSE vherp.MONTO_TOTAL END))/ 100)) AS MONTO_BASE_COMISION,
vherp.FECHA_VENTA, rperp.ESTADO_TRANSACCION, rperp.VALOR_PAGADO AS MONTO_RECIBO, rperp.NUMERO_RECIBO,
COALESCE(ce.RAZON_SOCIAL, ce.PRIMER_APELLIDO || ' ' || ce.SEGUNDO_APELLIDO || ' ' || ce.PRIMER_NOMBRE || ' ' || ce.SEGUNDO_NOMBRE) AS CLIENTE,
rperp.FECHA_APLICACION_RECIBO
FROM SIMACMOBILE.RECIBO_PAGO_ERP rperp
LEFT JOIN SIMACMOBILE.CLIENTE_ERP ce ON (rperp.ID_CLERP = ce.ID_CLERP )
LEFT JOIN (
SELECT CLIENTE_NIT,
ID_SUERP,
ID_VERP,
CASE WHEN INSTR(CODIGO_VENDEDOR, '_') > 0 THEN REPLACE(CODIGO_VENDEDOR,'_', '') ELSE CODIGO_VENDEDOR END AS CODIGO_VENDEDOR,
NUMERO_FACTURA,
FECHA_VENTA,
SUM(MONTO_INGRESO) AS MONTO_INGRESO, SUM(MONTO_IMPUESTO) AS MONTO_IMPUESTO,
SUM(MONTO_TOTAL) AS MONTO_TOTAL
FROM SIMACMOBILE.VENTA_HISTORICO_ERP
WHERE SUBSTR(desc_item,1,7) <> 'INTERES' AND SUBSTR(TIPO_TRANS,1,2) = 'FV' AND EXISTS (
SELECT vse.ID_SUERP
FROM SIMACMOBILE.VISTA_SUCURSALES_ERP vse
WHERE TIPO_SUCURSAL IN ('Cedi Principal', 'Cedi Secundario')
)
GROUP BY CLIENTE_NIT, ID_VERP, CODIGO_VENDEDOR, ID_SUERP, FECHA_VENTA, NUMERO_FACTURA
)vherp ON ( ce.NIT = vherp.CLIENTE_NIT AND
rperp.NUMERO_FACTURA = vherp.NUMERO_FACTURA )
LEFT JOIN (
SELECT vendedores.ID_VERP, vendedores.CODIGO, ve.PRIMER_NOMBRE, ve.APELLIDOS
FROM (
select NVL(verp2.id_verp,verp1.id_verp) id_verp,verp1.codigo from (select max(id_verp) as id_verp, codigo from ( select id_verp, case when instr( codigo, '_' ) > 0 then substr( codigo, 1, instr( codigo, '_' ) - 1 ) else codigo end as codigo, primer_nombre, apellidos from simacmobile.vendedor_erp
) group by codigo) verp1
left join
(select max(id_verp) as id_verp, codigo from ( select id_verp, codigo , primer_nombre, apellidos from simacmobile.vendedor_erp ) where instr( codigo, '_' ) = 0 group by codigo) verp2 on
verp1.codigo = verp2.codigo
) vendedores
LEFT JOIN SIMACMOBILE.VENDEDOR_ERP ve ON vendedores.ID_VERP = ve.ID_VERP
) ve ON (vherp.CODIGO_VENDEDOR = ve.CODIGO)
WHERE vherp.NUMERO_FACTURA IS NOT NULL;