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