Compare commits
10 Commits
B2026-022-
...
Developmen
| Author | SHA1 | Date | |
|---|---|---|---|
| 7fee639b53 | |||
| c2a5a8ec7d | |||
| ec823cab97 | |||
| 83f88b6df3 | |||
| 1e12c82be4 | |||
| 9879a80569 | |||
| 13b03f4f89 | |||
| 33cc650871 | |||
| 955ffc48d3 | |||
| a0be60a1b9 |
@@ -2142,7 +2142,20 @@ namespace RODBInterface
|
|||||||
wraccid = accid;
|
wraccid = accid;
|
||||||
string dt = string.Format("{0:yyyyMMddHHmmss}", System.DateTime.Now);
|
string dt = string.Format("{0:yyyyMMddHHmmss}", System.DateTime.Now);
|
||||||
string xmlstr = GenerateXmlString(ro, false);
|
string xmlstr = GenerateXmlString(ro, false);
|
||||||
string strUpdate = "UPDATE " + ro.GetAttribute("Table") + " SET Info = '" + xmlstr + "'";
|
StringBuilder xmlstrTmp = new StringBuilder(); // B2026-025 prep the info field data so it will be saved correctly.
|
||||||
|
char[] chrAry = xmlstr.ToCharArray();
|
||||||
|
foreach (int chr in chrAry)
|
||||||
|
{
|
||||||
|
if (chr > 166)
|
||||||
|
{
|
||||||
|
xmlstrTmp.Append($"\\u{(int)chr}?");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
xmlstrTmp.Append((char)chr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
string strUpdate = "UPDATE " + ro.GetAttribute("Table") + " SET Info = '" + xmlstrTmp.ToString() + "'";
|
||||||
if (movedRO)
|
if (movedRO)
|
||||||
{
|
{
|
||||||
VlnXmlElement parent = (VlnXmlElement)ro.ParentNode;
|
VlnXmlElement parent = (VlnXmlElement)ro.ParentNode;
|
||||||
@@ -2186,6 +2199,20 @@ namespace RODBInterface
|
|||||||
}
|
}
|
||||||
string xmlstr = GenerateXmlString(ro, false);
|
string xmlstr = GenerateXmlString(ro, false);
|
||||||
|
|
||||||
|
StringBuilder xmlstrTmp = new StringBuilder(); // B2026-025 prep the info field data so it will be saved correctly.
|
||||||
|
char[] chrAry = xmlstr.ToCharArray();
|
||||||
|
foreach (int chr in chrAry)
|
||||||
|
{
|
||||||
|
if (chr > 166)
|
||||||
|
{
|
||||||
|
xmlstrTmp.Append($"\\u{(int)chr}?");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
xmlstrTmp.Append((char)chr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
string wraccid = null;
|
string wraccid = null;
|
||||||
if (ro.HasAttribute("AccPageID"))
|
if (ro.HasAttribute("AccPageID"))
|
||||||
{
|
{
|
||||||
@@ -2209,13 +2236,13 @@ namespace RODBInterface
|
|||||||
// strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, AccPageID, ModDateTime, Info ) ";
|
// strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, AccPageID, ModDateTime, Info ) ";
|
||||||
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, AccPageID, Info ) ";
|
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, AccPageID, Info ) ";
|
||||||
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
|
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
|
||||||
strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstr + "');";
|
strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstrTmp.ToString() + "');";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, Info ) ";
|
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, ModDateTime, Info ) ";
|
||||||
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
|
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.Group + ",'" + ro.GetAttribute("ParentID");
|
||||||
strInsert = strInsert + "','" + dt + "','" + xmlstr + "');";
|
strInsert = strInsert + "','" + dt + "','" + xmlstrTmp.ToString() + "');";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -2223,7 +2250,7 @@ namespace RODBInterface
|
|||||||
{
|
{
|
||||||
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, AccPageId, ModDateTime, Info ) ";
|
strInsert = "INSERT INTO " + parent.GetAttribute("Table") + "( RecID, RecType, ParentID, AccPageId, ModDateTime, Info ) ";
|
||||||
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.RRO + ",'" + ro.GetAttribute("ParentID");
|
strInsert = strInsert + " VALUES ('" + ro.GetAttribute("RecID") + "'," + (uint)RecordType.RRO + ",'" + ro.GetAttribute("ParentID");
|
||||||
strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstr + "');";
|
strInsert = strInsert + "','" + wraccid + "','" + dt + "','" + xmlstrTmp.ToString() + "');";
|
||||||
}
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
@@ -2631,7 +2658,20 @@ namespace RODBInterface
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
StatMsgWindow.StatusMessage = echild.GetAttribute("MenuTitle");
|
StatMsgWindow.StatusMessage = echild.GetAttribute("MenuTitle");
|
||||||
str = "UPDATE " + echild.GetAttribute("Table") + " SET Info = '" + tinfo2 + "'";
|
StringBuilder tinfo2Tmp = new StringBuilder(); // B2026-025 prep the info field data so it will be saved correctly.
|
||||||
|
char[] chrAry = tinfo2.ToCharArray();
|
||||||
|
foreach (int chr in chrAry)
|
||||||
|
{
|
||||||
|
if (chr > 166)
|
||||||
|
{
|
||||||
|
tinfo2Tmp.Append($"\\u{(int)chr}?");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
tinfo2Tmp.Append((char)chr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
str = "UPDATE " + echild.GetAttribute("Table") + " SET Info = '" + tinfo2Tmp.ToString() + "'";
|
||||||
str = str + ", ModDateTime = '" + dt + "' WHERE RecID = '" + echild.GetAttribute("RecID") + "';";
|
str = str + ", ModDateTime = '" + dt + "' WHERE RecID = '" + echild.GetAttribute("RecID") + "';";
|
||||||
DBE.Command(str);
|
DBE.Command(str);
|
||||||
DBE.Reader();
|
DBE.Reader();
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ using System.IO;
|
|||||||
using System.Windows.Forms;
|
using System.Windows.Forms;
|
||||||
using ROFields;
|
using ROFields;
|
||||||
using VlnStatus;
|
using VlnStatus;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
//using VlnProfiler; //don't forget to add VlnProfiler to the reference list
|
//using VlnProfiler; //don't forget to add VlnProfiler to the reference list
|
||||||
|
|
||||||
namespace RODBInterface
|
namespace RODBInterface
|
||||||
@@ -517,6 +518,7 @@ namespace RODBInterface
|
|||||||
strtmp.Append(" ");
|
strtmp.Append(" ");
|
||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
|
text = Regex.Replace(text, @"\\u([0-9]{1,4})\?", m => int.TryParse(m?.Groups[1]?.Value, out int result) ? Convert.ToChar(result).ToString() : ""); //B2026-025 Unicode removed from RO menu titles in treeview.
|
||||||
if ((cnt + text.Length) > frmt2) // longer than the field length?
|
if ((cnt + text.Length) > frmt2) // longer than the field length?
|
||||||
strtmp.Append(text.Substring(0,frmt2-cnt));
|
strtmp.Append(text.Substring(0,frmt2-cnt));
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -24329,8 +24329,10 @@ BEGIN
|
|||||||
OR FromID in (Select ContentID from tblContents where deletestatus != 0 and ActionDTS < @dte)
|
OR FromID in (Select ContentID from tblContents where deletestatus != 0 and ActionDTS < @dte)
|
||||||
)
|
)
|
||||||
PRINT 'Deleting Items and Parts'
|
PRINT 'Deleting Items and Parts'
|
||||||
|
alter table tblParts nocheck constraint FK_Parts_Items
|
||||||
delete from tblItems where deletestatus != 0 and DTS < @dte
|
delete from tblItems where deletestatus != 0 and DTS < @dte
|
||||||
delete from tblParts where deletestatus != 0 and ItemID Not IN (Select ItemID from Items) and DTS < @dte
|
delete from tblParts where deletestatus != 0 and ItemID Not IN (Select ItemID from Items) and DTS < @dte
|
||||||
|
alter table tblParts check constraint FK_Parts_Items
|
||||||
PRINT 'Purging Parts with deleted Contents'
|
PRINT 'Purging Parts with deleted Contents'
|
||||||
DELETE from Child
|
DELETE from Child
|
||||||
FROM tblParts AS Child
|
FROM tblParts AS Child
|
||||||
@@ -24355,7 +24357,9 @@ BEGIN
|
|||||||
ON Itms.ItemID = tblItems.ItemID AND Itms.deletestatus = tblItems.deletestatus
|
ON Itms.ItemID = tblItems.ItemID AND Itms.deletestatus = tblItems.deletestatus
|
||||||
alter table tblItems check constraint FK_Items_Items
|
alter table tblItems check constraint FK_Items_Items
|
||||||
PRINT 'Purging Contents'
|
PRINT 'Purging Contents'
|
||||||
|
alter table tblEntries nocheck constraint FK_Entries_Contents
|
||||||
delete from tblContents where deletestatus != 0 and ActionDTS < @dte
|
delete from tblContents where deletestatus != 0 and ActionDTS < @dte
|
||||||
|
alter table tblEntries check constraint FK_Entries_Contents
|
||||||
PRINT 'Phase 3'
|
PRINT 'Phase 3'
|
||||||
delete from AnnotationAudits where DTS < @dte
|
delete from AnnotationAudits where DTS < @dte
|
||||||
delete from ContentAudits where DTS < @dte
|
delete from ContentAudits where DTS < @dte
|
||||||
@@ -24766,8 +24770,8 @@ BEGIN TRY -- Try Block
|
|||||||
DECLARE @RevDate varchar(255)
|
DECLARE @RevDate varchar(255)
|
||||||
DECLARE @RevDescription varchar(255)
|
DECLARE @RevDescription varchar(255)
|
||||||
|
|
||||||
set @RevDate = '02/18/2026 7:00 AM'
|
set @RevDate = '03/12/2026 11:00 AM'
|
||||||
set @RevDescription = 'Added Audit Ability for ChangeBars'
|
set @RevDescription = 'Update to Purge Change History Tool'
|
||||||
|
|
||||||
Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription
|
Select cast(@RevDate as datetime) RevDate, @RevDescription RevDescription
|
||||||
PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription
|
PRINT 'SQL Code Revision ' + @RevDate + ' - ' + @RevDescription
|
||||||
|
|||||||
@@ -1668,20 +1668,8 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
Clipboard.Clear();
|
Clipboard.Clear();
|
||||||
|
|
||||||
//Try to update the data object to persist beyond PROMS life
|
|
||||||
//if can't, log it and use old method of scoping clipboard to PROMS life
|
|
||||||
try
|
|
||||||
{
|
|
||||||
// noticed that sometimes the clipboard will get stuck - so set it to retry twice
|
|
||||||
// and if it fails, scope the clipboard to within PROMS
|
|
||||||
Clipboard.SetDataObject(myDO, true, 2, 100); // this saves the cleaned up information to the Windows clipboard
|
|
||||||
}
|
|
||||||
catch (System.Runtime.InteropServices.ExternalException ex)
|
|
||||||
{
|
|
||||||
_MyLog.Warn($"Error Setting Clipboard Object to Persist beyond PROMS. Clipboard will be scoped to PROMS. Error:{ex.Message}");
|
|
||||||
Clipboard.SetDataObject(myDO); // this saves the cleaned up information to the Windows clipboard
|
Clipboard.SetDataObject(myDO); // this saves the cleaned up information to the Windows clipboard
|
||||||
}
|
}
|
||||||
}
|
|
||||||
iData = Clipboard.GetDataObject();
|
iData = Clipboard.GetDataObject();
|
||||||
bool noEquationData = true;
|
bool noEquationData = true;
|
||||||
// part of bug B2017-117 we were running out of window handles when printing, found this similar use of
|
// part of bug B2017-117 we were running out of window handles when printing, found this similar use of
|
||||||
|
|||||||
Reference in New Issue
Block a user