UFN_RESERVATION_GETFACILITIESSTRING
Returns a string used for contracts containing facility information.
Return
Return Type |
---|
nvarchar(max) |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_RESERVATION_GETFACILITIESSTRING(@ID uniqueidentifier)
returns nvarchar(max)
as begin
declare @FACILITIES nvarchar(max);
declare @EVENTLOCATIONNAME nvarchar(100);
declare @STARTTIME dbo.UDT_HOURMINUTE;
declare @ENDTIME dbo.UDT_HOURMINUTE;
declare @PRICE money;
declare @CRLF char(2);
declare @TAB char(1);
set @FACILITIES = '';
set @CRLF = char(13) + char(10);
set @TAB = char(9);
declare FACILITIES_CURSOR cursor local fast_forward for
select
SALESORDERITEMFACILITY.EVENTLOCATIONNAME,
ITINERARYITEM.STARTTIME,
ITINERARYITEM.ENDTIME,
SALESORDERITEM.TOTAL
from
dbo.SALESORDERITEMFACILITY
inner join
dbo.SALESORDERITEM on SALESORDERITEM.ID = SALESORDERITEMFACILITY.ID
inner join
dbo.ITINERARYITEMLOCATION on ITINERARYITEMLOCATION.SALESORDERITEMID = SALESORDERITEM.ID
inner join
dbo.ITINERARYITEM on ITINERARYITEM.ID = ITINERARYITEMLOCATION.ID
where
SALESORDERITEM.SALESORDERID = @ID
order by
ITINERARYITEM.STARTDATE,
ITINERARYITEM.STARTTIME,
SALESORDERITEMFACILITY.EVENTLOCATIONNAME;
open FACILITIES_CURSOR;
fetch next from FACILITIES_CURSOR
into @EVENTLOCATIONNAME, @STARTTIME, @ENDTIME, @PRICE;
while @@FETCH_STATUS = 0
begin
if len(@FACILITIES) > 0
set @FACILITIES = @FACILITIES + @CRLF;
set @FACILITIES = @FACILITIES + @EVENTLOCATIONNAME + @TAB
+ dbo.UFN_HOURMINUTE_DISPLAYTIME(@STARTTIME) + ' - ' + dbo.UFN_HOURMINUTE_DISPLAYTIME(@ENDTIME)
+ @TAB + '@ ' + cast(@PRICE as nvarchar(50));
fetch next from FACILITIES_CURSOR
into @EVENTLOCATIONNAME, @STARTTIME, @ENDTIME, @PRICE;
end
close FACILITIES_CURSOR;
deallocate FACILITIES_CURSOR;
return @FACILITIES;
end