USP_DATAFORMTEMPLATE_EDITLOAD_BATCHEVENTREGISTRANTBATCHROW

The load procedure used by the edit dataform template "Event Registrant Batch Row Edit 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.
@SEQUENCE int INOUT Sequence
@EVENTID uniqueidentifier INOUT Event
@CONSTITUENTID uniqueidentifier INOUT Registrant
@DATEPURCHASED datetime INOUT Date
@EVENTPRICEID uniqueidentifier INOUT Registration option
@REGISTRANTSTATUSCODE tinyint INOUT Status
@WAIVEBENEFITS bit INOUT Waive benefits
@QUANTITY int INOUT Quantity
@GUESTS xml INOUT Guests
@REGISTRANTLOOKUPID nvarchar(100) INOUT Registrant ID
@DESIGNATIONID uniqueidentifier INOUT Designation
@EVENTBASECURRENCYID uniqueidentifier INOUT Base currency
@REGISTRATIONTYPECODE tinyint INOUT Registration type
@REGISTRATIONSTATUSCODE tinyint INOUT Status
@REGISTRATIONATTENDEDCODE tinyint INOUT Attended
@EVENT_IMPORTLOOKUPID nvarchar(100) INOUT
@OPPORTUNITYID uniqueidentifier INOUT

Definition

Copy


CREATE procedure dbo.USP_DATAFORMTEMPLATE_EDITLOAD_BATCHEVENTREGISTRANTBATCHROW
(
  @ID uniqueidentifier,
  @DATALOADED bit = 0 output,
  @TSLONG bigint = 0 output,
  @SEQUENCE int = null output,
  @EVENTID uniqueidentifier = null output,
  @CONSTITUENTID uniqueidentifier = null output,
  @DATEPURCHASED datetime = null output,
  @EVENTPRICEID uniqueidentifier = null output,
  @REGISTRANTSTATUSCODE tinyint = null output,
  @WAIVEBENEFITS bit = null output,
  @QUANTITY int = null output,
  @GUESTS xml = null output,
  @REGISTRANTLOOKUPID nvarchar(100) = null output,
  @DESIGNATIONID uniqueidentifier = null output,
  @EVENTBASECURRENCYID uniqueidentifier = null output,
  @REGISTRATIONTYPECODE tinyint = null output,
  @REGISTRATIONSTATUSCODE tinyint = null output,
  @REGISTRATIONATTENDEDCODE tinyint = null output,
  @EVENT_IMPORTLOOKUPID nvarchar(100) = null output,
  @OPPORTUNITYID uniqueidentifier = null output
)
as
  set nocount on;

  set @DATALOADED = 0;
  set @TSLONG = 0;

  select
    @DATALOADED = 1,
    @TSLONG = [BATCHEVENTREGISTRANT].[TSLONG],
    @SEQUENCE = [BATCHEVENTREGISTRANT].[SEQUENCE],
    @EVENTID = [BATCHEVENTREGISTRANT].[EVENTID],
    @CONSTITUENTID = [BATCHEVENTREGISTRANT].[CONSTITUENTID],
    @DATEPURCHASED = [BATCHEVENTREGISTRANT].[DATEPURCHASED],
    @EVENTPRICEID = [BATCHEVENTREGISTRANT].[EVENTPRICEID],
    @REGISTRANTSTATUSCODE = [BATCHEVENTREGISTRANT].[REGISTRANTSTATUSCODE],
    @WAIVEBENEFITS = [BATCHEVENTREGISTRANT].[WAIVEBENEFITS],
    @QUANTITY = [BATCHEVENTREGISTRANT].[QUANTITY],
    @REGISTRANTLOOKUPID = [BATCHEVENTREGISTRANT].[REGISTRANTLOOKUPID],
    @DESIGNATIONID = [BATCHEVENTREGISTRANT].[DESIGNATIONID],
    @REGISTRATIONTYPECODE = [BATCHEVENTREGISTRANT].[ISWALKIN],
    @REGISTRATIONSTATUSCODE = [BATCHEVENTREGISTRANT].[REGISTRATIONSTATUSCODE],
    @REGISTRATIONATTENDEDCODE = [BATCHEVENTREGISTRANT].[REGISTRATIONATTENDEDCODE],
    @OPPORTUNITYID = [BATCHEVENTREGISTRANT].[OPPORTUNITYID]
  from dbo.BATCHEVENTREGISTRANT
  where BATCHEVENTREGISTRANT.ID = @ID;

  select @EVENTBASECURRENCYID = EVENT.BASECURRENCYID
  from dbo.EVENT
  where EVENT.ID = @EVENTID;

  declare @UNKNOWNGUESTWELLKNOWNGUID uniqueidentifier;
  set @UNKNOWNGUESTWELLKNOWNGUID = 'C776DAB5-65B2-4258-ADAE-AE396D28E251'; --Well-known GUID for unknown guest


  set @GUESTS =
  (
    select
      [BATCHEVENTREGISTRANTGUEST].ATTENDED,
      case
        when [BATCHEVENTREGISTRANTGUEST].CONSTITUENTID is null then @UNKNOWNGUESTWELLKNOWNGUID
        else [BATCHEVENTREGISTRANTGUEST].CONSTITUENTID
      end as CONSTITUENTID,
      [BATCHEVENTREGISTRANTGUEST].ID,
      [BATCHEVENTREGISTRANTGUEST].WAIVEREGISTRATIONFEE
    from dbo.BATCHEVENTREGISTRANTGUEST
    where [BATCHEVENTREGISTRANTGUEST].BATCHEVENTREGISTRANTID = @ID
    for xml raw('ITEM'),type,elements,root('GUESTS'),BINARY BASE64
  );

  return 0;