USP_SIMPLEDATALIST_PROGRAM_DAILYADMISSIONSALES
Builds a list of daily admission programs available for sale.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@TYPECODE | tinyint | IN | TYPECODE |
@ITINERARYITEMID | uniqueidentifier | IN | ITINERARYITEMID |
Definition
Copy
CREATE procedure dbo.USP_SIMPLEDATALIST_PROGRAM_DAILYADMISSIONSALES(
@TYPECODE tinyint,
@ITINERARYITEMID uniqueidentifier = null
) as
if @ITINERARYITEMID is null
begin
select
P.ID as VALUE,
P.NAME as LABEL
from dbo.PROGRAM P
inner join dbo.PROGRAMSALESMETHOD PSM on PSM.PROGRAMID = P.ID
inner join dbo.SALESMETHOD SM on SM.ID = PSM.SALESMETHODID
inner join dbo.PROGRAMPRICE PP on P.ID = PP.PROGRAMID
where P.ISDAILYADMISSION = 1 and
SM.TYPECODE = @TYPECODE and
P.ISACTIVE = 1
group by P.ID, P.NAME
order by NAME
end
else
begin
declare @PROGRAMID uniqueidentifier;
select @PROGRAMID = PROGRAMID
from dbo.ITINERARYITEM
where ITINERARYITEM.ID = @ITINERARYITEMID
and ITEMTYPECODE = 1
select
P.ID as VALUE,
P.NAME as LABEL
from dbo.PROGRAM P
inner join dbo.PROGRAMSALESMETHOD PSM on PSM.PROGRAMID = P.ID
inner join dbo.SALESMETHOD SM on SM.ID = PSM.SALESMETHODID
inner join dbo.PROGRAMPRICE PP on P.ID = PP.PROGRAMID
where P.ISDAILYADMISSION = 1 and
SM.TYPECODE = @TYPECODE and
(P.ISACTIVE = 1 or P.ID = @PROGRAMID)
group by P.ID, P.NAME
order by NAME
end