USP_DATAFORMTEMPLATE_ADD_EVENTJOBOCCURRENCE
The save procedure used by the add dataform template "Event Job Occurrence Add Form".
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@EVENTID | uniqueidentifier | IN | Input parameter indicating the context ID for the record being added. |
@ID | uniqueidentifier | INOUT | The output parameter indicating the ID of the record added. |
@CHANGEAGENTID | uniqueidentifier | IN | Input parameter indicating the ID of the change agent invoking the procedure. |
@JOBID | uniqueidentifier | IN | Job |
@DESCRIPTION | nvarchar(30) | IN | Occurrence name |
@DEPARTMENTCODEID | uniqueidentifier | IN | Department |
@LOCATIONCODEID | uniqueidentifier | IN | Location |
@TYPECODE | tinyint | IN | Type |
@STARTDATE | datetime | IN | Start date |
@ENDDATE | datetime | IN | End date |
@STARTMONTHDAY | UDT_MONTHDAY | IN | Start date |
@ENDMONTHDAY | UDT_MONTHDAY | IN | End date |
@ONESTARTTIME | UDT_HOURMINUTE | IN | Start time |
@ONEENDTIME | UDT_HOURMINUTE | IN | End time |
@RECSTARTTIME | UDT_HOURMINUTE | IN | Start time |
@RECENDTIME | UDT_HOURMINUTE | IN | End time |
@DAYOFWEEKCODE | tinyint | IN | Day of week |
@VOLUNTEERSNEEDED | int | IN | Volunteers needed |
@COMMENTS | nvarchar(max) | IN | Comment |
@SITEID | uniqueidentifier | IN | Site |
@ESTIMATEDVALUE | money | IN | Estimated value |
@CURRENTAPPUSERID | uniqueidentifier | IN | Input parameter indicating the ID of the current user. |
@SELECTEDEVENTID | uniqueidentifier | IN | Event |
@RECURRENCESTARTDATE | datetime | IN | |
@RECURRENCEENDDATE | datetime | IN |
Definition
Copy
CREATE procedure dbo.[USP_DATAFORMTEMPLATE_ADD_EVENTJOBOCCURRENCE]
(
@EVENTID uniqueidentifier,
@ID uniqueidentifier = null output,
@CHANGEAGENTID uniqueidentifier = null,
@JOBID uniqueidentifier,
@DESCRIPTION nvarchar(30),
@DEPARTMENTCODEID uniqueidentifier = null,
@LOCATIONCODEID uniqueidentifier = null,
@TYPECODE tinyint = 0,
@STARTDATE datetime = null,
@ENDDATE datetime = null,
@STARTMONTHDAY dbo.[UDT_MONTHDAY] = '0000',
@ENDMONTHDAY dbo.[UDT_MONTHDAY] = '0000',
@ONESTARTTIME dbo.[UDT_HOURMINUTE] = null,
@ONEENDTIME dbo.[UDT_HOURMINUTE] = null,
@RECSTARTTIME dbo.[UDT_HOURMINUTE] = null,
@RECENDTIME dbo.[UDT_HOURMINUTE] = null,
@DAYOFWEEKCODE tinyint = 0,
@VOLUNTEERSNEEDED integer = 0,
@COMMENTS nvarchar(max) = '',
@SITEID uniqueidentifier = null,
@ESTIMATEDVALUE money = 0,
@CURRENTAPPUSERID uniqueidentifier,
@SELECTEDEVENTID uniqueidentifier = null,
@RECURRENCESTARTDATE datetime = null,
@RECURRENCEENDDATE datetime = null
)
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;
if @SITEID is null and dbo.[UFN_SITEREQUIREDFORUSER](@CURRENTAPPUSERID) = 1
begin
raiserror('Site is required.', 13, 1);
return 1;
end
if @ID is null set @ID = newid()
if @CHANGEAGENTID is null
exec dbo.[USP_CHANGEAGENT_GETORCREATECHANGEAGENT] @CHANGEAGENTID output;
set @CURRENTDATE = getdate();
if @SELECTEDEVENTID is not null and @SELECTEDEVENTID <> '00000000-0000-0000-0000-000000000000'
set @EVENTID = @SELECTEDEVENTID;
--JamesWill WI135889 2011-01-26 Don't allow negative estimated efforts.
if @ESTIMATEDVALUE < 0
raiserror('BB_ERR_ESTIMATEDVALUE_NEGATIVE', 13, 1);
if @TYPECODE = 0
select @STARTMONTHDAY = '0000',
@ENDMONTHDAY = '0000',
@STARTTIME = @ONESTARTTIME,
@ENDTIME = @ONEENDTIME,
@RECURRENCESTARTDATE = null,
@RECURRENCEENDDATE = null;
if @TYPECODE = 1
select @STARTDATE = null,
@ENDDATE = null,
@STARTTIME = @RECSTARTTIME,
@ENDTIME = @RECENDTIME,
@STARTMONTHDAY = '0101',
@ENDMONTHDAY = '1231';
select @BASECURRENCYID = [BASECURRENCYID] from dbo.[EVENT] where [ID] = @EVENTID;
set @ORGANIZATIONCURRENCYID = dbo.[UFN_CURRENCY_GETORGANIZATIONCURRENCY]();
set @ORGANIZATIONESTIMATEDVALUE = @ESTIMATEDVALUE;
if @ORGANIZATIONCURRENCYID <> @BASECURRENCYID
begin
set @ORGANIZATIONEXCHANGERATEID = dbo.[UFN_CURRENCYEXCHANGERATE_GETLATEST](@BASECURRENCYID, @ORGANIZATIONCURRENCYID, @CURRENTDATE, 0, null);
set @ORGANIZATIONESTIMATEDVALUE = dbo.[UFN_CURRENCY_CONVERT](@ESTIMATEDVALUE, @ORGANIZATIONEXCHANGERATEID);
end
begin try
insert into dbo.[JOBOCCURRENCE]
(
[ID],
[JOBID],
[DESCRIPTION],
[TYPECODE],
[STARTDATE],
[ENDDATE],
[STARTMONTHDAY],
[ENDMONTHDAY],
[STARTTIME],
[ENDTIME],
[DAYOFWEEKCODE],
[EVENTID],
[VOLUNTEERSNEEDED],
[DEPARTMENTCODEID],
[LOCATIONCODEID],
[COMMENTS],
[SITEID],
[ESTIMATEDVALUE],
[BASECURRENCYID],
[ORGANIZATIONEXCHANGERATEID],
[ORGANIZATIONESTIMATEDVALUE],
[ADDEDBYID],
[CHANGEDBYID],
[DATEADDED],
[DATECHANGED],
[RECURRENCESTARTDATE],
[RECURRENCEENDDATE]
) values (
@ID,
@JOBID,
@DESCRIPTION,
@TYPECODE,
@STARTDATE,
@ENDDATE,
@STARTMONTHDAY,
@ENDMONTHDAY,
@STARTTIME,
@ENDTIME,
@DAYOFWEEKCODE,
@EVENTID,
@VOLUNTEERSNEEDED,
@DEPARTMENTCODEID,
@LOCATIONCODEID,
@COMMENTS,
@SITEID,
@ESTIMATEDVALUE,
@BASECURRENCYID,
@ORGANIZATIONEXCHANGERATEID,
@ORGANIZATIONESTIMATEDVALUE,
@CHANGEAGENTID,
@CHANGEAGENTID,
@CURRENTDATE,
@CURRENTDATE,
@RECURRENCESTARTDATE,
@RECURRENCEENDDATE
);
end try
begin catch
exec dbo.[USP_RAISE_ERROR];
return 1;
end catch
return 0;