UFN_DESIGNATIONLEVELGOAL_GETQUARTERLYGOALS
Returns goals broken down by quarter for a designation level goal.
Return
Return Type |
---|
table |
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@DESIGNATIONLEVELGOALID | uniqueidentifier | IN |
Definition
Copy
create function dbo.UFN_DESIGNATIONLEVELGOAL_GETQUARTERLYGOALS(@DESIGNATIONLEVELGOALID uniqueidentifier)
returns @QUARTERGOALS table
(
DESIGNATIONLEVELGOALID uniqueidentifier NOT NULL,
QUARTER tinyint NOT NULL,
YEARNAME int NOT NULL,
STARTDATE datetime NOT NULL,
TOTALQUARTERS int NOT NULL,
SEQUENCE decimal NOT NULL,
DESIGNATIONLEVELID uniqueidentifier NOT NULL
)
as
begin
declare @ENDDATE datetime;
declare @STARTDATE datetime;
declare @NUMPARTS int;
declare @CURRENTPART decimal;
select @STARTDATE = DLG.STARTDATE,
@ENDDATE = DLG.ENDDATE,
@NUMPARTS = datediff(qq, DLG.STARTDATE, DLG.ENDDATE) + 1,
@CURRENTPART = 1
from dbo.DESIGNATIONLEVELGOAL DLG
where DLG.ID = @DESIGNATIONLEVELGOALID;
WHILE datediff(qq, @STARTDATE, @ENDDATE) > -1
begin
INSERT INTO @QUARTERGOALS
select ID,
datepart(qq, @STARTDATE),
datepart(yyyy, @STARTDATE),
@STARTDATE,
@NUMPARTS,
@CURRENTPART,
DESIGNATIONLEVELID
from dbo.DESIGNATIONLEVELGOAL
where ID = @DESIGNATIONLEVELGOALID;
set @STARTDATE = dateadd(qq, 1, @STARTDATE);
set @CURRENTPART = @CURRENTPART + 1;
CONTINUE
end
return
end