Compare commits
133 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 8388cd59a8 | |||
| 5a09069b08 | |||
| 9e10948e59 | |||
| f8663e038f | |||
| 124cfb14ab | |||
| 4852b7c2c0 | |||
| dd4b08ec2b | |||
| 6aef00ffc6 | |||
| 76eb6fca13 | |||
| 892b84690e | |||
| b0bfb4d3f6 | |||
| af1a05ff40 | |||
| de89200eae | |||
| 7009ca78f2 | |||
| 03c58b7ae3 | |||
| c9166f6f92 | |||
| 343d6a8c9a | |||
| 8c5c7a5d93 | |||
| 864ec2709c | |||
| 4b1ca8d7bf | |||
| 3b73d54ea2 | |||
| 2ca433c83f | |||
| 0b40569727 | |||
| afb0247d87 | |||
| bce8461a7e | |||
| 9d5cc43d71 | |||
| bc1370ab29 | |||
| eaf2b14cfc | |||
| 1cf7d81aa5 | |||
| f11a9536f0 | |||
| c7bdcf0104 | |||
| df026499d5 | |||
| a3aa4157b8 | |||
| 8f3268e1bc | |||
| 5721d440e9 | |||
| 505c396283 | |||
| 643e6bc94f | |||
| 76502e6d97 | |||
| 851a0b3810 | |||
| fd8dbb4c8b | |||
| 4ffd994c5e | |||
| a34828113a | |||
| 461329468c | |||
| 35de5df04d | |||
| 4f0548fd60 | |||
| 5c1d96cc51 | |||
| 57049c0c52 | |||
| 31326e1c91 | |||
| 3c60994a0a | |||
| 773cc42346 | |||
| f46a1f39dc | |||
| b7175bf77f | |||
| ec22232aa8 | |||
| f303cd2236 | |||
| f40cef4416 | |||
| fbca97d38d | |||
| 28bd2cba5c | |||
| 4b35f73bbf | |||
| f4706eb126 | |||
| 21bcb90558 | |||
| ae48ac0cae | |||
| cb4979d5bc | |||
| 7d3ae74e1f | |||
| 9d680aa500 | |||
| 0d50b1c2fe | |||
| 75e034863f | |||
| 3b42de1571 | |||
| 668472286e | |||
| e00d34c99d | |||
| 9fb496dfb3 | |||
| f4eaa4a3ef | |||
| 5d50ed6bdf | |||
| d7ace4eaf9 | |||
| 16a4d335ea | |||
| ba69bb0772 | |||
| 455940caa2 | |||
| 439344757e | |||
| ad912691c9 | |||
| 237144aff6 | |||
| 810332d558 | |||
| f8431d0ba1 | |||
| 57c3bfa16a | |||
| 61f1077608 | |||
| 8877e968b9 | |||
| 4575c90bee | |||
| 21279a87ae | |||
| 3d5ad4a17e | |||
| 9bb7b044a8 | |||
| dc8f2f7561 | |||
| 829dbf84da | |||
| 7b156c17f8 | |||
| cbf7cbc164 | |||
| b04faa816e | |||
| 517ebe2902 | |||
| 03d0d314e3 | |||
| 3e804c5cce | |||
| ee2b8b538e | |||
| fdfd34fe92 | |||
| 2d6fb6523b | |||
| 3084bf3982 | |||
| 5ba51e8392 | |||
| fb5eb43e34 | |||
| b154056276 | |||
| c67b8f9ca1 | |||
| 95e4181360 | |||
| 32dffbe56b | |||
| 6b3c8d373b | |||
| db29107f47 | |||
| 355537f2ab | |||
| 0729ef0c21 | |||
| 6fe82bfd0f | |||
| 39bf072363 | |||
| da7c384fd8 | |||
| 95130fd9a0 | |||
| 978e2344a3 | |||
| c9bf45602c | |||
| aa160b2036 | |||
| f82b32d351 | |||
| e519dc9a57 | |||
| f020c37db9 | |||
| 5a4ec3b6b1 | |||
| 2602d6c9d2 | |||
| ff403583d7 | |||
| c5577cc2bd | |||
| 78be6e5dc1 | |||
| b954a41375 | |||
| 0100a11cfe | |||
| 04cf2e8534 | |||
| be00724818 | |||
| 274d93c61a | |||
| 7dc4c30436 | |||
| 028ef4bc31 | |||
| 42124d65c7 |
File diff suppressed because it is too large
Load Diff
@@ -8,6 +8,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Text.RegularExpressions;
|
||||
using System.Threading;
|
||||
using static System.Net.Mime.MediaTypeNames;
|
||||
|
||||
|
||||
namespace VEPROMS.CSLA.Library
|
||||
@@ -60,8 +61,7 @@ namespace VEPROMS.CSLA.Library
|
||||
#region Structs / Internal Classes
|
||||
|
||||
[Serializable]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE1006:Naming Styles", Justification = "Keep Older Pre-existing naming conventions")]
|
||||
public struct roHdr
|
||||
public struct roHdr
|
||||
{
|
||||
public int hSize;
|
||||
public int hYear;
|
||||
@@ -78,8 +78,7 @@ namespace VEPROMS.CSLA.Library
|
||||
};
|
||||
|
||||
[Serializable]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE1006:Naming Styles", Justification = "Keep Older Pre-existing naming conventions")]
|
||||
public struct rodbi
|
||||
public struct rodbi
|
||||
{
|
||||
public int dbiID;
|
||||
public int dbiType;
|
||||
@@ -92,8 +91,7 @@ namespace VEPROMS.CSLA.Library
|
||||
};
|
||||
|
||||
[Serializable]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE1006:Naming Styles", Justification = "Keep Older Pre-existing naming conventions")]
|
||||
public struct rogrp
|
||||
public struct rogrp
|
||||
{
|
||||
public string value;
|
||||
public string appid;
|
||||
@@ -104,8 +102,7 @@ namespace VEPROMS.CSLA.Library
|
||||
};
|
||||
|
||||
[Serializable]
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE1006:Naming Styles", Justification = "Keep Older Pre-existing naming conventions")]
|
||||
public struct rochild
|
||||
public struct rochild
|
||||
{
|
||||
public int ID;
|
||||
public int ParentID;
|
||||
@@ -136,7 +133,7 @@ namespace VEPROMS.CSLA.Library
|
||||
private List<string> _baseAccPageKeys;
|
||||
|
||||
// RofstLookup/Conversion Variables
|
||||
private readonly int _rofstID;
|
||||
private int _rofstID;
|
||||
private DocVersionInfo _myDocVersionInfo;
|
||||
private int _selectedSlave;
|
||||
private string _otherChild = string.Empty;
|
||||
@@ -152,7 +149,7 @@ namespace VEPROMS.CSLA.Library
|
||||
// B2022-107: Display Progress Bar Messages/Statuses when a new ROFST binary file is loaded into the database
|
||||
private frmRofstLoadStatus _frmRofstLoadStatus = null;
|
||||
private Dictionary<int, int> _dicRoCounts = null;
|
||||
private readonly bool _showLoadingStatus = true;
|
||||
private bool _showLoadingStatus = true;
|
||||
|
||||
private int _curRoCnt = 0;
|
||||
private int _dbRoCnt = 0;
|
||||
@@ -417,6 +414,7 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
ROFSTLookup.rochild rc = RofstDataGetChildByAccPageID(_rofstID, accPageBase);
|
||||
|
||||
//if (rc.ID >=0 && rc.roid.Length < 16 && Regex.IsMatch(accPageKey, @".*\.[A-Z]") && rc.children != null && rc.children.Count() > 0)
|
||||
if (rc.ID >= 0 && rc.roid.Length < 16 && !string.IsNullOrEmpty(accPageExt) && rc.children != null && rc.children.Count() > 0)
|
||||
{
|
||||
// Check if AccPageID/Key has a return value specific extension. Try to find the RoChild record with the specific return value type,
|
||||
@@ -509,6 +507,8 @@ namespace VEPROMS.CSLA.Library
|
||||
// B2023-037: Handle <=, >=, +-, -> and <- symbols. Convert to unicode for output, i.e. print and edit/view (when editing
|
||||
// step, will show as 2 characters, not unicode, unless ro inserted when code replaced link text with unicode.
|
||||
|
||||
//(_MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.UseDashGreaterLessThenForArrowsInROValue ||
|
||||
// _MyItemInfo.ActiveFormat.PlantFormat.FormatData.SectData.ConvertGTELTEPMinROValue))
|
||||
bool arrows1 = myiteminfo.ActiveFormat.PlantFormat.FormatData.SectData.UseDashGreaterLessThenForArrowsInROValue;
|
||||
bool arrows2 = myiteminfo.ActiveFormat.PlantFormat.FormatData.SectData.ConvertGTELTEPMinROValue;
|
||||
|
||||
@@ -681,10 +681,11 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
if (minutes > 0) duration = string.Format("{0} min(s) ", minutes.ToString("n0"));
|
||||
if (secs < 0) secs = 0.00;
|
||||
duration += string.Format("{0,10:#####0.00} sec(s)", secs).Trim();
|
||||
duration = duration + string.Format("{0,10:#####0.00} sec(s)", secs).Trim();
|
||||
|
||||
return duration;
|
||||
|
||||
//return string.Format("{0,10:#####0.00}", TimeSpan.FromTicks(DateTime.Now.Ticks - dtStart.Ticks).TotalSeconds);
|
||||
}
|
||||
|
||||
//C2026-008 Re-Architect RO.FST to include RO Modification date/time
|
||||
@@ -1474,22 +1475,21 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.roHdr ConvertFst2Objects(byte[] ab)
|
||||
{
|
||||
ROFSTLookup.roHdr roh = new ROFSTLookup.roHdr
|
||||
{
|
||||
hSize = BitConverter.ToInt32(ab, 0),
|
||||
hYear = BitConverter.ToInt16(ab, 4),
|
||||
hMonth = ab[6],
|
||||
hDay = ab[7],
|
||||
hcYear = BitConverter.ToInt16(ab, 8),
|
||||
hcMonth = ab[10],
|
||||
hcDay = ab[11],
|
||||
hcHour = ab[12],
|
||||
hcMin = ab[13],
|
||||
hcSec = ab[14],
|
||||
hcHund = ab[15]
|
||||
};
|
||||
ROFSTLookup.roHdr roh = new ROFSTLookup.roHdr();
|
||||
|
||||
int hdrOffset = BitConverter.ToInt32(ab, 16);
|
||||
roh.hSize = BitConverter.ToInt32(ab, 0);
|
||||
roh.hYear = BitConverter.ToInt16(ab, 4);
|
||||
roh.hMonth = ab[6];
|
||||
roh.hDay = ab[7];
|
||||
roh.hcYear = BitConverter.ToInt16(ab, 8);
|
||||
roh.hcMonth = ab[10];
|
||||
roh.hcDay = ab[11];
|
||||
roh.hcHour = ab[12];
|
||||
roh.hcMin = ab[13];
|
||||
roh.hcSec = ab[14];
|
||||
roh.hcHund = ab[15];
|
||||
|
||||
int hdrOffset = BitConverter.ToInt32(ab, 16);
|
||||
int dbs = BitConverter.ToInt16(ab, hdrOffset + 4);
|
||||
|
||||
roh.myDbs = new ROFSTLookup.rodbi[dbs];
|
||||
@@ -1525,13 +1525,12 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.rogrp LoadGroup(byte[] ab, int offset, int tableID)
|
||||
{
|
||||
ROFSTLookup.rogrp myGrp = new ROFSTLookup.rogrp
|
||||
{
|
||||
ID = BitConverter.ToInt32(ab, offset),
|
||||
ParentID = BitConverter.ToInt32(ab, offset + 4)
|
||||
};
|
||||
ROFSTLookup.rogrp myGrp = new ROFSTLookup.rogrp();
|
||||
|
||||
int numChildren = BitConverter.ToInt16(ab, offset + 8);
|
||||
myGrp.ID = BitConverter.ToInt32(ab, offset);
|
||||
myGrp.ParentID = BitConverter.ToInt32(ab, offset + 4);
|
||||
|
||||
int numChildren = BitConverter.ToInt16(ab, offset + 8);
|
||||
|
||||
if (numChildren > 0)
|
||||
{
|
||||
@@ -1661,7 +1660,7 @@ namespace VEPROMS.CSLA.Library
|
||||
}
|
||||
|
||||
// Update Progress Bar Accordingly
|
||||
if (_totalRoCnt > 0) _pctComplete += ((Convert.ToDouble(_dbRoCnt) / Convert.ToDouble(_totalRoCnt)) * 80.0);
|
||||
if (_totalRoCnt > 0) _pctComplete = _pctComplete + ((Convert.ToDouble(_dbRoCnt) / Convert.ToDouble(_totalRoCnt)) * 80.0);
|
||||
|
||||
OnProgressChanged(displayText, Convert.ToInt32(_pctComplete), 100);
|
||||
}
|
||||
@@ -1721,13 +1720,15 @@ namespace VEPROMS.CSLA.Library
|
||||
protected virtual void OnProgressChanged(string title, string displayText, int curVal = 0, int maxVal = 100)
|
||||
{
|
||||
// If frmRofstLoadStatus is not null then call Update Progress Method
|
||||
_frmRofstLoadStatus?.UpdateProgress(title, displayText, curVal, maxVal);
|
||||
if (_frmRofstLoadStatus != null)
|
||||
_frmRofstLoadStatus.UpdateProgress(title, displayText, curVal, maxVal);
|
||||
}
|
||||
|
||||
protected virtual void OnProgressChanged(string displayText, int curVal = 0, int maxVal = 100)
|
||||
{
|
||||
// If frmRofstLoadStatus is not null then call Update Progress Method
|
||||
_frmRofstLoadStatus?.UpdateProgress(_frmRofstLoadStatus.Title, displayText, curVal, maxVal);
|
||||
if (_frmRofstLoadStatus != null)
|
||||
_frmRofstLoadStatus.UpdateProgress(_frmRofstLoadStatus.Title, displayText, curVal, maxVal);
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -1738,22 +1739,21 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.roHdr ConvertToRoHdrObject(SafeDataReader dr, bool loadChildren)
|
||||
{
|
||||
ROFSTLookup.roHdr rh = new ROFSTLookup.roHdr
|
||||
{
|
||||
hSize = (int)dr.GetValue("hSize"),
|
||||
hYear = (int)dr.GetValue("hYear"),
|
||||
hMonth = (byte)dr.GetValue("hMonth"),
|
||||
hDay = (byte)dr.GetValue("hDay"),
|
||||
hcYear = (int)dr.GetValue("hcYear"),
|
||||
hcMonth = (byte)dr.GetValue("hcMonth"),
|
||||
hcDay = (byte)dr.GetValue("hcDay"),
|
||||
hcHour = (byte)dr.GetValue("hcHour"),
|
||||
hcMin = (byte)dr.GetValue("hcMin"),
|
||||
hcSec = (byte)dr.GetValue("hcSec"),
|
||||
hcHund = (byte)dr.GetValue("hcHund")
|
||||
};
|
||||
ROFSTLookup.roHdr rh = new ROFSTLookup.roHdr();
|
||||
|
||||
if (loadChildren)
|
||||
rh.hSize = (int)dr.GetValue("hSize");
|
||||
rh.hYear = (int)dr.GetValue("hYear");
|
||||
rh.hMonth = (byte)dr.GetValue("hMonth");
|
||||
rh.hDay = (byte)dr.GetValue("hDay");
|
||||
rh.hcYear = (int)dr.GetValue("hcYear");
|
||||
rh.hcMonth = (byte)dr.GetValue("hcMonth");
|
||||
rh.hcDay = (byte)dr.GetValue("hcDay");
|
||||
rh.hcHour = (byte)dr.GetValue("hcHour");
|
||||
rh.hcMin = (byte)dr.GetValue("hcMin");
|
||||
rh.hcSec = (byte)dr.GetValue("hcSec");
|
||||
rh.hcHund = (byte)dr.GetValue("hcHund");
|
||||
|
||||
if (loadChildren)
|
||||
{
|
||||
rh.myDbs = RofstDataGetDatabases(_rofstID);
|
||||
}
|
||||
@@ -1763,18 +1763,17 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.rodbi ConvertToRodbiObject(SafeDataReader dr, bool loadChildren, bool loadAllChildren)
|
||||
{
|
||||
ROFSTLookup.rodbi rd = new ROFSTLookup.rodbi
|
||||
{
|
||||
dbiID = (int)dr.GetValue("dbiID"),
|
||||
dbiType = (int)dr.GetValue("dbiType"),
|
||||
dbiAW = (int)dr.GetValue("dbiAW"),
|
||||
dbiAP = (string)dr.GetValue("dbiAP"),
|
||||
dbiTitle = (string)dr.GetValue("dbiTitle"),
|
||||
ID = (int)dr.GetValue("ID"),
|
||||
ParentID = (int)dr.GetValue("ParentID")
|
||||
};
|
||||
ROFSTLookup.rodbi rd = new ROFSTLookup.rodbi();
|
||||
|
||||
if (loadChildren || loadAllChildren)
|
||||
rd.dbiID = (int)dr.GetValue("dbiID");
|
||||
rd.dbiType = (int)dr.GetValue("dbiType");
|
||||
rd.dbiAW = (int)dr.GetValue("dbiAW");
|
||||
rd.dbiAP = (string)dr.GetValue("dbiAP");
|
||||
rd.dbiTitle = (string)dr.GetValue("dbiTitle");
|
||||
rd.ID = (int)dr.GetValue("ID");
|
||||
rd.ParentID = (int)dr.GetValue("ParentID");
|
||||
|
||||
if (loadChildren || loadAllChildren)
|
||||
{
|
||||
rd.children = RofstDataGetChildrenByID(_rofstID, rd.dbiID, rd.ID, false, loadAllChildren);
|
||||
}
|
||||
@@ -1784,16 +1783,15 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.rochild ConvertToRochildObject(SafeDataReader dr, bool loadChildren, bool loadAllChildren)
|
||||
{
|
||||
ROFSTLookup.rochild rc = new ROFSTLookup.rochild
|
||||
{
|
||||
ID = (int)dr.GetValue("ID"),
|
||||
ParentID = (int)dr.GetValue("ParentID"),
|
||||
type = (int)dr.GetValue("type"),
|
||||
title = (string)dr.GetValue("title"),
|
||||
roid = (string)dr.GetValue("roid")
|
||||
};
|
||||
ROFSTLookup.rochild rc = new ROFSTLookup.rochild();
|
||||
|
||||
if (!string.IsNullOrEmpty((string)dr.GetValue("appid")))
|
||||
rc.ID = (int)dr.GetValue("ID");
|
||||
rc.ParentID = (int)dr.GetValue("ParentID");
|
||||
rc.type = (int)dr.GetValue("type");
|
||||
rc.title = (string)dr.GetValue("title");
|
||||
rc.roid = (string)dr.GetValue("roid");
|
||||
|
||||
if (!string.IsNullOrEmpty((string)dr.GetValue("appid")))
|
||||
{
|
||||
rc.appid = (string)dr.GetValue("AccPageID");
|
||||
|
||||
@@ -1813,14 +1811,13 @@ namespace VEPROMS.CSLA.Library
|
||||
|
||||
private ROFSTLookup.RoExtension ConvertToRoExtensionObject(SafeDataReader dr)
|
||||
{
|
||||
ROFSTLookup.RoExtension re = new ROFSTLookup.RoExtension
|
||||
{
|
||||
Offset = (int)dr.GetValue("Offset"),
|
||||
RoidExt = (string)dr.GetValue("RoidExt"),
|
||||
AccPageExt = (string)dr.GetValue("AccPageExt")
|
||||
};
|
||||
ROFSTLookup.RoExtension re = new ROFSTLookup.RoExtension();
|
||||
|
||||
return re;
|
||||
re.Offset = (int)dr.GetValue("Offset");
|
||||
re.RoidExt = (string)dr.GetValue("RoidExt");
|
||||
re.AccPageExt = (string)dr.GetValue("AccPageExt");
|
||||
|
||||
return re;
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -1878,6 +1875,7 @@ namespace VEPROMS.CSLA.Library
|
||||
// Instead of returning the RoChildBase object with a single RoReturnVal object attached, just return the single Ro ReturnValue object.
|
||||
var roRetVal = child.children.First();
|
||||
|
||||
//child.title = roRetVal.title;
|
||||
child.appid = roRetVal.appid;
|
||||
child.roid = roRetVal.roid;
|
||||
child.value = roRetVal.value;
|
||||
@@ -2131,71 +2129,44 @@ namespace VEPROMS.CSLA.Library
|
||||
return ProcessRO(match, multiRtnVal);
|
||||
}
|
||||
|
||||
// Takes the RO text value and sees if a macro has been used.
|
||||
// If so it will perform the macro operation on the substring in the text value
|
||||
// Note** Right now the only macro is @HSP(), where every space between the "(" and ")" will be replaced with a hard space
|
||||
private static string ProcessMacros(string str)
|
||||
{
|
||||
private string ProcessMacros(string str)
|
||||
{
|
||||
// Takes the RO text value and sees if a macro has been used.
|
||||
// If so it will perform the macro operation on the substring in the text value
|
||||
// Note** Right now the only macro is @HSP(), where every space between the "(" and ")" will be replaced with a hard space
|
||||
|
||||
if (string.IsNullOrEmpty(str) || str.ToUpper().IndexOf("@HSP(") < 0)
|
||||
return str;
|
||||
if (string.IsNullOrEmpty(str))
|
||||
return str;
|
||||
|
||||
string rtnstr = str;
|
||||
int indx;
|
||||
|
||||
string processingstr = str; //holds current string being processed
|
||||
int indx; //current position of @HSP( in string
|
||||
int endpos = 0; //end of last parens
|
||||
while ((indx = rtnstr.ToUpper().IndexOf("@HSP(")) > -1)
|
||||
{
|
||||
string resstr = rtnstr.Substring(0, indx);
|
||||
int endHsp = rtnstr.IndexOf(")", indx);
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
Stack<char> endparens = new Stack<char>();
|
||||
//B2026 - 002 handle if parens inside a HSP
|
||||
int startpos = indx + 5;
|
||||
while (rtnstr.Substring(startpos, endHsp - startpos).Contains("("))
|
||||
{
|
||||
startpos = rtnstr.IndexOf("(", startpos + 1, endHsp - startpos) + 1;
|
||||
endHsp = rtnstr.IndexOf(")", endHsp + 1);
|
||||
}
|
||||
|
||||
while ((indx = processingstr.ToUpper().IndexOf("@HSP(")) > -1)
|
||||
{
|
||||
sb.Append(processingstr.Substring(0, indx)); // initial string before @HSP(
|
||||
string tmpstr = rtnstr.Substring(indx + 5, endHsp - indx - 5);
|
||||
|
||||
for (int i = indx + 5; i < processingstr.Length; i++)
|
||||
{
|
||||
char ch = processingstr[i];
|
||||
// B2017-012 Don't convert space to hard spaces for XY Plots.
|
||||
if (!tmpstr.Contains("<<G")) tmpstr = tmpstr.Replace(" ", @"\u160?");
|
||||
|
||||
if (ch == '(')
|
||||
{
|
||||
//if opening paren inside HSP add it to the stack to look for a closing parens
|
||||
endparens.Push(ch);
|
||||
}
|
||||
else if (ch == ')' && endparens.Count > 0)
|
||||
{
|
||||
//if cloing parens and it matches an opening parens inside of HSP, remove a level
|
||||
_ = endparens.Pop();
|
||||
}
|
||||
else if (ch == ')' && endparens.Count == 0)
|
||||
{
|
||||
//if closing parens and at same level as HSP, break out since found correct closing parens
|
||||
endpos = i;
|
||||
break;
|
||||
}
|
||||
else if (i == processingstr.Length - 1)
|
||||
{
|
||||
//if hit the end of the string and no matching closing parens found, take to the end of the string
|
||||
endpos = processingstr.Length;
|
||||
}
|
||||
}
|
||||
resstr = resstr + tmpstr;
|
||||
rtnstr = resstr + rtnstr.Substring(endHsp + 1);
|
||||
}
|
||||
|
||||
//Add the text inside the @HSP(...)
|
||||
string tmpstr = processingstr.Substring(indx + 5, endpos - indx - 5);
|
||||
// B2017-012 Don't convert space to hard spaces for XY Plots.
|
||||
if (!tmpstr.Contains("<<G")) tmpstr = tmpstr.Replace(" ", @"\u160?");
|
||||
sb.Append(tmpstr);
|
||||
return rtnstr;
|
||||
}
|
||||
|
||||
//Set the processing string to after the ending parens found in case multiple @HSP
|
||||
processingstr = endpos + 1 >= processingstr.Length ? "" : processingstr.Substring(endpos + 1);
|
||||
}
|
||||
|
||||
//add text after last end parens
|
||||
sb.Append(processingstr);
|
||||
|
||||
return sb.ToString();
|
||||
}
|
||||
|
||||
private int StringLength(byte[] ab, int offset)
|
||||
private int StringLength(byte[] ab, int offset)
|
||||
{
|
||||
int i = 0;
|
||||
while (ab[i + offset] != 0) i++;
|
||||
@@ -2304,7 +2275,7 @@ namespace VEPROMS.CSLA.Library
|
||||
{
|
||||
rc.roid = FormatRoidKey(roid).Substring(0, 12);
|
||||
|
||||
DocVersionConfig dvc = _myDocVersionInfo?.DocVersionConfig;
|
||||
DocVersionConfig dvc = (_myDocVersionInfo != null) ? _myDocVersionInfo.DocVersionConfig : null;
|
||||
if (dvc != null) dvc.SelectedSlave = this.SelectedSlave;
|
||||
|
||||
switch (rc.roid)
|
||||
@@ -2312,49 +2283,49 @@ namespace VEPROMS.CSLA.Library
|
||||
case "FFFF00000001":
|
||||
rc.title = "Number";
|
||||
rc.appid = "U-NUMBER";
|
||||
rc.value = dvc?.Unit_Number;
|
||||
rc.value = (dvc != null) ? dvc.Unit_Number : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000002":
|
||||
rc.title = "Other Number";
|
||||
rc.appid = "U-OTHERNUMBER";
|
||||
rc.value = dvc?.Other_Unit_Number;
|
||||
rc.value = (dvc != null) ? dvc.Other_Unit_Number : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000003":
|
||||
rc.title = "Text";
|
||||
rc.appid = "U-TEXT";
|
||||
rc.value = dvc?.Unit_Text;
|
||||
rc.value = (dvc != null) ? dvc.Unit_Text : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000004":
|
||||
rc.title = "Other Text";
|
||||
rc.appid = "U-OTHERTEXT";
|
||||
rc.value = dvc?.Other_Unit_Text;
|
||||
rc.value = (dvc != null) ? dvc.Other_Unit_Text : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000005":
|
||||
rc.title = "ID";
|
||||
rc.appid = "U-ID";
|
||||
rc.value = dvc?.Unit_ID;
|
||||
rc.value = (dvc != null) ? dvc.Unit_ID : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000006":
|
||||
rc.title = "Other ID";
|
||||
rc.appid = "U-OTHERID";
|
||||
rc.value = dvc?.Other_Unit_ID;
|
||||
rc.value = (dvc != null) ? dvc.Other_Unit_ID : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000007":
|
||||
rc.title = "Name";
|
||||
rc.appid = "U-NAME";
|
||||
rc.value = dvc?.Unit_Name;
|
||||
rc.value = (dvc != null) ? dvc.Unit_Name : null;
|
||||
break;
|
||||
|
||||
case "FFFF00000008":
|
||||
rc.title = "Other Name";
|
||||
rc.appid = "U-OTHERNAME";
|
||||
rc.value = dvc?.Other_Unit_Name;
|
||||
rc.value = (dvc != null) ? dvc.Other_Unit_Name : null;
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -4113,10 +4113,7 @@ namespace VEPROMS.CSLA.Library
|
||||
// date). Print_ViewableAfterChangeBarDate was created to get only that user specified date, if it exists. If it does exist, we compare
|
||||
// that with the Content datetime, otherwise we proceed as before.
|
||||
DateTime? viewableStartingDateTime = (MyProcedure.MyConfig as ProcedureConfig).Print_ViewableStartingChangeBarDate;
|
||||
// B2026-060 & B2026-061 removed the check of SelectedSlave (aka the selected child) from the IF statement,
|
||||
// This was causing some step to print with change bars when there should not have been - because of the use of
|
||||
// the Show Change Bars After date. The logic we need is built into the get of ChangeBarDate and Print_ViewableStartingChangeBarDate.
|
||||
if (viewableStartingDateTime != null && viewableStartingDateTime > MyProcedure.ChangeBarDate)
|
||||
if (viewableStartingDateTime != null && viewableStartingDateTime > MyProcedure.ChangeBarDate && (MyProcedure.MyConfig as ProcedureConfig).SelectedSlave == 0)
|
||||
return (MyContent.DTS > viewableStartingDateTime);
|
||||
return (MyContent.DTS > MyProcedure.ChangeBarDate);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user