USP_DATALIST_CONSTITUENTGROUPINTERACTION2

List of interactions belonging to a constituent group and its current members.

Parameters

Parameter Parameter Type Mode Description
@GROUPID uniqueidentifier IN Input parameter indicating the context ID for the data list.
@CURRENTAPPUSERID uniqueidentifier IN Input parameter indicating the ID of the current user.
@DATEFILTER tinyint IN Date
@STARTDATE datetime IN Start date
@ENDDATE datetime IN End date
@TYPEFILTER uniqueidentifier IN Contact method
@SITEFILTERMODE tinyint IN Sites
@SITESSELECTED xml IN
@SECURITYFEATUREID uniqueidentifier IN Input parameter indicating the ID of the feature to use for site security checking.
@SECURITYFEATURETYPE tinyint IN Input parameter indicating the type of the feature to use for site security checking.
@STATUS tinyint IN Status

Definition

Copy


CREATE procedure dbo.USP_DATALIST_CONSTITUENTGROUPINTERACTION2
(
    @GROUPID uniqueidentifier,
    @CURRENTAPPUSERID uniqueidentifier,
    @DATEFILTER tinyint = 0,
    @STARTDATE datetime = null,
    @ENDDATE datetime = null,
    @TYPEFILTER uniqueidentifier = null,
    @SITEFILTERMODE tinyint = 0,
    @SITESSELECTED xml = null,
    @SECURITYFEATUREID uniqueidentifier = null,
    @SECURITYFEATURETYPE tinyint = null,
    @STATUS tinyint = null

as
begin
    set nocount on;

    declare @DATE datetime = getdate();

    if @DATEFILTER = 0        -- all

    begin
        set @STARTDATE = null
        set @ENDDATE = null
    end

    if @DATEFILTER = 1        -- this year

    begin
        set @STARTDATE = dbo.UFN_DATE_THISCALENDARYEAR_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_THISCALENDARYEAR_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 2        -- this quarter

    begin
        set @STARTDATE = dbo.UFN_DATE_THISQUARTER_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_THISQUARTER_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 3        -- this month

    begin
        set @STARTDATE = dbo.UFN_DATE_THISMONTH_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_THISMONTH_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 4        -- this week

    begin
        set @STARTDATE = dbo.UFN_DATE_THISWEEK_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_THISWEEK_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 5        -- next week

    begin
        set @STARTDATE = dbo.UFN_DATE_NEXTWEEK_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_NEXTWEEK_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 6        -- next month

    begin
        set @STARTDATE = dbo.UFN_DATE_NEXTMONTH_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_NEXTMONTH_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 7        -- next quarter

    begin
        set @STARTDATE = dbo.UFN_DATE_NEXTQUARTER_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_NEXTQUARTER_LASTDAY(@DATE, 0)
    end

    if @DATEFILTER = 8        -- next year

    begin
        set @STARTDATE = dbo.UFN_DATE_NEXTCALENDARYEAR_FIRSTDAY(@DATE, 0)
        set @ENDDATE = dbo.UFN_DATE_NEXTCALENDARYEAR_LASTDAY(@DATE, 0)
    end

    exec dbo.USP_CONSTITUENTGROUP_INTERACTIONS
        @GROUPID,
        @CURRENTAPPUSERID,
        @STARTDATE,
        @ENDDATE,
        @TYPEFILTER,
        @SITEFILTERMODE,
        @SITESSELECTED,
        @SECURITYFEATUREID,
        @SECURITYFEATURETYPE,
        @STATUS

end