UFN_PHILANTHROPICGIFT_GETCATEGORIES
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CATEGORYLIST | nvarchar(201) | IN |
Definition
Copy
create function dbo.UFN_PHILANTHROPICGIFT_GETCATEGORIES(@CATEGORYLIST nvarchar(201) = null)
returns @OUTPUT table (
CATEGORY nvarchar(200),
SEQUENCE INT
)
as
begin
declare @i int = 1;
declare @CATEGORYCACHE nvarchar(200);
declare @CATEGORY nvarchar(200) = dbo.UFN_PHILANTHROPICGIFT_GETCATEGORYATPOSITION(@CATEGORYLIST, 1);
while len(@CATEGORY) > 0 and @i < 100
begin
/*I know this looks weird but we want to make sure we don't insert the last category of they maxed out the field.*/
if len(@CATEGORYCACHE) > 0
insert into @OUTPUT values(@CATEGORYCACHE, @i);
set @CATEGORYCACHE = @CATEGORY;
set @i = @i + 1;
set @CATEGORY = dbo.UFN_PHILANTHROPICGIFT_GETCATEGORYATPOSITION(@CATEGORYLIST, @i);
end
if len(@CATEGORYLIST) < 201 and len(@CATEGORYCACHE) > 0
insert into @OUTPUT values(@CATEGORYCACHE, @i + 1);
return;
end