Diccionario de Datos

Logo

Diccionario de datos de los modelos de COÉXITO

🏠 Menú principal ← Volver a vistas materializadas

SIMACMOBILE.VISTA_RECAUDOS_COMISION_ERP

Base de datos origen: ORCLSMM

Tipo de objeto: MATERIALIZED VIEW

SQL


  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;

← Volver al esquema SIMACMOBILE

🏠 Volver al menú principal