USP_DATAFORMTEMPLATE_EDITLOAD_ITINERARYSTAFFRESOURCE
The load procedure used by the edit dataform template "Itinerary Staff Resource Edit Data Form"
Parameters
| Parameter | Parameter Type | Mode | Description |
|---|---|---|---|
| @ID | uniqueidentifier | IN | The input ID parameter used to load the fields defined on the form. |
| @DATALOADED | bit | INOUT | Output parameter indicating whether or not data was actually loaded. |
| @TSLONG | bigint | INOUT | Output parameter indicating the TSLONG value of the record being edited. This is used to manage multi-user concurrency issues when multiple users access the same record. |
| @VOLUNTEERTYPE | nvarchar(50) | INOUT | Resource |
| @QUANTITYNEEDED | int | INOUT | Quantity needed |
| @FILLEDBY | nvarchar(50) | INOUT | Filled by |
| @JOB | nvarchar(50) | INOUT | Job being performed |
| @JOBNAME | nvarchar(100) | INOUT | Name |
| @JOBDESCRIPTION | nvarchar(255) | INOUT | Description |
| @IGNORECONFLICTS | bit | INOUT | Ignore conflicts when saving |
| @STARTDATE | datetime | INOUT | Start date |
| @STARTTIME | UDT_HOURMINUTE | INOUT | Start time |
| @ENDDATE | datetime | INOUT | End date |
| @ENDTIME | UDT_HOURMINUTE | INOUT | End time |
| @ITINERARYNAME | nvarchar(154) | INOUT | Itinerary name |
| @ITINERARYID | uniqueidentifier | INOUT | Itinerary |
| @VOLUNTEERTYPEID | uniqueidentifier | INOUT | Resource |
| @FILLEDBYCODE | tinyint | INOUT | Filled by |
| @ISREQUIREDRESOURCE | bit | INOUT | |
| @REQUIREDRESOURCEQUANTITY | int | INOUT | |
| @ITINERARYITEMSEXIST | int | INOUT | |
| @VOLUNTEERS | xml | INOUT | Volunteers |
| @ASSIGNMENTS | xml | INOUT | Volunteers |
Definition
Copy
CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_ITINERARYSTAFFRESOURCE
(
@ID uniqueidentifier,
@DATALOADED bit = 0 output,
@TSLONG bigint = 0 output,
@VOLUNTEERTYPE nvarchar(50) = null output,
@QUANTITYNEEDED int = null output,
@FILLEDBY nvarchar(50) = null output,
@JOB nvarchar(50) = null output,
@JOBNAME nvarchar(100) = null output,
@JOBDESCRIPTION nvarchar(255) = null output,
@IGNORECONFLICTS bit = null output,
@STARTDATE datetime = null output,
@STARTTIME UDT_HOURMINUTE = null output,
@ENDDATE datetime = null output,
@ENDTIME UDT_HOURMINUTE = null output,
@ITINERARYNAME nvarchar(154) = null output,
@ITINERARYID uniqueidentifier = null output,
@VOLUNTEERTYPEID uniqueidentifier = null output,
@FILLEDBYCODE tinyint = null output,
@ISREQUIREDRESOURCE bit = null output,
@REQUIREDRESOURCEQUANTITY int = null output,
@ITINERARYITEMSEXIST int = null output,
@VOLUNTEERS xml = null output,
@ASSIGNMENTS xml = null output
)
as
set nocount on;
-- be sure to set these, in case the select returns no rows
set @DATALOADED = 0
set @TSLONG = 0
select
@DATALOADED = 1,
@TSLONG = ITINERARYSTAFFRESOURCE.TSLONG,
@VOLUNTEERTYPE = VOLUNTEERTYPE.NAME,
@VOLUNTEERTYPEID = VOLUNTEERTYPE.ID,
@FILLEDBYCODE = ITINERARYSTAFFRESOURCE.FILLEDBYCODE,
@QUANTITYNEEDED = ITINERARYSTAFFRESOURCE.QUANTITYNEEDED,
@FILLEDBY = ITINERARYSTAFFRESOURCE.FILLEDBY,
@JOB = JOB.NAME,
@JOBNAME = JOB.NAME,
@JOBDESCRIPTION = JOB.DESCRIPTION,
@IGNORECONFLICTS = 0,
@STARTDATE = dbo.UFN_DATE_GETEARLIESTTIME(ITINERARY.STARTDATETIME),
@ENDDATE = dbo.UFN_DATE_GETEARLIESTTIME(ITINERARY.ENDDATETIME),
@STARTTIME = dbo.UFN_HOURMINUTE_GETFROMDATE(ITINERARY.STARTDATETIME),
@ENDTIME = dbo.UFN_HOURMINUTE_GETFROMDATE(ITINERARY.ENDDATETIME),
@ITINERARYNAME = ITINERARY.NAME,
@ITINERARYID = ITINERARY.ID,
@ISREQUIREDRESOURCE = case when (GROUPTYPEREQUIREDSTAFFRESOURCE.ID is null) then 0 else 1 end,
@REQUIREDRESOURCEQUANTITY = coalesce(GROUPTYPEREQUIREDSTAFFRESOURCE.QUANTITYNEEDED, 0),
@ITINERARYITEMSEXIST = case when ITINERARY.STARTDATETIME is null then 0 else 1 end
from dbo.ITINERARYSTAFFRESOURCE
left outer join dbo.JOB on
ITINERARYSTAFFRESOURCE.JOBID = JOB.ID
inner join dbo.VOLUNTEERTYPE on
VOLUNTEERTYPE.ID = ITINERARYSTAFFRESOURCE.VOLUNTEERTYPEID
inner join dbo.ITINERARY on
ITINERARYSTAFFRESOURCE.ITINERARYID = ITINERARY.ID
left outer join dbo.GROUPTYPEREQUIREDSTAFFRESOURCE on
(GROUPTYPEREQUIREDSTAFFRESOURCE.GROUPSALESGROUPTYPECODEID = ITINERARY.GROUPSALESGROUPTYPECODEID) and
(GROUPTYPEREQUIREDSTAFFRESOURCE.VOLUNTEERTYPEID = ITINERARYSTAFFRESOURCE.VOLUNTEERTYPEID) and
(GROUPTYPEREQUIREDSTAFFRESOURCE.FILLEDBYCODE = ITINERARYSTAFFRESOURCE.FILLEDBYCODE)
where
ITINERARYSTAFFRESOURCE.ID = @ID
return 0;