USP_SPONSORSHIPOPPORTUNITY_EDITSAVE_PROJECT

The save procedure used by the edit dataform template "Sponsorship Opportunity Project Edit Form".

Parameters

Parameter Parameter Type Mode Description
@ID uniqueidentifier IN The input ID parameter indicating the ID of the record being edited.
@CHANGEAGENTID uniqueidentifier IN Input parameter indicating the ID of the change agent invoking the procedure.
@SPONSORSHIPLOCATIONID uniqueidentifier IN Location
@PROJECTNAME nvarchar(100) IN Name
@DESCRIPTION nvarchar(255) IN Description
@SPONSORSHIPOPPORTUNITYGROUPID uniqueidentifier IN Project group
@GOAL money IN Amount
@SPONSORGOAL int IN Sponsors
@DESIGNATIONID uniqueidentifier IN Designation
@SPROPPPROJECTCATEGORYCODE uniqueidentifier IN Category

Definition

Copy


CREATE procedure dbo.USP_SPONSORSHIPOPPORTUNITY_EDITSAVE_PROJECT
(
    @ID uniqueidentifier,
    @CHANGEAGENTID uniqueidentifier = null,
    @SPONSORSHIPLOCATIONID uniqueidentifier,
    @PROJECTNAME nvarchar(100),
    @DESCRIPTION nvarchar(255),
    @SPONSORSHIPOPPORTUNITYGROUPID uniqueidentifier,
    @GOAL money,
    @SPONSORGOAL int,
  @DESIGNATIONID uniqueidentifier,
  @SPROPPPROJECTCATEGORYCODE uniqueidentifier
)
as

set nocount on;

if @ID is null
    set @ID = newid()

if @CHANGEAGENTID is null  
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output

declare @CURRENTDATE datetime
set @CURRENTDATE = getdate()

declare @AVAILABILITYCODE tinyint

select @AVAILABILITYCODE = case STATUSCODE when 0 then 0 else 2 end
from dbo.SPONSORSHIPLOCATION
where ID = @SPONSORSHIPLOCATIONID

begin try

  update
     dbo.SPONSORSHIPOPPORTUNITY
  set 
    SPONSORSHIPOPPORTUNITYGROUPID = @SPONSORSHIPOPPORTUNITYGROUPID,
    SPONSORSHIPLOCATIONID = @SPONSORSHIPLOCATIONID,
    AVAILABILITYCODE = case when @AVAILABILITYCODE = 2 then 2 when AVAILABILITYCODE = 1 then 1 else dbo.UFN_SPONSORSHIPOPPORTUNITY_CALCAVAILABILITY(ID) end,
    CHANGEDBYID = @CHANGEAGENTID,
    DATECHANGED = @CURRENTDATE
  where
     ID = @ID;

  update
     dbo.SPONSORSHIPOPPORTUNITYPROJECT
  set
     NAME = @PROJECTNAME,
     DESCRIPTION = @DESCRIPTION,
     GOAL = @GOAL,
         SPONSORGOAL = @SPONSORGOAL,
     SPROPPPROJECTCATEGORYCODEID = @SPROPPPROJECTCATEGORYCODE,
     DESIGNATIONID = @DESIGNATIONID,
     CHANGEDBYID = @CHANGEAGENTID,
     DATECHANGED = @CURRENTDATE
  where
     ID = @ID
end try

begin catch
    exec dbo.USP_RAISE_ERROR
    return 1
end catch

return 0