USP_DATAFORMTEMPLATE_EDIT_CONSTITUENTNAMEFORMAT
The save procedure used by the edit dataform template "Constituent Name Format Edit Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | The input ID parameter indicating the ID of the record being edited. |
@NAMEFORMATFUNCTIONID | uniqueidentifier | IN | Name |
@NAMEFORMATTYPECODEID | uniqueidentifier | IN | Type |
@PRIMARYADDRESSEE | bit | IN | Primary addressee |
@PRIMARYSALUTATION | bit | IN | Primary salutation |
@CUSTOMNAME | nvarchar(700) | IN | Custom name |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@SITEID | uniqueidentifier | IN | Site |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDIT_CONSTITUENTNAMEFORMAT
(
@ID uniqueidentifier,
@NAMEFORMATFUNCTIONID uniqueidentifier,
@NAMEFORMATTYPECODEID uniqueidentifier,
@PRIMARYADDRESSEE bit,
@PRIMARYSALUTATION bit,
@CUSTOMNAME nvarchar(700),
@CHANGEAGENTID uniqueidentifier = null,
@SITEID uniqueidentifier
)
as
set nocount on
declare @CURRENTDATE datetime;
set @CURRENTDATE = getdate();
declare @CONSTITUENTID uniqueidentifier;
select @CONSTITUENTID = CONSTITUENTID from dbo.NAMEFORMAT where ID = @ID;
if @ID is null
set @ID = newid();
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
begin try
if @PRIMARYADDRESSEE = 1
update
dbo.NAMEFORMAT
set
PRIMARYADDRESSEE = 0,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
CONSTITUENTID = @CONSTITUENTID and
PRIMARYADDRESSEE = 1 and
ID <> @ID;
if @PRIMARYSALUTATION = 1
update
dbo.NAMEFORMAT
set
PRIMARYSALUTATION = 0,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
where
CONSTITUENTID = @CONSTITUENTID and
PRIMARYSALUTATION = 1 and
ID <> @ID;
update
dbo.NAMEFORMAT
set
NAMEFORMATTYPECODEID = @NAMEFORMATTYPECODEID,
NAMEFORMATFUNCTIONID = @NAMEFORMATFUNCTIONID,
PRIMARYADDRESSEE = @PRIMARYADDRESSEE,
PRIMARYSALUTATION = @PRIMARYSALUTATION,
CUSTOMNAME = @CUSTOMNAME,
DATECHANGED = @CURRENTDATE,
CHANGEDBYID = @CHANGEAGENTID,
SITEID = @SITEID
where
ID = @ID
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch