Compare commits
	
		
			7 Commits
		
	
	
		
			F2025-030_
			...
			C2024-005-
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 331ea86e6e | |||
| b496f8b9ed | |||
| 518e8bb827 | |||
| 7e60f06c66 | |||
| 74866388e6 | |||
| 9f36ccf029 | |||
| 3c0fa4295f | 
| @@ -1,5 +1,3 @@ | ||||
|  | ||||
|  | ||||
| Set NoCount On; | ||||
|  | ||||
| If (db_name() in('master','model','msdn','tempdb')) | ||||
| @@ -22226,6 +22224,688 @@ Go | ||||
| 	IF (@@Error = 0) PRINT 'Procedure Creation: [vesp_ListUnlinkedItems] Succeeded' | ||||
| 	ELSE PRINT 'Procedure Creation: [vesp_ListUnlinkedItems] Error on Creation' | ||||
| 	GO | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| 	/* | ||||
| ========================================================================================================== | ||||
|  Begin: C2024-004: KL - Update Copy Replace functionality, (remove ''copy of'') | ||||
| ========================================================================================================== | ||||
| */ | ||||
| 	 | ||||
| IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[CopyItemAndChildren]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) | ||||
| 	DROP PROCEDURE [CopyItemAndChildren]; | ||||
| GO | ||||
| 	 | ||||
| 	/***************************************************************************** | ||||
| 	   Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE | ||||
| 		   Copyright 2024 - Volian Enterprises, Inc. All rights reserved. | ||||
| 	*****************************************************************************/ | ||||
| 	/* | ||||
| 	========================================================================================================== | ||||
| 	 Author:		Kevin Laskey | ||||
| 	 Modified Date:	07/09/2024 | ||||
| 	 Description:	Copy Item and its Children | ||||
| 	========================================================================================================== | ||||
| 	 */ | ||||
| CREATE PROCEDURE [dbo].[CopyItemAndChildren] | ||||
| ( | ||||
| 	@StartItemID INT, | ||||
| 	@DestFormatID INT, | ||||
| 	@UserID NVARCHAR(100), | ||||
| 	@NewStartItemID int output | ||||
| ) | ||||
| WITH EXECUTE AS OWNER | ||||
| AS | ||||
| BEGIN TRY -- Try Block | ||||
|  | ||||
| --+-----------------------------------------------------------------+ | ||||
| --& BEGIN TRANSACTION to make these changes temporary               & | ||||
| --+-----------------------------------------------------------------+ | ||||
| 	BEGIN TRANSACTION | ||||
| 	if exists (select * from tblitems where itemid = @StartItemID and DeleteStatus !=0) | ||||
| 		BEGIN | ||||
| 			RAISERROR ('###Cannot Paste Step###This step has been deleted',16,1) | ||||
| 			RETURN | ||||
| 		END | ||||
| DECLARE @Children AS TABLE | ||||
| ( | ||||
| 	ItemID INT PRIMARY KEY, | ||||
| 	NewItemID INT, | ||||
| 	ContentID INT, | ||||
| 	NewContentID INT, | ||||
| 	FormatID INT, | ||||
| 	NewFormatID INT | ||||
| ) | ||||
| DECLARE @NewDocuments AS TABLE | ||||
| ( | ||||
| 	DocID INT PRIMARY KEY, | ||||
| 	NewDocID INT | ||||
| ) | ||||
| -- Locals | ||||
| DECLARE @DTS DATETIME -- DTS of all New Items | ||||
| DECLARE @StartContentID INT | ||||
| Select @StartContentID = ContentID from Items where ItemID = @StartItemID | ||||
| SET @DTS = GETDATE() -- Get the current Date and Time | ||||
| -- Get a list of all of the Items to be copied based upon StartItemID and EndItemID | ||||
| -- If the StartItemID = EndItemID then it is a single item and it's children | ||||
| INSERT INTO @Children SELECT ItemID,ItemID,ContentID,ContentID,FormatID,FormatID FROM vefn_ChildItemsRange(@StartItemID,@StartItemID,null) | ||||
| -- <<< Copy Contents >>> | ||||
| -- Create new content rows to match the existing rows.  Set the type to the Current ContentID temporarily | ||||
| -- so that the new content rows can be associated with the existing content rows. | ||||
| -- Rem 'Copy Of ' + before first [Number] for C2024-004 (KL) | ||||
| INSERT INTO Contents | ||||
|   ([Number],[Text],[Type],[FormatID],[Config],[DTS],[UserID]) | ||||
| 	select CASE when [ContentID] = @StartContentID and [Type]<20000 then [Number] else [Number] end, | ||||
| 	[Text],[ContentID],[FormatID],[Config],@DTS,@UserID | ||||
|  from Contents where ContentID in(Select ContentID from @Children) | ||||
| -- Update the @Children with the NewConentIDs | ||||
| --print 'A	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| UPDATE NN set NN.NewContentID = CC.ContentID | ||||
| From Contents CC | ||||
| Join @Children NN on NN.ContentID = CC.Type AND CC.DTS = @DTS and CC.UserID = @UserID | ||||
| -- Reset the Type column in the Contents table with the Type column from the original Records. | ||||
| --print 'B	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| DECLARE @SourceType INT | ||||
| Select @SourceType = Type from Contents where ContentID = @StartContentID | ||||
| if @SourceType =  0 | ||||
| 	BEGIN | ||||
| 		UPDATE CC set CC.Type = CC2.Type, CC.DTS = CC2.DTS, CC.UserID = CC2.UserID | ||||
| 		From Contents CC | ||||
| 		Join @Children NN on NN.NewContentID = CC.ContentID | ||||
| 		Join Contents CC2 on NN.ContentID = CC2.ContentID | ||||
| 	END | ||||
| else | ||||
| 	BEGIN | ||||
| UPDATE CC set CC.Type = CC2.Type | ||||
| From Contents CC | ||||
| Join @Children NN on NN.NewContentID = CC.ContentID | ||||
| Join Contents CC2 on NN.ContentID = CC2.ContentID | ||||
| 	END | ||||
| --print 'B1	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Contents are done | ||||
| 	-- SELECT * From Contents where DTS = @DTS and UserID = @UserID | ||||
| -- <<< Copy Grids >>> | ||||
| INSERT INTO [Grids]([ContentID],[Data],[Config],[DTS],[UserID]) | ||||
| 	SELECT NN.[NewContentID],[Data],[Config],@DTS,@UserID | ||||
| 		FROM [Grids] GG Join @Children NN on GG.ContentID = NN.ContentID | ||||
| -- <<< Copy Images >>> | ||||
| --print 'B2	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| INSERT INTO [Images]([ContentID],[ImageType],[FileName],[Data],[Config],[DTS],[UserID]) | ||||
| 	SELECT NN.[NewContentID],[ImageType],[FileName],[Data],[Config],@DTS,@UserID | ||||
| 		FROM [Images] II Join @Children NN on II.ContentID = NN.ContentID | ||||
| -- Create new item rows based upon the current item rows and the @Children table, with the NewContentIDs | ||||
| --print 'B3	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| INSERT INTO [Items] ([PreviousID],[ContentID],[DTS],[UserID]) | ||||
|      SELECT II.[PreviousID], -- Leave the PreviousID as is for now | ||||
| 			NN.NewContentID, @DTS, @UserID | ||||
| 			from @Children NN | ||||
| 			join Items II on II.ContentID = NN.ContentID | ||||
| -- Update the @Children with the NewItemIDs | ||||
| --print 'B4	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| UPDATE NN set NN.NewItemID = II.ItemID | ||||
| From Items II | ||||
| Join @Children NN on NN.NewContentID = II.ContentID AND II.DTS = @DTS and II.UserID = @UserID | ||||
| DECLARE @NewItemID int | ||||
| SELECT @NewItemID = NewItemID | ||||
| 	FROM @Children | ||||
| 	WHERE ItemID = @StartItemID | ||||
| --print 'B5	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| UPDATE NN SET NN.[NewFormatID] = CC.[FormatID] | ||||
| 	FROM @Children NN | ||||
| 	Join vefn_ChildItemsRange(@NewItemID,@NewItemID,@DestFormatID) CC | ||||
| 	ON NN.NewItemID = CC.ItemID | ||||
| -- The @Children table is now complete | ||||
| 	--SELECT * From @Children | ||||
| -- Update the PreviousID in the new Item rows, to the new ItemIDs based upon the old ItemIDs | ||||
| --print 'B6	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| Update II Set II.[PreviousID] = NN.NewItemID | ||||
| from Items II | ||||
| Join @Children NN on NN.ItemID = II.PreviousID AND II.DTS = @DTS and II.UserID = @UserID | ||||
| -- Get the new ItemIDs based upon the old ItemIDs | ||||
| SELECT @NewStartItemID = NewItemID from @Children where ItemID = @StartItemID | ||||
| --SELECT @NewEndItemID = NewItemID from @Children where ItemID = @EndItemID | ||||
| -- Set the PreviousID for the starting Item to null temporarily. | ||||
| -- This will be adjusted based upon where the step is inserted. | ||||
| --print 'B7	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| Update Items Set PreviousID = null where ItemID = @NewStartItemID | ||||
| if @SourceType =  0 | ||||
| 	BEGIN | ||||
| 		UPDATE II SET II.DTS = II2.DTS, II.UserID = II2.UserID | ||||
| 		From Items II | ||||
| 		Join @Children NN on NN.NewItemID = II.ItemID | ||||
| 		Join Items II2 on NN.ItemID = II2.ItemID | ||||
| 		WHERE NN.ItemID = @StartItemID | ||||
| 	END | ||||
| --print 'C	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Items are done | ||||
| 	--SELECT * From Items where DTS = @DTS and UserID = @UserID | ||||
| -- <<< Copy Parts >>> | ||||
| INSERT INTO [Parts] ([ContentID],[FromType],[ItemID],[DTS],[UserID]) | ||||
| Select NNF.NewContentID,[FromType],NNT.NewItemID, @DTS, @UserID from Parts PP | ||||
| JOIN @Children NNF on PP.ContentID = NNF.ContentID | ||||
| JOIN @Children NNT on PP.ItemID = NNT.ItemID | ||||
| --print 'D	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Parts are done | ||||
| 	-- SELECT * From Parts where DTS = @DTS and UserID = @UserID | ||||
| -- <<< Copy Annotations >>> | ||||
| INSERT INTO [Annotations] ([ItemID],[TypeID],[RtfText],[SearchText],[Config],[DTS],[UserID]) | ||||
|      Select NewItemID, TypeID, RtfText, SearchText, Config, @DTS, @UserID | ||||
| 			from Annotations AA Join @Children NN on AA.ItemID = NN.ItemID | ||||
| --print 'E	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Annotations are done | ||||
| 	-- SELECT * From Annotations where DTS = @DTS and UserID = @UserID | ||||
| -- <<< Copy Documents and Entries>>> | ||||
| -- logic to create Entries for Library Documents | ||||
| INSERT INTO [Entries] ([ContentID],[DocID],[DTS],[UserID]) | ||||
| 	SELECT NN.[NewContentID],EE.[DocID],@DTS,@UserID | ||||
|   FROM [Entries] EE JOIN @Children NN on NN.ContentID = EE.ContentID | ||||
| 	JOIN [Documents] DD on EE.[DocID] = DD.[DocID] and Isnull(LibTitle,'') <> '' | ||||
| -- Logic to create new documents for any documents used that do not have libtitles | ||||
| INSERT INTO [Documents] ([LibTitle],[DocContent],[DocAscii],[Config],[DTS],[UserID],[FileExtension]) | ||||
|   OUTPUT CAST(INSERTED.[LibTitle] as INT),INSERTED.[DocID] INTO @NewDocuments | ||||
| 	SELECT str(DD.[DocID]),[DocContent],[DocAscii],[Config],@DTS,@UserID,[FileExtension] | ||||
|   FROM [Entries] EE JOIN @Children NN on NN.ContentID = EE.ContentID | ||||
| 	JOIN [Documents] DD on EE.[DocID] = DD.[DocID] and Isnull(LibTitle,'') = '' | ||||
| UPDATE DD SET LibTitle = '' | ||||
| 	FROM Documents DD JOIN @NewDocuments ND on DD.[DocID] = ND.[NewDocID] | ||||
| 	where DTS = @DTS and UserID = @UserID | ||||
| --print 'F	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Documents are Done | ||||
| 	-- SELECT * From Documents where DTS = @DTS and UserID = @UserID | ||||
| -- Logic to create entries for these newly created documents | ||||
| INSERT INTO [Entries] ([ContentID],[DocID],[DTS],[UserID]) | ||||
| 	SELECT NN.[NewContentID],ND.[NewDocID],@DTS,@UserID | ||||
|   FROM [Entries] EE JOIN @Children NN on NN.ContentID = EE.ContentID | ||||
| 	JOIN @NewDocuments ND on EE.[DocID] = ND.[DocID] | ||||
| -- Logic to Create DROUsages for these newly created documents | ||||
| INSERT INTO [DROUsages] ([DocID],[ROID],[Config],[DTS],[UserID],[RODbID]) | ||||
|  	SELECT ND.[NewDocID],[ROID],[Config],@DTS,@UserID,[RODbID] | ||||
|   FROM [DROUsages] RR | ||||
| 	JOIN @NewDocuments ND on RR.[DocID] = ND.[DocID] | ||||
|  | ||||
| --print 'G	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Entries are done | ||||
| 	-- SELECT * From Entries EE JOIN Documents DD on ee.DocID = DD.DocID where EE.DTS = @DTS and EE.UserID = @UserID | ||||
| -- <<< Copy RoUsages >>> | ||||
| INSERT INTO [RoUsages] ([ContentID],[ROID],[Config],[DTS],[UserID],[RODbID]) | ||||
| 	SELECT NN.[NewContentID],CAST([ROUsageID] as nvarchar(16)),[Config],@DTS,@UserID,[RODbID] | ||||
| 		FROM [RoUsages] RR Join @Children NN on RR.ContentID = NN.ContentID | ||||
| -- Update content records for newly copied records to use correct RO usage ids in the RO tags | ||||
| DECLARE @RowsAffected int | ||||
| SET @RowsAffected=1 | ||||
| WHILE @RowsAffected > 0 | ||||
| BEGIN | ||||
| 	UPDATE CC SET [TEXT] = C2.NewText | ||||
| 	FROM CONTENTS CC | ||||
| 	JOIN (SELECT C1.ContentID, .dbo.vefn_FixROText(C1.Text, CAST([ROID] as int), [ROUsageID]) NewText | ||||
| 	FROM CONTENTS C1 | ||||
| 	JOIN @Children NN on C1.ContentID = NN.NewContentID | ||||
| 	JOIN RoUsages RO on NN.NewContentID = RO.ContentID where Len([ROID]) < 12) C2 ON CC.ContentID = C2.ContentID | ||||
| 	WHERE [TEXT] <> C2.NewText | ||||
| 	SET @RowsAffected = @@RowCount | ||||
| END | ||||
| -- Update grid records for newly copied records to use correct RO usage ids in the RO tags | ||||
| SET @RowsAffected=1 | ||||
| WHILE @RowsAffected > 0 | ||||
| BEGIN | ||||
| 	UPDATE GG SET [Data] = G2.NewData | ||||
| 	FROM GRIDS GG | ||||
| 	JOIN (SELECT G1.ContentID, .dbo.vefn_FixROData(G1.Data, CAST([ROID] as int), [ROUsageID]) NewData | ||||
| 	FROM GRIDS G1 | ||||
| 	JOIN @Children NN on G1.ContentID = NN.NewContentID | ||||
| 	JOIN RoUsages RO on NN.NewContentID = RO.ContentID where Len([ROID]) < 12) G2 ON GG.ContentID = G2.ContentID | ||||
| 	WHERE Cast([Data] as nvarchar(max)) <> cast(G2.NewData as nvarchar(max)) | ||||
| 	SET @RowsAffected = @@RowCount | ||||
| END | ||||
| UPDATE RON SET [ROID] = ROO.[ROID] | ||||
| 	FROM RoUsages RON | ||||
| 	JOIN @Children NN on RON.ContentID = NN.NewContentID | ||||
| 	JOIN RoUsages ROO on CAST(RON.ROID as int) = ROO.RoUsageID | ||||
| 	where Len(RON.[ROID]) < 12 | ||||
| --print 'H	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- RoUsages are done | ||||
| 	-- SELECT * From RoUsages where DTS = @DTS and UserID = @UserID | ||||
|  | ||||
| -- <<< Copy Transtions >>> | ||||
| -- Note that the inserted record has the 'TranType' field set to old transitionid.  This is done | ||||
| -- so that the next step can replace the old transitionid with the new transitionid in the | ||||
| -- content record's transition tokens.  The TranType gets reset after the content records are | ||||
| -- updated. | ||||
| -- Also note that the 'toid/rangeid' may need converted to newly copied ids or may not.  If it's | ||||
| -- not a range, then it always is converted to new, if there is a new.  If it's a range, both | ||||
| -- the toid & the rangeid must be new in order for the conversion to be correct.  You cannot | ||||
| -- have part of the range pointing to the new and part of the range pointing to the original | ||||
| -- locations. | ||||
|  | ||||
| INSERT INTO .[dbo].[Transitions] ([FromID],[ToID],[RangeID],[IsRange],[TranType],[Config],[DTS],[UserID]) | ||||
| 	SELECT NNF.[NewContentID], | ||||
| 		-- if both toid & range are null, use the original toid & rangeid | ||||
| 		CASE WHEN NNT.[NewItemID] is null or NNR.[NewItemID] is null THEN [ToID] ELSE NNT.[NewItemID] END, | ||||
| 		CASE WHEN NNT.[NewItemID] is null or NNR.[NewItemID] is null THEN [RangeID] ELSE NNR.[NewItemID] END, | ||||
| 		[IsRange],[TransitionID],[Config],@DTS,@UserID | ||||
| 	FROM .[dbo].[Transitions] TT | ||||
| 	JOIN @Children NNF on TT.[FromID] = NNF.[ContentID] | ||||
| 	LEFT JOIN @Children NNT on TT.[ToID] = NNT.[ItemID] | ||||
| 	LEFT JOIN @Children NNR on TT.[RangeID] = NNR.[ItemID] | ||||
| --print 'H1	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- -- Update content records for newly copied records to use correct TransitionIDs in the Transition tags | ||||
| SET @RowsAffected=1 | ||||
| WHILE @RowsAffected > 0 | ||||
| BEGIN | ||||
| UPDATE CC SET [TEXT] = C2.NewText | ||||
| 	FROM CONTENTS CC | ||||
| 	JOIN (SELECT C1.ContentID, .dbo.vefn_FixTransitionTextForCopy(C1.Text, TRO.TransitionID, TRO.TranType,  TRO.[ToID], TRO.[RangeID],TR.[TransitionID], TR.[ToID], TR.[RangeID], .dbo.vefn_GetNewTranType(NN.FormatID, NN.NewFormatID, TRO.TranType)) NewText | ||||
| 	FROM CONTENTS C1 | ||||
| 	JOIN @Children NN on C1.ContentID = NN.NewContentID | ||||
| 	JOIN Transitions TR on NN.NewContentID = TR.FromID | ||||
| 	JOIN Transitions TRO on TR.TranType = TRO.TransitionID) C2 ON CC.ContentID = C2.ContentID | ||||
| 	WHERE [TEXT] <> C2.NewText | ||||
| 	SET @RowsAffected = @@RowCount | ||||
| END | ||||
| --print 'H2	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| --set nocount off | ||||
| -- -- Update grid records for newly copied records to use correct TransitionIDs in the Transition tags | ||||
| declare @grids table | ||||
| ( | ||||
| contentid int primary key, | ||||
| data xml | ||||
| ) | ||||
| insert into @grids select gg.contentid,gg.data from GRIDS GG | ||||
| 	where gg.contentid in (select nn.newcontentid from | ||||
| 	@Children NN | ||||
| 	JOIN Transitions TR on NN.NewContentID = TR.FromID | ||||
| 	JOIN Transitions TRO on TR.TranType = TRO.TransitionID) | ||||
| --print 'H2.1	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| --select * from @grids | ||||
| SET @RowsAffected=1 | ||||
| WHILE @RowsAffected > 0 | ||||
| BEGIN | ||||
| UPDATE GG SET [DATA] = G2.NewData | ||||
| 	FROM @GRIDS GG | ||||
| 	JOIN (SELECT G1.ContentID, .dbo.vefn_FixTransitionDataForCopy(G1.Data, TRO.TransitionID, TRO.TranType,  TRO.[ToID], TRO.[RangeID],TR.[TransitionID], TR.[ToID], TR.[RangeID], .dbo.vefn_GetNewTranType(NN.FormatID, NN.NewFormatID, TRO.TranType)) NewData | ||||
| 	FROM @GRIDS G1 | ||||
| 	JOIN @Children NN on G1.ContentID = NN.NewContentID | ||||
| 	JOIN Transitions TR on NN.NewContentID = TR.FromID | ||||
| 	JOIN Transitions TRO on TR.TranType = TRO.TransitionID) G2 ON GG.ContentID = G2.ContentID | ||||
| 	WHERE Cast([DATA] as nvarchar(max)) <> CAST(G2.NewData as nvarchar(max)) | ||||
| 	SET @RowsAffected = @@RowCount | ||||
| END | ||||
| --print 'H2.2	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| update GG set data = g1.data from Grids gg join @grids g1 on gg.contentid = g1.contentid | ||||
| --print 'H3	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| --set nocount on | ||||
| -- Add 'Verification Required' AnnotationType | ||||
| 	DECLARE @typeID int | ||||
| 	SELECT @typeID = TypeID from AnnotationTypes where Name = 'Verification Required' | ||||
| 	IF(@typeID IS NULL) | ||||
| 	BEGIN | ||||
| 		INSERT INTO [AnnotationTypes]	([Name],[UserID])	VALUES	('Verification Required','Volian') | ||||
| 		SELECT @typeID = SCOPE_IDENTITY() | ||||
| 	END | ||||
| 	-- Add "Verification Required" Annotation for each Transition whose transition format changes | ||||
| INSERT INTO [Annotations] ([ItemID],[TypeID],[SearchText],[UserID]) | ||||
| 		SELECT NN.NewItemID, @typeID,'Verify Transition Format',@UserID | ||||
| 			FROM Transitions TR | ||||
| 			JOIN @Children NN on TR.FromID = NN.NewContentID | ||||
| 			JOIN Transitions TRO on TR.TranType = TRO.TransitionID | ||||
| 			WHERE .dbo.vefn_CompareTranFormat(NN.FormatID, NN.NewFormatID, TRO.TranType) <> 0 | ||||
| --print 'H4	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| UPDATE TR SET TR.[TranType] = .dbo.vefn_GetNewTranType(NN.FormatID, NN.NewFormatID, TRO.TranType) | ||||
| 	FROM Transitions TR | ||||
| 	JOIN @Children NN on TR.FromID = NN.NewContentID | ||||
| 	JOIN Transitions TRO on TR.TranType = TRO.TransitionID | ||||
| --print 'H5	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| -- Transitions are done | ||||
| 	-- SELECT * From Transitions where DTS = @DTS and UserID = @UserID | ||||
| --print 'Z	' + cast(datediff(s,@dts,getdate()) as varchar(100)) | ||||
| --foldouts fixing code | ||||
| if exists (select * from contents where contentid in (select newcontentid from @children) and config like '%FloatingFoldout%') | ||||
| begin | ||||
| 	--insert into #mytemp | ||||
| 	select cc.contentid,xsteps.value('@FloatingFoldout','int') oldfoldoutid,(select newitemid  | ||||
| 	from @children  | ||||
| 	where itemid = xsteps.value('@FloatingFoldout','int')) newfoldoutid,xconfig  | ||||
| 	into #mytemp  | ||||
| 	from (select *,cast(config as xml) xconfig from contents where contentid in (select newcontentid from @children)) cc | ||||
| 	cross apply xconfig.nodes('Config/Step') tsteps(xsteps) | ||||
| 	--build @cmd string | ||||
| 	declare @cmd nvarchar(max) | ||||
| 	declare cmds cursor for | ||||
| 	select distinct 'update #mytemp set xconfig.modify(''replace value of (Config/Step/@FloatingFoldout)[1] with "' | ||||
| 	 + cast(newfoldoutid as varchar(10)) | ||||
| 	 + '"'') where xconfig.value(''(Config/Step/@FloatingFoldout)[1]'',''int'') = ' | ||||
| 	 + cast(oldfoldoutid as varchar(10)) | ||||
| 	from #mytemp | ||||
| 	--execute cursor over rows | ||||
| 	open cmds | ||||
| 	fetch next from cmds into @cmd | ||||
| 	while @@fetch_status = 0 | ||||
| 	begin | ||||
| 		exec sp_executesql @cmd | ||||
| 		fetch next from cmds into @cmd | ||||
| 	end | ||||
| 	close cmds | ||||
| 	deallocate cmds | ||||
| 	--actually update contents | ||||
| 	update cc set config = cast(xconfig as varchar(max)) from contents cc join #mytemp mt on cc.contentid = mt.contentid | ||||
| 	--get rid of #mytemp | ||||
| 	drop table #mytemp | ||||
| end | ||||
| --end foldouts fixing code | ||||
| --section start | ||||
| DECLARE @NewContentID int | ||||
| Select @NewContentID = NewContentID from @Children where ItemID = @StartItemID | ||||
| DECLARE @Config varchar(max) | ||||
| DECLARE @XConfig xml | ||||
| select @Config = config from contents where contentid = @NewContentID | ||||
| select @XConfig = cast(@Config as xml) | ||||
| if @Config like '%SectionStart%' begin | ||||
| 	DECLARE @SectionStart int | ||||
| 	select @SectionStart = xproc.value('@SectionStart','int') from @xconfig.nodes('Config/Procedure') tproc(xproc) | ||||
| 	DECLARE @NewSectionStart int | ||||
| 	select @NewSectionStart = newitemid from @children where itemid = @SectionStart | ||||
| 	DECLARE @cmd2 nvarchar(max) | ||||
| 	set @cmd2 = ' | ||||
| 		declare @XConfig xml;  | ||||
| 		set @XConfig = cast(''' + @Config + ''' as xml);  | ||||
| 		set @XConfig.modify(''replace value of (Config/Procedure/@SectionStart)[1] with "' + cast(@NewSectionStart as nvarchar(10)) + '"'');  | ||||
| 		update contents set config = cast(@XConfig as varchar(max)) where contentid = ' + cast(@NewContentID as nvarchar(10)) + ';' | ||||
| 	exec sp_executesql @cmd2 | ||||
| end | ||||
| --end section start | ||||
| 	IF( @@TRANCOUNT > 0 ) COMMIT | ||||
| END TRY | ||||
| BEGIN CATCH -- Catch Block | ||||
| 	IF( @@TRANCOUNT = 1 ) ROLLBACK -- Only rollback if top level | ||||
|  	ELSE IF( @@TRANCOUNT > 1 ) COMMIT -- Otherwise commit.  Top level will rollback | ||||
| 	EXEC vlnErrorHandler | ||||
| END CATCH | ||||
|  | ||||
| Go | ||||
|  | ||||
| 	IF (@@Error = 0) PRINT 'Procedure Creation: [CopyItemAndChildren] Succeeded' | ||||
| 	ELSE PRINT 'Procedure Creation: [CopyItemAndChildren] Error on Creation' | ||||
| 	GO | ||||
|  | ||||
| /* | ||||
| ========================================================================================================== | ||||
|  End: C2024-004: KL - Update Copy Replace functionality, (remove ''copy of'') | ||||
| ========================================================================================================== | ||||
| */ | ||||
|  | ||||
|  | ||||
|  | ||||
| /* | ||||
| ========================================================================================================== | ||||
|  Begin: C2024-005: PRL - SPs to support Admin tool to clean Annotations | ||||
| ========================================================================================================== | ||||
| */ | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[deleteAnnotationsDocvByType]    Script Date: 7/11/2024 2:39:59 PM ******/ | ||||
|  | ||||
| IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'deleteAnnotationsDocvByType') | ||||
| DROP PROCEDURE [dbo].[deleteAnnotationsDocvByType] | ||||
| GO | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[deleteAnnotationsDocvByType]    Script Date: 7/11/2024 2:39:59 PM ******/ | ||||
| SET ANSI_NULLS ON | ||||
| GO | ||||
|  | ||||
| SET QUOTED_IDENTIFIER ON | ||||
| GO | ||||
|  | ||||
| 	/***************************************************************************** | ||||
| 	   Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE | ||||
| 		   Copyright 2024 - Volian Enterprises, Inc. All rights reserved. | ||||
| 	*****************************************************************************/ | ||||
| 	/* | ||||
| 	========================================================================================================== | ||||
| 	 Author:		Paul Larsen | ||||
| 	 Modified Date:	07/11/2024 | ||||
| 	 Description:	Delete Annotations in DocVersions by Annotation Type | ||||
| 	========================================================================================================== | ||||
| 	 */ | ||||
|  | ||||
| CREATE procedure [dbo].[deleteAnnotationsDocvByType] | ||||
| ( | ||||
| 	@docvList varchar(MAX), | ||||
| 	@typeid int | ||||
| ) | ||||
| AS | ||||
|  | ||||
| 	DECLARE @docvs TABLE | ||||
| 	( | ||||
| 		RowID INT NOT NULL IDENTITY(1, 1) PRIMARY KEY, | ||||
| 		DocvVersionID int | ||||
| 	) | ||||
|  | ||||
| 	DECLARE @Annotationitems table | ||||
| 	( | ||||
| 		RowID int NOT NULL IDENTITY(1,1), | ||||
| 		AllItemIDs int		 | ||||
| 	) | ||||
| 	 | ||||
| 	INSERT INTO @docvs (DocvVersionID) (select id from vefn_SplitInt(@docvList, ',')) | ||||
|  | ||||
| 	DECLARE @cnt int = 0 | ||||
| 	DECLARE @cnt2 int | ||||
| 	DECLARE @itemid int | ||||
|     DECLARE @i INT | ||||
|     SET @i = (SELECT MIN(RowID) FROM @docvs); | ||||
| 	DECLARE @max INT; | ||||
|     SET @max = (SELECT MAX(RowID) FROM @docvs); | ||||
|  | ||||
| 	-- add all itemids relateted to requested Annotation cleaning. | ||||
| 	while (@i <= @max) | ||||
| 	BEGIN | ||||
| 		SELECT @itemid = DocvVersionID from @docvs where RowID = @i | ||||
| 		INSERT INTO @Annotationitems (AllItemIDs) | ||||
| 		(SELECT cir.itemid FROM [vefn_GetVersionItems](@docvList) cir JOIN Annotations an on an.itemid = cir.itemid where an.typeid = @typeid) | ||||
| 		--vefn_ChildItemsRange(@itemid,@itemid,null) cir JOIN Annotations an on an.itemid = cir.itemid where an.typeid = @typeid) | ||||
| 		SET @i = @i + 1; | ||||
| 	END | ||||
|  | ||||
|     SELECT @i = MIN(RowID) FROM @docvs; | ||||
|     SELECT @max = MAX(RowID) FROM @docvs;		 | ||||
|  | ||||
| 	-- Delete Annotations | ||||
| 	DELETE FROM Ann  | ||||
| 	FROM tblAnnotations Ann INNER JOIN @Annotationitems AI ON Ann.itemid = AI.AllItemIDs WHERE TypeID = @typeidI beleive the  | ||||
| 	 | ||||
| GO | ||||
|  | ||||
| IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'deleteAnnotationsProcByType') | ||||
| DROP PROCEDURE [dbo].[deleteAnnotationsProcByType] | ||||
| GO | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[deleteAnnotationsProcByType]    Script Date: 7/11/2024 2:46:05 PM ******/ | ||||
| SET ANSI_NULLS ON | ||||
| GO | ||||
|  | ||||
| SET QUOTED_IDENTIFIER ON | ||||
| GO | ||||
|  | ||||
| 	/***************************************************************************** | ||||
| 	   Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE | ||||
| 		   Copyright 2024 - Volian Enterprises, Inc. All rights reserved. | ||||
| 	*****************************************************************************/ | ||||
| 	/* | ||||
| 	========================================================================================================== | ||||
| 	 Author:		Paul Larsen | ||||
| 	 Modified Date:	07/11/2024 | ||||
| 	 Description:	Delete Annotations in Procedures by Annotation Type | ||||
| 	========================================================================================================== | ||||
| 	 */ | ||||
| 	  | ||||
| CREATE procedure [dbo].[deleteAnnotationsProcByType] | ||||
| ( | ||||
| 	@procList varchar(MAX), | ||||
| 	@typeid int | ||||
| ) | ||||
| AS | ||||
|  | ||||
| 	DECLARE @procs TABLE | ||||
| 	( | ||||
| 		RowID INT NOT NULL IDENTITY(1, 1) PRIMARY KEY, | ||||
| 		ProcItemIDs int | ||||
| 	) | ||||
|  | ||||
| 	DECLARE @Annotationitems table | ||||
| 	( | ||||
| 		RowID int NOT NULL IDENTITY(1,1), | ||||
| 		AllItemIDs int		 | ||||
| 	) | ||||
|  | ||||
| 	DECLARE @cnt int = 0 | ||||
| 	DECLARE @cnt2 int | ||||
| 	DECLARE @itemid int | ||||
| 	 | ||||
| 	INSERT INTO @procs (ProcItemIDs) (select id from vefn_SplitInt(@procList, ',')) | ||||
|  | ||||
| 	DECLARE @i INT | ||||
|     SET @i = (SELECT MIN(RowID) FROM @procs); | ||||
| 	DECLARE @max INT; | ||||
|     SET @max = (SELECT MAX(RowID) FROM @procs); | ||||
|  | ||||
| 	-- add all itemids relateted to requested Annotation cleaning. | ||||
| 	while (@i <= @max) | ||||
| 	BEGIN | ||||
| 		SELECT @itemid = ProcItemIDs from @procs where RowID = @i | ||||
| 		INSERT INTO @Annotationitems (AllItemIDs) | ||||
| 		(SELECT cir.itemid FROM vefn_ChildItemsRange(@itemid,@itemid,null) cir JOIN Annotations an on an.itemid = cir.itemid where an.typeid = @typeid) | ||||
| 		SET @i = @i + 1; | ||||
| 	END | ||||
|  | ||||
|     SELECT @i = MIN(RowID) FROM @procs; | ||||
|     SELECT @max = MAX(RowID) FROM @procs;		 | ||||
|  | ||||
| 	-- Delete Annotations | ||||
| 	DELETE FROM Ann  | ||||
| 	FROM tblAnnotations Ann INNER JOIN @Annotationitems AI ON Ann.itemid = AI.AllItemIDs WHERE TypeID = @typeid	 | ||||
| GO | ||||
|  | ||||
| IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'getAnnotationDocvCount') | ||||
| DROP PROCEDURE [dbo].[getAnnotationDocvCount] | ||||
| GO | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[getAnnotationDocvCount]    Script Date: 7/11/2024 2:48:35 PM ******/ | ||||
| SET ANSI_NULLS ON | ||||
| GO | ||||
|  | ||||
| SET QUOTED_IDENTIFIER ON | ||||
| GO | ||||
|  | ||||
| 	/***************************************************************************** | ||||
| 	   Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE | ||||
| 		   Copyright 2024 - Volian Enterprises, Inc. All rights reserved. | ||||
| 	*****************************************************************************/ | ||||
| 	/* | ||||
| 	========================================================================================================== | ||||
| 	 Author:		Paul Larsen | ||||
| 	 Modified Date:	07/11/2024 | ||||
| 	 Description:	Retrieve the number of Annotations that will be deleted (DocVersions) | ||||
| 	========================================================================================================== | ||||
| 	 */ | ||||
|  | ||||
| CREATE procedure [dbo].[getAnnotationDocvCount] | ||||
| ( | ||||
| 	@docvList varchar(MAX), | ||||
| 	@typeid int | ||||
| ) | ||||
| AS | ||||
|  | ||||
| DECLARE @docvs TABLE | ||||
| ( | ||||
| 	RowID INT NOT NULL IDENTITY(1, 1) PRIMARY KEY, | ||||
| 	itemid int | ||||
| ) | ||||
|  | ||||
| --INSERT INTO @procs from STRING_SPLIT(@procList, ',') | ||||
|  | ||||
| INSERT INTO @docvs (itemid) (select id from vefn_SplitInt(@docvList, ',')) | ||||
|  | ||||
| 	DECLARE @cnt int = 0 | ||||
|  | ||||
| 	SELECT @cnt = count(cir.itemid) FROM [vefn_GetVersionItems](@docvList) cir JOIN Annotations an on an.itemid = cir.itemid where an.typeid = @typeid | ||||
|  | ||||
| 	SELECT @cnt AS 'COUNT' | ||||
|  | ||||
| GO | ||||
|  | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[getAnnotationProcCount]    Script Date: 7/11/2024 3:02:05 PM ******/ | ||||
|  | ||||
|  | ||||
| IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'getAnnotationProcCount') | ||||
| DROP PROCEDURE [dbo].[getAnnotationProcCount] | ||||
| GO | ||||
|  | ||||
|  | ||||
| /****** Object:  StoredProcedure [dbo].[getAnnotationProcCount]    Script Date: 7/11/2024 3:02:05 PM ******/ | ||||
| SET ANSI_NULLS ON | ||||
| GO | ||||
|  | ||||
| SET QUOTED_IDENTIFIER ON | ||||
| GO | ||||
|  | ||||
| 	/***************************************************************************** | ||||
| 	   Volian Enterprises - Proprietary Information - DO NOT COPY OR DISTRIBUTE | ||||
| 		   Copyright 2024 - Volian Enterprises, Inc. All rights reserved. | ||||
| 	*****************************************************************************/ | ||||
| 	/* | ||||
| 	========================================================================================================== | ||||
| 	 Author:		Paul Larsen | ||||
| 	 Modified Date:	07/11/2024 | ||||
| 	 Description:	Retrieve the number of Annotations that will be deleted (Procedures) | ||||
| 	========================================================================================================== | ||||
| 	 */ | ||||
|  | ||||
| CREATE procedure [dbo].[getAnnotationProcCount] | ||||
| ( | ||||
| 	@procList varchar(MAX), | ||||
| 	@typeid int | ||||
| ) | ||||
| AS | ||||
|  | ||||
| DECLARE @procs TABLE | ||||
| ( | ||||
| 	RowID INT NOT NULL IDENTITY(1, 1) PRIMARY KEY, | ||||
| 	itemid int | ||||
| ) | ||||
|  | ||||
| INSERT INTO @procs (itemid) (select id from vefn_SplitInt(@procList, ',')) | ||||
|  | ||||
| 	DECLARE @cnt int = 0 | ||||
| 	DECLARE @cnt2 int | ||||
| 	DECLARE @itemid int | ||||
|     DECLARE @i INT | ||||
|     SELECT @i = MIN(RowID) FROM @procs; | ||||
| 	DECLARE @max INT; | ||||
|     SELECT @max = MAX(RowID) FROM @procs; | ||||
|  | ||||
| 	while (@i <= @max) | ||||
| 	BEGIN | ||||
| 		SELECT @itemid = itemid from @procs where RowID = @i | ||||
| 		SELECT @cnt = @cnt + (SELECT count(cir.itemid) FROM vefn_ChildItemsRange(@itemid,@itemid,null) cir JOIN Annotations an on an.itemid = cir.itemid where an.typeid = @typeid) | ||||
| 		SET @i = @i + 1; | ||||
| 	END | ||||
|  | ||||
| 	SELECT @cnt AS 'count' | ||||
|  | ||||
| GO | ||||
|  | ||||
|  | ||||
| /* | ||||
| ========================================================================================================== | ||||
|  End: C2024-005: PRL - SPs to support Admin tool to clean Annotations | ||||
| ========================================================================================================== | ||||
| */ | ||||
|  | ||||
|  | ||||
|  | ||||
|  | ||||
| ----------------------------------------------------------------------------- | ||||
| /* | ||||
|   --------------------------------------------------------------------------- | ||||
| @@ -22260,8 +22940,8 @@ BEGIN TRY -- Try Block | ||||
| 	DECLARE @RevDate varchar(255) | ||||
| 	DECLARE @RevDescription varchar(255) | ||||
|  | ||||
| 	set @RevDate = '03/27/2024 11:00 AM' | ||||
| 	set @RevDescription = 'B2024-018: Enhanced link issue with sub-sections in source but not in enhanced' | ||||
| 	set @RevDate = '07/16/2024 5:00 PM' | ||||
| 	set @RevDescription = 'C2024-005: An Admin tool that can delete a group of annotations should be developed' | ||||
|  | ||||
| 	Select  cast(@RevDate as datetime) RevDate, @RevDescription  RevDescription | ||||
| 	PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription | ||||
|   | ||||
| @@ -1,2 +1,3 @@ | ||||
| C1.Win.C1FlexGrid.C1FlexGrid, C1.Win.C1FlexGrid.2 | ||||
| C1.Win.C1SpellChecker.C1SpellChecker, C1.Win.C1SpellChecker.2 | ||||
| C1.Win.C1Input.C1ComboBox, C1.Win.C1Input.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=7e7ff60f0c214f9a | ||||
| C1.Win.C1FlexGrid.C1FlexGrid, C1.Win.C1FlexGrid.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=79882d576c6336da | ||||
| C1.Win.C1SpellChecker.C1SpellChecker, C1.Win.C1SpellChecker.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=79882d576c6336da | ||||
|   | ||||
| @@ -99,7 +99,10 @@ | ||||
|     <Prefer32Bit>false</Prefer32Bit> | ||||
|   </PropertyGroup> | ||||
|   <ItemGroup> | ||||
|     <Reference Include="C1.Win.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=944ae1ea0e47ca04" /> | ||||
|     <Reference Include="C1.Win.C1Command.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=e808566f358766d8" /> | ||||
|     <Reference Include="C1.Win.C1FlexGrid.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=79882d576c6336da, processorArchitecture=MSIL" /> | ||||
|     <Reference Include="C1.Win.C1Input.2, Version=2.0.20213.532, Culture=neutral, PublicKeyToken=7e7ff60f0c214f9a, processorArchitecture=MSIL" /> | ||||
|     <Reference Include="Csla"> | ||||
|       <HintPath>..\..\..\..\3rdPartyLibraries\CSLA\Csla.dll</HintPath> | ||||
|     </Reference> | ||||
| @@ -220,6 +223,12 @@ | ||||
|     <Compile Include="dlgUCFDetail.Designer.cs"> | ||||
|       <DependentUpon>dlgUCFDetail.cs</DependentUpon> | ||||
|     </Compile> | ||||
|     <Compile Include="frmAnnotationsCleanup.cs"> | ||||
|       <SubType>Form</SubType> | ||||
|     </Compile> | ||||
|     <Compile Include="frmAnnotationsCleanup.Designer.cs"> | ||||
|       <DependentUpon>frmAnnotationsCleanup.cs</DependentUpon> | ||||
|     </Compile> | ||||
|     <Compile Include="frmBatchRefresh.cs"> | ||||
|       <SubType>Form</SubType> | ||||
|     </Compile> | ||||
| @@ -331,6 +340,9 @@ | ||||
|     <EmbeddedResource Include="dlgUCFDetail.resx"> | ||||
|       <DependentUpon>dlgUCFDetail.cs</DependentUpon> | ||||
|     </EmbeddedResource> | ||||
|     <EmbeddedResource Include="frmAnnotationsCleanup.resx"> | ||||
|       <DependentUpon>frmAnnotationsCleanup.cs</DependentUpon> | ||||
|     </EmbeddedResource> | ||||
|     <EmbeddedResource Include="frmPDFStatusForm.resx"> | ||||
|       <DependentUpon>frmPDFStatusForm.cs</DependentUpon> | ||||
|       <SubType>Designer</SubType> | ||||
| @@ -614,4 +626,4 @@ | ||||
|   <PropertyGroup> | ||||
|     <PreBuildEvent>cmd /c "$(ProjectDir)FixRev.bat"</PreBuildEvent> | ||||
|   </PropertyGroup> | ||||
| </Project> | ||||
| </Project> | ||||
|   | ||||
							
								
								
									
										131
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										131
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,131 @@ | ||||
|  | ||||
| using VEPROMS.CSLA.Library; | ||||
| using Volian.Base.Library; | ||||
| namespace VEPROMS | ||||
| { | ||||
| 	partial class frmAnnotationsCleanup | ||||
| 	{ | ||||
| 		/// <summary> | ||||
| 		/// Required designer variable. | ||||
| 		/// </summary> | ||||
| 		private System.ComponentModel.IContainer components = null; | ||||
|  | ||||
| 		/// <summary> | ||||
| 		/// Clean up any resources being used. | ||||
| 		/// </summary> | ||||
| 		/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> | ||||
| 		protected override void Dispose(bool disposing) | ||||
| 		{ | ||||
| 			if (disposing && (components != null)) | ||||
| 			{ | ||||
| 				components.Dispose(); | ||||
| 			} | ||||
| 			base.Dispose(disposing); | ||||
| 		} | ||||
|  | ||||
| 		#region Windows Form Designer generated code | ||||
|  | ||||
| 		/// <summary> | ||||
| 		/// Required method for Designer support - do not modify | ||||
| 		/// the contents of this method with the code editor. | ||||
| 		/// </summary> | ||||
| 		private void InitializeComponent() | ||||
| 		{ | ||||
| 			this.components = new System.ComponentModel.Container(); | ||||
| 			this.lbAnnotationTypes = new System.Windows.Forms.ListBox(); | ||||
| 			this.itemAnnotationsBindingSource = new System.Windows.Forms.BindingSource(this.components); | ||||
| 			this.lblAnnotationsList = new System.Windows.Forms.Label(); | ||||
| 			this.btnClean = new System.Windows.Forms.Button(); | ||||
| 			this.lblCountNumber = new System.Windows.Forms.Label(); | ||||
| 			this.lblCount = new System.Windows.Forms.Label(); | ||||
| 			this.btnClose = new System.Windows.Forms.Button(); | ||||
| 			((System.ComponentModel.ISupportInitialize)(this.itemAnnotationsBindingSource)).BeginInit(); | ||||
| 			this.SuspendLayout(); | ||||
| 			//  | ||||
| 			// lbAnnotationTypes | ||||
| 			//  | ||||
| 			this.lbAnnotationTypes.DataSource = this.itemAnnotationsBindingSource; | ||||
| 			this.lbAnnotationTypes.FormattingEnabled = true; | ||||
| 			this.lbAnnotationTypes.Location = new System.Drawing.Point(25, 48); | ||||
| 			this.lbAnnotationTypes.Name = "lbAnnotationTypes"; | ||||
| 			this.lbAnnotationTypes.Size = new System.Drawing.Size(295, 433); | ||||
| 			this.lbAnnotationTypes.TabIndex = 0; | ||||
| 			//  | ||||
| 			// lblAnnotationsList | ||||
| 			//  | ||||
| 			this.lblAnnotationsList.AutoSize = true; | ||||
| 			this.lblAnnotationsList.Location = new System.Drawing.Point(26, 21); | ||||
| 			this.lblAnnotationsList.Name = "lblAnnotationsList"; | ||||
| 			this.lblAnnotationsList.Size = new System.Drawing.Size(169, 13); | ||||
| 			this.lblAnnotationsList.TabIndex = 1; | ||||
| 			this.lblAnnotationsList.Text = "Select a Annotation Type to Clean"; | ||||
| 			//  | ||||
| 			// btnClean | ||||
| 			//  | ||||
| 			this.btnClean.Location = new System.Drawing.Point(365, 164); | ||||
| 			this.btnClean.Name = "btnClean"; | ||||
| 			this.btnClean.Size = new System.Drawing.Size(131, 36); | ||||
| 			this.btnClean.TabIndex = 2; | ||||
| 			this.btnClean.Text = "Proceed?"; | ||||
| 			this.btnClean.UseVisualStyleBackColor = true; | ||||
| 			this.btnClean.Click += new System.EventHandler(this.button1_Click); | ||||
| 			//  | ||||
| 			// lblCountNumber | ||||
| 			//  | ||||
| 			this.lblCountNumber.AutoSize = true; | ||||
| 			this.lblCountNumber.Location = new System.Drawing.Point(392, 100); | ||||
| 			this.lblCountNumber.Name = "lblCountNumber"; | ||||
| 			this.lblCountNumber.Size = new System.Drawing.Size(69, 13); | ||||
| 			this.lblCountNumber.TabIndex = 3; | ||||
| 			this.lblCountNumber.Text = "Delete Count"; | ||||
| 			//  | ||||
| 			// lblCount | ||||
| 			//  | ||||
| 			this.lblCount.AutoSize = true; | ||||
| 			this.lblCount.Location = new System.Drawing.Point(331, 70); | ||||
| 			this.lblCount.Name = "lblCount"; | ||||
| 			this.lblCount.Size = new System.Drawing.Size(206, 13); | ||||
| 			this.lblCount.TabIndex = 4; | ||||
| 			this.lblCount.Text = "Number of Annotations that will be deleted"; | ||||
| 			//  | ||||
| 			// btnClose | ||||
| 			//  | ||||
| 			this.btnClose.Location = new System.Drawing.Point(397, 457); | ||||
| 			this.btnClose.Name = "btnClose"; | ||||
| 			this.btnClose.Size = new System.Drawing.Size(75, 23); | ||||
| 			this.btnClose.TabIndex = 5; | ||||
| 			this.btnClose.Text = "Close"; | ||||
| 			this.btnClose.UseVisualStyleBackColor = true; | ||||
| 			this.btnClose.Click += new System.EventHandler(this.btnClose_Click); | ||||
| 			//  | ||||
| 			// frmAnnotationsCleanup | ||||
| 			//  | ||||
| 			this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); | ||||
| 			this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; | ||||
| 			this.ClientSize = new System.Drawing.Size(549, 535); | ||||
| 			this.Controls.Add(this.btnClose); | ||||
| 			this.Controls.Add(this.lblCount); | ||||
| 			this.Controls.Add(this.lblCountNumber); | ||||
| 			this.Controls.Add(this.btnClean); | ||||
| 			this.Controls.Add(this.lblAnnotationsList); | ||||
| 			this.Controls.Add(this.lbAnnotationTypes); | ||||
| 			this.Name = "frmAnnotationsCleanup"; | ||||
| 			this.Text = "Clean Annotations"; | ||||
| 			((System.ComponentModel.ISupportInitialize)(this.itemAnnotationsBindingSource)).EndInit(); | ||||
| 			this.ResumeLayout(false); | ||||
| 			this.PerformLayout(); | ||||
|  | ||||
| 		} | ||||
|  | ||||
| 		#endregion | ||||
|  | ||||
| 		private System.Windows.Forms.ListBox lbAnnotationTypes; | ||||
| 		private System.Windows.Forms.Label lblAnnotationsList; | ||||
| 		private System.Windows.Forms.BindingSource itemAnnotationsBindingSource; | ||||
| 		private System.Windows.Forms.Button btnClean; | ||||
| 		private System.Windows.Forms.Label lblCountNumber; | ||||
| 		private System.Windows.Forms.Label lblCount; | ||||
| 		private System.Windows.Forms.Button btnClose; | ||||
| 	} | ||||
| } | ||||
|  | ||||
							
								
								
									
										156
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										156
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.cs
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,156 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.ComponentModel; | ||||
| using System.Data; | ||||
| using System.Drawing; | ||||
| using System.Linq; | ||||
| using System.Text; | ||||
| using System.Threading.Tasks; | ||||
| using System.Windows.Forms; | ||||
| using VEPROMS.CSLA.Library; | ||||
| using Volian.Base.Library; | ||||
| //using Volian.Pipe.Library; | ||||
| using System.Xml; | ||||
| using System.Diagnostics; | ||||
| using JR.Utils.GUI.Forms; | ||||
|  | ||||
| namespace VEPROMS | ||||
| { | ||||
| 	public partial class frmAnnotationsCleanup : Form | ||||
| 	{ | ||||
| 		Label mylab = new Label(); | ||||
| 		string procList = ""; | ||||
| 		string docvList = ""; | ||||
| 		int AnnotationTyp; | ||||
| 		List<ProcedureInfo> pil2 = new List<ProcedureInfo>(); | ||||
| 		List<DocVersionInfo> dvil2 = new List<DocVersionInfo>(); | ||||
| 		private frmBatchRefresh mainForm = null; | ||||
| 		// frmAnnotationsCleanup constructor passes users procedure and docversion selections from frmBatchRefresh | ||||
| 		public frmAnnotationsCleanup(Form callingForm, List<ProcedureInfo> pil, List<DocVersionInfo> dvil) | ||||
|  | ||||
| 		{		// Set up link back to parent form. | ||||
| 			mainForm = callingForm as frmBatchRefresh; | ||||
| 			InitializeComponent(); | ||||
|  | ||||
| 			pil2 = pil; | ||||
| 			dvil2 = dvil; | ||||
|  | ||||
| 				// Get list of annotation types for plant. | ||||
| 			myAnnotationTypeInfoList = AnnotationTypeInfoList.Get(); | ||||
| 			lbAnnotationTypes.DataSource = myLocalAnnotationTypeInfoList = new LocalAnnotationTypeInfoList(myAnnotationTypeInfoList); | ||||
|  | ||||
| 			Dictionary<string, string> AnnotationsList = new Dictionary<string, string>(); | ||||
|  | ||||
| 				// Add name and type ID to form. | ||||
| 			foreach (LocalAnnotationTypeInfo lati in myLocalAnnotationTypeInfoList) | ||||
| 			{ | ||||
| 				AnnotationsList.Add(lati.TypeID.ToString(), lati.Name); | ||||
| 				//cbAnnotationTypes.Items.Add(new { Name = lati.Name, Value = lati.TypeID }); | ||||
| 			} | ||||
|  | ||||
| 			lbAnnotationTypes.DataSource = new BindingSource(AnnotationsList, null); | ||||
| 			lbAnnotationTypes.DisplayMember = "Value"; | ||||
| 			lbAnnotationTypes.ValueMember = "Key"; | ||||
| 			lbAnnotationTypes.SelectedIndexChanged += lbAnnotationTypes_SelectedIndexChanged; | ||||
|  | ||||
| 		} | ||||
| 			// create comma delimited string of procedures selected by user. | ||||
| 		private string getAnnotationProcItems(List<ProcedureInfo> pil2) | ||||
| 		{ | ||||
| 			procList = ""; | ||||
| 			foreach (var p in pil2) | ||||
| 			{ | ||||
| 				if (p.IsProcedure) | ||||
| 				{ | ||||
| 					if (procList == "") | ||||
| 					{ | ||||
| 						procList = procList + p.ItemID.ToString(); | ||||
| 					} | ||||
| 					else | ||||
| 					{ | ||||
| 						procList = procList + "," + p.ItemID.ToString(); | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			return procList; | ||||
| 		} | ||||
|  | ||||
| 			// create comma delimited string of doc versions selected by user. | ||||
| 		private string getAnnotationDocvItems(List<DocVersionInfo> dvil2) | ||||
| 		{ | ||||
| 			docvList = ""; | ||||
| 			foreach (var d in dvil2) | ||||
| 			{ | ||||
| 				if (d.IsDocVersion) | ||||
| 				{ | ||||
| 					if (docvList == "") | ||||
| 					{ | ||||
| 						docvList = docvList + d.VersionID.ToString(); | ||||
| 					} | ||||
| 					else | ||||
| 					{ | ||||
| 						docvList = docvList + "," + d.VersionID.ToString(); | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			return docvList; | ||||
| 		} | ||||
|  | ||||
| 		private AnnotationTypeInfoList myAnnotationTypeInfoList = null; | ||||
| 		private LocalAnnotationTypeInfoList myLocalAnnotationTypeInfoList = null; | ||||
|  | ||||
| 			// Process used to cleanup annotations "(Proceed?" button) | ||||
| 		private void button1_Click(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			foreach (var p in pil2) | ||||
| 			{ | ||||
| 				if (p.IsProcedure) | ||||
| 				{ | ||||
| 					TextBox frm2 = mainForm.GettxtProcess(); | ||||
| 					frm2.AppendText(p.DisplayNumber + ' ' + p.DisplayText); | ||||
| 					AnnotationTyp = System.Convert.ToInt32(((KeyValuePair<string, string>)lbAnnotationTypes.SelectedItem).Key); | ||||
| 					Annotation.DeleteAnnotationProcByType(AnnotationTyp, p.ItemID.ToString()); | ||||
| 					lblCountNumber.Text = "0"; | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
| 			foreach (var d in dvil2) | ||||
| 			{ | ||||
| 				if (d.IsDocVersion) | ||||
| 				{ | ||||
| 					TextBox frm2 = mainForm.GettxtProcess(); | ||||
| 					frm2.AppendText(d.ActiveParent.ToString()); | ||||
| 					AnnotationTyp = System.Convert.ToInt32(((KeyValuePair<string, string>)lbAnnotationTypes.SelectedItem).Key); | ||||
| 					Annotation.DeleteAnnotationDocvByType(AnnotationTyp, d.VersionID.ToString()); | ||||
| 					lblCountNumber.Text = "0"; | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 			// Retrieve number of annotations that will be deleted. | ||||
| 		private void lbAnnotationTypes_SelectedIndexChanged(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			lblCountNumber.Text = ""; | ||||
| 			int deletecountProc = 0; | ||||
| 			int deletecountDocv = 0; | ||||
| 			if (pil2.Count > 0) | ||||
| 			{ | ||||
| 				AnnotationTyp = System.Convert.ToInt32(((KeyValuePair<string, string>)lbAnnotationTypes.SelectedItem).Key); | ||||
| 				deletecountProc = Annotation.getAnnotationProcCnt(AnnotationTyp, getAnnotationProcItems(pil2)); | ||||
| 			} | ||||
|  | ||||
| 			if (dvil2.Count > 0) | ||||
| 			{ | ||||
| 				AnnotationTyp = System.Convert.ToInt32(((KeyValuePair<string, string>)lbAnnotationTypes.SelectedItem).Key); | ||||
| 				deletecountDocv = Annotation.getAnnotationCountDocv(AnnotationTyp, getAnnotationDocvItems(dvil2)); | ||||
| 			} | ||||
| 			lblCountNumber.Text = (deletecountProc + deletecountDocv).ToString(); | ||||
|  | ||||
| 		} | ||||
| 			// Close form. | ||||
| 		private void btnClose_Click(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			this.Close(); | ||||
| 		} | ||||
|  | ||||
| 	} | ||||
| } | ||||
							
								
								
									
										124
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.resx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										124
									
								
								PROMS/VEPROMS User Interface/frmAnnotationsCleanup.resx
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,124 @@ | ||||
| <?xml version="1.0" encoding="utf-8"?> | ||||
| <root> | ||||
|   <!--  | ||||
|     Microsoft ResX Schema  | ||||
|      | ||||
|     Version 2.0 | ||||
|      | ||||
|     The primary goals of this format is to allow a simple XML format  | ||||
|     that is mostly human readable. The generation and parsing of the  | ||||
|     various data types are done through the TypeConverter classes  | ||||
|     associated with the data types. | ||||
|      | ||||
|     Example: | ||||
|      | ||||
|     ... ado.net/XML headers & schema ... | ||||
|     <resheader name="resmimetype">text/microsoft-resx</resheader> | ||||
|     <resheader name="version">2.0</resheader> | ||||
|     <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> | ||||
|     <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> | ||||
|     <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> | ||||
|     <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> | ||||
|     <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> | ||||
|         <value>[base64 mime encoded serialized .NET Framework object]</value> | ||||
|     </data> | ||||
|     <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|         <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> | ||||
|         <comment>This is a comment</comment> | ||||
|     </data> | ||||
|                  | ||||
|     There are any number of "resheader" rows that contain simple  | ||||
|     name/value pairs. | ||||
|      | ||||
|     Each data row contains a name, and value. The row also contains a  | ||||
|     type or mimetype. Type corresponds to a .NET class that support  | ||||
|     text/value conversion through the TypeConverter architecture.  | ||||
|     Classes that don't support this are serialized and stored with the  | ||||
|     mimetype set. | ||||
|      | ||||
|     The mimetype is used for serialized objects, and tells the  | ||||
|     ResXResourceReader how to depersist the object. This is currently not  | ||||
|     extensible. For a given mimetype the value must be set accordingly: | ||||
|      | ||||
|     Note - application/x-microsoft.net.object.binary.base64 is the format  | ||||
|     that the ResXResourceWriter will generate, however the reader can  | ||||
|     read any of the formats listed below. | ||||
|      | ||||
|     mimetype: application/x-microsoft.net.object.binary.base64 | ||||
|     value   : The object must be serialized with  | ||||
|             : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter | ||||
|             : and then encoded with base64 encoding. | ||||
|      | ||||
|     mimetype: application/x-microsoft.net.object.soap.base64 | ||||
|     value   : The object must be serialized with  | ||||
|             : System.Runtime.Serialization.Formatters.Soap.SoapFormatter | ||||
|             : and then encoded with base64 encoding. | ||||
|  | ||||
|     mimetype: application/x-microsoft.net.object.bytearray.base64 | ||||
|     value   : The object must be serialized into a byte array  | ||||
|             : using a System.ComponentModel.TypeConverter | ||||
|             : and then encoded with base64 encoding. | ||||
|     --> | ||||
|   <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> | ||||
|     <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> | ||||
|     <xsd:element name="root" msdata:IsDataSet="true"> | ||||
|       <xsd:complexType> | ||||
|         <xsd:choice maxOccurs="unbounded"> | ||||
|           <xsd:element name="metadata"> | ||||
|             <xsd:complexType> | ||||
|               <xsd:sequence> | ||||
|                 <xsd:element name="value" type="xsd:string" minOccurs="0" /> | ||||
|               </xsd:sequence> | ||||
|               <xsd:attribute name="name" use="required" type="xsd:string" /> | ||||
|               <xsd:attribute name="type" type="xsd:string" /> | ||||
|               <xsd:attribute name="mimetype" type="xsd:string" /> | ||||
|               <xsd:attribute ref="xml:space" /> | ||||
|             </xsd:complexType> | ||||
|           </xsd:element> | ||||
|           <xsd:element name="assembly"> | ||||
|             <xsd:complexType> | ||||
|               <xsd:attribute name="alias" type="xsd:string" /> | ||||
|               <xsd:attribute name="name" type="xsd:string" /> | ||||
|             </xsd:complexType> | ||||
|           </xsd:element> | ||||
|           <xsd:element name="data"> | ||||
|             <xsd:complexType> | ||||
|               <xsd:sequence> | ||||
|                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||||
|                 <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> | ||||
|               </xsd:sequence> | ||||
|               <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> | ||||
|               <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> | ||||
|               <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> | ||||
|               <xsd:attribute ref="xml:space" /> | ||||
|             </xsd:complexType> | ||||
|           </xsd:element> | ||||
|           <xsd:element name="resheader"> | ||||
|             <xsd:complexType> | ||||
|               <xsd:sequence> | ||||
|                 <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> | ||||
|               </xsd:sequence> | ||||
|               <xsd:attribute name="name" type="xsd:string" use="required" /> | ||||
|             </xsd:complexType> | ||||
|           </xsd:element> | ||||
|         </xsd:choice> | ||||
|       </xsd:complexType> | ||||
|     </xsd:element> | ||||
|   </xsd:schema> | ||||
|   <resheader name="resmimetype"> | ||||
|     <value>text/microsoft-resx</value> | ||||
|   </resheader> | ||||
|   <resheader name="version"> | ||||
|     <value>2.0</value> | ||||
|   </resheader> | ||||
|   <resheader name="reader"> | ||||
|     <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||||
|   </resheader> | ||||
|   <resheader name="writer"> | ||||
|     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||||
|   </resheader> | ||||
|   <metadata name="itemAnnotationsBindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||||
|     <value>17, 17</value> | ||||
|   </metadata> | ||||
| </root> | ||||
|  | ||||
							
								
								
									
										637
									
								
								PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										637
									
								
								PROMS/VEPROMS User Interface/frmBatchRefresh.Designer.cs
									
									
									
										generated
									
									
									
								
							| @@ -52,6 +52,24 @@ | ||||
| 			this.expandableSplitter1 = new DevComponents.DotNetBar.ExpandableSplitter(); | ||||
| 			this.panelEx1 = new DevComponents.DotNetBar.PanelEx(); | ||||
| 			this.sideNav1 = new DevComponents.DotNetBar.Controls.SideNav(); | ||||
| 			this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.swDeleteFolder = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX13 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.swDeleteAnnotations = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX14 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.myTVdel = new System.Windows.Forms.TreeView(); | ||||
| 			this.btnDeleteItems = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavPanel1 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.warningBox3 = new DevComponents.DotNetBar.Controls.WarningBox(); | ||||
| 			this.labelX7 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.line1 = new DevComponents.DotNetBar.Controls.Line(); | ||||
| 			this.swCkObsoleteROData = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.swHiddenDataLocs = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX3 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.labelX2 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.swCkOrphanDataRecs = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX1 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.btnRunCheck = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavPanel2 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.swRefreshTblsForSrch = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.lblRefreshTblForSrch = new DevComponents.DotNetBar.LabelX(); | ||||
| @@ -68,17 +86,6 @@ | ||||
| 			this.labelX8 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.line2 = new DevComponents.DotNetBar.Controls.Line(); | ||||
| 			this.btnRunRepair = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavPanel1 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.warningBox3 = new DevComponents.DotNetBar.Controls.WarningBox(); | ||||
| 			this.labelX7 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.line1 = new DevComponents.DotNetBar.Controls.Line(); | ||||
| 			this.swCkObsoleteROData = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.swHiddenDataLocs = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX3 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.labelX2 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.swCkOrphanDataRecs = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX1 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.btnRunCheck = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavPanel3 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.swCheckROLinks = new DevComponents.DotNetBar.Controls.SwitchButton(); | ||||
| 			this.labelX12 = new DevComponents.DotNetBar.LabelX(); | ||||
| @@ -90,14 +97,14 @@ | ||||
| 			this.labelX6 = new DevComponents.DotNetBar.LabelX(); | ||||
| 			this.warningBox1 = new DevComponents.DotNetBar.Controls.WarningBox(); | ||||
| 			this.btnFixLinks = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavPanel4 = new DevComponents.DotNetBar.Controls.SideNavPanel(); | ||||
| 			this.btn_ShowUsers = new DevComponents.DotNetBar.ButtonX(); | ||||
| 			this.sideNavItem1 = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.separator1 = new DevComponents.DotNetBar.Separator(); | ||||
| 			this.sideNavItmCheck = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.sideNavItmRepair = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.sideNavItmLinks = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.sideNavItmUsers = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.buttonItem1 = new DevComponents.DotNetBar.ButtonItem(); | ||||
| 			this.sideNavItmDelete = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.sideNavItmExit = new DevComponents.DotNetBar.Controls.SideNavItem(); | ||||
| 			this.panelEx4 = new DevComponents.DotNetBar.PanelEx(); | ||||
| 			this.progressSteps1 = new DevComponents.DotNetBar.ProgressSteps(); | ||||
| @@ -118,10 +125,10 @@ | ||||
| 			this.pnlLater.SuspendLayout(); | ||||
| 			this.panelEx1.SuspendLayout(); | ||||
| 			this.sideNav1.SuspendLayout(); | ||||
| 			this.sideNavPanel2.SuspendLayout(); | ||||
| 			this.sideNavPanel1.SuspendLayout(); | ||||
| 			this.sideNavPanel3.SuspendLayout(); | ||||
| 			this.sideNavPanel4.SuspendLayout(); | ||||
| 			this.sideNavPanel1.SuspendLayout(); | ||||
| 			this.sideNavPanel2.SuspendLayout(); | ||||
| 			this.sideNavPanel3.SuspendLayout(); | ||||
| 			this.panelEx4.SuspendLayout(); | ||||
| 			this.SuspendLayout(); | ||||
| 			//  | ||||
| @@ -133,7 +140,7 @@ | ||||
| 			this.myTV.CheckBoxes = true; | ||||
| 			this.myTV.Location = new System.Drawing.Point(0, 230); | ||||
| 			this.myTV.Name = "myTV"; | ||||
| 			this.myTV.Size = new System.Drawing.Size(300, 264); | ||||
| 			this.myTV.Size = new System.Drawing.Size(183, 226); | ||||
| 			this.myTV.TabIndex = 4; | ||||
| 			this.myTV.AfterCheck += new System.Windows.Forms.TreeViewEventHandler(this.myTV_AfterCheck); | ||||
| 			//  | ||||
| @@ -457,10 +464,10 @@ | ||||
| 			// sideNav1 | ||||
| 			//  | ||||
| 			this.sideNav1.BackColor = System.Drawing.SystemColors.Control; | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel1); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel3); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel2); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel4); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel1); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel2); | ||||
| 			this.sideNav1.Controls.Add(this.sideNavPanel3); | ||||
| 			this.sideNav1.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNav1.EnableClose = false; | ||||
| 			this.sideNav1.EnableMaximize = false; | ||||
| @@ -471,6 +478,7 @@ | ||||
|             this.sideNavItmRepair, | ||||
|             this.sideNavItmLinks, | ||||
|             this.sideNavItmUsers, | ||||
|             this.sideNavItmDelete, | ||||
|             this.sideNavItmExit}); | ||||
| 			this.sideNav1.Location = new System.Drawing.Point(0, 0); | ||||
| 			this.sideNav1.Name = "sideNav1"; | ||||
| @@ -479,6 +487,302 @@ | ||||
| 			this.sideNav1.TabIndex = 3; | ||||
| 			this.sideNav1.Text = "sideNav1"; | ||||
| 			//  | ||||
| 			// sideNavPanel4 | ||||
| 			//  | ||||
| 			this.sideNavPanel4.Controls.Add(this.swDeleteFolder); | ||||
| 			this.sideNavPanel4.Controls.Add(this.labelX13); | ||||
| 			this.sideNavPanel4.Controls.Add(this.swDeleteAnnotations); | ||||
| 			this.sideNavPanel4.Controls.Add(this.labelX14); | ||||
| 			this.sideNavPanel4.Controls.Add(this.myTVdel); | ||||
| 			this.sideNavPanel4.Controls.Add(this.btnDeleteItems); | ||||
| 			this.sideNavPanel4.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel4.Location = new System.Drawing.Point(89, 31); | ||||
| 			this.sideNavPanel4.Name = "sideNavPanel4"; | ||||
| 			this.sideNavPanel4.Size = new System.Drawing.Size(291, 494); | ||||
| 			this.sideNavPanel4.TabIndex = 27; | ||||
| 			//  | ||||
| 			// swDeleteFolder | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swDeleteFolder.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swDeleteFolder.Location = new System.Drawing.Point(10, 43); | ||||
| 			this.swDeleteFolder.Name = "swDeleteFolder"; | ||||
| 			this.swDeleteFolder.Size = new System.Drawing.Size(69, 22); | ||||
| 			this.swDeleteFolder.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swDeleteFolder, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("swDeleteFolder.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 150))); | ||||
| 			this.swDeleteFolder.SwitchClickTogglesValue = true; | ||||
| 			this.swDeleteFolder.TabIndex = 39; | ||||
| 			this.swDeleteFolder.Visible = false; | ||||
| 			this.swDeleteFolder.ValueChanged += new System.EventHandler(this.swDeleteFolder_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX13 | ||||
| 			//  | ||||
| 			this.labelX13.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX13.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX13.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX13.Location = new System.Drawing.Point(85, 42); | ||||
| 			this.labelX13.Name = "labelX13"; | ||||
| 			this.labelX13.Size = new System.Drawing.Size(168, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX13, new DevComponents.DotNetBar.SuperTooltipInfo("Check RO Links", "", resources.GetString("labelX13.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(350, 175))); | ||||
| 			this.labelX13.TabIndex = 38; | ||||
| 			this.labelX13.Text = "Delete Folders"; | ||||
| 			this.labelX13.Visible = false; | ||||
| 			//  | ||||
| 			// swDeleteAnnotations | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swDeleteAnnotations.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swDeleteAnnotations.Location = new System.Drawing.Point(10, 15); | ||||
| 			this.swDeleteAnnotations.Name = "swDeleteAnnotations"; | ||||
| 			this.swDeleteAnnotations.Size = new System.Drawing.Size(69, 22); | ||||
| 			this.swDeleteAnnotations.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swDeleteAnnotations, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("swDeleteAnnotations.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(265, 175))); | ||||
| 			this.swDeleteAnnotations.SwitchClickTogglesValue = true; | ||||
| 			this.swDeleteAnnotations.TabIndex = 37; | ||||
| 			this.swDeleteAnnotations.Value = true; | ||||
| 			this.swDeleteAnnotations.ValueObject = "Y"; | ||||
| 			this.swDeleteAnnotations.ValueChanged += new System.EventHandler(this.swDeleteAnnotations_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX14 | ||||
| 			//  | ||||
| 			this.labelX14.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX14.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX14.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX14.Location = new System.Drawing.Point(85, 14); | ||||
| 			this.labelX14.Name = "labelX14"; | ||||
| 			this.labelX14.Size = new System.Drawing.Size(186, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX14, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Transitions", "", resources.GetString("labelX14.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(256, 175))); | ||||
| 			this.labelX14.TabIndex = 36; | ||||
| 			this.labelX14.Text = "Delete Annotations"; | ||||
| 			//  | ||||
| 			// myTVdel | ||||
| 			//  | ||||
| 			this.myTVdel.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)  | ||||
|             | System.Windows.Forms.AnchorStyles.Left)  | ||||
|             | System.Windows.Forms.AnchorStyles.Right))); | ||||
| 			this.myTVdel.CheckBoxes = true; | ||||
| 			this.myTVdel.Location = new System.Drawing.Point(14, 145); | ||||
| 			this.myTVdel.Name = "myTVdel"; | ||||
| 			this.myTVdel.Size = new System.Drawing.Size(267, 331); | ||||
| 			this.myTVdel.TabIndex = 34; | ||||
| 			//  | ||||
| 			// btnDeleteItems | ||||
| 			//  | ||||
| 			this.btnDeleteItems.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; | ||||
| 			this.btnDeleteItems.Checked = true; | ||||
| 			this.btnDeleteItems.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; | ||||
| 			this.btnDeleteItems.Location = new System.Drawing.Point(3, 98); | ||||
| 			this.btnDeleteItems.Name = "btnDeleteItems"; | ||||
| 			this.btnDeleteItems.Size = new System.Drawing.Size(280, 23); | ||||
| 			this.btnDeleteItems.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.btnDeleteItems, new DevComponents.DotNetBar.SuperTooltipInfo("Process Links", "", "This will run the selected RO Links or Transitions Links tool.\r\n\r\nClick on the on" + | ||||
|             "/off switches to turn on/off each tool.\r\n\r\nNote that only one of these tools can" + | ||||
|             " be run at a time.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 130))); | ||||
| 			this.btnDeleteItems.TabIndex = 35; | ||||
| 			this.btnDeleteItems.Text = "Process Deletions"; | ||||
| 			this.btnDeleteItems.Click += new System.EventHandler(this.btnDeleteItems_Click); | ||||
| 			//  | ||||
| 			// sideNavPanel1 | ||||
| 			//  | ||||
| 			this.sideNavPanel1.Controls.Add(this.warningBox3); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX7); | ||||
| 			this.sideNavPanel1.Controls.Add(this.line1); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swCkObsoleteROData); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swHiddenDataLocs); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX3); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX2); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swCkOrphanDataRecs); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX1); | ||||
| 			this.sideNavPanel1.Controls.Add(this.btnRunCheck); | ||||
| 			this.sideNavPanel1.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel1.Location = new System.Drawing.Point(89, 31); | ||||
| 			this.sideNavPanel1.Name = "sideNavPanel1"; | ||||
| 			this.sideNavPanel1.Size = new System.Drawing.Size(291, 494); | ||||
| 			this.sideNavPanel1.TabIndex = 2; | ||||
| 			this.sideNavPanel1.Visible = false; | ||||
| 			//  | ||||
| 			// warningBox3 | ||||
| 			//  | ||||
| 			this.warningBox3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); | ||||
| 			this.warningBox3.CloseButtonVisible = false; | ||||
| 			this.warningBox3.Image = ((System.Drawing.Image)(resources.GetObject("warningBox3.Image"))); | ||||
| 			this.warningBox3.Location = new System.Drawing.Point(17, 207); | ||||
| 			this.warningBox3.Margin = new System.Windows.Forms.Padding(4); | ||||
| 			this.warningBox3.Name = "warningBox3"; | ||||
| 			this.warningBox3.OptionsButtonVisible = false; | ||||
| 			this.warningBox3.Size = new System.Drawing.Size(264, 32); | ||||
| 			this.warningBox3.TabIndex = 29; | ||||
| 			this.warningBox3.Text = "<b>NOTE</b> These tools can take a long time to run"; | ||||
| 			//  | ||||
| 			// labelX7 | ||||
| 			//  | ||||
| 			this.labelX7.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX7.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX7.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX7.Location = new System.Drawing.Point(5, 3); | ||||
| 			this.labelX7.Name = "labelX7"; | ||||
| 			this.labelX7.Size = new System.Drawing.Size(251, 22); | ||||
| 			this.labelX7.TabIndex = 19; | ||||
| 			this.labelX7.Text = "Check for these Data Issues:"; | ||||
| 			//  | ||||
| 			// line1 | ||||
| 			//  | ||||
| 			this.line1.BackColor = System.Drawing.Color.Transparent; | ||||
| 			this.line1.Location = new System.Drawing.Point(8, 179); | ||||
| 			this.line1.Name = "line1"; | ||||
| 			this.line1.Size = new System.Drawing.Size(285, 12); | ||||
| 			this.line1.TabIndex = 18; | ||||
| 			this.line1.Text = "line1"; | ||||
| 			//  | ||||
| 			// swCkObsoleteROData | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swCkObsoleteROData.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swCkObsoleteROData.Location = new System.Drawing.Point(10, 99); | ||||
| 			this.swCkObsoleteROData.Name = "swCkObsoleteROData"; | ||||
| 			this.swCkObsoleteROData.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swCkObsoleteROData.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swCkObsoleteROData, new DevComponents.DotNetBar.SuperTooltipInfo("Obsolete RO Data", "", resources.GetString("swCkObsoleteROData.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 135))); | ||||
| 			this.swCkObsoleteROData.SwitchClickTogglesValue = true; | ||||
| 			this.swCkObsoleteROData.TabIndex = 14; | ||||
| 			this.swCkObsoleteROData.Value = true; | ||||
| 			this.swCkObsoleteROData.ValueObject = "Y"; | ||||
| 			this.swCkObsoleteROData.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// swHiddenDataLocs | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swHiddenDataLocs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swHiddenDataLocs.Location = new System.Drawing.Point(10, 71); | ||||
| 			this.swHiddenDataLocs.Name = "swHiddenDataLocs"; | ||||
| 			this.swHiddenDataLocs.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swHiddenDataLocs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swHiddenDataLocs, new DevComponents.DotNetBar.SuperTooltipInfo("Hidden Data Locations", "", resources.GetString("swHiddenDataLocs.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); | ||||
| 			this.swHiddenDataLocs.SwitchClickTogglesValue = true; | ||||
| 			this.swHiddenDataLocs.TabIndex = 15; | ||||
| 			this.swHiddenDataLocs.Value = true; | ||||
| 			this.swHiddenDataLocs.ValueObject = "Y"; | ||||
| 			this.swHiddenDataLocs.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX3 | ||||
| 			//  | ||||
| 			this.labelX3.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX3.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX3.Location = new System.Drawing.Point(107, 99); | ||||
| 			this.labelX3.Name = "labelX3"; | ||||
| 			this.labelX3.Size = new System.Drawing.Size(154, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX3, new DevComponents.DotNetBar.SuperTooltipInfo("Obsolete RO Data", "", resources.GetString("labelX3.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 135))); | ||||
| 			this.labelX3.TabIndex = 11; | ||||
| 			this.labelX3.Text = "Obsolete RO Data"; | ||||
| 			//  | ||||
| 			// labelX2 | ||||
| 			//  | ||||
| 			this.labelX2.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX2.Location = new System.Drawing.Point(107, 71); | ||||
| 			this.labelX2.Name = "labelX2"; | ||||
| 			this.labelX2.Size = new System.Drawing.Size(140, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX2, new DevComponents.DotNetBar.SuperTooltipInfo("Hidden Data Locations", "", resources.GetString("labelX2.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); | ||||
| 			this.labelX2.TabIndex = 12; | ||||
| 			this.labelX2.Text = "Hidden Data Locations"; | ||||
| 			//  | ||||
| 			// swCkOrphanDataRecs | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swCkOrphanDataRecs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swCkOrphanDataRecs.Location = new System.Drawing.Point(10, 43); | ||||
| 			this.swCkOrphanDataRecs.Name = "swCkOrphanDataRecs"; | ||||
| 			this.swCkOrphanDataRecs.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swCkOrphanDataRecs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swCkOrphanDataRecs, new DevComponents.DotNetBar.SuperTooltipInfo("Orphan Data Records", "", resources.GetString("swCkOrphanDataRecs.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(275, 193))); | ||||
| 			this.swCkOrphanDataRecs.SwitchClickTogglesValue = true; | ||||
| 			this.swCkOrphanDataRecs.TabIndex = 9; | ||||
| 			this.swCkOrphanDataRecs.Value = true; | ||||
| 			this.swCkOrphanDataRecs.ValueObject = "Y"; | ||||
| 			this.swCkOrphanDataRecs.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX1 | ||||
| 			//  | ||||
| 			this.labelX1.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX1.Location = new System.Drawing.Point(107, 43); | ||||
| 			this.labelX1.Name = "labelX1"; | ||||
| 			this.labelX1.Size = new System.Drawing.Size(172, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX1, new DevComponents.DotNetBar.SuperTooltipInfo("Orphan Data Records", "", resources.GetString("labelX1.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(275, 190))); | ||||
| 			this.labelX1.TabIndex = 8; | ||||
| 			this.labelX1.Text = "Orphan Data Records"; | ||||
| 			//  | ||||
| 			// btnRunCheck | ||||
| 			//  | ||||
| 			this.btnRunCheck.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; | ||||
| 			this.btnRunCheck.Checked = true; | ||||
| 			this.btnRunCheck.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; | ||||
| 			this.btnRunCheck.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.btnRunCheck.Location = new System.Drawing.Point(5, 150); | ||||
| 			this.btnRunCheck.Name = "btnRunCheck"; | ||||
| 			this.btnRunCheck.Size = new System.Drawing.Size(286, 23); | ||||
| 			this.btnRunCheck.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.btnRunCheck, new DevComponents.DotNetBar.SuperTooltipInfo("Run Check", "", "This will run the database check tools selected.\r\n\r\nClick on the on/off switches " + | ||||
|             "to turn on/off each tool.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 100))); | ||||
| 			this.btnRunCheck.TabIndex = 7; | ||||
| 			this.btnRunCheck.Text = "Run Check"; | ||||
| 			this.btnRunCheck.Click += new System.EventHandler(this.btnRunCheck_Click); | ||||
| 			//  | ||||
| 			// sideNavPanel2 | ||||
| 			//  | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRefreshTblsForSrch); | ||||
| 			this.sideNavPanel2.Controls.Add(this.lblRefreshTblForSrch); | ||||
| 			this.sideNavPanel2.Controls.Add(this.warningBox4); | ||||
| 			this.sideNavPanel2.Controls.Add(this.warningBox2); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRmObsoleteROData); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRefreshWordAttmts); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swStandardHypenChars); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX4); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX5); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX9); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRmOrphanDataRecs); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX10); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX8); | ||||
| 			this.sideNavPanel2.Controls.Add(this.line2); | ||||
| 			this.sideNavPanel2.Controls.Add(this.btnRunRepair); | ||||
| 			this.sideNavPanel2.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel2.Location = new System.Drawing.Point(89, 31); | ||||
| 			this.sideNavPanel2.Name = "sideNavPanel2"; | ||||
| 			this.sideNavPanel2.Size = new System.Drawing.Size(291, 494); | ||||
| 			this.sideNavPanel2.TabIndex = 6; | ||||
| 			this.sideNavPanel2.Visible = false; | ||||
| 			//  | ||||
| 			// swRefreshTblsForSrch | ||||
| 			//  | ||||
| 			//  | ||||
| @@ -517,6 +821,7 @@ | ||||
| 			this.warningBox4.CloseButtonVisible = false; | ||||
| 			this.warningBox4.Image = ((System.Drawing.Image)(resources.GetObject("warningBox4.Image"))); | ||||
| 			this.warningBox4.Location = new System.Drawing.Point(12, 264); | ||||
| 			this.warningBox4.Margin = new System.Windows.Forms.Padding(4); | ||||
| 			this.warningBox4.Name = "warningBox4"; | ||||
| 			this.warningBox4.OptionsButtonVisible = false; | ||||
| 			this.warningBox4.Size = new System.Drawing.Size(264, 32); | ||||
| @@ -529,6 +834,7 @@ | ||||
| 			this.warningBox2.CloseButtonVisible = false; | ||||
| 			this.warningBox2.Image = ((System.Drawing.Image)(resources.GetObject("warningBox2.Image"))); | ||||
| 			this.warningBox2.Location = new System.Drawing.Point(12, 302); | ||||
| 			this.warningBox2.Margin = new System.Windows.Forms.Padding(4); | ||||
| 			this.warningBox2.Name = "warningBox2"; | ||||
| 			this.warningBox2.OptionsButtonVisible = false; | ||||
| 			this.warningBox2.Size = new System.Drawing.Size(264, 43); | ||||
| @@ -698,176 +1004,11 @@ | ||||
| 			this.btnRunRepair.Size = new System.Drawing.Size(280, 23); | ||||
| 			this.btnRunRepair.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.btnRunRepair, new DevComponents.DotNetBar.SuperTooltipInfo("Run Repair", "", "This will run the database repair tools selected.\r\n\r\nClick on the on/off switches" + | ||||
| 			" to turn on/off each tool.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 103))); | ||||
|             " to turn on/off each tool.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 103))); | ||||
| 			this.btnRunRepair.TabIndex = 3; | ||||
| 			this.btnRunRepair.Text = "Run Repair"; | ||||
| 			this.btnRunRepair.Click += new System.EventHandler(this.btnRunRepair_Click); | ||||
| 			//  | ||||
| 			// sideNavPanel1 | ||||
| 			//  | ||||
| 			this.sideNavPanel1.Controls.Add(this.warningBox3); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX7); | ||||
| 			this.sideNavPanel1.Controls.Add(this.line1); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swCkObsoleteROData); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swHiddenDataLocs); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX3); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX2); | ||||
| 			this.sideNavPanel1.Controls.Add(this.swCkOrphanDataRecs); | ||||
| 			this.sideNavPanel1.Controls.Add(this.labelX1); | ||||
| 			this.sideNavPanel1.Controls.Add(this.btnRunCheck); | ||||
| 			this.sideNavPanel1.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel1.Location = new System.Drawing.Point(80, 31); | ||||
| 			this.sideNavPanel1.Name = "sideNavPanel1"; | ||||
| 			this.sideNavPanel1.Size = new System.Drawing.Size(300, 494); | ||||
| 			this.sideNavPanel1.TabIndex = 2; | ||||
| 			//  | ||||
| 			// warningBox3 | ||||
| 			//  | ||||
| 			this.warningBox3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(196)))), ((int)(((byte)(219)))), ((int)(((byte)(249))))); | ||||
| 			this.warningBox3.CloseButtonVisible = false; | ||||
| 			this.warningBox3.Image = ((System.Drawing.Image)(resources.GetObject("warningBox3.Image"))); | ||||
| 			this.warningBox3.Location = new System.Drawing.Point(17, 207); | ||||
| 			this.warningBox3.Name = "warningBox3"; | ||||
| 			this.warningBox3.OptionsButtonVisible = false; | ||||
| 			this.warningBox3.Size = new System.Drawing.Size(264, 32); | ||||
| 			this.warningBox3.TabIndex = 29; | ||||
| 			this.warningBox3.Text = "<b>NOTE</b> These tools can take a long time to run"; | ||||
| 			//  | ||||
| 			// labelX7 | ||||
| 			//  | ||||
| 			this.labelX7.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX7.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX7.Font = new System.Drawing.Font("Microsoft Sans Serif", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX7.Location = new System.Drawing.Point(5, 3); | ||||
| 			this.labelX7.Name = "labelX7"; | ||||
| 			this.labelX7.Size = new System.Drawing.Size(251, 22); | ||||
| 			this.labelX7.TabIndex = 19; | ||||
| 			this.labelX7.Text = "Check for these Data Issues:"; | ||||
| 			//  | ||||
| 			// line1 | ||||
| 			//  | ||||
| 			this.line1.BackColor = System.Drawing.Color.Transparent; | ||||
| 			this.line1.Location = new System.Drawing.Point(8, 179); | ||||
| 			this.line1.Name = "line1"; | ||||
| 			this.line1.Size = new System.Drawing.Size(285, 12); | ||||
| 			this.line1.TabIndex = 18; | ||||
| 			this.line1.Text = "line1"; | ||||
| 			//  | ||||
| 			// swCkObsoleteROData | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swCkObsoleteROData.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swCkObsoleteROData.Location = new System.Drawing.Point(10, 99); | ||||
| 			this.swCkObsoleteROData.Name = "swCkObsoleteROData"; | ||||
| 			this.swCkObsoleteROData.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swCkObsoleteROData.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swCkObsoleteROData, new DevComponents.DotNetBar.SuperTooltipInfo("Obsolete RO Data", "", resources.GetString("swCkObsoleteROData.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 135))); | ||||
| 			this.swCkObsoleteROData.SwitchClickTogglesValue = true; | ||||
| 			this.swCkObsoleteROData.TabIndex = 14; | ||||
| 			this.swCkObsoleteROData.Value = true; | ||||
| 			this.swCkObsoleteROData.ValueObject = "Y"; | ||||
| 			this.swCkObsoleteROData.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// swHiddenDataLocs | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swHiddenDataLocs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swHiddenDataLocs.Location = new System.Drawing.Point(10, 71); | ||||
| 			this.swHiddenDataLocs.Name = "swHiddenDataLocs"; | ||||
| 			this.swHiddenDataLocs.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swHiddenDataLocs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swHiddenDataLocs, new DevComponents.DotNetBar.SuperTooltipInfo("Hidden Data Locations", "", resources.GetString("swHiddenDataLocs.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); | ||||
| 			this.swHiddenDataLocs.SwitchClickTogglesValue = true; | ||||
| 			this.swHiddenDataLocs.TabIndex = 15; | ||||
| 			this.swHiddenDataLocs.Value = true; | ||||
| 			this.swHiddenDataLocs.ValueObject = "Y"; | ||||
| 			this.swHiddenDataLocs.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX3 | ||||
| 			//  | ||||
| 			this.labelX3.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX3.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX3.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX3.Location = new System.Drawing.Point(107, 99); | ||||
| 			this.labelX3.Name = "labelX3"; | ||||
| 			this.labelX3.Size = new System.Drawing.Size(154, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX3, new DevComponents.DotNetBar.SuperTooltipInfo("Obsolete RO Data", "", resources.GetString("labelX3.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(250, 135))); | ||||
| 			this.labelX3.TabIndex = 11; | ||||
| 			this.labelX3.Text = "Obsolete RO Data"; | ||||
| 			//  | ||||
| 			// labelX2 | ||||
| 			//  | ||||
| 			this.labelX2.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX2.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX2.Location = new System.Drawing.Point(107, 71); | ||||
| 			this.labelX2.Name = "labelX2"; | ||||
| 			this.labelX2.Size = new System.Drawing.Size(140, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX2, new DevComponents.DotNetBar.SuperTooltipInfo("Hidden Data Locations", "", resources.GetString("labelX2.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray)); | ||||
| 			this.labelX2.TabIndex = 12; | ||||
| 			this.labelX2.Text = "Hidden Data Locations"; | ||||
| 			//  | ||||
| 			// swCkOrphanDataRecs | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swCkOrphanDataRecs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swCkOrphanDataRecs.Location = new System.Drawing.Point(10, 43); | ||||
| 			this.swCkOrphanDataRecs.Name = "swCkOrphanDataRecs"; | ||||
| 			this.swCkOrphanDataRecs.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swCkOrphanDataRecs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swCkOrphanDataRecs, new DevComponents.DotNetBar.SuperTooltipInfo("Orphan Data Records", "", resources.GetString("swCkOrphanDataRecs.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(275, 193))); | ||||
| 			this.swCkOrphanDataRecs.SwitchClickTogglesValue = true; | ||||
| 			this.swCkOrphanDataRecs.TabIndex = 9; | ||||
| 			this.swCkOrphanDataRecs.Value = true; | ||||
| 			this.swCkOrphanDataRecs.ValueObject = "Y"; | ||||
| 			this.swCkOrphanDataRecs.ValueChanged += new System.EventHandler(this.swCk_ValueChanged); | ||||
| 			//  | ||||
| 			// labelX1 | ||||
| 			//  | ||||
| 			this.labelX1.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.labelX1.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.labelX1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.labelX1.Location = new System.Drawing.Point(107, 43); | ||||
| 			this.labelX1.Name = "labelX1"; | ||||
| 			this.labelX1.Size = new System.Drawing.Size(172, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.labelX1, new DevComponents.DotNetBar.SuperTooltipInfo("Orphan Data Records", "", resources.GetString("labelX1.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(275, 190))); | ||||
| 			this.labelX1.TabIndex = 8; | ||||
| 			this.labelX1.Text = "Orphan Data Records"; | ||||
| 			//  | ||||
| 			// btnRunCheck | ||||
| 			//  | ||||
| 			this.btnRunCheck.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; | ||||
| 			this.btnRunCheck.Checked = true; | ||||
| 			this.btnRunCheck.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; | ||||
| 			this.btnRunCheck.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.btnRunCheck.Location = new System.Drawing.Point(5, 150); | ||||
| 			this.btnRunCheck.Name = "btnRunCheck"; | ||||
| 			this.btnRunCheck.Size = new System.Drawing.Size(286, 23); | ||||
| 			this.btnRunCheck.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.btnRunCheck, new DevComponents.DotNetBar.SuperTooltipInfo("Run Check", "", "This will run the database check tools selected.\r\n\r\nClick on the on/off switches " + | ||||
|             "to turn on/off each tool.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 100))); | ||||
| 			this.btnRunCheck.TabIndex = 7; | ||||
| 			this.btnRunCheck.Text = "Run Check"; | ||||
| 			this.btnRunCheck.Click += new System.EventHandler(this.btnRunCheck_Click); | ||||
| 			//  | ||||
| 			// sideNavPanel3 | ||||
| 			//  | ||||
| 			this.sideNavPanel3.Controls.Add(this.swCheckROLinks); | ||||
| @@ -882,9 +1023,9 @@ | ||||
| 			this.sideNavPanel3.Controls.Add(this.myTV); | ||||
| 			this.sideNavPanel3.Controls.Add(this.btnFixLinks); | ||||
| 			this.sideNavPanel3.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel3.Location = new System.Drawing.Point(80, 31); | ||||
| 			this.sideNavPanel3.Location = new System.Drawing.Point(89, 31); | ||||
| 			this.sideNavPanel3.Name = "sideNavPanel3"; | ||||
| 			this.sideNavPanel3.Size = new System.Drawing.Size(300, 494); | ||||
| 			this.sideNavPanel3.Size = new System.Drawing.Size(291, 494); | ||||
| 			this.sideNavPanel3.TabIndex = 10; | ||||
| 			this.sideNavPanel3.Visible = false; | ||||
| 			//  | ||||
| @@ -924,6 +1065,7 @@ | ||||
| 			this.warningBox5.CloseButtonVisible = false; | ||||
| 			this.warningBox5.Image = ((System.Drawing.Image)(resources.GetObject("warningBox5.Image"))); | ||||
| 			this.warningBox5.Location = new System.Drawing.Point(17, 145); | ||||
| 			this.warningBox5.Margin = new System.Windows.Forms.Padding(4); | ||||
| 			this.warningBox5.Name = "warningBox5"; | ||||
| 			this.warningBox5.OptionsButtonVisible = false; | ||||
| 			this.warningBox5.Size = new System.Drawing.Size(262, 32); | ||||
| @@ -1007,6 +1149,7 @@ | ||||
| 			this.warningBox1.CloseButtonVisible = false; | ||||
| 			this.warningBox1.Image = ((System.Drawing.Image)(resources.GetObject("warningBox1.Image"))); | ||||
| 			this.warningBox1.Location = new System.Drawing.Point(17, 181); | ||||
| 			this.warningBox1.Margin = new System.Windows.Forms.Padding(4); | ||||
| 			this.warningBox1.Name = "warningBox1"; | ||||
| 			this.warningBox1.OptionsButtonVisible = false; | ||||
| 			this.warningBox1.Size = new System.Drawing.Size(262, 43); | ||||
| @@ -1030,86 +1173,6 @@ | ||||
| 			this.btnFixLinks.Text = "Process Links"; | ||||
| 			this.btnFixLinks.Click += new System.EventHandler(this.btnFixLinks_Click); | ||||
| 			//  | ||||
| 			// sideNavPanel2 | ||||
| 			//  | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRefreshTblsForSrch); | ||||
| 			this.sideNavPanel2.Controls.Add(this.lblRefreshTblForSrch); | ||||
| 			this.sideNavPanel2.Controls.Add(this.warningBox4); | ||||
| 			this.sideNavPanel2.Controls.Add(this.warningBox2); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRmObsoleteROData); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRefreshWordAttmts); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swStandardHypenChars); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX4); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX5); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX9); | ||||
| 			this.sideNavPanel2.Controls.Add(this.swRmOrphanDataRecs); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX10); | ||||
| 			this.sideNavPanel2.Controls.Add(this.labelX8); | ||||
| 			this.sideNavPanel2.Controls.Add(this.line2); | ||||
| 			this.sideNavPanel2.Controls.Add(this.btnRunRepair); | ||||
| 			this.sideNavPanel2.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel2.Location = new System.Drawing.Point(80, 31); | ||||
| 			this.sideNavPanel2.Name = "sideNavPanel2"; | ||||
| 			this.sideNavPanel2.Size = new System.Drawing.Size(300, 494); | ||||
| 			this.sideNavPanel2.TabIndex = 6; | ||||
| 			this.sideNavPanel2.Visible = false; | ||||
| 			//  | ||||
| 			// swRefreshTblsForSrch | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.swRefreshTblsForSrch.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.swRefreshTblsForSrch.Location = new System.Drawing.Point(10, 153); | ||||
| 			this.swRefreshTblsForSrch.Name = "swRefreshTblsForSrch"; | ||||
| 			this.swRefreshTblsForSrch.Size = new System.Drawing.Size(91, 22); | ||||
| 			this.swRefreshTblsForSrch.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.swRefreshTblsForSrch, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Word Attachments", "", resources.GetString("swRefreshTblsForSrch.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(300, 200))); | ||||
| 			this.swRefreshTblsForSrch.SwitchClickTogglesValue = true; | ||||
| 			this.swRefreshTblsForSrch.TabIndex = 32; | ||||
| 			this.swRefreshTblsForSrch.Value = true; | ||||
| 			this.swRefreshTblsForSrch.ValueObject = "Y"; | ||||
| 			//  | ||||
| 			// lblRefreshTblForSrch | ||||
| 			//  | ||||
| 			this.lblRefreshTblForSrch.BackColor = System.Drawing.Color.Transparent; | ||||
| 			//  | ||||
| 			//  | ||||
| 			//  | ||||
| 			this.lblRefreshTblForSrch.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square; | ||||
| 			this.lblRefreshTblForSrch.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); | ||||
| 			this.lblRefreshTblForSrch.Location = new System.Drawing.Point(107, 153); | ||||
| 			this.lblRefreshTblForSrch.Name = "lblRefreshTblForSrch"; | ||||
| 			this.lblRefreshTblForSrch.Size = new System.Drawing.Size(186, 22); | ||||
| 			this.superTooltip1.SetSuperTooltip(this.lblRefreshTblForSrch, new DevComponents.DotNetBar.SuperTooltipInfo("Refresh Word Attachments", "", resources.GetString("lblRefreshTblForSrch.SuperTooltip"), null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(300, 200))); | ||||
| 			this.lblRefreshTblForSrch.TabIndex = 31; | ||||
| 			this.lblRefreshTblForSrch.Text = "Refresh Tables For Search"; | ||||
| 			//  | ||||
| 			// sideNavPanel4 | ||||
| 			//  | ||||
| 			this.sideNavPanel4.Controls.Add(this.btn_ShowUsers); | ||||
| 			this.sideNavPanel4.Dock = System.Windows.Forms.DockStyle.Fill; | ||||
| 			this.sideNavPanel4.Location = new System.Drawing.Point(81, 31); | ||||
| 			this.sideNavPanel4.Name = "sideNavPanel4"; | ||||
| 			this.sideNavPanel4.Size = new System.Drawing.Size(299, 494); | ||||
| 			this.sideNavPanel4.TabIndex = 14; | ||||
| 			this.sideNavPanel4.Visible = false; | ||||
| 			//  | ||||
| 			// btn_ShowUsers | ||||
| 			//  | ||||
| 			this.btn_ShowUsers.AccessibleRole = System.Windows.Forms.AccessibleRole.PushButton; | ||||
| 			this.btn_ShowUsers.Checked = true; | ||||
| 			this.btn_ShowUsers.ColorTable = DevComponents.DotNetBar.eButtonColor.OrangeWithBackground; | ||||
| 			this.btn_ShowUsers.Location = new System.Drawing.Point(57, 37); | ||||
| 			this.btn_ShowUsers.Name = "btn_ShowUsers"; | ||||
| 			this.btn_ShowUsers.Size = new System.Drawing.Size(171, 23); | ||||
| 			this.btn_ShowUsers.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled; | ||||
| 			this.superTooltip1.SetSuperTooltip(this.btn_ShowUsers, new DevComponents.DotNetBar.SuperTooltipInfo("Show Users", "", "This will return all of the users currently with open sessions in the database an" + | ||||
|             "d the details of any items they have checked out.", null, null, DevComponents.DotNetBar.eTooltipColor.Gray, true, true, new System.Drawing.Size(200, 80))); | ||||
| 			this.btn_ShowUsers.TabIndex = 0; | ||||
| 			this.btn_ShowUsers.Text = "Show Users"; | ||||
| 			this.btn_ShowUsers.Click += new System.EventHandler(this.btn_ShowUsers_Click); | ||||
| 			//  | ||||
| 			// sideNavItem1 | ||||
| 			//  | ||||
| 			this.sideNavItem1.IsSystemMenu = true; | ||||
| @@ -1129,7 +1192,6 @@ | ||||
| 			//  | ||||
| 			// sideNavItmCheck | ||||
| 			//  | ||||
| 			this.sideNavItmCheck.Checked = true; | ||||
| 			this.sideNavItmCheck.Name = "sideNavItmCheck"; | ||||
| 			this.sideNavItmCheck.Panel = this.sideNavPanel1; | ||||
| 			this.sideNavItmCheck.Symbol = ""; | ||||
| @@ -1155,11 +1217,26 @@ | ||||
| 			// sideNavItmUsers | ||||
| 			//  | ||||
| 			this.sideNavItmUsers.Name = "sideNavItmUsers"; | ||||
| 			this.sideNavItmUsers.Panel = this.sideNavPanel4; | ||||
| 			this.sideNavItmUsers.SubItems.AddRange(new DevComponents.DotNetBar.BaseItem[] { | ||||
|             this.buttonItem1}); | ||||
| 			this.sideNavItmUsers.Symbol = ""; | ||||
| 			this.sideNavItmUsers.Text = "Users"; | ||||
| 			this.sideNavItmUsers.Click += new System.EventHandler(this.sideNavItmUsers_Click); | ||||
| 			//  | ||||
| 			// buttonItem1 | ||||
| 			//  | ||||
| 			this.buttonItem1.Name = "buttonItem1"; | ||||
| 			this.buttonItem1.Text = "buttonItem1"; | ||||
| 			//  | ||||
| 			// sideNavItmDelete | ||||
| 			//  | ||||
| 			this.sideNavItmDelete.Checked = true; | ||||
| 			this.sideNavItmDelete.Name = "sideNavItmDelete"; | ||||
| 			this.sideNavItmDelete.Panel = this.sideNavPanel4; | ||||
| 			this.sideNavItmDelete.Symbol = ""; | ||||
| 			this.sideNavItmDelete.Text = "Delete"; | ||||
| 			this.sideNavItmDelete.Click += new System.EventHandler(this.sideNavItmDelete_Click); | ||||
| 			//  | ||||
| 			// sideNavItmExit | ||||
| 			//  | ||||
| 			this.sideNavItmExit.Name = "sideNavItmExit"; | ||||
| @@ -1286,11 +1363,10 @@ | ||||
| 			this.panelEx1.ResumeLayout(false); | ||||
| 			this.sideNav1.ResumeLayout(false); | ||||
| 			this.sideNav1.PerformLayout(); | ||||
| 			this.sideNavPanel2.ResumeLayout(false); | ||||
| 			this.sideNavPanel1.ResumeLayout(false); | ||||
| 			this.sideNavPanel3.ResumeLayout(false); | ||||
| 			//this.sideNavPanel2.ResumeLayout(false); | ||||
| 			this.sideNavPanel4.ResumeLayout(false); | ||||
| 			this.sideNavPanel1.ResumeLayout(false); | ||||
| 			this.sideNavPanel2.ResumeLayout(false); | ||||
| 			this.sideNavPanel3.ResumeLayout(false); | ||||
| 			this.panelEx4.ResumeLayout(false); | ||||
| 			this.ResumeLayout(false); | ||||
|  | ||||
| @@ -1340,8 +1416,6 @@ | ||||
| 		private DevComponents.DotNetBar.LabelX labelX8; | ||||
| 		private DevComponents.DotNetBar.Controls.Line line2; | ||||
| 		private DevComponents.DotNetBar.ButtonX btnRunRepair; | ||||
| 		private DevComponents.DotNetBar.Controls.SideNavPanel sideNavPanel4; | ||||
| 		private DevComponents.DotNetBar.ButtonX btn_ShowUsers; | ||||
| 		private DevComponents.DotNetBar.Controls.SideNavPanel sideNavPanel3; | ||||
| 		private DevComponents.DotNetBar.ButtonX btnFixLinks; | ||||
| 		private DevComponents.DotNetBar.Controls.SideNavItem sideNavItem1; | ||||
| @@ -1376,5 +1450,16 @@ | ||||
| 		private DevComponents.DotNetBar.LabelX lblRefreshTblForSrch; | ||||
| 		private DevComponents.DotNetBar.Controls.SwitchButton swCheckROLinks; | ||||
| 		private DevComponents.DotNetBar.LabelX labelX12; | ||||
| 		private DevComponents.DotNetBar.ButtonItem buttonItem1; | ||||
| 		private DevComponents.DotNetBar.Controls.SideNavPanel sideNavPanel4; | ||||
| 		private DevComponents.DotNetBar.Controls.SwitchButton swDeleteFolder; | ||||
| 		private DevComponents.DotNetBar.LabelX labelX13; | ||||
| 		private DevComponents.DotNetBar.Controls.SwitchButton swDeleteAnnotations; | ||||
| 		private DevComponents.DotNetBar.LabelX labelX14; | ||||
| 		private System.Windows.Forms.TreeView myTVdel; | ||||
| 		private DevComponents.DotNetBar.ButtonX btnDeleteItems; | ||||
| 		private DevComponents.DotNetBar.Controls.SideNavItem sideNavItmDelete; | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -22,12 +22,22 @@ namespace VEPROMS | ||||
| 			set { _MySessionInfo = value; } | ||||
| 		} | ||||
| 		private bool IsAdministratorUser = false; //C2020-035 used to control what Set Amins can do | ||||
| 		// C2017-030 - new Admin Tools user interface | ||||
| 		// pass in session info to constructor | ||||
| 												  // C2017-030 - new Admin Tools user interface | ||||
| 												  // pass in session info to constructor | ||||
| 		public frmBatchRefresh(SessionInfo sessionInfo) | ||||
| 		{ | ||||
| 			InitializeComponent(); | ||||
| 			_MySessionInfo = sessionInfo; | ||||
|  | ||||
| 			if (sideNavItmDelete.Checked) | ||||
| 			{ | ||||
| 				AdminToolType = (E_AdminToolType)4; | ||||
| 				if (swDeleteFolder.Value) | ||||
| 					ResetDelTV(true); | ||||
| 				else | ||||
| 					ResetDelTV(false); | ||||
| 			} | ||||
|  | ||||
| 			setupProgessSteps1(); // C2017-030 - new Admin Tools user interface | ||||
| 			UserInfo ui = UserInfo.GetByUserID(MySessionInfo.UserID); | ||||
| 			IsAdministratorUser = ui.IsAdministrator(); | ||||
| @@ -43,18 +53,25 @@ namespace VEPROMS | ||||
| 				swStandardHypenChars.Enabled = false; | ||||
| 			} | ||||
| 		} | ||||
| 		// Make txtProcess text box available to frmAnnotationsClean form. | ||||
| 		internal TextBox GettxtProcess() | ||||
| 		{ | ||||
| 			return txtProcess; | ||||
| 		} | ||||
| 		// NOTE:  removed the Refresh ROs and Refresh Transitions and ROs options (now only Transitions can be refreshed) | ||||
| 		// the Update ROs and Refresh ROs logic was merged together.  The Update ROs will functionally do both | ||||
| 		// also annotations will be placed on step elements that have RO changes | ||||
|  | ||||
| 		// make all of the hyphen character consistant so they can all be found with the Search function | ||||
|  | ||||
|  | ||||
| 		private void FixHyphens() | ||||
| 		{ | ||||
| 			this.Cursor = Cursors.WaitCursor; | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Standardizing Hyphens"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int affectedRows = ESP_FixHyphens.Execute("vesp_FixHyphens") / 2;// Two results for each change | ||||
| @@ -65,7 +82,7 @@ namespace VEPROMS | ||||
| 			txtResults.AppendText(Environment.NewLine); | ||||
| 			txtResults.AppendText(Environment.NewLine); | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -125,6 +142,60 @@ namespace VEPROMS | ||||
| 				myTV.SelectedNode.Expand(); | ||||
| 			this.Cursor = Cursors.Default; | ||||
| 		} | ||||
| 		private void ResetDelTV() | ||||
| 		{ | ||||
| 			ResetDelTV(false); | ||||
| 		} | ||||
| 		private void ResetDelTV(bool noProcs) | ||||
| 		{ | ||||
| 			btnFixLinks.Enabled = false; | ||||
| 			this.Cursor = Cursors.WaitCursor; | ||||
| 			myTVdel.Nodes.Clear(); | ||||
| 			myDocVersions.Clear(); | ||||
| 			FolderInfo fi = FolderInfo.GetTop(); | ||||
|  | ||||
| 			if (fi.ChildFolderCount > 0) | ||||
| 			{ | ||||
| 				if (noProcs) | ||||
| 				{ | ||||
| 					LoadBottomLevelFolders(fi, myTVdel); | ||||
| 				} | ||||
| 				else | ||||
| 				{ | ||||
| 					TreeNode tn = new TreeNode(fi.Name); | ||||
| 					tn.Tag = fi; | ||||
| 					tn.StateImageIndex = -1; // Hide the checkbox for the root node | ||||
| 					LoadChildFolders(fi, tn, noProcs); | ||||
| 					myTVdel.Nodes.Add(tn); | ||||
| 				} | ||||
| 			} | ||||
|  | ||||
| 			if (myTVdel.SelectedNode != null) | ||||
| 				myTVdel.SelectedNode.Expand(); | ||||
| 			this.Cursor = Cursors.Default; | ||||
|  | ||||
| 			//btnFixLinks.Enabled = false; | ||||
| 			//this.Cursor = Cursors.WaitCursor; | ||||
| 			////myTreeNodePath = new List<string>(); | ||||
| 			//myTVdel.Nodes.Clear(); | ||||
| 			//myDocVersions.Clear(); | ||||
| 			//FolderInfo fi = FolderInfo.GetTop(); | ||||
| 			//TreeNode tn = myTVdel.Nodes.Add(fi.Name ); | ||||
| 			//tn.Tag = fi; | ||||
| 			//if (fi.ChildFolderCount > 0) | ||||
| 			//{ | ||||
| 			//	if (noProcs) | ||||
| 			//	{ | ||||
| 			//		LoadBottomLevelFolders(fi, myTVdel); | ||||
| 			//	} | ||||
| 			//	else | ||||
| 			//		LoadChildFolders(fi, tn, noProcs); | ||||
| 			//} | ||||
| 			//if (myTVdel.SelectedNode != null) | ||||
| 			//	myTVdel.SelectedNode.Expand(); | ||||
| 			//this.Cursor = Cursors.Default; | ||||
| 		} | ||||
|  | ||||
| 		// B2021-060 Higher level folders where being removed from the tree even if there was a child folder that containe a working draft set | ||||
| 		private bool LoadChildFolders(FolderInfo fi, TreeNode tn, bool noProcs) | ||||
| 		{ | ||||
| @@ -135,8 +206,8 @@ namespace VEPROMS | ||||
| 				TreeNode tnc = tn.Nodes.Add(fic.Name); | ||||
| 				tnc.Tag = fic; | ||||
| 				if (fic.ChildFolderCount > 0) | ||||
| 					if(LoadChildFolders(fic, tnc, noProcs)) | ||||
| 						loadedChildWorkingDraft=true; | ||||
| 					if (LoadChildFolders(fic, tnc, noProcs)) | ||||
| 						loadedChildWorkingDraft = true; | ||||
| 				// B2020-114 and C2020-035 only show folders the Set Admin can access | ||||
| 				if (fic.FolderDocVersionCount > 0) | ||||
| 				{ | ||||
| @@ -151,6 +222,34 @@ namespace VEPROMS | ||||
| 				tn.Remove(); | ||||
| 			return loadedWorkingDraft; | ||||
| 		} | ||||
| 		/// <summary> | ||||
| 		/// Load only bottom layer of folders into treenode. | ||||
| 		/// </summary> | ||||
| 		/// <param name="fi"></param> | ||||
| 		/// <param name="tn"></param> | ||||
| 		private void LoadBottomLevelFolders(FolderInfo fi, TreeView treeView) | ||||
| 		{ | ||||
| 			foreach (FolderInfo fic in fi.SortedChildFolders) | ||||
| 			{ | ||||
| 				if (fic.ChildFolderCount > 0) | ||||
| 				{ | ||||
| 					// Recursively call for child folders | ||||
| 					LoadBottomLevelFolders(fic, treeView); | ||||
| 				} | ||||
| 				else | ||||
| 				{ | ||||
| 					if (fic.Name != "PROMS") | ||||
| 					{ | ||||
|  | ||||
|  | ||||
|  | ||||
| 						// If the folder is a bottom-level folder (no child folders), add it directly to the TreeView | ||||
| 						TreeNode tnc = treeView.Nodes.Add(fic.Name); | ||||
| 						tnc.Tag = fic; | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 		} | ||||
| 		private bool LoadDocVersions(FolderInfo fic, TreeNode tnc, bool noProcs) | ||||
| 		{ | ||||
| 			bool rtnval = false; | ||||
| @@ -201,7 +300,7 @@ namespace VEPROMS | ||||
| 		private void UpdateROValues() | ||||
| 		{ | ||||
| 			this.Cursor = Cursors.WaitCursor; | ||||
| 			List<ProcedureInfo> pil = new List<ProcedureInfo>();	// C2023-002: list of checked out procedures, used in frmBatchRefreshCheckedOut dialog | ||||
| 			List<ProcedureInfo> pil = new List<ProcedureInfo>();    // C2023-002: list of checked out procedures, used in frmBatchRefreshCheckedOut dialog | ||||
| 			List<DocVersionInfo> dvil = new List<DocVersionInfo>(); | ||||
| 			foreach (TreeNode tn in myDocVersions.Keys) | ||||
| 				if (tn.Checked) | ||||
| @@ -251,7 +350,7 @@ namespace VEPROMS | ||||
| 						Application.DoEvents(); | ||||
| 					} | ||||
| 				} | ||||
| 				 | ||||
|  | ||||
| 				Application.DoEvents(); | ||||
| 				// when processing more than one procedure set, display only one completed message after all are processed | ||||
| 				if (ROFstInfo.MessageList != null) | ||||
| @@ -273,7 +372,7 @@ namespace VEPROMS | ||||
| 					sb.AppendLine("Have you requested the users to close the procedures and do you want to continue the process?"); | ||||
| 					frmBatchRefreshCheckedOut frmCO = new frmBatchRefreshCheckedOut(1); | ||||
| 					frmCO.MySessionInfo = MySessionInfo; | ||||
| 					frmCO.CheckedOutProcedures = pil;	// C2023-002: set list of checked out procedures | ||||
| 					frmCO.CheckedOutProcedures = pil;   // C2023-002: set list of checked out procedures | ||||
| 					frmCO.Location = new Point(Screen.PrimaryScreen.WorkingArea.Width - frmCO.Width, Screen.PrimaryScreen.WorkingArea.Height - frmCO.Height); | ||||
| 					// C2023-002:  Allow close of dialog that has list of procedures that are checked out | ||||
| 					if (frmCO.ShowDialog(this) != DialogResult.Cancel) | ||||
| @@ -412,7 +511,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Refresh Transitions"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtResults.AppendText("Refresh Transitions"); | ||||
| 			txtResults.AppendText(Environment.NewLine); | ||||
| @@ -449,19 +548,19 @@ namespace VEPROMS | ||||
| 						Application.DoEvents(); | ||||
| 					} | ||||
| 				} | ||||
| 				if (numTransFixed == 0 && numTransConverted ==0) | ||||
| 				if (numTransFixed == 0 && numTransConverted == 0) | ||||
| 				{ | ||||
| 					txtResults.AppendText("No Transitions Needed Updated."); | ||||
| 					txtResults.AppendText(Environment.NewLine); | ||||
| 				} | ||||
| 				ContentInfo.StaticContentInfoChange -= new StaticContentInfoEvent(ContentInfo_StaticContentInfoChange); | ||||
| 				DateTime pEnd = DateTime.Now; | ||||
| 				txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 				txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 				txtProcess.AppendText(Environment.NewLine); | ||||
| 				txtProcess.AppendText(string.Format("Transitions Checked: {0}",numTransProcessed)); | ||||
| 				txtProcess.AppendText(string.Format("Transitions Checked: {0}", numTransProcessed)); | ||||
| 				txtProcess.AppendText(Environment.NewLine); | ||||
| 				// B2018-002 - Invalid Transitions - Display Transition Refresh Statistics | ||||
| 				txtProcess.AppendText(string.Format("Transitions Correct As Is: {0}",numTransProcessed - (numTransConverted + numTransFixed))); | ||||
| 				txtProcess.AppendText(string.Format("Transitions Correct As Is: {0}", numTransProcessed - (numTransConverted + numTransFixed))); | ||||
| 				txtProcess.AppendText(Environment.NewLine); | ||||
| 				txtProcess.AppendText(string.Format("Transitions Modified: {0}", numTransFixed)); | ||||
| 				txtProcess.AppendText(Environment.NewLine); | ||||
| @@ -490,10 +589,10 @@ namespace VEPROMS | ||||
| 			} | ||||
| 			this.Cursor = Cursors.Default; | ||||
| 			// B2018-002 - Invalid Transitions - Display Transition Refresh Statisitic | ||||
| 			if (numTransFixed == 0 && numTransConverted ==0) | ||||
| 				MessageBox.Show(string.Format("{0} Transitions Checked.\n\nNo Transitions Modified.",numTransProcessed), "Refresh Transitions Completed"); | ||||
| 			if (numTransFixed == 0 && numTransConverted == 0) | ||||
| 				MessageBox.Show(string.Format("{0} Transitions Checked.\n\nNo Transitions Modified.", numTransProcessed), "Refresh Transitions Completed"); | ||||
| 			else | ||||
| 				MessageBox.Show(string.Format("{0} Transitions Checked.\n\n {1} Correct as is.\n\n {2} Transitions modified.\n\n {3} Transitions converted to text.", numTransProcessed, numTransProcessed - (numTransFixed + numTransConverted),numTransFixed, numTransConverted), "Refresh Transitions Completed"); | ||||
| 				MessageBox.Show(string.Format("{0} Transitions Checked.\n\n {1} Correct as is.\n\n {2} Transitions modified.\n\n {3} Transitions converted to text.", numTransProcessed, numTransProcessed - (numTransFixed + numTransConverted), numTransFixed, numTransConverted), "Refresh Transitions Completed"); | ||||
| 		} | ||||
|  | ||||
| 		// C2017-030 - new Admin Tools user interface | ||||
| @@ -506,7 +605,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Refreshing Word Attachments"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int affectedRows = ESP_DeletePDFs.Execute("vesp_DeletePDFs"); | ||||
| @@ -516,7 +615,7 @@ namespace VEPROMS | ||||
| 			txtResults.AppendText(Environment.NewLine); | ||||
| 			txtResults.AppendText(Environment.NewLine); | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -561,7 +660,7 @@ namespace VEPROMS | ||||
| 		private int RefreshForSearch() | ||||
| 		{ | ||||
| 			int cntfix = 0; | ||||
| 			List<int> gids = GridInfoList.GetIds();		// get all grids in database | ||||
| 			List<int> gids = GridInfoList.GetIds();     // get all grids in database | ||||
| 			pbProcess.Minimum = 0; | ||||
| 			pbProcess.Maximum = gids.Count; | ||||
| 			pbProcess.Step = 1; | ||||
| @@ -570,7 +669,7 @@ namespace VEPROMS | ||||
| 				using (Content cc = Content.Get(cid)) | ||||
| 				{ | ||||
| 					StepConfig sc = new StepConfig(cc.Config); | ||||
| 					if (!sc.Step_FixedTblForSrch)		// if not processed through this code already, get searchable text & save | ||||
| 					if (!sc.Step_FixedTblForSrch)       // if not processed through this code already, get searchable text & save | ||||
| 					{ | ||||
| 						try | ||||
| 						{ | ||||
| @@ -588,7 +687,7 @@ namespace VEPROMS | ||||
| 									cc.UserID = Volian.Base.Library.VlnSettings.UserID; | ||||
| 									cc.DTS = DateTime.Now; | ||||
| 									cc.Text = srchtxt; | ||||
| 									 | ||||
|  | ||||
| 								} | ||||
| 								sc.Step_FixedTblForSrch = true; | ||||
| 								cc.Config = sc.ToString(); | ||||
| @@ -615,7 +714,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Identifing Orphan Items"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCount = ESP_IdentifyDisconnectedItems.Execute("vesp_GetDisconnectedItemsCount"); | ||||
| @@ -636,7 +735,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -652,7 +751,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Purging Orphan Items"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCount = ESP_IdentifyDisconnectedItems.Execute("vesp_GetDisconnectedItemsCount"); | ||||
| @@ -689,7 +788,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -704,7 +803,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Identifing Unused RoFsts and Figures"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCountRoFst = ESP_GetUnusedRoFsts.Execute("vesp_GetUnusedRoFstsCount"); | ||||
| @@ -727,9 +826,9 @@ namespace VEPROMS | ||||
| 			} | ||||
|  | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			this.Cursor = Cursors.Default; | ||||
| @@ -742,7 +841,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Purging Unused RoFSTs and Figures Items"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCountRoFst = ESP_GetUnusedRoFsts.Execute("vesp_GetUnusedRoFstsCount"); | ||||
| @@ -783,7 +882,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -798,7 +897,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Identifing Unused RO Associations"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCount = ESP_GetROAssoc.Execute("vesp_GetUnusedROAssociationsCount"); | ||||
| @@ -817,7 +916,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -832,7 +931,7 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Purging Unused Referenced Object Associations"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			int rowCount = ESP_GetROAssoc.Execute("vesp_GetUnusedROAssociationsCount"); | ||||
| @@ -866,7 +965,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -881,11 +980,11 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Identifing Hidden Item Locations"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			List<ItemInfo> myItems = ESP_IdentifyNonEditableItems.Execute("vesp_GetNonEditableItems"); | ||||
| 			txtProcess.AppendText(string.Format("Hidden Items Count:  {0}",myItems.Count)); | ||||
| 			txtProcess.AppendText(string.Format("Hidden Items Count:  {0}", myItems.Count)); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			if (myItems.Count > 0) | ||||
| 			{ | ||||
| @@ -906,7 +1005,7 @@ namespace VEPROMS | ||||
| 				txtResults.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| @@ -921,16 +1020,16 @@ namespace VEPROMS | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText("Show Users in PROMS"); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}",pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Started: {0}", pStart.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			Application.DoEvents(); | ||||
| 			txtResults.Clear(); | ||||
| 			txtResults.AppendText(ESP_GetDatabaseSessions.Execute("vesp_GetDatabaseSessions")); | ||||
| 			DateTime pEnd = DateTime.Now; | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}",pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			txtProcess.AppendText(string.Format("Completed: {0}", pEnd.ToString("MM/dd/yyyy @ HH:mm"))); | ||||
| 			Application.DoEvents(); | ||||
| 			this.Cursor = Cursors.Default; | ||||
| 			MessageBox.Show( "Show Users Completed", "Show Users"); | ||||
| 			MessageBox.Show("Show Users Completed", "Show Users"); | ||||
| 		} | ||||
|  | ||||
| 		private void ProcessUpdateROValues(DocVersionInfo dq) | ||||
| @@ -1068,7 +1167,7 @@ namespace VEPROMS | ||||
| 		// show the changes made in the Results pannel, include the ItemId of the step element | ||||
| 		void ContentInfo_StaticContentInfoChange(object sender, StaticContentInfoEventArgs args) | ||||
| 		{ | ||||
| 			 | ||||
|  | ||||
| 			if (args.Type == "TX") | ||||
| 			{ | ||||
| 				myFixesCount++; | ||||
| @@ -1085,7 +1184,7 @@ namespace VEPROMS | ||||
| 			} | ||||
| 			else // B2018-002 - Invalid Transitions - Display Transition Cconversion Statistics | ||||
| 			{ | ||||
| 					myFixes.AppendLine(string.Format("Converted Transition to text for {0}({1})", (sender as ItemInfo).ShortPath, (sender as ItemInfo).ItemID)); | ||||
| 				myFixes.AppendLine(string.Format("Converted Transition to text for {0}({1})", (sender as ItemInfo).ShortPath, (sender as ItemInfo).ItemID)); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| @@ -1121,10 +1220,40 @@ namespace VEPROMS | ||||
| 					CheckChildNodes(e.Node, e.Node.Checked); | ||||
| 				} | ||||
| 			} | ||||
| 			if (swDeleteAnnotations.Value) | ||||
| 			{ | ||||
| 				if (e.Node.Checked) | ||||
| 				{ | ||||
| 					DiselectParentNodes(e.Node.Parent); | ||||
| 					DiselectChildNodes(e.Node.Nodes); | ||||
| 				} | ||||
|  | ||||
| 			} | ||||
|  | ||||
| 			btnFixLinks.Enabled = AtLeastOneNodeChecked(); // C2017-030 support for Refresh Transitions/Update RO Values | ||||
| 		} | ||||
|  | ||||
| 		private void DiselectParentNodes(TreeNode parent) | ||||
| 		{ | ||||
| 			while (parent != null) | ||||
| 			{ | ||||
| 				if (parent.Checked) | ||||
| 					parent.Checked = false; | ||||
| 				parent = parent.Parent; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		private void DiselectChildNodes(TreeNodeCollection childes) | ||||
| 		{ | ||||
| 			foreach (TreeNode oneChild in childes) | ||||
| 			{ | ||||
| 				if (oneChild.Checked) | ||||
| 					oneChild.Checked = false; | ||||
| 				DiselectChildNodes(oneChild.Nodes); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
|  | ||||
| 		private void CheckChildNodes(TreeNode treeNode, bool ischecked) | ||||
| 		{ | ||||
| 			foreach (TreeNode tn in treeNode.Nodes) | ||||
| @@ -1143,9 +1272,9 @@ namespace VEPROMS | ||||
| 		public ProgressBarItem ProgressBar | ||||
| 		{ | ||||
| 			get { return _ProgressBar; } | ||||
| 			set  | ||||
| 			{  | ||||
| 				_ProgressBar = value;  | ||||
| 			set | ||||
| 			{ | ||||
| 				_ProgressBar = value; | ||||
| 				_ProgressBar.TextVisible = true; | ||||
| 			} | ||||
| 		} | ||||
| @@ -1246,6 +1375,25 @@ namespace VEPROMS | ||||
| 			this.Close(); | ||||
| 		} | ||||
|  | ||||
| 		// new Admin Tools user interface for deletes | ||||
| 		private void sideNavItmDelete_Click(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			AdminToolType = E_AdminToolType.Delete; | ||||
| 			lblAdmToolProgressType.Text = ""; | ||||
| 			setupProgessSteps1(); | ||||
|  | ||||
| 			if (swDeleteFolder.Value) | ||||
| 				ResetDelTV(true); | ||||
| 			else | ||||
| 				ResetDelTV(false); | ||||
| 		} | ||||
|  | ||||
| 		// new Admin Tools user interface for deletes | ||||
| 		//private void sideNavItmDelete_Click_1(object sender, EventArgs e) | ||||
| 		//{ | ||||
|  | ||||
| 		//} | ||||
|  | ||||
| 		#region On/Off Swiches | ||||
|  | ||||
| 		// C2017-030 new Admin Tools user interface | ||||
| @@ -1254,7 +1402,8 @@ namespace VEPROMS | ||||
| 			Check = 0, | ||||
| 			Repair = 1, | ||||
| 			Links = 2, | ||||
| 			Users = 3 | ||||
| 			Users = 3, | ||||
| 			Delete = 4 | ||||
| 		}; | ||||
| 		private E_AdminToolType AdminToolType = 0; | ||||
|  | ||||
| @@ -1305,6 +1454,11 @@ namespace VEPROMS | ||||
| 					splitContainer3.Panel2Collapsed = true; | ||||
| 					progressSteps1.Visible = false; | ||||
| 					break; | ||||
|  | ||||
| 				case E_AdminToolType.Delete: | ||||
| 					splitContainer3.Panel2Collapsed = true; | ||||
| 					progressSteps1.Visible = false; | ||||
| 					break; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| @@ -1500,5 +1654,138 @@ namespace VEPROMS | ||||
| 			} | ||||
|  | ||||
| 		} | ||||
|  | ||||
|  | ||||
| 		//C2024-005 Delete Annotations, Delete Folders | ||||
| 		private void swDeleteAnnotations_ValueChanged(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			swDeleteFolder.Value = !swDeleteAnnotations.Value; | ||||
| 			if (swDeleteFolder.Value) | ||||
| 				ResetDelTV(true); | ||||
| 			else | ||||
| 				ResetDelTV(false); | ||||
| 		} | ||||
|  | ||||
| 		private void swDeleteFolder_ValueChanged(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			swDeleteAnnotations.Value = !swDeleteFolder.Value; | ||||
| 			if (swDeleteFolder.Value) | ||||
| 				ResetDelTV(true); | ||||
| 			else | ||||
| 				ResetDelTV(false); | ||||
| 		} | ||||
|  | ||||
| 		private void btnDeleteItems_Click(object sender, EventArgs e) | ||||
| 		{ | ||||
| 			//clear | ||||
| 			txtResults.Clear(); | ||||
| 			txtProcess.Clear(); | ||||
|  | ||||
|  | ||||
| 			if (swDeleteFolder.Value) | ||||
| 			{ | ||||
| 				//TODO process deletions of folders | ||||
| 				txtProcess.AppendText("Deleting Folders..."); | ||||
|  | ||||
| 				//List<ProcedureInfo> pil = new List<ProcedureInfo>(); | ||||
| 				//foreach (TreeNode tn in myProcedures.Keys) | ||||
| 				//	if (tn.Checked) | ||||
| 				//		pil.Add(myProcedures[tn]); | ||||
|  | ||||
| 				////Load Selected Folders | ||||
| 				Dictionary<int, string> folderData = new Dictionary<int, string>(); | ||||
|  | ||||
| 				//List<FolderInfo> Flist = new List<FolderInfo>(); | ||||
| 				//foreach (TreeNode tn in myDocVersions.Keys) | ||||
| 				//	if (tn.Checked) | ||||
| 				//		Flist.Add(); | ||||
|  | ||||
| 				//List<DocVersionInfo> dvil = new List<DocVersionInfo>(); | ||||
| 				//foreach (TreeNode tn in myDocVersions.Keys) | ||||
| 				//	if (tn.Checked) | ||||
| 				//		dvil.Add(myDocVersions[tn]); | ||||
|  | ||||
| 				//foreach (TreeNode tn in myTVdel.Nodes) | ||||
| 				//{ | ||||
| 				//	if (tn.Checked) | ||||
| 				//	{ | ||||
| 				//		var itemInfo = myProcedures[tn]; | ||||
| 				//		folderData.Add(itemInfo.ItemID, itemInfo.DisplayText); | ||||
| 				//	} | ||||
| 				//} | ||||
|  | ||||
| 				//ProcessDelete(dvil); | ||||
| 			} | ||||
| 			else | ||||
| 			{ | ||||
| 					// Write progress status | ||||
| 				txtProcess.AppendText("Deleting Annotations..."); | ||||
|  | ||||
| 					// Create a list of procedures the user selected | ||||
| 				List<ProcedureInfo> pil = new List<ProcedureInfo>(); | ||||
| 				foreach (TreeNode tn in myProcedures.Keys) | ||||
| 					if (tn.Checked) | ||||
| 						pil.Add(myProcedures[tn]); | ||||
|  | ||||
| 					// Create a list of doc versions the user selected | ||||
| 				List<DocVersionInfo> dvil = new List<DocVersionInfo>(); | ||||
| 				foreach (TreeNode tn in myDocVersions.Keys) | ||||
| 					if (tn.Checked) | ||||
| 						dvil.Add(myDocVersions[tn]); | ||||
|  | ||||
| 				frmAnnotationsCleanup frmAnnoDel = new frmAnnotationsCleanup(this, pil, dvil); | ||||
| 				 | ||||
| 				frmAnnoDel.ShowDialog(); | ||||
|  | ||||
|  | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		private void ProcessDelete(List<DocVersionInfo> foldersToDelete) | ||||
| 		{ | ||||
| 			DateTime pStart = DateTime.Now; | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
| 			txtProcess.AppendText(pStart.ToString("MM/dd/yyyy @ HH:mm")); | ||||
| 			txtProcess.AppendText(Environment.NewLine); | ||||
|  | ||||
| 			foreach (var kvp in foldersToDelete) | ||||
| 			{ | ||||
| 				int itemID = (int)kvp.ItemID; | ||||
| 				string folderName = kvp.Name; | ||||
|  | ||||
| 				// Perform the deletion operation | ||||
| 				// Assume DeleteFolderByID is a method that deletes the folder by its ItemID | ||||
| 				bool deletionSuccessful = DeleteFolderByID(itemID); | ||||
|  | ||||
| 				// Update txtProcess with the progress | ||||
| 				if (deletionSuccessful) | ||||
| 				{ | ||||
| 					txtProcess.AppendText($"Successfully deleted folder: {folderName} (ID: {itemID})"); | ||||
| 				} | ||||
| 				else | ||||
| 				{ | ||||
| 					txtProcess.AppendText($"Failed to delete folder: {folderName} (ID: {itemID})"); | ||||
| 				} | ||||
| 				txtProcess.AppendText(Environment.NewLine); | ||||
| 			} | ||||
| 		} | ||||
| 		// Example deletion method | ||||
| 		private bool DeleteFolderByID(int itemID) | ||||
| 		{ | ||||
| 			// Implement your folder deletion logic here | ||||
| 			// Return true if deletion was successful, false otherwise | ||||
| 			return true; // Placeholder | ||||
| 		} | ||||
|  | ||||
| 		public List<ProcedureInfo> RetrieveChkAnnotations() | ||||
| 		{ | ||||
| 			List<ProcedureInfo> pil = new List<ProcedureInfo>(); | ||||
| 			foreach (TreeNode tn in myProcedures.Keys) | ||||
| 				if (tn.Checked) | ||||
| 					pil.Add(myProcedures[tn]); | ||||
| 			return pil; | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -117,6 +117,44 @@ | ||||
|   <resheader name="writer"> | ||||
|     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> | ||||
|   </resheader> | ||||
|   <metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||||
|     <value>17, 17</value> | ||||
|   </metadata> | ||||
|   <data name="swDeleteFolder.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
|  | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="labelX13.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swDeleteAnnotations.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <data name="labelX14.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> | ||||
|   <data name="warningBox3.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|     <value> | ||||
| @@ -135,9 +173,6 @@ | ||||
|         zJwL4b/EAAAAAElFTkSuQmCC | ||||
| </value> | ||||
|   </data> | ||||
|   <metadata name="superTooltip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> | ||||
|     <value>17, 17</value> | ||||
|   </metadata> | ||||
|   <data name="swCkObsoleteROData.SuperTooltip" xml:space="preserve"> | ||||
|     <value>Referenced Objects databases are associated with a procedure set (such as Working Draft).  | ||||
|  | ||||
| @@ -184,91 +219,6 @@ This tool may take an extended period of time to execute. | ||||
| Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible.  This tool detects any orphaned items in the database. | ||||
|  | ||||
| This tool may take an extended period of time to execute. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swCheckROLinks.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
|  | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="labelX12.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="warningBox5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|     <value> | ||||
|         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N | ||||
|         k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl | ||||
|         FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy | ||||
|         Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj | ||||
|         8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV | ||||
|         xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84 | ||||
|         KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz | ||||
|         jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq | ||||
|         kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM | ||||
|         2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA | ||||
|         RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs | ||||
|         oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ | ||||
|         zJwL4b/EAAAAAElFTkSuQmCC | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swUpdateROVals.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to update referenced objects values for multiple working drafts in a batch mode. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swRefreshTrans.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <data name="labelX11.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to update referenced objects values for multiple working drafts in a batch mode. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="labelX6.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <data name="warningBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|     <value> | ||||
|         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N | ||||
|         k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl | ||||
|         FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy | ||||
|         Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj | ||||
|         8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV | ||||
|         xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84 | ||||
|         KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz | ||||
|         jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq | ||||
|         kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM | ||||
|         2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA | ||||
|         RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs | ||||
|         oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ | ||||
|         zJwL4b/EAAAAAElFTkSuQmCC | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swRefreshTblsForSrch.SuperTooltip" xml:space="preserve"> | ||||
| @@ -365,9 +315,94 @@ Should an item become orphaned (disconnected) from the rest of the data, it will | ||||
|     <value>Everything in PROMS is inter-related.  A working draft knows what is its first procedure and a procedure knows what is its first step.  Likewise, a procedure knows what procedure is before it and after it. | ||||
|  | ||||
| Should an item become orphaned (disconnected) from the rest of the data, it will no longer be accessible.  This tool removes any orphaned items from the database. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swCheckROLinks.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
|  | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="labelX12.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to check referenced objects links in procedure step data for multiple working drafts in a batch mode. | ||||
|  | ||||
| Bad referenced bject links will be identified with an Bad RO Link annotation. Use the PROMS Search tool to list all of the steps that have this annotation. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="warningBox5.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|     <value> | ||||
|         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N | ||||
|         k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl | ||||
|         FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy | ||||
|         Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj | ||||
|         8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV | ||||
|         xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84 | ||||
|         KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz | ||||
|         jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq | ||||
|         kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM | ||||
|         2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA | ||||
|         RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs | ||||
|         oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ | ||||
|         zJwL4b/EAAAAAElFTkSuQmCC | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swUpdateROVals.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to update referenced objects values for multiple working drafts in a batch mode. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="swRefreshTrans.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <data name="labelX11.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This allows the user to update referenced objects values for multiple working drafts in a batch mode. | ||||
|  | ||||
| Be sure a current backup of the database exists prior performing this function. | ||||
|  | ||||
| It is recommended that this be done during off hours. | ||||
| </value> | ||||
|   </data> | ||||
|   <data name="labelX6.SuperTooltip" xml:space="preserve"> | ||||
|     <value>This function will refresh transitions in all procedures selected below, whether they were selected individually or as a group via a procedure set. | ||||
|  | ||||
| Be sure a current backup of the database exists prior to running this function. | ||||
|  | ||||
| If more than one procedure is selected, it is recommended that this be performed during off hours.</value> | ||||
|   </data> | ||||
|   <data name="warningBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> | ||||
|     <value> | ||||
|         iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAplJREFUOE+N | ||||
|         k11IU2Ecxv9zouK8CULrzo8SU3QKaSYmOJ2uFL8SK4igEIok6qKUwggySTShC41CRiiGdWNfYBcVWiGl | ||||
|         FqN0lh+UTaekzuWcuu2c9316nSdKLPEHz817/s/zPv9zOPQ/nlVQEGulF3ILPe+8SIHK8eYR5lusLwHy | ||||
|         Oy08RqpXjjfHVCMlsydbGbekg4/r4HmwRbLWUZzyeGNqD5NK1O5lw8L8NQHckgh5SAdXA3UqIxuzZKSj | ||||
|         8ssI8Il9wMQeYDoVfD4HrsdhsNdRgTL2b4yl5Ce1qL+xcQOWxpKxMzwAMVEayIv7IU8XwVnv8+XuEfJV | ||||
|         xtfjMlKZ/CYG3JYJ96wOPj6EoCBfMCkfnJdguSMG89eoVBlfS+tJCpCafa1stgBYzAZbzoFGo0ZIiD84 | ||||
|         KwJ350P+UQxHtfr7vUPkp9j+4GqiM1K3FtyVB8h5wlSI4GB/RIQHgjtzwWaywMb1WHwYg7lKOq3YVrlz | ||||
|         jPw8RrWFOUoAJhpwcaNciNDQQMRGB4FNpIMNp4B93A2pXw/7ZbWlufCvFguNdNzzOta7J5S6fP4AdkVq | ||||
|         kKQVAQNJYO8TwHq0kD8kwdkWhZkLdMJrrsonlfu2yszmSsA9Bat1p0XdsTTcvxmJtpowyL1ar/m3PKYM | ||||
|         2MpVgzcySUWTdWRwd+wAXzoo3r5B7CnqDqVg+lW89yuoVARrR/SaANm0F46mUFjOUjYtN9BTaVQYJzPA | ||||
|         RlPB+hNF3XjvP3C9bDuqTm2D9DZuTcCKXN1psJ2ndhGgnpJGciENGyB9zoJk1kMezFonySw0oIf0KVOs | ||||
|         oIO7L3MlYITstVTsrKNHCzXU5aimnvmrZPp5hfrtlWS2X6LBuQoatJWTWQz3C5mEeoS6hNqt5yj7FysJ | ||||
|         zJwL4b/EAAAAAElFTkSuQmCC | ||||
| </value> | ||||
|   </data> | ||||
|   <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"> | ||||
|     <value>38</value> | ||||
|     <value>46</value> | ||||
|   </metadata> | ||||
| </root> | ||||
|   | ||||
| @@ -214,7 +214,7 @@ namespace VEPROMS | ||||
| 			this.btnSendErrorLog, | ||||
| 			this.btnShowErrFld, | ||||
| 			this.btnShowPrtFld, | ||||
| 			this.btnHelpAbout}); ; | ||||
| 			this.btnHelpAbout}); | ||||
| 			this.btnHelp.Text = "Help"; | ||||
| 			//  | ||||
| 			// btnHelpManual | ||||
| @@ -1763,3 +1763,4 @@ namespace VEPROMS | ||||
| 	} | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -225,6 +225,86 @@ namespace VEPROMS.CSLA.Library | ||||
| 				throw new DbCslaException("Error on Annotation.Delete", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		public static void DeleteAnnotationProcByType(int typID, string procList) | ||||
| 		{ | ||||
| 			if (!CanDeleteObject()) | ||||
| 				throw new System.Security.SecurityException("User not authorized to remove a Annotation"); | ||||
| 			try | ||||
| 			{ | ||||
| 				DataPortal.Delete(new DeleteAnnotationProcByTypeCriteria(typID, procList)); | ||||
| 				AnnotationInfo.StaticOnInfoChanged(); | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				System.Data.SqlClient.SqlException exSQL = SqlException(ex); | ||||
| 				if (exSQL != null && exSQL.Message.Contains("###Cannot Delete Item###")) | ||||
| 					throw exSQL; | ||||
| 				Console.WriteLine("AnnotationExt: Stacktrace = {0}", ex.StackTrace); | ||||
| 				throw new DbCslaException("Error on Annotation.Delete", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		public static void DeleteAnnotationDocvByType(int typID, string versionID) | ||||
| 		{ | ||||
| 			if (!CanDeleteObject()) | ||||
| 				throw new System.Security.SecurityException("User not authorized to remove a Annotation"); | ||||
| 			try | ||||
| 			{ | ||||
| 				DataPortal.Delete(new DeleteAnnotationDocvByTypeCriteria(typID, versionID)); | ||||
| 				AnnotationInfo.StaticOnInfoChanged(); | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				System.Data.SqlClient.SqlException exSQL = SqlException(ex); | ||||
| 				if (exSQL != null && exSQL.Message.Contains("###Cannot Delete Item###")) | ||||
| 					throw exSQL; | ||||
| 				Console.WriteLine("AnnotationExt: Stacktrace = {0}", ex.StackTrace); | ||||
| 				throw new DbCslaException("Error on Annotation.Delete", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		public static int getAnnotationProcCnt(int typID, string procList) | ||||
| 		{ | ||||
| 			if (!CanGetObject()) | ||||
| 				throw new System.Security.SecurityException("User not authorized to remove a Annotation"); | ||||
| 			try | ||||
| 			{ | ||||
| 				Annotation ProcCnt  = DataPortal.Fetch<Annotation>(new getAnnotationCountProcCriteria(typID, procList)); | ||||
| 				AnnotationInfo.StaticOnInfoChanged(); | ||||
| 				return Annotation.ProcCnt; | ||||
| 				//return Int32.Parse(ProcCnt); | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				System.Data.SqlClient.SqlException exSQL = SqlException(ex); | ||||
| 				if (exSQL != null && exSQL.Message.Contains("###Cannot retrieve Item###")) | ||||
| 					throw exSQL; | ||||
| 				Console.WriteLine("AnnotationExt: Stacktrace = {0}", ex.StackTrace); | ||||
| 				throw new DbCslaException("Error on getAnnotationCountProcCriteria", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		public static int getAnnotationCountDocv(int typID, string procList) | ||||
| 		{ | ||||
| 			if (!CanGetObject()) | ||||
| 				throw new System.Security.SecurityException("User not authorized to remove a Annotation"); | ||||
| 			try | ||||
| 			{ | ||||
| 				Annotation DocvCnt = DataPortal.Fetch<Annotation>(new getAnnotationCountDocvCriteria(typID, procList)); | ||||
| 				AnnotationInfo.StaticOnInfoChanged(); | ||||
| 				return Annotation.DocvCnt; | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				System.Data.SqlClient.SqlException exSQL = SqlException(ex); | ||||
| 				if (exSQL != null && exSQL.Message.Contains("###Cannot retrieve Item###")) | ||||
| 					throw exSQL; | ||||
| 				Console.WriteLine("AnnotationExt: Stacktrace = {0}", ex.StackTrace); | ||||
| 				throw new DbCslaException("Error on getAnnotationCountDocvCriteria", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		private static System.Data.SqlClient.SqlException SqlException(Exception ex) | ||||
| 		{ | ||||
| 			Type sqlExType = typeof(System.Data.SqlClient.SqlException); | ||||
| @@ -280,12 +360,209 @@ namespace VEPROMS.CSLA.Library | ||||
| 				throw new DbCslaException("Item.DataPortal_Delete", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		[Serializable()] | ||||
| 		protected class DeleteAnnotationProcByTypeCriteria | ||||
| 		{ | ||||
| 			private int _typeID; | ||||
| 			public int TypeID | ||||
| 			{ get { return _typeID; } } | ||||
|  | ||||
| 			private string _procList; | ||||
| 			public string ProcList | ||||
| 			{ get { return _procList; } } | ||||
| 			public DeleteAnnotationProcByTypeCriteria(int typeID, string procList) | ||||
| 			{ | ||||
| 				_typeID = typeID; | ||||
| 				_procList = procList; | ||||
| 			} | ||||
| 		} | ||||
| 		[Transactional(TransactionalTypes.TransactionScope)] | ||||
| 		private void DataPortal_Delete(DeleteAnnotationProcByTypeCriteria criteria) | ||||
| 		{ | ||||
| 			if (_MyLog.IsDebugEnabled) _MyLog.DebugFormat("[{0}] Item.DataPortal_Delete", GetHashCode()); | ||||
| 			try | ||||
| 			{ | ||||
| 				using (SqlConnection cn = Database.VEPROMS_SqlConnection) | ||||
| 				{ | ||||
| 					using (SqlCommand cm = cn.CreateCommand()) | ||||
| 					{ | ||||
| 						cm.CommandType = CommandType.StoredProcedure; | ||||
| 						cm.CommandTimeout = Database.SQLTimeout; | ||||
| 						cm.CommandText = "deleteAnnotationsProcByType"; | ||||
| 						cm.Parameters.AddWithValue("@typeid", criteria.TypeID); | ||||
| 						cm.Parameters.AddWithValue("@procList", criteria.ProcList); | ||||
| 						cm.ExecuteNonQuery(); | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				if (_MyLog.IsErrorEnabled) _MyLog.Error("Item.DataPortal_Delete", ex); | ||||
| 				_ErrorMessage = ex.Message; | ||||
| 				throw new DbCslaException("Item.DataPortal_Delete Annotations by group", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		[Serializable()] | ||||
| 		protected class DeleteAnnotationDocvByTypeCriteria | ||||
| 		{ | ||||
| 			private int _typeID; | ||||
| 			public int TypeID | ||||
| 			{ get { return _typeID; } } | ||||
|  | ||||
| 			private string _versionID; | ||||
| 			public string VersionID | ||||
| 			{ get { return _versionID; } } | ||||
| 			public DeleteAnnotationDocvByTypeCriteria(int typeID, string versionID) | ||||
| 			{ | ||||
| 				_typeID = typeID; | ||||
| 				_versionID = versionID; | ||||
| 			} | ||||
| 		} | ||||
| 		[Transactional(TransactionalTypes.TransactionScope)] | ||||
| 		private void DataPortal_Delete(DeleteAnnotationDocvByTypeCriteria criteria) | ||||
| 		{ | ||||
| 			if (_MyLog.IsDebugEnabled) _MyLog.DebugFormat("[{0}] Delete Annotations by Type Docv", GetHashCode()); | ||||
| 			try | ||||
| 			{ | ||||
| 				using (SqlConnection cn = Database.VEPROMS_SqlConnection) | ||||
| 				{ | ||||
| 					using (SqlCommand cm = cn.CreateCommand()) | ||||
| 					{ | ||||
| 						cm.CommandType = CommandType.StoredProcedure; | ||||
| 						cm.CommandTimeout = Database.SQLTimeout; | ||||
| 						cm.CommandText = "deleteAnnotationsDocvByType"; | ||||
| 						cm.Parameters.AddWithValue("@typeid", criteria.TypeID); | ||||
| 						cm.Parameters.AddWithValue("@docvList", criteria.VersionID); | ||||
| 						cm.ExecuteNonQuery(); | ||||
| 					} | ||||
| 				} | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				if (_MyLog.IsErrorEnabled) _MyLog.Error("Item.DataPortal_Delete", ex); | ||||
| 				_ErrorMessage = ex.Message; | ||||
| 				throw new DbCslaException("Item.DataPortal_Delete Annotations by type Docv", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		private static int _procCnt; | ||||
| 		public static int ProcCnt | ||||
| 		{ | ||||
| 			get { return _procCnt; } | ||||
| 			set { _procCnt = value; } | ||||
| 		} | ||||
|  | ||||
| 		[Serializable()] | ||||
| 		protected class getAnnotationCountProcCriteria | ||||
| 		{ | ||||
| 			private int _procCnt; | ||||
| 			public int ProcCnt | ||||
| 			{ get { return _procCnt; } | ||||
| 			  set { _procCnt = value; } | ||||
| 			} | ||||
| 			private int _typeID; | ||||
| 			public int TypeID | ||||
| 			{ get { return _typeID; } } | ||||
| 			private string _procList; | ||||
| 			public string ProcList | ||||
| 			{ get { return _procList; } } | ||||
| 			public getAnnotationCountProcCriteria(int typeID, string procList, int procCnt = 0) | ||||
| 			{ | ||||
| 				_typeID = typeID; | ||||
| 				_procList = procList; | ||||
| 				_procCnt = procCnt; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		[Transactional(TransactionalTypes.TransactionScope)] | ||||
| 		private getAnnotationCountProcCriteria DataPortal_Fetch(getAnnotationCountProcCriteria criteria) | ||||
| 		{ | ||||
| 			if (_MyLog.IsDebugEnabled) _MyLog.DebugFormat("[{0}] Item.DataPortal_Fetch", GetHashCode()); | ||||
| 			try | ||||
| 			{ | ||||
| 				//int ProcCnt; | ||||
| 				using (SqlConnection cn = Database.VEPROMS_SqlConnection) | ||||
| 				{ | ||||
| 					using (SqlCommand cm = cn.CreateCommand()) | ||||
| 					{ | ||||
| 						cm.CommandType = CommandType.StoredProcedure; | ||||
| 						cm.CommandTimeout = Database.SQLTimeout; | ||||
| 						cm.CommandText = "getAnnotationProcCount";						 | ||||
| 						cm.Parameters.AddWithValue("@procList", criteria.ProcList); | ||||
| 						cm.Parameters.AddWithValue("@typeid", criteria.TypeID); | ||||
| 						Annotation.ProcCnt = (int)cm.ExecuteScalar(); | ||||
|  | ||||
| 					} | ||||
| 				} | ||||
| 				return criteria; //_procCnt.ToString(); | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				if (_MyLog.IsErrorEnabled) _MyLog.Error("Annotation.GetAnnotationProcCnt", ex); | ||||
| 				_ErrorMessage = ex.Message; | ||||
| 				throw new DbCslaException("Annotation.GetAnnotationProcCnt by group", ex); | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		private static int _docvCnt; | ||||
| 		public static int DocvCnt | ||||
| 		{ get { return _docvCnt; }  | ||||
| 		set { _docvCnt = value; } | ||||
| 		} | ||||
|  | ||||
| 		[Serializable()] | ||||
| 		protected class getAnnotationCountDocvCriteria | ||||
| 		{ | ||||
| 			private int _docvCnt; | ||||
| 			public int DocvCnt | ||||
| 			{ get { return _docvCnt; } | ||||
| 			  set { _docvCnt = value; } | ||||
| 			} | ||||
| 			private int _TypeID; | ||||
| 			public int TypeID | ||||
| 			{ get { return _TypeID; } } | ||||
| 			private string _docvList; | ||||
| 			public string DocvList | ||||
| 			{ get { return _docvList; } } | ||||
| 			public getAnnotationCountDocvCriteria(int typeID, string docvList, int docvCnt = 0) | ||||
| 			{ | ||||
| 				_TypeID = typeID; | ||||
| 				_docvList = docvList; | ||||
| 				_docvCnt = docvCnt; | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		[Transactional(TransactionalTypes.TransactionScope)] | ||||
| 		private getAnnotationCountDocvCriteria DataPortal_Fetch(getAnnotationCountDocvCriteria criteria) | ||||
| 		{ | ||||
| 			if (_MyLog.IsDebugEnabled) _MyLog.DebugFormat("[{0}] Annotation.DataPortal_Fetch", GetHashCode()); | ||||
| 			try | ||||
| 			{ | ||||
| 				//int ProcCnt; | ||||
| 				using (SqlConnection cn = Database.VEPROMS_SqlConnection) | ||||
| 				{ | ||||
| 					using (SqlCommand cm = cn.CreateCommand()) | ||||
| 					{ | ||||
| 						cm.CommandType = CommandType.StoredProcedure; | ||||
| 						cm.CommandTimeout = Database.SQLTimeout; | ||||
| 						cm.CommandText = "getAnnotationDocvCount"; | ||||
| 						cm.Parameters.AddWithValue("@typeid", criteria.TypeID); | ||||
| 						cm.Parameters.AddWithValue("@DocvList", criteria.DocvList); | ||||
| 						Annotation.DocvCnt = (int)cm.ExecuteScalar(); | ||||
| 					} | ||||
| 					return criteria; | ||||
| 				} | ||||
| 			} | ||||
| 			catch (Exception ex) | ||||
| 			{ | ||||
| 				if (_MyLog.IsErrorEnabled) _MyLog.Error("Item.DataPortal_Delete", ex); | ||||
| 				_ErrorMessage = ex.Message; | ||||
| 				throw new DbCslaException("Item.DataPortal_Delete Annotations by group", ex); | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| 	//public partial class AnnotationTypeAnnotations | ||||
| 	//{ | ||||
| 	//   public static int GetAnnotationID() | ||||
| 	//   { | ||||
| 	//      return AnnotationTypeAnnotat | ||||
| 	//   } | ||||
| 	//} | ||||
| } | ||||
|  | ||||
|  | ||||
|   | ||||
							
								
								
									
										36
									
								
								PROMS/VEPROMS.CSLA.Library/Properties/Settings.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								PROMS/VEPROMS.CSLA.Library/Properties/Settings.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | ||||
| //------------------------------------------------------------------------------ | ||||
| // <auto-generated> | ||||
| //     This code was generated by a tool. | ||||
| //     Runtime Version:4.0.30319.42000 | ||||
| // | ||||
| //     Changes to this file may cause incorrect behavior and will be lost if | ||||
| //     the code is regenerated. | ||||
| // </auto-generated> | ||||
| //------------------------------------------------------------------------------ | ||||
|  | ||||
| namespace VEPROMS.CSLA.Library.Properties { | ||||
|      | ||||
|      | ||||
|     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] | ||||
|     [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "16.10.0.0")] | ||||
|     internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { | ||||
|          | ||||
|         private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); | ||||
|          | ||||
|         public static Settings Default { | ||||
|             get { | ||||
|                 return defaultInstance; | ||||
|             } | ||||
|         } | ||||
|          | ||||
|         [global::System.Configuration.ApplicationScopedSettingAttribute()] | ||||
|         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] | ||||
|         [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)] | ||||
|         [global::System.Configuration.DefaultSettingValueAttribute("Data Source=plarsen;Initial Catalog=VEPROMS_BRAIDWOOD;Integrated Security=True")] | ||||
|         public string VEPROMS_BRAIDWOODConnectionString { | ||||
|             get { | ||||
|                 return ((string)(this["VEPROMS_BRAIDWOODConnectionString"])); | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										14
									
								
								PROMS/VEPROMS.CSLA.Library/Properties/Settings.settings
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								PROMS/VEPROMS.CSLA.Library/Properties/Settings.settings
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,14 @@ | ||||
| <?xml version='1.0' encoding='utf-8'?> | ||||
| <SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="VEPROMS.CSLA.Library.Properties" GeneratedClassName="Settings"> | ||||
|   <Profiles /> | ||||
|   <Settings> | ||||
|     <Setting Name="VEPROMS_BRAIDWOODConnectionString" Type="(Connection string)" Scope="Application"> | ||||
|       <DesignTimeValue Profile="(Default)"><?xml version="1.0" encoding="utf-16"?> | ||||
| <SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> | ||||
|   <ConnectionString>Data Source=plarsen;Initial Catalog=VEPROMS_BRAIDWOOD;Integrated Security=True</ConnectionString> | ||||
|   <ProviderName>System.Data.SqlClient</ProviderName> | ||||
| </SerializableConnectionString></DesignTimeValue> | ||||
|       <Value Profile="(Default)">Data Source=plarsen;Initial Catalog=VEPROMS_BRAIDWOOD;Integrated Security=True</Value> | ||||
|     </Setting> | ||||
|   </Settings> | ||||
| </SettingsFile> | ||||
							
								
								
									
										376358
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										376358
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xsc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xsc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
							
								
								
									
										29832
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29832
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								PROMS/VEPROMS.CSLA.Library/VEPROMS_BRAIDWOODDataSet.xss
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
							
								
								
									
										453532
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BRAIDWOODDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										453532
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BRAIDWOODDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
							
								
								
									
										36991
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BRAIDWOODDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36991
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BRAIDWOODDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
							
								
								
									
										437368
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										437368
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.Designer.cs
									
									
									
										generated
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xsc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xsc
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
							
								
								
									
										35705
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35705
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xsd
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xss
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								PROMS/Volian.Controls.Library/VEPROMS_BWDDataSet.xss
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
|  | ||||
		Reference in New Issue
	
	Block a user