USP_BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES_SELECT
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@BATCHID | uniqueidentifier | IN | |
@ROWID | uniqueidentifier | IN | |
@STARTSEQUENCE | int | IN | |
@SEQUENCECOUNT | int | IN |
Definition
Copy
/*
Generated by Blackbaud AppFx Platform
Date: 9/1/2024 11:52:52 PM
Assembly Version: Blackbaud.AppFx.Platform.SqlClr, Version=4.0.3800.0, Culture=neutral, PublicKeyToken=null
Copyright Blackbaud
*/
CREATE PROCEDURE dbo.USP_BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES_SELECT (
@BATCHID uniqueidentifier,
@ROWID uniqueidentifier = null, -- Returns messages for only the specified row. Takes precedence over sequence params.
@STARTSEQUENCE int = null, -- Returns messages for a range of rows. ROWID must be null.
@SEQUENCECOUNT int = null
)
as
begin
set nocount on;
if not @ROWID is null -- select only messages for the specified row
select
BATCHCONSTITUENTADDRESSUPDATE.SEQUENCE,
BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.ID,
BATCHCONSTITUENTADDRESSUPDATEID as ROWID,
MESSAGETEXT,
MESSAGETYPECODE,
MESSAGETYPE,
INVALIDFIELDID,
INVALIDFIELDVALUE,
SEVERITYCODE,
SEVERITY,
ORIGINCODE,
ORIGIN
from dbo.BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES
inner join dbo.BATCHCONSTITUENTADDRESSUPDATE on BATCHCONSTITUENTADDRESSUPDATE.ID = BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.BATCHCONSTITUENTADDRESSUPDATEID
where BATCHCONSTITUENTADDRESSUPDATEID = @ROWID
else
begin
if not @STARTSEQUENCE is null -- select messages only for the specified range of rows
with BATCHROWS as (
select ID,
ROW_NUMBER() over (order by SEQUENCE) as RowNum,
SEQUENCE
from dbo.BATCHCONSTITUENTADDRESSUPDATE
where BATCHID = @BATCHID
)
select
BATCHROWS.SEQUENCE,
BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.ID,
BATCHCONSTITUENTADDRESSUPDATEID as ROWID,
MESSAGETEXT,
MESSAGETYPECODE,
MESSAGETYPE,
INVALIDFIELDID,
INVALIDFIELDVALUE,
SEVERITYCODE,
SEVERITY,
ORIGINCODE,
ORIGIN
from dbo.BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES
inner join BATCHROWS on BATCHROWS.ID = BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.BATCHCONSTITUENTADDRESSUPDATEID
where RowNum >= @STARTSEQUENCE and (@SEQUENCECOUNT is null or RowNum < @STARTSEQUENCE + @SEQUENCECOUNT)
order by SEQUENCE
else -- select messages for all rows in the batch
select
BATCHCONSTITUENTADDRESSUPDATE.SEQUENCE,
BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.ID,
BATCHCONSTITUENTADDRESSUPDATEID as ROWID,
MESSAGETEXT,
MESSAGETYPECODE,
MESSAGETYPE,
INVALIDFIELDID,
INVALIDFIELDVALUE,
SEVERITYCODE,
SEVERITY,
ORIGINCODE,
ORIGIN
from dbo.BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES
inner join dbo.BATCHCONSTITUENTADDRESSUPDATE on BATCHCONSTITUENTADDRESSUPDATE.ID = BATCHCONSTITUENTADDRESSUPDATEBATCHSYSTEMMESSAGES.BATCHCONSTITUENTADDRESSUPDATEID
where BATCHCONSTITUENTADDRESSUPDATE.BATCHID = @BATCHID
order by SEQUENCE
end
end