Professional Documents
Culture Documents
Prueba 3 Llsta.
Prueba 3 Llsta.
V_CONSUMO_TOTAL NUMBER:=0;
FUNCTION FN_CONSUMO_HUESPED(P_ID_HUESPED NUMBER) RETURN NUMBER;
END PKG_HOTEL;
V_NOMBRE VARCHAR2(60);
V_ALOJAMIENTO NUMBER;
V_CONSUMOS NUMBER;
V_TOURS NUMBER;
V_SUBTOTAL_PAGO NUMBER;
V_PORCENTAJE_DESCTO NUMBER;
V_DESCUENTO_CONSUMOS NUMBER;
V_DESCUENTO_PROCEDENCIA NUMBER;
V_TOTAL NUMBER;
V_FECHA_INICIAL DATE;
V_FECHA_FINAL DATE;
BEGIN
EXECUTE IMMEDIATE 'TRUNCATE TABLE SALIDAS_DIARIAS_HUESPEDES';
EXECUTE IMMEDIATE 'TRUNCATE TABLE ERRORES_PROCESO';
BEGIN
SELECT PCT
INTO V_PORCENTAJE_DESCTO
FROM RANGOS_CONSUMOS
WHERE PKG_HOTEL.FN_CONSUMO_HUESPED(REG_HUESPEDES.ID_HUESPED)
BETWEEN VMIN_TRAMO AND VMAX_TRAMO;
V_DESCUENTO_CONSUMOS:=
ROUND(PKG_HOTEL.FN_CONSUMO_HUESPED(REG_HUESPEDES.ID_HUESPED)* V_PORCENTAJE_DESCTO);
END;
V_DESCUENTO_PROCEDENCIA :=
CASE WHEN REG_HUESPEDES.ID_PROCEDENCIA = 151 THEN
ROUND(REG_HUESPEDES.SUBTOTAL * 0.10)
WHEN REG_HUESPEDES.ID_PROCEDENCIA = 115 THEN
ROUND(REG_HUESPEDES.SUBTOTAL * 0.20)
WHEN REG_HUESPEDES.ID_PROCEDENCIA = 120 THEN
ROUND(REG_HUESPEDES.SUBTOTAL * 0.20)
ELSE REG_HUESPEDES.SUBTOTAL * 0
END;
END LOOP;
END SP_CALCULO_PAGOS;