/** Work Package Revision **/ CREATE PROCEDURE _DrawingRevision_GetNextDrawingRevisionNumber(@DrawingId int = NULL) AS SET NOCOUNT ON DECLARE @NewDrawingRevisionNumber int BEGIN SET @NewDrawingRevisionNumber = 0 IF @DrawingId = NULL BEGIN RAISERROR ('_DrawingRevision_GetNextDrawingRevisionNumber :: DrawingId must be assigned a value and cannot be null', 16, 1) END ELSE BEGIN IF Exists( SELECT MAX(DR.DrawingRevisionNumber) FROM DrawingRevision DR WHERE DR.DrawingId = @DrawingId ) BEGIN SET @NewDrawingRevisionNumber = ( SELECT MAX(DR.DrawingRevisionNumber) + 1 FROM DrawingRevision DR WHERE DR.DrawingId = @DrawingId ) IF @NewDrawingRevisionNumber = NULL BEGIN SET @NewDrawingRevisionNumber = 0 END -- END IF END -- END IF END -- END IF END RETURN @NewDrawingRevisionNumber GO