USP_DATALIST_FAFEVENTSPONSOR

List of sponsors in an event.

Parameters

Parameter Parameter Type Mode Description
@EVENTID uniqueidentifier IN Input parameter indicating the context ID for the data list.
@STATUS nvarchar(1) IN Status
@SPONSORNAME nvarchar(100) IN Sponsor name
@SPONSORID nvarchar(14) IN Sponsorship ID
@MAXROWS int IN Input parameter indicating the maximum number of rows to return.
@SITEFILTERMODE tinyint IN
@SITESSELECTED xml IN
@SECURITYFEATUREID uniqueidentifier IN
@SECURITYFEATURETYPE tinyint IN
@CURRENTAPPUSERID uniqueidentifier IN

Definition

Copy


CREATE procedure dbo.USP_DATALIST_FAFEVENTSPONSOR
(
  @EVENTID uniqueidentifier,
  @STATUS nvarchar(1) = null,
  @SPONSORNAME nvarchar(100) = '',
  @SPONSORID nvarchar(14) = '',
  @MAXROWS int = 1000,
  @SITEFILTERMODE tinyint = 0,
  @SITESSELECTED xml = null,
  @SECURITYFEATUREID uniqueidentifier = null,
  @SECURITYFEATURETYPE tinyint = null,
  @CURRENTAPPUSERID uniqueidentifier = null
)
as
    set nocount on;

    select top (@MAXROWS) ES.ID as ID,
           isnull(OC.NAME, IC.NAME) as Name,
           ST.NAME as SponsorshipOption,
           ES.FEESAMOUNT as Amount,           
           ES.DATEADDED as [Date],
           dbo.UFN_SPONSOR_GETBENEFITLIST_BYSPONSORID(ES.ID) as Benefits,
           ES.LOOKUPID as SponsorshipID,
           isnull(OE.EMAILADDRESS, IE.EMAILADDRESS) as EmailAddress,
           isnull(OP.NUMBER, IP.NUMBER) as PhoneNumber,
           case when ES.ISCANCELLED = 0 then 'Active' else 'Canceled' end as [Status],
           ES.EVENTSPONSORSHIPURL as URL
    from dbo.EVENTSPONSOR ES(nolock)
    left outer join dbo.EVENTSPONSORSHIPTYPE ST (nolock)
        on ST.ID = ES.EVENTSPONSORSHIPTYPEID
    left outer join dbo.CONSTITUENT IC(nolock)
        on IC.ID = ES.CONSTITUENTID
    left outer join dbo.EMAILADDRESS IE(nolock)
        on IE.CONSTITUENTID = IC.ID and IE.ISPRIMARY = 1
    left outer join dbo.PHONE IP(nolock)
        on IP.CONSTITUENTID = IC.ID and IP.ISPRIMARY = 1
    left outer join dbo.CONSTITUENT OC(nolock)
        on OC.ID = ES.ORGANIZATIONCONSTITUENTID
    left outer join dbo.EMAILADDRESS OE(nolock)
        on OE.CONSTITUENTID = OC.ID and OE.ISPRIMARY = 1
    left outer join dbo.PHONE OP(nolock)
        on OP.CONSTITUENTID = OC.ID and OP.ISPRIMARY = 1
    where ES.EVENTID = @EVENTID
    and ES.ISCANCELLED = isnull(@STATUS, ES.ISCANCELLED)
    and (OC.NAME like @SPONSORNAME + '%' or IC.NAME like @SPONSORNAME + '%')
    and ES.LOOKUPID like case when @SPONSORID = '' then ES.LOOKUPID else '%' + @SPONSORID + '%' end
  -- site security
  and
  (
    exists
    (
      select 1 from UFN_SITEID_MAPFROM_EVENTID(ES.EVENTID) EVENTSITE
      where (dbo.UFN_APPUSER_ISSYSADMIN(@CURRENTAPPUSERID) = 1 or exists (select 1 from dbo.UFN_SITESFORUSERONFEATURE(@CURRENTAPPUSERID,@SECURITYFEATUREID,@SECURITYFEATURETYPE) where SITEID=[EVENTSITE].[SITEID] or (SITEID is null and [EVENTSITE].[SITEID] is null)))
    )
  )
  -- site filter
  and
  (
    @SITEFILTERMODE = 0
    or
    exists
    (
      select 1 from UFN_SITEID_MAPFROM_EVENTID(ES.EVENTID) EVENTSITE
        where EVENTSITE.SITEID in
        (
          select SITEID from dbo.UFN_SITE_BUILDDATALISTSITEFILTER(@CURRENTAPPUSERID, @SITEFILTERMODE, @SITESSELECTED)
        )
    )
  )

  order by Name;