From 4608c05df087f6eb48984a74cbdba85c9ec3f14c Mon Sep 17 00:00:00 2001 From: mschill Date: Tue, 26 May 2026 07:01:43 -0400 Subject: [PATCH] B2026-050 Problem when Approval with Duplicate Rev Numbers --- PROMS/VEPROMS User Interface/PROMSFixes.Sql | 88 ++++++++++++++++++++- 1 file changed, 85 insertions(+), 3 deletions(-) diff --git a/PROMS/VEPROMS User Interface/PROMSFixes.Sql b/PROMS/VEPROMS User Interface/PROMSFixes.Sql index c4560ef6..ec6c56c2 100644 --- a/PROMS/VEPROMS User Interface/PROMSFixes.Sql +++ b/PROMS/VEPROMS User Interface/PROMSFixes.Sql @@ -5227,7 +5227,7 @@ CREATE PROCEDURE [dbo].[getRevisionByItemIDandRevisionNumberAndUnitID] WITH EXECUTE AS OWNER AS declare @RevisionID int -set @RevisionID = (select revisionid from revisions rr cross apply rr.config.nodes('//Applicability') t1(r1) where itemid = @itemid and revisionnumber = @RevisionNumber and r1.value('@Index','int') = @UnitID) +set @RevisionID = (select top 1 revisionid from revisions rr cross apply rr.config.nodes('//Applicability') t1(r1) where itemid = @itemid and revisionnumber = @RevisionNumber and r1.value('@Index','int') = @UnitID order by revisionid desc) SELECT [RevisionID], [ItemID], @@ -24908,6 +24908,88 @@ IF (@@Error = 0) PRINT 'Procedure Creation: getItemsWithNewROs Succeeded' ELSE PRINT 'Procedure Creation: getItemsWithNewROs Error on Creation' GO +/****** Object: StoredProcedure [dbo].[getRevisionByItemIDandRevisionNumber] ******/ +IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[getRevisionByItemIDandRevisionNumber]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) +DROP PROCEDURE [dbo].[getRevisionByItemIDandRevisionNumber]; +GO + +/***************************************************************************** + Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE + Copyright 2012 - Volian Enterprises, Inc. All rights reserved. +*****************************************************************************/ +CREATE PROCEDURE [dbo].[getRevisionByItemIDandRevisionNumber] + +( + @ItemID int, + @RevisionNumber nvarchar(50) +) +WITH EXECUTE AS OWNER +AS +declare @RevisionID int +set @RevisionID = (select top 1 revisionid from revisions where itemid = @itemid and revisionnumber = @RevisionNumber order by revisionid desc) + SELECT + [RevisionID], + [ItemID], + [TypeID], + [RevisionNumber], + [RevisionDate], + [Notes], + [Config], + [DTS], + [UserID], + [LastChanged], + (SELECT COUNT(*) FROM [Checks] WHERE [Checks].[RevisionID]=[Revisions].[RevisionID]) [CheckCount], + (SELECT COUNT(*) FROM [Versions] WHERE [Versions].[RevisionID]=[Revisions].[RevisionID]) [VersionCount] + FROM [Revisions] + WHERE [RevisionID]=@RevisionID + + SELECT + [Checks].[CheckID], + [Checks].[RevisionID], + [Checks].[StageID], + [Checks].[ConsistencyChecks], + [Checks].[DTS], + [Checks].[UserID], + [Checks].[LastChanged], + [Stages].[Name] [Stage_Name], + [Stages].[Description] [Stage_Description], + [Stages].[IsApproved] [Stage_IsApproved], + [Stages].[DTS] [Stage_DTS], + [Stages].[UserID] [Stage_UserID] + FROM [Checks] + JOIN [Stages] ON + [Stages].[StageID]=[Checks].[StageID] + WHERE + [Checks].[RevisionID]=@RevisionID + + + SELECT + [Versions].[VersionID], + [Versions].[RevisionID], + [Versions].[StageID], + [Versions].[DTS], + [Versions].[UserID], + [Versions].[LastChanged], + [Versions].[PDF], + [Versions].[SummaryPDF], + [Stages].[Name] [Stage_Name], + [Stages].[Description] [Stage_Description], + [Stages].[IsApproved] [Stage_IsApproved], + [Stages].[DTS] [Stage_DTS], + [Stages].[UserID] [Stage_UserID] + FROM [Versions] + JOIN [Stages] ON + [Stages].[StageID]=[Versions].[StageID] + WHERE + [Versions].[RevisionID]=@RevisionID + + RETURN + +-- Display the status of Proc creation +IF (@@Error = 0) PRINT 'Procedure Creation: getRevisionByItemIDandRevisionNumber Succeeded' +ELSE PRINT 'Procedure Creation: getRevisionByItemIDandRevisionNumber Error on Creation' +GO + /* --------------------------------------------------------------------------- | ADD New Code Before this Block | @@ -24941,8 +25023,8 @@ BEGIN TRY -- Try Block DECLARE @RevDate varchar(255) DECLARE @RevDescription varchar(255) - set @RevDate = '04/21/2026 7:00 AM' - set @RevDescription = 'Store RO Modification date/time' + set @RevDate = '05/26/2026 7:00 AM' + set @RevDescription = 'Get Most Recent Revision when Duplicates' Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription