USP_BBNC_CONSTITUENTINSELECTION
Determines whether or not the specified constituent exists within the specified selection for BBNC.
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@CONSTITUENTID | int | IN | |
@QUERYID | int | IN |
Definition
Copy
CREATE procedure [dbo].[USP_BBNC_CONSTITUENTINSELECTION](@CONSTITUENTID int, @QUERYID int)
with execute as owner
as
begin
declare @OBJECTNAME sysname;
declare @OBJECTTYPE tinyint;
declare @MATCHES int;
declare @FOUND bit;
declare @SQL nvarchar(max);
declare @PARAMS nvarchar(70);
declare @CONSTITGUID uniqueidentifier;
set nocount on;
set @FOUND = 0;
select
@OBJECTTYPE = IDSETREGISTER.OBJECTTYPE, @OBJECTNAME = IDSETREGISTER.DBOBJECTNAME
from
dbo.IDSETREGISTER
inner join
dbo.BBNCIDSETIDMAP on IDSETREGISTER.ID = BBNCIDSETIDMAP.IDSETREGISTERID
where
BBNCIDSETIDMAP.ID = @QUERYID;
select @CONSTITGUID = ID from dbo.CONSTITUENT where SEQUENCEID = @CONSTITUENTID;
if coalesce(@OBJECTTYPE,0) >= 0 and len(coalesce(@OBJECTNAME,'')) > 0
begin
if @OBJECTTYPE = 1
set @SQL = N'select @MATCHES = count(*) from dbo.' + @OBJECTNAME + N'()';
else
set @SQL = N'select @MATCHES = count(*) from dbo.' + @OBJECTNAME;
set @SQL = @SQL + N' where ID = @CONSTITGUID';
set @PARAMS = N'@CONSTITGUID uniqueidentifier, @MATCHES int output';
exec sp_executesql @SQL, @PARAMS, @CONSTITGUID = @CONSTITGUID, @MATCHES = @MATCHES output;
if @MATCHES > 0
set @FOUND = 1;
end
else
set @FOUND = 0;
select @FOUND as MATCHFOUND;
end