USP_DATAFORMTEMPLATE_EDITLOAD_MEMBERSHIPPROGRAMGENERAL
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@DATALOADED | bit | INOUT | |
@TSLONG | bigint | INOUT | |
@NAME | nvarchar(100) | INOUT | |
@DESCRIPTION | nvarchar(255) | INOUT | |
@CATEGORY | tinyint | INOUT | |
@SITEID | uniqueidentifier | INOUT | |
@ALLOWMULTIPLEMEMBERSHIPS | bit | INOUT | |
@SINGLETERMLENGTH | int | INOUT | |
@SINGLETERMLENGTHCODE | tinyint | INOUT |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_MEMBERSHIPPROGRAMGENERAL(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@NAME nvarchar(100) = null output,
@DESCRIPTION nvarchar(255) = null output,
@CATEGORY tinyint = null output,
@SITEID uniqueidentifier=null output,
@ALLOWMULTIPLEMEMBERSHIPS bit = null output,
@SINGLETERMLENGTH int = null output,
@SINGLETERMLENGTHCODE tinyint = null output
)
as
set nocount on;
set @DATALOADED = 0
set @TSLONG = 0
select
@DATALOADED = 1,
@TSLONG = TSLONG,
@NAME = NAME,
@DESCRIPTION = DESCRIPTION,
@CATEGORY = CATEGORYCODE,
@SITEID = SITEID,
@ALLOWMULTIPLEMEMBERSHIPS = ALLOWMULTIPLEMEMBERSHIPS
from dbo.MEMBERSHIPPROGRAM
where ID = @ID
--For annual programs, if there is only a single term, get the length of the single term
if (select count(MEMBERSHIPLEVELTERM.ID) from dbo.MEMBERSHIPLEVELTERM where MEMBERSHIPLEVELTERM.LEVELID =
(select top 1 MEMBERSHIPLEVEL.ID from dbo.MEMBERSHIPLEVEL inner join dbo.MEMBERSHIPPROGRAM on MEMBERSHIPLEVEL.MEMBERSHIPPROGRAMID = MEMBERSHIPPROGRAM.ID
where MEMBERSHIPPROGRAM.ID = @ID and MEMBERSHIPPROGRAM.PROGRAMTYPECODE = 0)) = 1
begin
select top 1 @SINGLETERMLENGTH = MEMBERSHIPLEVELTERM.TERMTIMELENGTH,
@SINGLETERMLENGTHCODE = MEMBERSHIPLEVELTERM.TERMLENGTHCODE
from dbo.MEMBERSHIPLEVELTERM
inner join dbo.MEMBERSHIPLEVEL on MEMBERSHIPLEVELTERM.LEVELID = MEMBERSHIPLEVEL.ID
where MEMBERSHIPLEVEL.MEMBERSHIPPROGRAMID = @ID
end
else
begin
select @SINGLETERMLENGTH = 0,
@SINGLETERMLENGTHCODE = 1
end
return 0;