spLoadRecord_DiscussionPosts
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@PKID | int | IN | |
@PrimaryPost | bit | IN |
Definition
Copy
CREATE PROCEDURE [dbo].[spLoadRecord_DiscussionPosts]
(
@PKID int,
@PrimaryPost bit
)
AS
BEGIN
set nocount on
if @PrimaryPost = 1
select DiscussionPosts.ID,TopicID,Message,PostedByID,
dbo.fnUserName(DiscussionPosts.PostedByID) as [FullName],
ReplyToID,IndentLevel,PostDate,Sequence,Approved,Blocked,
(select count(id) from DiscussionPosts DP
where DP.TopicID = DiscussionPosts.TopicID
and DP.IndentLevel <= DiscussionPosts.IndentLevel
and DP.Sequence < DiscussionPosts.Sequence) as [PreviousSiblings],
(select count(id) from DiscussionPosts DP
where DP.TopicID = DiscussionPosts.TopicID
and DP.IndentLevel = DiscussionPosts.IndentLevel
and DP.Sequence > DiscussionPosts.Sequence) as [NextSiblings]
from DiscussionPosts
where DiscussionPosts.TopicID = @PKID and DiscussionPosts.ReplyToID is null
else
select DiscussionPosts.ID,TopicID,Message,PostedByID,
dbo.fnUserName(DiscussionPosts.PostedByID) as [FullName],
ReplyToID,IndentLevel,PostDate,Sequence,Approved,Blocked,
(select count(id) from DiscussionPosts DP
where DP.TopicID = DiscussionPosts.TopicID
and DP.IndentLevel <= DiscussionPosts.IndentLevel
and DP.Sequence < DiscussionPosts.Sequence) as [PreviousSiblings],
(select count(id) from DiscussionPosts DP
where DP.TopicID = DiscussionPosts.TopicID
and DP.IndentLevel = DiscussionPosts.IndentLevel
and DP.Sequence > DiscussionPosts.Sequence) as [NextSiblings]
from DiscussionPosts
where DiscussionPosts.ID = @PKID
END