USP_PROGRAMCATEGORYCODE_NORMALIZESEQUENCENUMBERS

Used to reset the sequence for table entries in the "Program Category" code table.

Parameters

Parameter Parameter Type Mode Description
@CHANGEAGENTID uniqueidentifier IN The ID of the change agent resetting the sequence.

Definition

Copy
/*
Generated by Blackbaud AppFx Platform
Date:  9/30/2015 1:01:19 AM
Assembly Version:  Blackbaud.AppFx.Platform.SqlClr, Version=4.0.153.0, Culture=neutral, PublicKeyToken=null
Copyright Blackbaud
*/
CREATE procedure dbo.USP_PROGRAMCATEGORYCODE_NORMALIZESEQUENCENUMBERS
(
@CHANGEAGENTID uniqueidentifier = NULL
)
as

if @CHANGEAGENTID IS NULL
    exec dbo.USP_CHANGEAGENT_GETORCREATECHANGEAGENT @CHANGEAGENTID output;

with NEWNUMS(ROWNUM, ID) as
(
    select row_number() over(order by SEQUENCE), ID
    from dbo.PROGRAMCATEGORYCODE
)
update dbo.PROGRAMCATEGORYCODE
set PROGRAMCATEGORYCODE.SEQUENCE = NEWNUMS.ROWNUM,
    PROGRAMCATEGORYCODE.CHANGEDBYID=@CHANGEAGENTID,
    PROGRAMCATEGORYCODE.DATECHANGED=GETDATE()
from dbo.PROGRAMCATEGORYCODE
    inner join NEWNUMS
    on PROGRAMCATEGORYCODE.ID = NEWNUMS.ID;

if @@error<>0 return 1;

return 0;