Added checkbox to sort Complete or Summary RO report on setpoint id and logic to sort by setpoint ID
Added status message for report generation. Added logic to handle underline on/off (using the _ character).
This commit is contained in:
parent
f9992cd299
commit
f50e7d11b4
203
PROMS/Volian.Controls.Library/DisplayReports.Designer.cs
generated
203
PROMS/Volian.Controls.Library/DisplayReports.Designer.cs
generated
@ -30,6 +30,11 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
this.components = new System.ComponentModel.Container();
|
this.components = new System.ComponentModel.Container();
|
||||||
this.tctrlReports = new DevComponents.DotNetBar.TabControl();
|
this.tctrlReports = new DevComponents.DotNetBar.TabControl();
|
||||||
|
this.tabControlPanel1 = new DevComponents.DotNetBar.TabControlPanel();
|
||||||
|
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
|
||||||
|
this.cbxTransToProcs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
||||||
|
this.cbxTransFromProcs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
||||||
|
this.tabTransitionReports = new DevComponents.DotNetBar.TabItem(this.components);
|
||||||
this.tabControlPanel2 = new DevComponents.DotNetBar.TabControlPanel();
|
this.tabControlPanel2 = new DevComponents.DotNetBar.TabControlPanel();
|
||||||
this.panRORpts = new DevComponents.DotNetBar.PanelEx();
|
this.panRORpts = new DevComponents.DotNetBar.PanelEx();
|
||||||
this.cbxIncldMissingROs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
this.cbxIncldMissingROs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
||||||
@ -41,11 +46,6 @@ namespace Volian.Controls.Library
|
|||||||
this.cbiRO = new DevComponents.Editors.ComboItem();
|
this.cbiRO = new DevComponents.Editors.ComboItem();
|
||||||
this.cbiProc = new DevComponents.Editors.ComboItem();
|
this.cbiProc = new DevComponents.Editors.ComboItem();
|
||||||
this.tabROReports = new DevComponents.DotNetBar.TabItem(this.components);
|
this.tabROReports = new DevComponents.DotNetBar.TabItem(this.components);
|
||||||
this.tabControlPanel1 = new DevComponents.DotNetBar.TabControlPanel();
|
|
||||||
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
|
|
||||||
this.cbxTransToProcs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
|
||||||
this.cbxTransFromProcs = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
|
||||||
this.tabTransitionReports = new DevComponents.DotNetBar.TabItem(this.components);
|
|
||||||
this.advTreeRO = new DevComponents.AdvTree.AdvTree();
|
this.advTreeRO = new DevComponents.AdvTree.AdvTree();
|
||||||
this.elementStyle2 = new DevComponents.DotNetBar.ElementStyle();
|
this.elementStyle2 = new DevComponents.DotNetBar.ElementStyle();
|
||||||
this.node2 = new DevComponents.AdvTree.Node();
|
this.node2 = new DevComponents.AdvTree.Node();
|
||||||
@ -58,12 +58,13 @@ namespace Volian.Controls.Library
|
|||||||
this.btnPrintReport = new DevComponents.DotNetBar.ButtonX();
|
this.btnPrintReport = new DevComponents.DotNetBar.ButtonX();
|
||||||
this.xpSelROs = new DevComponents.DotNetBar.ExpandablePanel();
|
this.xpSelROs = new DevComponents.DotNetBar.ExpandablePanel();
|
||||||
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
|
||||||
|
this.cbxSortBySetpointID = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.tctrlReports)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.tctrlReports)).BeginInit();
|
||||||
this.tctrlReports.SuspendLayout();
|
this.tctrlReports.SuspendLayout();
|
||||||
this.tabControlPanel2.SuspendLayout();
|
|
||||||
this.panRORpts.SuspendLayout();
|
|
||||||
this.tabControlPanel1.SuspendLayout();
|
this.tabControlPanel1.SuspendLayout();
|
||||||
this.panelEx1.SuspendLayout();
|
this.panelEx1.SuspendLayout();
|
||||||
|
this.tabControlPanel2.SuspendLayout();
|
||||||
|
this.panRORpts.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.advTreeRO)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.advTreeRO)).BeginInit();
|
||||||
this.xpSetToReport.SuspendLayout();
|
this.xpSetToReport.SuspendLayout();
|
||||||
((System.ComponentModel.ISupportInitialize)(this.advTreeProcSets)).BeginInit();
|
((System.ComponentModel.ISupportInitialize)(this.advTreeProcSets)).BeginInit();
|
||||||
@ -75,8 +76,8 @@ namespace Volian.Controls.Library
|
|||||||
this.tctrlReports.CanReorderTabs = false;
|
this.tctrlReports.CanReorderTabs = false;
|
||||||
this.tctrlReports.CloseButtonOnTabsAlwaysDisplayed = false;
|
this.tctrlReports.CloseButtonOnTabsAlwaysDisplayed = false;
|
||||||
this.tctrlReports.CloseButtonPosition = DevComponents.DotNetBar.eTabCloseButtonPosition.Right;
|
this.tctrlReports.CloseButtonPosition = DevComponents.DotNetBar.eTabCloseButtonPosition.Right;
|
||||||
this.tctrlReports.Controls.Add(this.tabControlPanel1);
|
|
||||||
this.tctrlReports.Controls.Add(this.tabControlPanel2);
|
this.tctrlReports.Controls.Add(this.tabControlPanel2);
|
||||||
|
this.tctrlReports.Controls.Add(this.tabControlPanel1);
|
||||||
this.tctrlReports.Dock = System.Windows.Forms.DockStyle.Top;
|
this.tctrlReports.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
this.tctrlReports.Location = new System.Drawing.Point(0, 0);
|
this.tctrlReports.Location = new System.Drawing.Point(0, 0);
|
||||||
this.tctrlReports.Margin = new System.Windows.Forms.Padding(2);
|
this.tctrlReports.Margin = new System.Windows.Forms.Padding(2);
|
||||||
@ -94,6 +95,88 @@ namespace Volian.Controls.Library
|
|||||||
this.tctrlReports.Text = "tabControl1";
|
this.tctrlReports.Text = "tabControl1";
|
||||||
this.tctrlReports.ThemeAware = true;
|
this.tctrlReports.ThemeAware = true;
|
||||||
//
|
//
|
||||||
|
// tabControlPanel1
|
||||||
|
//
|
||||||
|
this.tabControlPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Windows7;
|
||||||
|
this.tabControlPanel1.Controls.Add(this.panelEx1);
|
||||||
|
this.tabControlPanel1.Location = new System.Drawing.Point(0, 22);
|
||||||
|
this.tabControlPanel1.Name = "tabControlPanel1";
|
||||||
|
this.tabControlPanel1.Padding = new System.Windows.Forms.Padding(1);
|
||||||
|
this.tabControlPanel1.Size = new System.Drawing.Size(261, 82);
|
||||||
|
this.tabControlPanel1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(253)))), ((int)(((byte)(254)))));
|
||||||
|
this.tabControlPanel1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(157)))), ((int)(((byte)(188)))), ((int)(((byte)(227)))));
|
||||||
|
this.tabControlPanel1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
||||||
|
this.tabControlPanel1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(146)))), ((int)(((byte)(165)))), ((int)(((byte)(199)))));
|
||||||
|
this.tabControlPanel1.Style.BorderSide = ((DevComponents.DotNetBar.eBorderSide)(((DevComponents.DotNetBar.eBorderSide.Left | DevComponents.DotNetBar.eBorderSide.Right)
|
||||||
|
| DevComponents.DotNetBar.eBorderSide.Bottom)));
|
||||||
|
this.tabControlPanel1.Style.GradientAngle = 90;
|
||||||
|
this.tabControlPanel1.TabIndex = 1;
|
||||||
|
this.tabControlPanel1.TabItem = this.tabTransitionReports;
|
||||||
|
//
|
||||||
|
// panelEx1
|
||||||
|
//
|
||||||
|
this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control;
|
||||||
|
this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
||||||
|
this.panelEx1.Controls.Add(this.cbxTransToProcs);
|
||||||
|
this.panelEx1.Controls.Add(this.cbxTransFromProcs);
|
||||||
|
this.panelEx1.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.panelEx1.Location = new System.Drawing.Point(1, 1);
|
||||||
|
this.panelEx1.Name = "panelEx1";
|
||||||
|
this.panelEx1.Size = new System.Drawing.Size(259, 81);
|
||||||
|
this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||||
|
this.panelEx1.Style.BackColor1.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground;
|
||||||
|
this.panelEx1.Style.BackColor2.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2;
|
||||||
|
this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
||||||
|
this.panelEx1.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
|
||||||
|
this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
|
||||||
|
this.panelEx1.Style.GradientAngle = 90;
|
||||||
|
this.panelEx1.TabIndex = 2;
|
||||||
|
this.panelEx1.ThemeAware = true;
|
||||||
|
//
|
||||||
|
// cbxTransToProcs
|
||||||
|
//
|
||||||
|
this.cbxTransToProcs.BackColor = System.Drawing.Color.Transparent;
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
this.cbxTransToProcs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||||
|
this.cbxTransToProcs.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton;
|
||||||
|
this.cbxTransToProcs.Checked = true;
|
||||||
|
this.cbxTransToProcs.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||||
|
this.cbxTransToProcs.CheckValue = "Y";
|
||||||
|
this.cbxTransToProcs.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.cbxTransToProcs.Location = new System.Drawing.Point(3, 3);
|
||||||
|
this.cbxTransToProcs.Name = "cbxTransToProcs";
|
||||||
|
this.cbxTransToProcs.Size = new System.Drawing.Size(257, 23);
|
||||||
|
this.cbxTransToProcs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||||
|
this.cbxTransToProcs.TabIndex = 0;
|
||||||
|
this.cbxTransToProcs.Text = "Transitions To Selected Procedure(s)";
|
||||||
|
this.cbxTransToProcs.CheckedChanged += new System.EventHandler(this.cbxTransToProcs_CheckedChanged);
|
||||||
|
//
|
||||||
|
// cbxTransFromProcs
|
||||||
|
//
|
||||||
|
this.cbxTransFromProcs.BackColor = System.Drawing.Color.Transparent;
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
this.cbxTransFromProcs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||||
|
this.cbxTransFromProcs.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton;
|
||||||
|
this.cbxTransFromProcs.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||||
|
this.cbxTransFromProcs.Location = new System.Drawing.Point(2, 32);
|
||||||
|
this.cbxTransFromProcs.Name = "cbxTransFromProcs";
|
||||||
|
this.cbxTransFromProcs.Size = new System.Drawing.Size(257, 23);
|
||||||
|
this.cbxTransFromProcs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||||
|
this.cbxTransFromProcs.TabIndex = 1;
|
||||||
|
this.cbxTransFromProcs.Text = "Transitions From Selected Procedure(s)";
|
||||||
|
this.cbxTransFromProcs.CheckedChanged += new System.EventHandler(this.cbxTransFromProcs_CheckedChanged);
|
||||||
|
//
|
||||||
|
// tabTransitionReports
|
||||||
|
//
|
||||||
|
this.tabTransitionReports.AttachedControl = this.tabControlPanel1;
|
||||||
|
this.tabTransitionReports.Name = "tabTransitionReports";
|
||||||
|
this.tabTransitionReports.Text = "Transitions";
|
||||||
|
this.tabTransitionReports.Click += new System.EventHandler(this.tabTransitionReports_Click);
|
||||||
|
//
|
||||||
// tabControlPanel2
|
// tabControlPanel2
|
||||||
//
|
//
|
||||||
this.tabControlPanel2.Controls.Add(this.panRORpts);
|
this.tabControlPanel2.Controls.Add(this.panRORpts);
|
||||||
@ -116,6 +199,7 @@ namespace Volian.Controls.Library
|
|||||||
//
|
//
|
||||||
this.panRORpts.CanvasColor = System.Drawing.SystemColors.Control;
|
this.panRORpts.CanvasColor = System.Drawing.SystemColors.Control;
|
||||||
this.panRORpts.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
this.panRORpts.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
||||||
|
this.panRORpts.Controls.Add(this.cbxSortBySetpointID);
|
||||||
this.panRORpts.Controls.Add(this.cbxIncldMissingROs);
|
this.panRORpts.Controls.Add(this.cbxIncldMissingROs);
|
||||||
this.panRORpts.Controls.Add(this.cbxSummary);
|
this.panRORpts.Controls.Add(this.cbxSummary);
|
||||||
this.panRORpts.Controls.Add(this.cbxROUsage);
|
this.panRORpts.Controls.Add(this.cbxROUsage);
|
||||||
@ -142,7 +226,7 @@ namespace Volian.Controls.Library
|
|||||||
//
|
//
|
||||||
//
|
//
|
||||||
this.cbxIncldMissingROs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
this.cbxIncldMissingROs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||||
this.cbxIncldMissingROs.Location = new System.Drawing.Point(7, 61);
|
this.cbxIncldMissingROs.Location = new System.Drawing.Point(3, 68);
|
||||||
this.cbxIncldMissingROs.Name = "cbxIncldMissingROs";
|
this.cbxIncldMissingROs.Name = "cbxIncldMissingROs";
|
||||||
this.cbxIncldMissingROs.Size = new System.Drawing.Size(241, 23);
|
this.cbxIncldMissingROs.Size = new System.Drawing.Size(241, 23);
|
||||||
this.cbxIncldMissingROs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
this.cbxIncldMissingROs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||||
@ -243,88 +327,6 @@ namespace Volian.Controls.Library
|
|||||||
this.tabROReports.Text = "Referenced Objects";
|
this.tabROReports.Text = "Referenced Objects";
|
||||||
this.tabROReports.Click += new System.EventHandler(this.tabROReports_Click);
|
this.tabROReports.Click += new System.EventHandler(this.tabROReports_Click);
|
||||||
//
|
//
|
||||||
// tabControlPanel1
|
|
||||||
//
|
|
||||||
this.tabControlPanel1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Windows7;
|
|
||||||
this.tabControlPanel1.Controls.Add(this.panelEx1);
|
|
||||||
this.tabControlPanel1.Location = new System.Drawing.Point(0, 22);
|
|
||||||
this.tabControlPanel1.Name = "tabControlPanel1";
|
|
||||||
this.tabControlPanel1.Padding = new System.Windows.Forms.Padding(1);
|
|
||||||
this.tabControlPanel1.Size = new System.Drawing.Size(261, 82);
|
|
||||||
this.tabControlPanel1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(253)))), ((int)(((byte)(253)))), ((int)(((byte)(254)))));
|
|
||||||
this.tabControlPanel1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(157)))), ((int)(((byte)(188)))), ((int)(((byte)(227)))));
|
|
||||||
this.tabControlPanel1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
|
||||||
this.tabControlPanel1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(146)))), ((int)(((byte)(165)))), ((int)(((byte)(199)))));
|
|
||||||
this.tabControlPanel1.Style.BorderSide = ((DevComponents.DotNetBar.eBorderSide)(((DevComponents.DotNetBar.eBorderSide.Left | DevComponents.DotNetBar.eBorderSide.Right)
|
|
||||||
| DevComponents.DotNetBar.eBorderSide.Bottom)));
|
|
||||||
this.tabControlPanel1.Style.GradientAngle = 90;
|
|
||||||
this.tabControlPanel1.TabIndex = 1;
|
|
||||||
this.tabControlPanel1.TabItem = this.tabTransitionReports;
|
|
||||||
//
|
|
||||||
// panelEx1
|
|
||||||
//
|
|
||||||
this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control;
|
|
||||||
this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.Office2007;
|
|
||||||
this.panelEx1.Controls.Add(this.cbxTransToProcs);
|
|
||||||
this.panelEx1.Controls.Add(this.cbxTransFromProcs);
|
|
||||||
this.panelEx1.Dock = System.Windows.Forms.DockStyle.Top;
|
|
||||||
this.panelEx1.Location = new System.Drawing.Point(1, 1);
|
|
||||||
this.panelEx1.Name = "panelEx1";
|
|
||||||
this.panelEx1.Size = new System.Drawing.Size(259, 81);
|
|
||||||
this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
|
|
||||||
this.panelEx1.Style.BackColor1.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground;
|
|
||||||
this.panelEx1.Style.BackColor2.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBackground2;
|
|
||||||
this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
|
||||||
this.panelEx1.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
|
|
||||||
this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
|
|
||||||
this.panelEx1.Style.GradientAngle = 90;
|
|
||||||
this.panelEx1.TabIndex = 2;
|
|
||||||
this.panelEx1.ThemeAware = true;
|
|
||||||
//
|
|
||||||
// cbxTransToProcs
|
|
||||||
//
|
|
||||||
this.cbxTransToProcs.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
this.cbxTransToProcs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
|
||||||
this.cbxTransToProcs.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton;
|
|
||||||
this.cbxTransToProcs.Checked = true;
|
|
||||||
this.cbxTransToProcs.CheckState = System.Windows.Forms.CheckState.Checked;
|
|
||||||
this.cbxTransToProcs.CheckValue = "Y";
|
|
||||||
this.cbxTransToProcs.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.cbxTransToProcs.Location = new System.Drawing.Point(3, 3);
|
|
||||||
this.cbxTransToProcs.Name = "cbxTransToProcs";
|
|
||||||
this.cbxTransToProcs.Size = new System.Drawing.Size(257, 23);
|
|
||||||
this.cbxTransToProcs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
|
||||||
this.cbxTransToProcs.TabIndex = 0;
|
|
||||||
this.cbxTransToProcs.Text = "Transitions To Selected Procedure(s)";
|
|
||||||
this.cbxTransToProcs.CheckedChanged += new System.EventHandler(this.cbxTransToProcs_CheckedChanged);
|
|
||||||
//
|
|
||||||
// cbxTransFromProcs
|
|
||||||
//
|
|
||||||
this.cbxTransFromProcs.BackColor = System.Drawing.Color.Transparent;
|
|
||||||
//
|
|
||||||
//
|
|
||||||
//
|
|
||||||
this.cbxTransFromProcs.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
|
||||||
this.cbxTransFromProcs.CheckBoxStyle = DevComponents.DotNetBar.eCheckBoxStyle.RadioButton;
|
|
||||||
this.cbxTransFromProcs.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
|
||||||
this.cbxTransFromProcs.Location = new System.Drawing.Point(2, 32);
|
|
||||||
this.cbxTransFromProcs.Name = "cbxTransFromProcs";
|
|
||||||
this.cbxTransFromProcs.Size = new System.Drawing.Size(257, 23);
|
|
||||||
this.cbxTransFromProcs.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
|
||||||
this.cbxTransFromProcs.TabIndex = 1;
|
|
||||||
this.cbxTransFromProcs.Text = "Transitions From Selected Procedure(s)";
|
|
||||||
this.cbxTransFromProcs.CheckedChanged += new System.EventHandler(this.cbxTransFromProcs_CheckedChanged);
|
|
||||||
//
|
|
||||||
// tabTransitionReports
|
|
||||||
//
|
|
||||||
this.tabTransitionReports.AttachedControl = this.tabControlPanel1;
|
|
||||||
this.tabTransitionReports.Name = "tabTransitionReports";
|
|
||||||
this.tabTransitionReports.Text = "Transitions";
|
|
||||||
this.tabTransitionReports.Click += new System.EventHandler(this.tabTransitionReports_Click);
|
|
||||||
//
|
|
||||||
// advTreeRO
|
// advTreeRO
|
||||||
//
|
//
|
||||||
this.advTreeRO.AccessibleRole = System.Windows.Forms.AccessibleRole.Outline;
|
this.advTreeRO.AccessibleRole = System.Windows.Forms.AccessibleRole.Outline;
|
||||||
@ -490,6 +492,20 @@ namespace Volian.Controls.Library
|
|||||||
this.xpSelROs.TitleStyle.GradientAngle = 90;
|
this.xpSelROs.TitleStyle.GradientAngle = 90;
|
||||||
this.xpSelROs.TitleText = "Select Referenced Objects";
|
this.xpSelROs.TitleText = "Select Referenced Objects";
|
||||||
//
|
//
|
||||||
|
// cbxSortBySetpointID
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
//
|
||||||
|
this.cbxSortBySetpointID.BackgroundStyle.CornerType = DevComponents.DotNetBar.eCornerType.Square;
|
||||||
|
this.cbxSortBySetpointID.Location = new System.Drawing.Point(3, 39);
|
||||||
|
this.cbxSortBySetpointID.Name = "cbxSortBySetpointID";
|
||||||
|
this.cbxSortBySetpointID.Size = new System.Drawing.Size(121, 23);
|
||||||
|
this.cbxSortBySetpointID.Style = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||||
|
this.cbxSortBySetpointID.TabIndex = 11;
|
||||||
|
this.cbxSortBySetpointID.Text = "Sort By Sepoint ID";
|
||||||
|
this.cbxSortBySetpointID.Visible = false;
|
||||||
|
//
|
||||||
// DisplayReports
|
// DisplayReports
|
||||||
//
|
//
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||||
@ -504,10 +520,10 @@ namespace Volian.Controls.Library
|
|||||||
this.Size = new System.Drawing.Size(261, 676);
|
this.Size = new System.Drawing.Size(261, 676);
|
||||||
((System.ComponentModel.ISupportInitialize)(this.tctrlReports)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.tctrlReports)).EndInit();
|
||||||
this.tctrlReports.ResumeLayout(false);
|
this.tctrlReports.ResumeLayout(false);
|
||||||
this.tabControlPanel2.ResumeLayout(false);
|
|
||||||
this.panRORpts.ResumeLayout(false);
|
|
||||||
this.tabControlPanel1.ResumeLayout(false);
|
this.tabControlPanel1.ResumeLayout(false);
|
||||||
this.panelEx1.ResumeLayout(false);
|
this.panelEx1.ResumeLayout(false);
|
||||||
|
this.tabControlPanel2.ResumeLayout(false);
|
||||||
|
this.panRORpts.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)(this.advTreeRO)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.advTreeRO)).EndInit();
|
||||||
this.xpSetToReport.ResumeLayout(false);
|
this.xpSetToReport.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)(this.advTreeProcSets)).EndInit();
|
((System.ComponentModel.ISupportInitialize)(this.advTreeProcSets)).EndInit();
|
||||||
@ -547,5 +563,6 @@ namespace Volian.Controls.Library
|
|||||||
private DevComponents.DotNetBar.PanelEx panelEx1;
|
private DevComponents.DotNetBar.PanelEx panelEx1;
|
||||||
private DevComponents.DotNetBar.Controls.CheckBoxX cbxIncldMissingROs;
|
private DevComponents.DotNetBar.Controls.CheckBoxX cbxIncldMissingROs;
|
||||||
private System.Windows.Forms.ToolTip toolTip1;
|
private System.Windows.Forms.ToolTip toolTip1;
|
||||||
|
private DevComponents.DotNetBar.Controls.CheckBoxX cbxSortBySetpointID;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -97,6 +97,95 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Dictionary<string, string> AccIDROIDdic = new Dictionary<string, string>();
|
||||||
|
|
||||||
|
private void GenerateAccIDSortedROList()
|
||||||
|
{
|
||||||
|
//Dictionary<string, string> AccIDROIDdic = new Dictionary<string, string>();
|
||||||
|
List<string> AccPgIDsList = new List<string>();
|
||||||
|
AccIDROIDdic.Clear();
|
||||||
|
string rtnStr = "";
|
||||||
|
ROFSTLookup.rochild[] chld = null;
|
||||||
|
ROFSTLookup.rochild ch;
|
||||||
|
ROList.Clear();
|
||||||
|
foreach (object rolkup in lstCheckedROs)
|
||||||
|
{
|
||||||
|
if (rolkup == null) // All Referenced Objects selected, return list of RO databases
|
||||||
|
{
|
||||||
|
foreach (ROFSTLookup.rodbi rodbi in _MyROFSTLookup.GetRODatabaseList())
|
||||||
|
{
|
||||||
|
rtnStr = _MyRODbID.ToString() + ":" + string.Format("{0}", rodbi.dbiID.ToString("X4"));
|
||||||
|
//ROList.Add(rtnStr);
|
||||||
|
foreach (ROFSTLookup.rochild roc in rodbi.children)
|
||||||
|
PutROChildrenInDictionary(_MyRODbID.ToString() + ":", roc);
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
else if (rolkup is ROFSTLookup.rodbi)
|
||||||
|
{
|
||||||
|
//rtnStr = _MyRODbID.ToString() + ":" + string.Format("{0}", ((ROFSTLookup.rodbi)rolkup).dbiID.ToString("X4"));
|
||||||
|
ROFSTLookup.rodbi rodbi = (ROFSTLookup.rodbi)rolkup;
|
||||||
|
foreach (ROFSTLookup.rochild roc in rodbi.children)
|
||||||
|
PutROChildrenInDictionary(_MyRODbID.ToString() + ":", roc);
|
||||||
|
}
|
||||||
|
else if (rolkup is ROFSTLookup.rochild)
|
||||||
|
{
|
||||||
|
ch = (ROFSTLookup.rochild)rolkup;
|
||||||
|
chld = ch.children;
|
||||||
|
//rtnStr = _MyRODbID.ToString() + ":" + GetROChildren(rolkup).TrimEnd(',');
|
||||||
|
PutROChildrenInDictionary(_MyRODbID.ToString() + ":", rolkup);
|
||||||
|
}
|
||||||
|
//else if (rolkup is ROFSTLookup.rogrp)
|
||||||
|
// Console.WriteLine("RO Group");
|
||||||
|
//else if (rolkup is ROFSTLookup.roHdr)
|
||||||
|
// Console.WriteLine("RO Header");
|
||||||
|
//ROList.Add(rtnStr);
|
||||||
|
}
|
||||||
|
foreach (string k in AccIDROIDdic.Keys)
|
||||||
|
AccPgIDsList.Add(k);
|
||||||
|
string[] AccPgIdListArray = AccPgIDsList.ToArray();
|
||||||
|
Array.Sort(AccPgIdListArray, new AlphanumComparatorFast());
|
||||||
|
foreach (string accid in AccPgIdListArray)
|
||||||
|
ROList.Add(AccIDROIDdic[accid]);
|
||||||
|
}
|
||||||
|
static int blankKeyCnt = 0;
|
||||||
|
private string GetNextBlankKey()
|
||||||
|
{
|
||||||
|
return string.Format(" _{0}", blankKeyCnt++);
|
||||||
|
}
|
||||||
|
private void PutROChildrenInDictionary(string rodbidPrefix, object roObj)
|
||||||
|
{
|
||||||
|
ROFSTLookup.rochild chld = (ROFSTLookup.rochild)roObj;
|
||||||
|
string rtnstr = rodbidPrefix;// "";
|
||||||
|
string keystr = (chld.appid == "") ? GetNextBlankKey() : chld.appid;
|
||||||
|
if (chld.children == null) // get a single ROID
|
||||||
|
{
|
||||||
|
rtnstr = rodbidPrefix + string.Format("{0}", chld.roid);
|
||||||
|
if (rtnstr.Length == 12) rtnstr += "0000"; // last four digits are used for multiple return values
|
||||||
|
AccIDROIDdic.Add(keystr, rtnstr);
|
||||||
|
}
|
||||||
|
else if (!cbxROUsage.Checked && chld.children[0].ParentID == 0)
|
||||||
|
{
|
||||||
|
rtnstr = rodbidPrefix + string.Format("{0},", chld.roid); // doing a RO Summary or RO Complete report - don't want children that are multiple return values
|
||||||
|
AccIDROIDdic.Add(keystr, rtnstr);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{ // spin through the child list and get the ROIDs.
|
||||||
|
// if the child has children, then call this function recursivly
|
||||||
|
foreach (ROFSTLookup.rochild roc in chld.children)
|
||||||
|
{
|
||||||
|
// Don't get the children if we are doing a RO Summary or RO Complete report & children are the multiple return values
|
||||||
|
if (roc.children != null && (cbxROUsage.Checked || roc.children[0].ParentID != 0))
|
||||||
|
PutROChildrenInDictionary(rodbidPrefix, roc);
|
||||||
|
else if (roc.appid != null && roc.appid != "")
|
||||||
|
{
|
||||||
|
rtnstr = rodbidPrefix + string.Format("{0}", roc.roid);
|
||||||
|
keystr = (roc.appid == "") ? GetNextBlankKey() : roc.appid;
|
||||||
|
AccIDROIDdic.Add(keystr, rtnstr);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void GenerateROList()
|
private void GenerateROList()
|
||||||
{
|
{
|
||||||
@ -200,6 +289,8 @@ namespace Volian.Controls.Library
|
|||||||
cbxIncldMissingROs.Text = "Include Empty RO Fields";
|
cbxIncldMissingROs.Text = "Include Empty RO Fields";
|
||||||
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
||||||
cbxIncldMissingROs.Visible = cbxROUsage.Checked || cbxComplete.Checked;
|
cbxIncldMissingROs.Visible = cbxROUsage.Checked || cbxComplete.Checked;
|
||||||
|
cbxSortBySetpointID.Checked = false;
|
||||||
|
cbxSortBySetpointID.Visible = cbxComplete.Checked || cbxSummary.Checked;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SelectReferencedObjectTab()
|
public void SelectReferencedObjectTab()
|
||||||
@ -252,6 +343,8 @@ namespace Volian.Controls.Library
|
|||||||
cbxIncldMissingROs.Text = "Include Empty RO Fields";
|
cbxIncldMissingROs.Text = "Include Empty RO Fields";
|
||||||
//cbxIncldMissingROs.Checked = cbxROUsage.Checked || cbxComplete.Checked;
|
//cbxIncldMissingROs.Checked = cbxROUsage.Checked || cbxComplete.Checked;
|
||||||
cbxIncldMissingROs.Visible = cbxROUsage.Checked || cbxComplete.Checked;
|
cbxIncldMissingROs.Visible = cbxROUsage.Checked || cbxComplete.Checked;
|
||||||
|
cbxSortBySetpointID.Visible = cbxComplete.Checked || cbxSummary.Checked;
|
||||||
|
labelX1.Visible = cmbxROUsageSort.Visible = !cbxSortBySetpointID.Visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void tabTransitionReports_Click(object sender, EventArgs e)
|
private void tabTransitionReports_Click(object sender, EventArgs e)
|
||||||
@ -267,10 +360,12 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
xpSetToReport.Enabled = cbxROUsage.Checked;
|
xpSetToReport.Enabled = cbxROUsage.Checked;
|
||||||
xpSetToReport.Expanded = cbxROUsage.Checked;
|
xpSetToReport.Expanded = cbxROUsage.Checked;
|
||||||
cmbxROUsageSort.Enabled = cbxROUsage.Checked;
|
labelX1.Visible = cmbxROUsageSort.Visible = cbxROUsage.Checked;
|
||||||
xpSelROs.Enabled = true;
|
xpSelROs.Enabled = true;
|
||||||
xpSelROs.Expanded = true;
|
xpSelROs.Expanded = true;
|
||||||
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
||||||
|
cbxSortBySetpointID.Checked = false;
|
||||||
|
cbxSortBySetpointID.Visible = !cbxROUsage.Checked;
|
||||||
EnableOrDisablePrintButton();
|
EnableOrDisablePrintButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -278,11 +373,13 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
xpSetToReport.Enabled = cbxROUsage.Checked;
|
xpSetToReport.Enabled = cbxROUsage.Checked;
|
||||||
xpSetToReport.Expanded = cbxROUsage.Checked;
|
xpSetToReport.Expanded = cbxROUsage.Checked;
|
||||||
cmbxROUsageSort.Enabled = cbxROUsage.Checked;
|
labelX1.Visible = cmbxROUsageSort.Visible = cbxROUsage.Checked;
|
||||||
// reset the RO tree and clear anything that was selected
|
// reset the RO tree and clear anything that was selected
|
||||||
advTreeROFillIn(true);
|
advTreeROFillIn(true);
|
||||||
lstCheckedROs.Clear();
|
lstCheckedROs.Clear();
|
||||||
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
||||||
|
cbxSortBySetpointID.Checked = false;
|
||||||
|
cbxSortBySetpointID.Visible = !cbxROUsage.Checked;
|
||||||
EnableOrDisablePrintButton();
|
EnableOrDisablePrintButton();
|
||||||
}
|
}
|
||||||
#region Procedure List
|
#region Procedure List
|
||||||
@ -522,7 +619,7 @@ namespace Volian.Controls.Library
|
|||||||
DevComponents.AdvTree.Node topnode = null;
|
DevComponents.AdvTree.Node topnode = null;
|
||||||
advTreeRO.Nodes.Clear();
|
advTreeRO.Nodes.Clear();
|
||||||
if (_MyROFSTLookup == null) return;
|
if (_MyROFSTLookup == null) return;
|
||||||
advTreeRO.BeforeExpand +=new AdvTreeNodeCancelEventHandler(advTreeRO_BeforeExpand);
|
advTreeRO.BeforeExpand += new AdvTreeNodeCancelEventHandler(advTreeRO_BeforeExpand);
|
||||||
advTreeRO.AfterExpand += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
|
advTreeRO.AfterExpand += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
|
||||||
advTreeRO.AfterCollapse += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
|
advTreeRO.AfterCollapse += new AdvTreeNodeEventHandler(advTreeRO_AfterExpandorCollapse);
|
||||||
topnode = new DevComponents.AdvTree.Node();
|
topnode = new DevComponents.AdvTree.Node();
|
||||||
@ -777,6 +874,7 @@ namespace Volian.Controls.Library
|
|||||||
private void cbxComplete_CheckedChanged(object sender, EventArgs e)
|
private void cbxComplete_CheckedChanged(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
cbxIncldMissingROs.Checked = false;// !cbxSummary.Checked;
|
||||||
|
cbxSortBySetpointID.Checked = false;
|
||||||
EnableOrDisablePrintButton();
|
EnableOrDisablePrintButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -803,7 +901,7 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
if (MyDVI == null || MyDVI.DocVersionAssociationCount < 1)
|
if (MyDVI == null || MyDVI.DocVersionAssociationCount < 1)
|
||||||
{
|
{
|
||||||
MessageBox.Show("Could not find associated path for ro data.","No RO Data", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
MessageBox.Show("Could not find associated path for ro data.", "No RO Data", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
//string roloc = "\"" + MyDVI.DocVersionAssociations[0].MyROFst.MyRODb.FolderPath + "\" " + "\"" + ROList + "\"";
|
//string roloc = "\"" + MyDVI.DocVersionAssociations[0].MyROFst.MyRODb.FolderPath + "\" " + "\"" + ROList + "\"";
|
||||||
@ -816,7 +914,6 @@ namespace Volian.Controls.Library
|
|||||||
roDataFile = MyDVI.DocVersionAssociations[0].MyROFst.MyRODb.FolderPath + "\\" + roDataFile;
|
roDataFile = MyDVI.DocVersionAssociations[0].MyROFst.MyRODb.FolderPath + "\\" + roDataFile;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|
||||||
if (File.Exists(roDataFile)) File.Delete(roDataFile);
|
if (File.Exists(roDataFile)) File.Delete(roDataFile);
|
||||||
Application.DoEvents();
|
Application.DoEvents();
|
||||||
string fname = VlnSettings.TemporaryFolder + "\\ROCompleteRprt.txt";
|
string fname = VlnSettings.TemporaryFolder + "\\ROCompleteRprt.txt";
|
||||||
@ -847,11 +944,17 @@ namespace Volian.Controls.Library
|
|||||||
Cursor = Cursors.WaitCursor;
|
Cursor = Cursors.WaitCursor;
|
||||||
if (cbxSummary.Checked) // RO Summary Report
|
if (cbxSummary.Checked) // RO Summary Report
|
||||||
{
|
{
|
||||||
|
if (cbxSortBySetpointID.Checked)
|
||||||
|
GenerateAccIDSortedROList();
|
||||||
|
else
|
||||||
GenerateROList();
|
GenerateROList();
|
||||||
OnPrintRequest(new DisplayReportsEventArgs("RO Summary Report", "RO Summary Report", MyROFSTLookup, ROList));
|
OnPrintRequest(new DisplayReportsEventArgs("RO Summary Report", "RO Summary Report", MyROFSTLookup, ROList));
|
||||||
}
|
}
|
||||||
else if (cbxComplete.Checked) // Complete RO Report
|
else if (cbxComplete.Checked) // Complete RO Report
|
||||||
{
|
{
|
||||||
|
if (cbxSortBySetpointID.Checked)
|
||||||
|
GenerateAccIDSortedROList();
|
||||||
|
else
|
||||||
GenerateROList();
|
GenerateROList();
|
||||||
string ROList = GetListOfROs(false);//don't include the RODbID in the RO list
|
string ROList = GetListOfROs(false);//don't include the RODbID in the RO list
|
||||||
string roDataFile = BuildRODataFile(ROList);
|
string roDataFile = BuildRODataFile(ROList);
|
||||||
@ -867,10 +970,10 @@ namespace Volian.Controls.Library
|
|||||||
{
|
{
|
||||||
Csla.SortedBindingList<ItemInfo> sortedResults = new Csla.SortedBindingList<ItemInfo>(SearchResults);
|
Csla.SortedBindingList<ItemInfo> sortedResults = new Csla.SortedBindingList<ItemInfo>(SearchResults);
|
||||||
sortedResults.ApplySort("FoundROID", ListSortDirection.Ascending);
|
sortedResults.ApplySort("FoundROID", ListSortDirection.Ascending);
|
||||||
OnPrintRequest(new DisplayReportsEventArgs("Referenced Objects Usage By RO", "RO Usage", sortedResults, usageSortedByProcedure,cbxIncldMissingROs.Checked));
|
OnPrintRequest(new DisplayReportsEventArgs("Referenced Objects Usage By RO", "RO Usage", sortedResults, usageSortedByProcedure, cbxIncldMissingROs.Checked));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
OnPrintRequest(new DisplayReportsEventArgs("Referenced Objects Usage By Procedure", "RO Usage", SearchResults, usageSortedByProcedure,cbxIncldMissingROs.Checked));
|
OnPrintRequest(new DisplayReportsEventArgs("Referenced Objects Usage By Procedure", "RO Usage", SearchResults, usageSortedByProcedure, cbxIncldMissingROs.Checked));
|
||||||
}
|
}
|
||||||
else if (cbxTransFromProcs.Checked)
|
else if (cbxTransFromProcs.Checked)
|
||||||
{
|
{
|
||||||
@ -984,4 +1087,164 @@ namespace Volian.Controls.Library
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
public delegate void DisplayReportsEvent(object sender, DisplayReportsEventArgs args);
|
public delegate void DisplayReportsEvent(object sender, DisplayReportsEventArgs args);
|
||||||
|
public class AlphanumComparatorFast : IComparer<string>
|
||||||
|
{
|
||||||
|
List<string> GetList(string s1)
|
||||||
|
{
|
||||||
|
List<string> SB1 = new List<string>();
|
||||||
|
string st1, st2, st3;
|
||||||
|
st1 = "";
|
||||||
|
bool flag = char.IsDigit(s1[0]);
|
||||||
|
foreach (char c in s1)
|
||||||
|
{
|
||||||
|
if (flag != char.IsDigit(c) || !(char.IsDigit(c) || char.IsLetter(c)))// || c == '\'')
|
||||||
|
{
|
||||||
|
if (st1 != "")
|
||||||
|
SB1.Add(st1);
|
||||||
|
st1 = "";
|
||||||
|
flag = char.IsDigit(c);
|
||||||
|
}
|
||||||
|
if (char.IsDigit(c))
|
||||||
|
{
|
||||||
|
st1 += c;
|
||||||
|
}
|
||||||
|
if (char.IsLetter(c))
|
||||||
|
{
|
||||||
|
st1 += c;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
SB1.Add(st1);
|
||||||
|
return SB1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public int Compare(string x, string y)
|
||||||
|
{
|
||||||
|
string s1 = x;// as string;
|
||||||
|
if (s1 == null)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
string s2 = y;// as string;
|
||||||
|
if (s2 == null)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
if (s1 == s2)
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
int len1 = s1.Length;
|
||||||
|
int len2 = s2.Length;
|
||||||
|
int marker1 = 0;
|
||||||
|
int marker2 = 0;
|
||||||
|
|
||||||
|
// Walk through two the strings with two markers.
|
||||||
|
List<string> str1 = GetList(s1);
|
||||||
|
List<string> str2 = GetList(s2);
|
||||||
|
while (str1.Count != str2.Count)
|
||||||
|
{
|
||||||
|
if (str1.Count < str2.Count)
|
||||||
|
{
|
||||||
|
str1.Add("");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
str2.Add("");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int x1 = 0; int res = 0; int x2 = 0; string y2 = "";
|
||||||
|
bool status = false;
|
||||||
|
string y1 = ""; bool s1Status = false; bool s2Status = false;
|
||||||
|
//s1status ==false then string ele int;
|
||||||
|
//s2status ==false then string ele int;
|
||||||
|
int result = 0;
|
||||||
|
for (int i = 0; i < str1.Count && i < str2.Count; i++)
|
||||||
|
{
|
||||||
|
status = int.TryParse(str1[i].ToString(), out res);
|
||||||
|
if (res == 0)
|
||||||
|
{
|
||||||
|
y1 = str1[i].ToString();
|
||||||
|
s1Status = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
x1 = Convert.ToInt32(str1[i].ToString());
|
||||||
|
s1Status = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
status = int.TryParse(str2[i].ToString(), out res);
|
||||||
|
if (res == 0)
|
||||||
|
{
|
||||||
|
y2 = str2[i].ToString();
|
||||||
|
s2Status = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
x2 = Convert.ToInt32(str2[i].ToString());
|
||||||
|
s2Status = true;
|
||||||
|
}
|
||||||
|
//checking --the data comparision
|
||||||
|
if (!s2Status && !s1Status) //both are strings
|
||||||
|
{
|
||||||
|
result = str1[i].CompareTo(str2[i]);
|
||||||
|
}
|
||||||
|
else if (s2Status && s1Status) //both are intergers
|
||||||
|
{
|
||||||
|
if (x1 == x2)
|
||||||
|
{
|
||||||
|
if (str1[i].ToString().Length < str2[i].ToString().Length)
|
||||||
|
{
|
||||||
|
result = 1;
|
||||||
|
}
|
||||||
|
else if (str1[i].ToString().Length > str2[i].ToString().Length)
|
||||||
|
result = -1;
|
||||||
|
else
|
||||||
|
result = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
int st1ZeroCount = str1[i].ToString().Trim().Length - str1[i].ToString().TrimStart(new char[] { '0' }).Length;
|
||||||
|
int st2ZeroCount = str2[i].ToString().Trim().Length - str2[i].ToString().TrimStart(new char[] { '0' }).Length;
|
||||||
|
if (st1ZeroCount > st2ZeroCount)
|
||||||
|
result = -1;
|
||||||
|
else if (st1ZeroCount < st2ZeroCount)
|
||||||
|
result = 1;
|
||||||
|
else
|
||||||
|
result = x1.CompareTo(x2);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result = str1[i].CompareTo(str2[i]);
|
||||||
|
}
|
||||||
|
if (result == 0)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
// sample usage
|
||||||
|
// List<string> marks = new List<string>();
|
||||||
|
// marks.Add("M'00Z1");
|
||||||
|
// marks.Add("M'0A27");
|
||||||
|
// marks.Add("M'00Z0");
|
||||||
|
// marks.Add("0000A27");
|
||||||
|
// marks.Add("100Z0");
|
||||||
|
|
||||||
|
//string[] Markings = marks.ToArray();
|
||||||
|
|
||||||
|
// Array.Sort(Markings, new AlphanumComparatorFast());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ using iTextSharp.text.pdf;
|
|||||||
using iTextSharp.text;
|
using iTextSharp.text;
|
||||||
using VEPROMS.CSLA.Library;
|
using VEPROMS.CSLA.Library;
|
||||||
using Volian.Base.Library;
|
using Volian.Base.Library;
|
||||||
|
using VlnStatus;
|
||||||
|
|
||||||
|
|
||||||
namespace Volian.Print.Library
|
namespace Volian.Print.Library
|
||||||
@ -161,6 +162,7 @@ namespace Volian.Print.Library
|
|||||||
int idx = 0;
|
int idx = 0;
|
||||||
Chunk chk;
|
Chunk chk;
|
||||||
Phrase p = new Phrase();
|
Phrase p = new Phrase();
|
||||||
|
bool underlineChunk = false;
|
||||||
instr = instr.Replace("`", "\u00B0"); //degree
|
instr = instr.Replace("`", "\u00B0"); //degree
|
||||||
if (ConvertCaretToDelta)
|
if (ConvertCaretToDelta)
|
||||||
instr = instr.Replace("^", "\u0394"); // delta
|
instr = instr.Replace("^", "\u0394"); // delta
|
||||||
@ -172,7 +174,30 @@ namespace Volian.Print.Library
|
|||||||
if (idx < m.Index)
|
if (idx < m.Index)
|
||||||
{
|
{
|
||||||
int strlen = m.Index - idx;
|
int strlen = m.Index - idx;
|
||||||
|
int uidx = 0;
|
||||||
|
string strChk = instr.Substring(idx, strlen);
|
||||||
|
MatchCollection mc1 = Regex.Matches(strChk, "[_](.*?)"); // look ofr Underline on/off
|
||||||
|
foreach (Match m1 in mc1)
|
||||||
|
{
|
||||||
|
if (uidx < m1.Index)
|
||||||
|
{
|
||||||
|
string tstr = (instr.Substring(idx+uidx, m1.Index - uidx));
|
||||||
|
if (tstr.EndsWith(" "))
|
||||||
|
tstr = tstr.Substring(0, tstr.Length - 1) + "\xA0";
|
||||||
|
chk = new Chunk(tstr, fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
|
chk.SetTextRise(0);
|
||||||
|
p.Add(chk);
|
||||||
|
uidx += (tstr.Length + 1);
|
||||||
|
idx += (tstr.Length + 1);
|
||||||
|
strlen -= (tstr.Length + 1);
|
||||||
|
underlineChunk = !underlineChunk;
|
||||||
|
}
|
||||||
|
}
|
||||||
chk = new Chunk(instr.Substring(idx, strlen), fnt);
|
chk = new Chunk(instr.Substring(idx, strlen), fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
chk.SetTextRise(0);
|
chk.SetTextRise(0);
|
||||||
p.Add(chk);
|
p.Add(chk);
|
||||||
}
|
}
|
||||||
@ -180,12 +205,16 @@ namespace Volian.Print.Library
|
|||||||
{
|
{
|
||||||
case '#':
|
case '#':
|
||||||
chk = new Chunk(m.Value.Substring(1, m.Length-2), fnt);
|
chk = new Chunk(m.Value.Substring(1, m.Length-2), fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
chk.SetTextRise(.25F * chk.Font.Size);
|
chk.SetTextRise(.25F * chk.Font.Size);
|
||||||
p.Add(chk);
|
p.Add(chk);
|
||||||
idx = m.Index + m.Length;
|
idx = m.Index + m.Length;
|
||||||
break;
|
break;
|
||||||
case '~':
|
case '~':
|
||||||
chk = new Chunk(m.Value.Substring(1, m.Length-2), fnt);
|
chk = new Chunk(m.Value.Substring(1, m.Length-2), fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
chk.SetTextRise(-.25F * chk.Font.Size);
|
chk.SetTextRise(-.25F * chk.Font.Size);
|
||||||
p.Add(chk);
|
p.Add(chk);
|
||||||
idx = m.Index + m.Length;
|
idx = m.Index + m.Length;
|
||||||
@ -194,9 +223,36 @@ namespace Volian.Print.Library
|
|||||||
}
|
}
|
||||||
if (idx < instr.Length - 1)
|
if (idx < instr.Length - 1)
|
||||||
{
|
{
|
||||||
chk = new Chunk(instr.Substring(idx), fnt);
|
int uidx = 0;
|
||||||
|
string strChk = (instr.Substring(idx));
|
||||||
|
MatchCollection mc1 = Regex.Matches(strChk, "[_](.*?)"); // look for underline on/off
|
||||||
|
foreach (Match m1 in mc1)
|
||||||
|
{
|
||||||
|
if (uidx < m1.Index)
|
||||||
|
{
|
||||||
|
string tstr = (strChk.Substring(uidx, m1.Index - uidx));
|
||||||
|
if (tstr.EndsWith(" "))
|
||||||
|
tstr = tstr.Substring(0, tstr.Length - 1) + "\xA0";
|
||||||
|
chk = new Chunk(tstr, fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
chk.SetTextRise(0);
|
chk.SetTextRise(0);
|
||||||
p.Add(chk);
|
p.Add(chk);
|
||||||
|
uidx += (tstr.Length+1);
|
||||||
|
underlineChunk = !underlineChunk;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (uidx < strChk.Length - 1)
|
||||||
|
{
|
||||||
|
string tstr = strChk.Substring(uidx);
|
||||||
|
if (tstr.EndsWith(" "))
|
||||||
|
tstr = tstr.Substring(0, tstr.Length - 1) + "\xA0";
|
||||||
|
chk = new Chunk(tstr, fnt);
|
||||||
|
if (underlineChunk)
|
||||||
|
chk.SetUnderline(Color.BLACK, 0, 0.05F, 0, -.131F, PdfContentByte.LINE_CAP_ROUND);
|
||||||
|
chk.SetTextRise(0);
|
||||||
|
p.Add(chk);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return p;
|
return p;
|
||||||
@ -212,6 +268,8 @@ namespace Volian.Print.Library
|
|||||||
{
|
{
|
||||||
PdfPCell cell = new PdfPCell(ConvertDOSSuperAndSubScripts(str, fnt));
|
PdfPCell cell = new PdfPCell(ConvertDOSSuperAndSubScripts(str, fnt));
|
||||||
cell.BorderColor = Color.WHITE;
|
cell.BorderColor = Color.WHITE;
|
||||||
|
if (strlst.Length > 1)
|
||||||
|
cell.PaddingBottom = 6;
|
||||||
datatable.AddCell(cell);
|
datatable.AddCell(cell);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -298,10 +356,13 @@ namespace Volian.Print.Library
|
|||||||
bool StopPrinting = false;
|
bool StopPrinting = false;
|
||||||
bool UserTerminate = false;
|
bool UserTerminate = false;
|
||||||
Int16 iRecType = 0;
|
Int16 iRecType = 0;
|
||||||
|
VlnStatusBar showStatBar = new VlnStatusBar("Complete RO Report");
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if (RO_df.GetFileLength() > 0)
|
if (RO_df.GetFileLength() > 0)
|
||||||
{
|
{
|
||||||
|
showStatBar.BarMax = (int)RO_df.GetFileLength();
|
||||||
|
showStatBar.StatMsg = "Creating Report";
|
||||||
// Loop until either printing is aborted or end of file.
|
// Loop until either printing is aborted or end of file.
|
||||||
while (!StopPrinting && (iRecType = RO_df.ReadInteger16()) != -1)
|
while (!StopPrinting && (iRecType = RO_df.ReadInteger16()) != -1)
|
||||||
{
|
{
|
||||||
@ -352,6 +413,7 @@ namespace Volian.Print.Library
|
|||||||
_pdfReportDoc.Add(datatable);
|
_pdfReportDoc.Add(datatable);
|
||||||
_pdfReportDoc.NewPage();
|
_pdfReportDoc.NewPage();
|
||||||
StartNewDataTable();
|
StartNewDataTable();
|
||||||
|
showStatBar.BarValue = (int)RO_df.GetFilePointerPosition();
|
||||||
//Console.WriteLine("Record Type: {0} No Operation", iRecType);
|
//Console.WriteLine("Record Type: {0} No Operation", iRecType);
|
||||||
//Console.WriteLine("----------------------------------------------");
|
//Console.WriteLine("----------------------------------------------");
|
||||||
break;
|
break;
|
||||||
@ -372,12 +434,15 @@ namespace Volian.Print.Library
|
|||||||
}
|
}
|
||||||
//Console.WriteLine("Record Type: {0}\n** Done **", iRecType);
|
//Console.WriteLine("Record Type: {0}\n** Done **", iRecType);
|
||||||
_pdfReportDoc.Add(datatable);
|
_pdfReportDoc.Add(datatable);
|
||||||
|
showStatBar.Dispose();
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
Console.WriteLine("Exception : {0}", e.Message);
|
Console.WriteLine("Exception : {0}", e.Message);
|
||||||
RO_df.close();
|
RO_df.close();
|
||||||
_pdfReportDoc.Add(datatable);
|
_pdfReportDoc.Add(datatable);
|
||||||
|
showStatBar.Dispose();
|
||||||
GenerateErrorMessage(e, "Error Processing Complete RO Report. ", null);
|
GenerateErrorMessage(e, "Error Processing Complete RO Report. ", null);
|
||||||
}
|
}
|
||||||
AddErrorBookmarks();
|
AddErrorBookmarks();
|
||||||
@ -931,6 +996,10 @@ namespace Volian.Print.Library
|
|||||||
{
|
{
|
||||||
return fs.Length;
|
return fs.Length;
|
||||||
}
|
}
|
||||||
|
public long GetFilePointerPosition()
|
||||||
|
{
|
||||||
|
return fs.Position;
|
||||||
|
}
|
||||||
// Read an integer value from the data file
|
// Read an integer value from the data file
|
||||||
public Int16 ReadInteger16()
|
public Int16 ReadInteger16()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user