USP_ORGANIZATION_EDITSAVE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@ORGANIZATIONNAME | nvarchar(100) | IN | |
@INDUSTRYCODEID | uniqueidentifier | IN | |
@NUMEMPLOYEES | int | IN | |
@NUMSUBSIDIARIES | int | IN | |
@PARENTCORPID | uniqueidentifier | IN | |
@PICTURE | varbinary | IN | |
@PICTURETHUMBNAIL | varbinary | IN | |
@PICTURECHANGED | bit | IN | |
@WEBADDRESS | UDT_WEBADDRESS | IN | |
@ISPRIMARY | bit | IN |
Definition
Copy
create procedure dbo.USP_ORGANIZATION_EDITSAVE (
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@ORGANIZATIONNAME nvarchar(100),
@INDUSTRYCODEID uniqueidentifier,
@NUMEMPLOYEES int,
@NUMSUBSIDIARIES int,
@PARENTCORPID uniqueidentifier,
@PICTURE varbinary(max),
@PICTURETHUMBNAIL varbinary(max),
@PICTURECHANGED bit,
@WEBADDRESS dbo.UDT_WEBADDRESS,
@ISPRIMARY bit
)
as
set nocount on;
declare @KEYNAME nvarchar(100);
declare @KEYNAMEPREFIX nvarchar(50);
declare @CURRENTDATE datetime;
exec dbo.USP_PARSE_ORGANIZATION_NAME @ORGANIZATIONNAME, @KEYNAME output, @KEYNAMEPREFIX output;
if @NUMEMPLOYEES is null
set @NUMEMPLOYEES = 0;
if @NUMSUBSIDIARIES is null
set @NUMSUBSIDIARIES = 0;
if @CHANGEAGENTID is null
exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
begin try
if @PICTURECHANGED = 1
update CONSTITUENT set
KEYNAME = @KEYNAME,
KEYNAMEPREFIX = @KEYNAMEPREFIX,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE,
PICTURE = @PICTURE,
PICTURETHUMBNAIL = @PICTURETHUMBNAIL,
WEBADDRESS = @WEBADDRESS
from
dbo.CONSTITUENT
where
CONSTITUENT.ID = @ID;
else
update CONSTITUENT set
KEYNAME = @KEYNAME,
KEYNAMEPREFIX = @KEYNAMEPREFIX,
WEBADDRESS = @WEBADDRESS,
CHANGEDBYID = @CHANGEAGENTID,
DATECHANGED = @CURRENTDATE
from
dbo.CONSTITUENT
where
CONSTITUENT.ID = @ID;
update dbo.ORGANIZATIONDATA SET
ORGANIZATIONDATA.INDUSTRYCODEID = @INDUSTRYCODEID,
ORGANIZATIONDATA.NUMEMPLOYEES = @NUMEMPLOYEES,
ORGANIZATIONDATA.NUMSUBSIDIARIES = @NUMSUBSIDIARIES,
ORGANIZATIONDATA.PARENTCORPID = @PARENTCORPID,
ORGANIZATIONDATA.CHANGEDBYID = @CHANGEAGENTID,
ORGANIZATIONDATA.DATECHANGED = @CURRENTDATE,
ORGANIZATIONDATA.ISPRIMARY = @ISPRIMARY
from
dbo.ORGANIZATIONDATA
where
ORGANIZATIONDATA.ID = @ID ;
if @@rowcount = 0
insert into dbo.[ORGANIZATIONDATA]
(
[ID],
[INDUSTRYCODEID],
[NUMEMPLOYEES],
[NUMSUBSIDIARIES],
[PARENTCORPID],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED],
[ISPRIMARY]
) values (
@ID,
@INDUSTRYCODEID,
@NUMEMPLOYEES,
@NUMSUBSIDIARIES,
@PARENTCORPID,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE,
@ISPRIMARY
);
end try
begin catch
exec dbo.USP_RAISE_ERROR;
return 1;
end catch
return 0;