Tienes
pero
, observo
CASE U.MilitaryDiscountCode WHEN DiscountCode THEN
Percentage*R.ReservationCost
ELSE R.ReservationCost END "REVISED_RESERVATION_COST"
falta una parte en FETCH
(o debe omitirse en SELECT
parte).
También representa una columna y estropea la correspondencia 1-1, lo que produce ese error.