From 49077fccb504b25383450dda963c7629143e05d9 Mon Sep 17 00:00:00 2001 From: Rich Date: Thu, 14 Mar 2013 20:42:06 +0000 Subject: [PATCH] Added logic to keep this script from running in the system databases. Added warning messages if changes exist to fmtxml or promsfixes.sql. --- PROMS/DataLoader/PROMSFixes.Sql | 16 ++++++++++++ PROMS/Sync/Sync/frmSync.cs | 44 ++++++++++++++++++++++++++++++++- 2 files changed, 59 insertions(+), 1 deletion(-) diff --git a/PROMS/DataLoader/PROMSFixes.Sql b/PROMS/DataLoader/PROMSFixes.Sql index 4af0bd40..98cc109a 100644 --- a/PROMS/DataLoader/PROMSFixes.Sql +++ b/PROMS/DataLoader/PROMSFixes.Sql @@ -1,3 +1,19 @@ +if db_name() in('master','model','msdn','tempdb') +begin + DECLARE @ErrorMsg varchar(255) + SET @ErrorMsg = 'Don''t add these procedures and functions to ' + db_name() + PRINT '==========================================================================' + PRINT '' + PRINT @ErrorMsg + PRINT '' + PRINT 'You probably want to be in the VEPROMS database' + PRINT '' + PRINT '==========================================================================' + RAISERROR (@ErrorMsg, 20, -1) with log + RETURN +end +print 'Adding procedures and functions to ' + db_name() + IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[PasteItemReplace]') AND OBJECTPROPERTY(id,N'IsProcedure') = 1) DROP PROCEDURE [PasteItemReplace]; GO diff --git a/PROMS/Sync/Sync/frmSync.cs b/PROMS/Sync/Sync/frmSync.cs index 7fb6a049..10892e32 100644 --- a/PROMS/Sync/Sync/frmSync.cs +++ b/PROMS/Sync/Sync/frmSync.cs @@ -460,11 +460,24 @@ namespace Sync rtb.Font = fntNormal; Font fntBold = new Font("Arial", 12, FontStyle.Bold); Font fntItalic = new Font("Arial", 11, FontStyle.Italic); + Font fntBoldItalic = new Font("Arial", 14, FontStyle.Bold | FontStyle.Italic); StringBuilder sb = new StringBuilder(); + dgv.EndEdit(); + if (HasFmtXML(_CheckedOut)) + { + sb.Append("* This change includes format changes which must be loaded into the databases.\r\n\r\n"); + AddText(rtb, fntBoldItalic, "*\tThis change includes format changes\r\n\twhich must be loaded into the databases.",Color.Orange); + AddText(rtb, fntNormal, "\r\n\r\n",Color.Black); + } + if (HasPromsFixes(_CheckedOut)) + { + sb.Append("* This change includes changes to PROMSFixes.SQL which must be loaded into the databases.\r\n\r\n"); + AddText(rtb, fntBoldItalic, "*\tThis change includes changes to PROMSFixes.SQL\r\n\twhich must be loaded into the databases.\r\n\r\n", Color.Red); + AddText(rtb, fntNormal, "\r\n\r\n", Color.Black); + } sb.Append("Code Changes:\r\n\r\n"); AddText(rtb, fntBold, "Code Changes:"); AddText(rtb, fntNormal, "\r\n\r\n"); - dgv.EndEdit(); int lenFolder = tbDevelopment.Text.Length; string lastFolder = ""; foreach (FileCompare fc in _CheckedOut) @@ -529,12 +542,41 @@ namespace Sync } } + private bool HasPromsFixes(List _CheckedOut) + { + foreach (FileCompare fc in _CheckedOut) + { + if (fc.ToProcess && fc.FileName.ToLower().Contains("promsfixes.sql")) + return true; + } + return false; + } + + private bool HasFmtXML(List _CheckedOut) + { + foreach (FileCompare fc in _CheckedOut) + { + if (fc.ToProcess && fc.FileName.ToLower().Contains("\\fmtxml\\")) + return true; + } + return false; + } + private static void AddText(RichTextBox rtb, Font font, string txt) { rtb.Select(rtb.TextLength, 0); rtb.SelectionFont = font; rtb.SelectedText = txt; } + private static void AddText(RichTextBox rtb, Font font, string txt, Color myColor) + { + rtb.Select(rtb.TextLength, 0); + rtb.SelectionFont = font; + rtb.SelectionColor = myColor; + rtb.SelectedText = txt; + rtb.Select(rtb.TextLength, 0); + rtb.SelectionColor = Color.Black; + } private void dgv_MouseDown(object sender, MouseEventArgs e) { dgv.ClearSelection();