USP_DATALIST_RESERVATIONRATESCALEPRICE
Lists all of the prices for a rate scale on a reservation.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONTEXTID | uniqueidentifier | IN | Input parameter indicating the context ID for the data list. |
Definition
Copy
CREATE procedure dbo.USP_DATALIST_RESERVATIONRATESCALEPRICE
(
@CONTEXTID uniqueidentifier
)
as
set nocount on;
declare @PERTICKET bit = 0;
declare @MAXAMOUNT money = 0.0;
select
@PERTICKET = USEPERTICKETAFTERMAX
from dbo.RESERVATIONRATESCALE
where ID = @CONTEXTID
if @PERTICKET = 1
select top(1) @MAXAMOUNT = AMOUNT
from dbo.RESERVATIONRATESCALEPRICE
where RESERVATIONRATESCALEID = @CONTEXTID
order by GROUPMAXIMUM desc
select
ID,
case
when GROUPMINIMUM = 0 and GROUPMAXIMUM = -1 then
'Any size'
when GROUPMINIMUM = 0 and GROUPMAXIMUM <> -1 then
'Up to ' + cast(GROUPMAXIMUM as nvarchar(6))
when GROUPMINIMUM <> 0 and GROUPMAXIMUM = -1 Then
cast(GROUPMINIMUM as nvarchar(6)) + ' or more'
when GROUPMINIMUM = GROUPMAXIMUM then
cast(GROUPMINIMUM as nvarchar(6))
else
cast(GROUPMINIMUM as nvarchar(6)) + ' - ' + cast(GROUPMAXIMUM as nvarchar(6))
end as SIZE,
case
when @PERTICKET = 1 and GROUPMAXIMUM = -1 then null
else AMOUNT
end as AMOUNT,
INUSE,
case
when @PERTICKET = 1 and GROUPMAXIMUM = -1 then cast(@MAXAMOUNT as nvarchar(9)) + ' plus per ticket after ' + cast((GROUPMINIMUM - 1) as nvarchar(3))
else cast(AMOUNT as nvarchar(35))
end as FORMATTEDAMOUNT
from dbo.RESERVATIONRATESCALEPRICE
where RESERVATIONRATESCALEID = @CONTEXTID
order by GROUPMINIMUM