USP_DATAFORMTEMPLATE_EDIT_JOBOCCURRENCE_1_1_3
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@ID | uniqueidentifier | IN | |
@CHANGEAGENTID | uniqueidentifier | IN | |
@DESCRIPTION | nvarchar(30) | IN | |
@DEPARTMENTCODEID | uniqueidentifier | IN | |
@LOCATIONCODEID | uniqueidentifier | IN | |
@TYPECODE | tinyint | IN | |
@STARTDATE | datetime | IN | |
@ENDDATE | datetime | IN | |
@STARTMONTHDAY | UDT_MONTHDAY | IN | |
@ENDMONTHDAY | UDT_MONTHDAY | IN | |
@ONESTARTTIME | UDT_HOURMINUTE | IN | |
@ONEENDTIME | UDT_HOURMINUTE | IN | |
@RECSTARTTIME | UDT_HOURMINUTE | IN | |
@RECENDTIME | UDT_HOURMINUTE | IN | |
@DAYOFWEEKCODE | tinyint | IN | |
@EVENTID | uniqueidentifier | IN | |
@VOLUNTEERSNEEDED | int | IN | |
@COMMENTS | nvarchar(max) | IN | |
@SITEID | uniqueidentifier | IN | |
@CURRENTAPPUSERID | uniqueidentifier | IN | |
@ESTIMATEDVALUE | money | IN | |
@RECURRENCESTARTDATE | datetime | IN | |
@RECURRENCEENDDATE | datetime | IN |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_EDIT_JOBOCCURRENCE_1_1_3]
(
@ID uniqueidentifier,
@CHANGEAGENTID uniqueidentifier = null,
@DESCRIPTION nvarchar(30),
@DEPARTMENTCODEID uniqueidentifier,
@LOCATIONCODEID uniqueidentifier,
@TYPECODE tinyint,
@STARTDATE datetime,
@ENDDATE datetime,
@STARTMONTHDAY dbo.[UDT_MONTHDAY],
@ENDMONTHDAY dbo.[UDT_MONTHDAY],
@ONESTARTTIME dbo.[UDT_HOURMINUTE],
@ONEENDTIME dbo.[UDT_HOURMINUTE],
@RECSTARTTIME dbo.[UDT_HOURMINUTE],
@RECENDTIME dbo.[UDT_HOURMINUTE],
@DAYOFWEEKCODE tinyint,
@EVENTID uniqueidentifier,
@VOLUNTEERSNEEDED integer,
@COMMENTS nvarchar(max),
@SITEID uniqueidentifier,
@CURRENTAPPUSERID uniqueidentifier,
@ESTIMATEDVALUE money,
@RECURRENCESTARTDATE datetime,
@RECURRENCEENDDATE datetime
)
as
set nocount on;
declare @CURRENTDATE datetime;
declare @STARTTIME dbo.[UDT_HOURMINUTE];
declare @ENDTIME dbo.[UDT_HOURMINUTE];
declare @BASECURRENCYID uniqueidentifier;
declare @ORGANIZATIONCURRENCYID uniqueidentifier;
declare @ORGANIZATIONEXCHANGERATEID uniqueidentifier;
declare @ORGANIZATIONESTIMATEDVALUE money;
declare @DATEADDED datetime;
if @SITEID is null and dbo.UFN_SITEREQUIREDFORUSER(@CURRENTAPPUSERID) = 1
begin
raiserror('Site is required.', 13, 1)
return
end
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
if @TYPECODE = 0
select @STARTMONTHDAY = '0000',
@ENDMONTHDAY = '0000',
@STARTTIME = @ONESTARTTIME,
@ENDTIME = @ONEENDTIME,
@DAYOFWEEKCODE = 0,
@RECURRENCESTARTDATE = null,
@RECURRENCEENDDATE = null;
if @TYPECODE = 1
select @STARTDATE = null,
@ENDDATE = null,
@STARTTIME = @RECSTARTTIME,
@ENDTIME = @RECENDTIME,
@STARTMONTHDAY = '0101',
@ENDMONTHDAY = '1231';
if @TYPECODE = 2
select @STARTDATE = null,
@ENDDATE = null,
@STARTMONTHDAY = '0000',
@ENDMONTHDAY = '0000',
@STARTTIME = @RECSTARTTIME,
@ENDTIME = @RECENDTIME,
@RECURRENCESTARTDATE = null,
@RECURRENCEENDDATE = null;
select @BASECURRENCYID = [BASECURRENCYID], @DATEADDED = [DATEADDED] from dbo.[JOBOCCURRENCE] where [ID] = @ID;
set @ORGANIZATIONCURRENCYID = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();
set @ORGANIZATIONESTIMATEDVALUE = @ESTIMATEDVALUE;
if @ORGANIZATIONCURRENCYID <> @BASECURRENCYID
begin
set @ORGANIZATIONEXCHANGERATEID = dbo.[UFN_CURRENCYEXCHANGERATE_GETLATEST](@BASECURRENCYID, @ORGANIZATIONCURRENCYID, @DATEADDED, 0, null);
set @ORGANIZATIONESTIMATEDVALUE = dbo.[UFN_CURRENCY_CONVERT](@ESTIMATEDVALUE, @ORGANIZATIONEXCHANGERATEID);
end
begin try
update dbo.[JOBOCCURRENCE] set
[DESCRIPTION] = @DESCRIPTION,
[DEPARTMENTCODEID] = @DEPARTMENTCODEID,
[LOCATIONCODEID] = @LOCATIONCODEID,
[TYPECODE] = @TYPECODE,
[STARTDATE] = @STARTDATE,
[ENDDATE] = @ENDDATE,
[STARTMONTHDAY] = @STARTMONTHDAY,
[ENDMONTHDAY] = @ENDMONTHDAY,
[STARTTIME] = @STARTTIME,
[ENDTIME] = @ENDTIME,
[DAYOFWEEKCODE] = @DAYOFWEEKCODE,
[EVENTID] = @EVENTID,
[VOLUNTEERSNEEDED] = coalesce(@VOLUNTEERSNEEDED, 0),
[COMMENTS] = @COMMENTS,
[ORGANIZATIONEXCHANGERATEID] = @ORGANIZATIONEXCHANGERATEID,
[ESTIMATEDVALUE] = @ESTIMATEDVALUE,
[ORGANIZATIONESTIMATEDVALUE] = @ORGANIZATIONESTIMATEDVALUE,
[CHANGEDBYID] = @CHANGEAGENTID,
[DATECHANGED] = @CURRENTDATE,
[SITEID] = @SITEID,
[RECURRENCESTARTDATE] = @RECURRENCESTARTDATE,
[RECURRENCEENDDATE] = @RECURRENCEENDDATE
where [ID] = @ID;
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;