Stored Procedure Properties
| Name | Value |
|---|---|
| Owner | dbo |
| Created | 2004-05-31 |
| Startup | False |
| Encrypted | False |
Creation Options
| Name | Value |
|---|---|
| QUOTED_IDENTIFIER | OFF |
| ANSI_NULLS | ON |
Parameters
| Name | DataType | Length | Type |
|---|---|---|---|
| @forumGroupID | int | 4 | INPUT |
| @MoveUp | bit | 1 | INPUT |
Total: 2 parameter(s)
SQL
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
create procedure forums_ChangeForumGroupSortOrder
(
@forumGroupID int,
@MoveUp bit
)
AS
BEGIN
DECLARE @currentSortValue int
DECLARE @replaceSortValue int
-- Get the current sort order
SELECT @currentSortValue = SortOrder FROM ForumGroups WHERE ForumGroupID = @forumGroupID
-- Move the item up or down?
IF (@MoveUp = 1)
BEGIN
IF (@currentSortValue != 1)
BEGIN
SET @replaceSortValue = @currentSortValue - 1
UPDATE ForumGroups SET SortOrder = @currentSortValue WHERE SortOrder = @replaceSortValue
UPDATE ForumGroups SET SortOrder = @replaceSortValue WHERE ForumGroupID = @forumGroupID
END
END
ELSE
BEGIN
IF (@currentSortValue < (SELECT MAX(ForumGroupID) FROM ForumGroups))
BEGIN
SET @replaceSortValue = @currentSortValue + 1
UPDATE ForumGroups SET SortOrder = @currentSortValue WHERE SortOrder = @replaceSortValue
UPDATE ForumGroups SET SortOrder = @replaceSortValue WHERE ForumGroupID = @forumGroupID
END
END
END
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO