diff --git a/CPXV2 TRA V2/JsonConvertTool/App.config b/CPXV2 TRA V2/JsonConvertTool/App.config
new file mode 100644
index 0000000..211ffa5
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/App.config
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CPXV2 TRA V2/JsonConvertTool/Form1.Designer.cs b/CPXV2 TRA V2/JsonConvertTool/Form1.Designer.cs
new file mode 100644
index 0000000..613881f
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Form1.Designer.cs
@@ -0,0 +1,112 @@
+namespace JsonConvertTool
+{
+ partial class Form1
+ {
+ ///
+ /// 필수 디자이너 변수입니다.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// 사용 중인 모든 리소스를 정리합니다.
+ ///
+ /// 관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Windows Form 디자이너에서 생성한 코드
+
+ ///
+ /// 디자이너 지원에 필요한 메서드입니다.
+ /// 이 메서드의 내용을 코드 편집기로 수정하지 마세요.
+ ///
+ private void InitializeComponent()
+ {
+ this.richInput = new System.Windows.Forms.RichTextBox();
+ this.btnClear = new System.Windows.Forms.Button();
+ this.btnConvert = new System.Windows.Forms.Button();
+ this.dataGridView1 = new System.Windows.Forms.DataGridView();
+ this.textEdit1 = new DevExpress.XtraEditors.TextEdit();
+ ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit();
+ ((System.ComponentModel.ISupportInitialize)(this.textEdit1.Properties)).BeginInit();
+ this.SuspendLayout();
+ //
+ // richInput
+ //
+ this.richInput.Location = new System.Drawing.Point(12, 12);
+ this.richInput.Name = "richInput";
+ this.richInput.Size = new System.Drawing.Size(400, 743);
+ this.richInput.TabIndex = 0;
+ this.richInput.Text = "";
+ //
+ // btnClear
+ //
+ this.btnClear.Location = new System.Drawing.Point(12, 761);
+ this.btnClear.Name = "btnClear";
+ this.btnClear.Size = new System.Drawing.Size(167, 42);
+ this.btnClear.TabIndex = 1;
+ this.btnClear.Text = "Clear";
+ this.btnClear.UseVisualStyleBackColor = true;
+ this.btnClear.Click += new System.EventHandler(this.btnClear_Click);
+ //
+ // btnConvert
+ //
+ this.btnConvert.Location = new System.Drawing.Point(185, 761);
+ this.btnConvert.Name = "btnConvert";
+ this.btnConvert.Size = new System.Drawing.Size(167, 42);
+ this.btnConvert.TabIndex = 2;
+ this.btnConvert.Text = "Convert";
+ this.btnConvert.UseVisualStyleBackColor = true;
+ this.btnConvert.Click += new System.EventHandler(this.btnConvert_Click);
+ //
+ // dataGridView1
+ //
+ this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+ this.dataGridView1.Location = new System.Drawing.Point(418, 12);
+ this.dataGridView1.Name = "dataGridView1";
+ this.dataGridView1.RowHeadersWidth = 51;
+ this.dataGridView1.RowTemplate.Height = 27;
+ this.dataGridView1.Size = new System.Drawing.Size(1343, 713);
+ this.dataGridView1.TabIndex = 3;
+ //
+ // textEdit1
+ //
+ this.textEdit1.Location = new System.Drawing.Point(418, 731);
+ this.textEdit1.Name = "textEdit1";
+ this.textEdit1.Size = new System.Drawing.Size(1343, 24);
+ this.textEdit1.TabIndex = 4;
+ //
+ // Form1
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(1773, 815);
+ this.Controls.Add(this.textEdit1);
+ this.Controls.Add(this.dataGridView1);
+ this.Controls.Add(this.btnConvert);
+ this.Controls.Add(this.btnClear);
+ this.Controls.Add(this.richInput);
+ this.Name = "Form1";
+ this.Text = "Form1";
+ ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit();
+ ((System.ComponentModel.ISupportInitialize)(this.textEdit1.Properties)).EndInit();
+ this.ResumeLayout(false);
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.RichTextBox richInput;
+ private System.Windows.Forms.Button btnClear;
+ private System.Windows.Forms.Button btnConvert;
+ private System.Windows.Forms.DataGridView dataGridView1;
+ private DevExpress.XtraEditors.TextEdit textEdit1;
+ }
+}
+
diff --git a/CPXV2 TRA V2/JsonConvertTool/Form1.cs b/CPXV2 TRA V2/JsonConvertTool/Form1.cs
new file mode 100644
index 0000000..a67484a
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Form1.cs
@@ -0,0 +1,46 @@
+using Newtonsoft.Json;
+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 SystemX.Common.Util;
+using CPXV2Log = SystemX.Net.Platform.SystemX.Net.XEFCore.DBContext.CPXV2Log;
+
+namespace JsonConvertTool
+{
+ public partial class Form1 : Form
+ {
+ public Form1()
+ {
+ InitializeComponent();
+ }
+
+ private void btnClear_Click(object sender, EventArgs e)
+ {
+ richInput.Clear();
+ textEdit1.Text = string.Empty;
+ dataGridView1.DataSource = null;
+ }
+
+ private void btnConvert_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ string strDecomp = richInput.Text;
+ string json = strDecomp.GzipDecompress();
+ var list = JsonConvert.DeserializeObject>(json);
+
+ dataGridView1.DataSource = list.ToDataTable();
+ }
+ catch(Exception ex)
+ {
+ textEdit1.Text = ex.Message;
+ }
+ }
+ }
+}
diff --git a/CPXV2 TRA V2/JsonConvertTool/Form1.resx b/CPXV2 TRA V2/JsonConvertTool/Form1.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Form1.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/CPXV2 TRA V2/JsonConvertTool/JsonConvertTool.csproj b/CPXV2 TRA V2/JsonConvertTool/JsonConvertTool.csproj
new file mode 100644
index 0000000..14dd562
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/JsonConvertTool.csproj
@@ -0,0 +1,218 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}
+ WinExe
+ JsonConvertTool
+ JsonConvertTool
+ v4.8
+ 512
+ true
+ true
+
+
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+ ..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.1\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll
+
+
+ ..\packages\Microsoft.Bcl.HashCode.1.1.1\lib\net461\Microsoft.Bcl.HashCode.dll
+
+
+ ..\packages\Microsoft.Data.SqlClient.1.1.3\lib\net46\Microsoft.Data.SqlClient.dll
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.3.1.32\lib\netstandard2.0\Microsoft.EntityFrameworkCore.dll
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.EntityFrameworkCore.Abstractions.dll
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.Relational.3.1.32\lib\netstandard2.0\Microsoft.EntityFrameworkCore.Relational.dll
+
+
+ ..\packages\Microsoft.EntityFrameworkCore.SqlServer.3.1.32\lib\netstandard2.0\Microsoft.EntityFrameworkCore.SqlServer.dll
+
+
+ ..\packages\Microsoft.Extensions.Caching.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Caching.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Caching.Memory.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Caching.Memory.dll
+
+
+ ..\packages\Microsoft.Extensions.Configuration.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Configuration.dll
+
+
+ ..\packages\Microsoft.Extensions.Configuration.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Configuration.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Configuration.Binder.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Configuration.Binder.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.3.1.32\lib\net461\Microsoft.Extensions.DependencyInjection.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Logging.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Logging.dll
+
+
+ ..\packages\Microsoft.Extensions.Logging.Abstractions.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Logging.Abstractions.dll
+
+
+ ..\packages\Microsoft.Extensions.Options.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Options.dll
+
+
+ ..\packages\Microsoft.Extensions.Primitives.3.1.32\lib\netstandard2.0\Microsoft.Extensions.Primitives.dll
+
+
+ ..\packages\Microsoft.Identity.Client.3.0.8\lib\net45\Microsoft.Identity.Client.dll
+
+
+ ..\packages\Microsoft.IdentityModel.JsonWebTokens.5.5.0\lib\net461\Microsoft.IdentityModel.JsonWebTokens.dll
+
+
+ ..\packages\Microsoft.IdentityModel.Logging.5.5.0\lib\net461\Microsoft.IdentityModel.Logging.dll
+
+
+ ..\packages\Microsoft.IdentityModel.Protocols.5.5.0\lib\net461\Microsoft.IdentityModel.Protocols.dll
+
+
+ ..\packages\Microsoft.IdentityModel.Protocols.OpenIdConnect.5.5.0\lib\net461\Microsoft.IdentityModel.Protocols.OpenIdConnect.dll
+
+
+ ..\packages\Microsoft.IdentityModel.Tokens.5.5.0\lib\net461\Microsoft.IdentityModel.Tokens.dll
+
+
+ ..\packages\Newtonsoft.Json.13.0.3\lib\net45\Newtonsoft.Json.dll
+
+
+
+ ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll
+
+
+ ..\packages\System.Collections.Immutable.1.7.1\lib\net461\System.Collections.Immutable.dll
+
+
+ ..\packages\System.ComponentModel.Annotations.4.7.0\lib\net461\System.ComponentModel.Annotations.dll
+
+
+
+
+ ..\packages\System.Data.Common.4.3.0\lib\net451\System.Data.Common.dll
+ True
+ True
+
+
+
+ ..\packages\System.Diagnostics.DiagnosticSource.4.7.1\lib\net46\System.Diagnostics.DiagnosticSource.dll
+
+
+
+ ..\packages\System.IdentityModel.Tokens.Jwt.5.5.0\lib\net461\System.IdentityModel.Tokens.Jwt.dll
+
+
+ ..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll
+
+
+
+
+
+
+
+
+
+
+
+ ..\..\Output.SystemX\SystemX.Net.Platform.dll
+
+
+ ..\..\Output.SystemX\SystemX.XEFCore.dll
+
+
+
+
+ Form
+
+
+ Form1.cs
+
+
+
+
+ Form1.cs
+
+
+
+ ResXFileCodeGenerator
+ Resources.Designer.cs
+ Designer
+
+
+ True
+ Resources.resx
+
+
+
+ SettingsSingleFileGenerator
+ Settings.Designer.cs
+
+
+ True
+ Settings.settings
+ True
+
+
+
+
+
+
+
+
+
+ 이 프로젝트는 이 컴퓨터에 없는 NuGet 패키지를 참조합니다. 해당 패키지를 다운로드하려면 NuGet 패키지 복원을 사용하십시오. 자세한 내용은 http://go.microsoft.com/fwlink/?LinkID=322105를 참조하십시오. 누락된 파일은 {0}입니다.
+
+
+
+
\ No newline at end of file
diff --git a/CPXV2 TRA V2/JsonConvertTool/Program.cs b/CPXV2 TRA V2/JsonConvertTool/Program.cs
new file mode 100644
index 0000000..9649f59
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Program.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace JsonConvertTool
+{
+ internal static class Program
+ {
+ ///
+ /// 해당 애플리케이션의 주 진입점입니다.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new Form1());
+ }
+ }
+}
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/AssemblyInfo.cs b/CPXV2 TRA V2/JsonConvertTool/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..2f60ea9
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// 어셈블리에 대한 일반 정보는 다음 특성 집합을 통해
+// 제어됩니다. 어셈블리와 관련된 정보를 수정하려면
+// 이러한 특성 값을 변경하세요.
+[assembly: AssemblyTitle("JsonConvertTool")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("JsonConvertTool")]
+[assembly: AssemblyCopyright("Copyright © 2024")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// ComVisible을 false로 설정하면 이 어셈블리의 형식이 COM 구성 요소에
+// 표시되지 않습니다. COM에서 이 어셈블리의 형식에 액세스하려면
+// 해당 형식에 대해 ComVisible 특성을 true로 설정하세요.
+[assembly: ComVisible(false)]
+
+// 이 프로젝트가 COM에 노출되는 경우 다음 GUID는 typelib의 ID를 나타냅니다.
+[assembly: Guid("7d1035c0-4e6b-493b-b11a-7d7cf8b082fd")]
+
+// 어셈블리의 버전 정보는 다음 네 가지 값으로 구성됩니다.
+//
+// 주 버전
+// 부 버전
+// 빌드 번호
+// 수정 버전
+//
+// 모든 값을 지정하거나 아래와 같이 '*'를 사용하여 빌드 번호 및 수정 번호를
+// 기본값으로 할 수 있습니다.
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.Designer.cs b/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..1fa8b06
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.Designer.cs
@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+//
+// 이 코드는 도구를 사용하여 생성되었습니다.
+// 런타임 버전:4.0.30319.42000
+//
+// 파일 내용을 변경하면 잘못된 동작이 발생할 수 있으며, 코드를 다시 생성하면
+// 이러한 변경 내용이 손실됩니다.
+//
+//------------------------------------------------------------------------------
+
+namespace JsonConvertTool.Properties
+{
+
+
+ ///
+ /// 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다.
+ ///
+ // 이 클래스는 ResGen 또는 Visual Studio와 같은 도구를 통해 StronglyTypedResourceBuilder
+ // 클래스에서 자동으로 생성되었습니다.
+ // 멤버를 추가하거나 제거하려면 .ResX 파일을 편집한 다음 /str 옵션을 사용하여
+ // ResGen을 다시 실행하거나 VS 프로젝트를 다시 빌드하십시오.
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
+ [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ internal class Resources
+ {
+
+ private static global::System.Resources.ResourceManager resourceMan;
+
+ private static global::System.Globalization.CultureInfo resourceCulture;
+
+ [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
+ internal Resources()
+ {
+ }
+
+ ///
+ /// 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Resources.ResourceManager ResourceManager
+ {
+ get
+ {
+ if ((resourceMan == null))
+ {
+ global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("JsonConvertTool.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 대해 현재 스레드의 CurrentUICulture 속성을
+ /// 재정의합니다.
+ ///
+ [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
+ internal static global::System.Globalization.CultureInfo Culture
+ {
+ get
+ {
+ return resourceCulture;
+ }
+ set
+ {
+ resourceCulture = value;
+ }
+ }
+ }
+}
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.resx b/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/Resources.resx
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ text/microsoft-resx
+
+
+ 2.0
+
+
+ System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
+ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+
\ No newline at end of file
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.Designer.cs b/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.Designer.cs
new file mode 100644
index 0000000..30a63ad
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.Designer.cs
@@ -0,0 +1,30 @@
+//------------------------------------------------------------------------------
+//
+// 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.
+//
+//------------------------------------------------------------------------------
+
+namespace JsonConvertTool.Properties
+{
+
+
+ [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
+ [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.0.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;
+ }
+ }
+ }
+}
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.settings b/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.settings
new file mode 100644
index 0000000..3964565
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/CPXV2 TRA V2/JsonConvertTool/Properties/licenses.licx b/CPXV2 TRA V2/JsonConvertTool/Properties/licenses.licx
new file mode 100644
index 0000000..fed9361
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/Properties/licenses.licx
@@ -0,0 +1 @@
+DevExpress.XtraEditors.TextEdit, DevExpress.XtraEditors.v22.1, Version=22.1.12.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
diff --git a/CPXV2 TRA V2/JsonConvertTool/packages.config b/CPXV2 TRA V2/JsonConvertTool/packages.config
new file mode 100644
index 0000000..81f92d2
--- /dev/null
+++ b/CPXV2 TRA V2/JsonConvertTool/packages.config
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA.BaseView/UcTRABaseView.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA.BaseView/UcTRABaseView.cs
index edc9926..b8a7a23 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA.BaseView/UcTRABaseView.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA.BaseView/UcTRABaseView.cs
@@ -21,7 +21,7 @@ namespace SystemX.Product.TRA.UIControl
NgHistory,
ProductHistory,
TestResult,
- TestSumamry,
+ TestSummary,
TestTrend
}
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA.sln b/CPXV2 TRA V2/SystemX.Product.CP.TRA.sln
index 2b7f382..47142b0 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA.sln
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.33027.164
+# Visual Studio Version 17
+VisualStudioVersion = 17.9.34728.123
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{18C1E9B6-823D-49DB-8253-ED32EEA21DB1}"
EndProject
@@ -12,6 +12,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemX.Product.CP.TRA", "S
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SystemX.Product.CP.TRA.BaseView", "SystemX.Product.CP.TRA.BaseView\SystemX.Product.CP.TRA.BaseView.csproj", "{910BB092-A5F3-4ACE-BBF8-C19434F1FA8E}"
EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JsonConvertTool", "JsonConvertTool\JsonConvertTool.csproj", "{7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -36,12 +38,20 @@ Global
{910BB092-A5F3-4ACE-BBF8-C19434F1FA8E}.Release|Any CPU.Build.0 = Release|Any CPU
{910BB092-A5F3-4ACE-BBF8-C19434F1FA8E}.Release|x64.ActiveCfg = Release|Any CPU
{910BB092-A5F3-4ACE-BBF8-C19434F1FA8E}.Release|x64.Build.0 = Release|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Debug|x64.Build.0 = Debug|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Release|x64.ActiveCfg = Release|Any CPU
+ {7D1035C0-4E6B-493B-B11A-7D7CF8B082FD}.Release|x64.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {34BF09E0-D510-452D-8E8B-B0D1C6FE25BF}
VisualSVNWorkingCopyRoot = .
+ SolutionGuid = {34BF09E0-D510-452D-8E8B-B0D1C6FE25BF}
EndGlobalSection
EndGlobal
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DB/DataBaseConn.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DB/DataBaseConn.cs
index 40d7875..2c9990f 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DB/DataBaseConn.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DB/DataBaseConn.cs
@@ -136,14 +136,14 @@ namespace DataBaseConnection.Control
if(list?.Count > 0)
{
//short term
- var shortTermCatalogName = list.Find(x => x.ToLower().Contains("short"));
+ var shortTermCatalogName = list.Find(x => x.ToLower().Contains("short") && x.ToLower().Contains("json"));
if(string.IsNullOrEmpty(shortTermCatalogName) ==false)
{
ShortTermCatalogName = shortTermCatalogName;
}
//long term
- var longTermCatalogName = list.FindAll(x => x.ToLower().Contains("long"));
+ var longTermCatalogName = list.FindAll(x => x.ToLower().Contains("long") && x.ToLower().Contains("json"));
if(longTermCatalogName?.Count() > 0)
{
LongTermCatalogName?.Clear();
@@ -165,6 +165,8 @@ namespace DataBaseConnection.Control
{
try
{
+ SqlConnection connecction;
+
connShortTerm1 = new SqlConnection($"Data Source=localhost; Initial Catalog={ShortTermCatalogName}; Integrated Security = SSPI; MultipleActiveResultSets=True;"); // MultipleActiveResultSets=True;");
connShortTerm1.Open();
@@ -172,7 +174,7 @@ namespace DataBaseConnection.Control
{
connLongTerm1.Add(catalog, new SqlConnection($"Data Source=localhost; Initial Catalog={catalog}; Integrated Security = SSPI; MultipleActiveResultSets=True;")); // MultipleActiveResultSets=True;");
- if (connLongTerm1.TryGetValue(catalog, out var connecction) == true)
+ if (connLongTerm1.TryGetValue(catalog, out connecction) == true)
{
connecction.Open();
}
@@ -191,6 +193,8 @@ namespace DataBaseConnection.Control
{
try
{
+ SqlConnection connecction;
+
connShortTerm2 = new SqlConnection($"Data Source=localhost; Initial Catalog={ShortTermCatalogName}; Integrated Security = SSPI; MultipleActiveResultSets=True;"); // MultipleActiveResultSets=True;");
connShortTerm2.Open();
@@ -198,7 +202,7 @@ namespace DataBaseConnection.Control
{
connLongTerm2.Add(catalog, new SqlConnection($"Data Source=localhost; Initial Catalog={catalog}; Integrated Security = SSPI; MultipleActiveResultSets=True;")); // MultipleActiveResultSets=True;");
- if (connLongTerm2.TryGetValue(catalog, out var connecction) == true)
+ if (connLongTerm2.TryGetValue(catalog, out connecction) == true)
{
connecction.Open();
}
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMDetailOverview.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMDetailOverview.cs
index 140fc96..52b0b5b 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMDetailOverview.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMDetailOverview.cs
@@ -186,7 +186,6 @@ namespace SystemX.Product.TRA.DataManager
else
{
strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[ProdNo_P] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN ";
- //strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[Testcode] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN ";
}
strQuery += $"FROM {DMCommon.SummaryLogTable} ";
@@ -317,14 +316,11 @@ namespace SystemX.Product.TRA.DataManager
strQuery += $"COUNT(CASE WHEN {DMCommon.SummaryLogTable}.[Result] != 'OK' THEN 1 END) AS {eColList.NG.ToString()},";
strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[ProdNo_P] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
- //strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[Testcode] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
- //strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
strQuery += $"{DMCommon.SummaryLogTable}.[TestListCntID] ";
strQuery += $"FROM {DMCommon.SummaryLogTable} ";
strQuery += $"WITH(NOLOCK) ";
- //strQuery += $"LEFT JOIN [CPXV2].[dbo].[PROD_Variant] AS X WITH(NOLOCK) ON X.No = CONVERT(NVARCHAR, {DMCommon.SummaryLogTable}.[TestListVariantNo]) ";
switch (GetSelectInfo)
{
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMOverview.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMOverview.cs
index ab2f6bb..1dd7fd2 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMOverview.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMOverview.cs
@@ -210,9 +210,7 @@ namespace SystemX.Product.TRA.DataManager
}
else
{
- //strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[ProdNo_P] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C], {DMCommon.SummaryLogTable}.[Testcode] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
- //strQuery += $"ROW_NUMBER() OVER(PARTITION BY {DMCommon.SummaryLogTable}.[ProdNo_C] ORDER BY CONVERT(CHAR(23), MAX({DMCommon.SummaryLogTable}.[TestDT]), 121) DESC) AS RN,";
strQuery = strQuery.Remove(strQuery.Length - 1, 1);
}
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMStepTrend.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMStepTrend.cs
index a61cd2e..c1d19b8 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMStepTrend.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMStepTrend.cs
@@ -49,7 +49,7 @@ namespace SystemX.Product.TRA.DataManager
}
}
- public DataTable SearchTestResult(DateTime dtTest)
+ public DataTable SearchTestResult(DateTime dtTest, ulong nAccNo)
{
if (TrendSelectView == eSelectDataView.DataDocumentViewC1)
{
@@ -81,9 +81,11 @@ namespace SystemX.Product.TRA.DataManager
strQuery += $"*";
strQuery += " ";
strQuery += $"from {DMCommon.ResultLogTable} ";
- strQuery += $"WITH(NOLOCK) ";
- strQuery += $"order by ";
- strQuery += $"[No]";
+ strQuery += $"WITH(NOLOCK) ";
+ strQuery += $"where [No] = {nAccNo}";
+ strQuery += " ";
+ //strQuery += $"order by ";
+ //strQuery += $"[No]";
strQuery += ";";
if (DatabaseConnControl.ScanLongTermLog) SQLCmd = new SqlCommand(strQuery, LongTermDBConn);
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMTestSummary.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMTestSummary.cs
index cac261d..e9bfe51 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMTestSummary.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/DataManager/DMTestSummary.cs
@@ -299,19 +299,17 @@ namespace SystemX.Product.TRA.DataManager
public DataTable SearchTestSummary(string[] testReqID, List vnpSummaryNo)
{
- DateTime start = DateTime.Now;
- try
- {
- string requId = testReqID?.First();
- if (string.IsNullOrEmpty(requId) == false && requId.Contains(";") == true || requId.Contains("@") == true)
- {
- start = Convert.ToDateTime(requId.Split(';','@')[0]);
- }
- }
- catch (Exception e)
- {
- //start = DateTime
- }
+ string strGetDataTime = testReqID?.First().Split('@',';')[0];
+
+ int nGetDataTimeYYYY = Convert.ToInt32(strGetDataTime.Substring(0, 4));
+ int nGetDataTimemm = Convert.ToInt32(strGetDataTime.Substring(4, 2));
+ int nGetDataTimeDD = Convert.ToInt32(strGetDataTime.Substring(6, 2));
+ int nGetDataTimeHH = Convert.ToInt32(strGetDataTime.Substring(8, 2));
+ int nGetDataTimeMM = Convert.ToInt32(strGetDataTime.Substring(10, 2));
+ int nGetDataTimeSS = Convert.ToInt32(strGetDataTime.Substring(12, 2));
+ int nGetDataTimeFFF = Convert.ToInt32(strGetDataTime.Substring(14, 3));
+
+ DateTime start = new DateTime(nGetDataTimeYYYY, nGetDataTimemm, nGetDataTimeDD, nGetDataTimeHH, nGetDataTimeMM, nGetDataTimeSS, nGetDataTimeFFF);//Convert.ToDateTime(testReqID?.First().Split('@')[0]);
if (TestSummarySelectView == eSelectDataView.DataDocumentViewC1)
{
@@ -367,24 +365,48 @@ namespace SystemX.Product.TRA.DataManager
list.AddRange(JsonConvert.DeserializeObject>(dtResult.Rows[i]["LogData"].ToString().GzipDecompress()));
}
+ /*
+ strQuery += $"SELECT ";
+ strQuery += $"Y.[StepID], ";
+ strQuery += $"AVG(CASE WHEN (Y.[MeasValStr] = NULL OR Y.[MeasValStr] = '') AND (Y.[Message] = NULL OR Y.[Message] = '') AND (Y.[MeasVal] != 0.00000 AND Y.[Result] != 'NONE') THEN Y.[MeasVal] ELSE NULL END) AS Average, ";
+ strQuery += $"COUNT(Y.[Result]) AS Total, ";
+ strQuery += $"COUNT(CASE WHEN Y.[Result] = 'OK' THEN 1 END) AS OK, ";
+ strQuery += $"COUNT(CASE WHEN Y.[Result] = 'NG' OR X.[Result] = 'ERROR' THEN 1 END) AS NG ";
+ strQuery += $" ";
+ strQuery += $"FROM [{DMCommon.SummaryLogTable}] AS X WITH(NOLOCK) ";
+ strQuery += $"INNER JOIN [{strTableTerm}] AS Y WITH(NOLOCK) ON (Y.AccessKey BETWEEN X.AccessStart AND X.AccessEnd) ";
+ */
+
dtResult = list.GroupBy(x => x.StepID).Select(y => new
{
StepID = y.First().StepID,
- Average = GetAvg(y.Average(z => z.MeasVal)),
+ Average = GetAvg(y.ToList()),
Total = y.Count(),
- OK = y.Count(z=>z.Result.Contains("OK")),
- NG = y.Count(z=>!z.Result.Contains("OK"))
- }).OrderBy(y=>y.StepID).ToDataTable();
+ OK = y.Count(z => z.Result.Contains("OK")),
+ NG = y.Count(z => !z.Result.Contains("OK"))
+ }).OrderBy(y => y.StepID).ToDataTable();
return dtResult;
}
- string GetAvg(decimal avg)
+ string GetAvg(List res)
{
- if (avg > 0)
- return avg.ToString();
- else
- return string.Empty;
+ CPXV2Log.Tables.HIST_TestResult value = res.First();
+
+ if (string.IsNullOrEmpty(value.MeasValStr) &&
+ string.IsNullOrEmpty(value.Message) &&
+ ((value.MeasVal != 0) &&
+ string.Compare(value.Result, "NONE") != 0))
+ return res.Average(x => x.MeasVal).ToString();
+
+ string strDefaultValue = string.Empty;
+
+ if (string.IsNullOrEmpty(value.MeasValStr) == false)
+ strDefaultValue = value.MeasValStr;
+ else if (string.IsNullOrEmpty(value.Message) == false)
+ strDefaultValue = value.Message;
+
+ return strDefaultValue;
}
DataTable GetRawResult(DetailTestDataCollection data)
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.Designer.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.Designer.cs
index 790e0a3..a632b12 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.Designer.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.Designer.cs
@@ -30,27 +30,27 @@
{
this.components = new System.ComponentModel.Container();
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MainForm));
- DevExpress.Skins.SkinPaddingEdges skinPaddingEdges5 = new DevExpress.Skins.SkinPaddingEdges();
- DevExpress.XtraBars.Ribbon.GalleryItemGroup galleryItemGroup3 = new DevExpress.XtraBars.Ribbon.GalleryItemGroup();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem13 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip13 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem13 = new DevExpress.Utils.ToolTipItem();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem14 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip14 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem14 = new DevExpress.Utils.ToolTipItem();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem15 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip15 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem15 = new DevExpress.Utils.ToolTipItem();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem16 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip16 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem16 = new DevExpress.Utils.ToolTipItem();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem17 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip17 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem17 = new DevExpress.Utils.ToolTipItem();
- DevExpress.XtraBars.Ribbon.GalleryItem galleryItem18 = new DevExpress.XtraBars.Ribbon.GalleryItem();
- DevExpress.Utils.SuperToolTip superToolTip18 = new DevExpress.Utils.SuperToolTip();
- DevExpress.Utils.ToolTipItem toolTipItem18 = new DevExpress.Utils.ToolTipItem();
- DevExpress.Skins.SkinPaddingEdges skinPaddingEdges6 = new DevExpress.Skins.SkinPaddingEdges();
+ DevExpress.Skins.SkinPaddingEdges skinPaddingEdges1 = new DevExpress.Skins.SkinPaddingEdges();
+ DevExpress.XtraBars.Ribbon.GalleryItemGroup galleryItemGroup1 = new DevExpress.XtraBars.Ribbon.GalleryItemGroup();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem1 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip1 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem1 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem2 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip2 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem2 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem3 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip3 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem3 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem4 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip4 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem4 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem5 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip5 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem5 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.XtraBars.Ribbon.GalleryItem galleryItem6 = new DevExpress.XtraBars.Ribbon.GalleryItem();
+ DevExpress.Utils.SuperToolTip superToolTip6 = new DevExpress.Utils.SuperToolTip();
+ DevExpress.Utils.ToolTipItem toolTipItem6 = new DevExpress.Utils.ToolTipItem();
+ DevExpress.Skins.SkinPaddingEdges skinPaddingEdges2 = new DevExpress.Skins.SkinPaddingEdges();
this.ribbonControl = new DevExpress.XtraBars.Ribbon.RibbonControl();
this.barStaticItemConn = new DevExpress.XtraBars.BarStaticItem();
this.barButtonItemQueryTestOn = new DevExpress.XtraBars.BarButtonItem();
@@ -248,7 +248,7 @@
this.repositoryItemProgressBar1});
this.ribbonControl.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonControlStyle.Office2013;
this.ribbonControl.ShowApplicationButton = DevExpress.Utils.DefaultBoolean.False;
- this.ribbonControl.Size = new System.Drawing.Size(1485, 197);
+ this.ribbonControl.Size = new System.Drawing.Size(1485, 237);
this.ribbonControl.StatusBar = this.ribbonStatusBar;
this.ribbonControl.ToolbarLocation = DevExpress.XtraBars.Ribbon.RibbonQuickAccessToolbarLocation.Hidden;
//
@@ -282,9 +282,9 @@
this.skinRibbonGalleryBarItem.Gallery.ItemCheckMode = DevExpress.XtraBars.Ribbon.Gallery.ItemCheckMode.SingleRadio;
this.skinRibbonGalleryBarItem.Gallery.ItemImageLayout = DevExpress.Utils.Drawing.ImageLayoutMode.Squeeze;
this.skinRibbonGalleryBarItem.Gallery.ItemImageLocation = DevExpress.Utils.Locations.Top;
- skinPaddingEdges5.Left = 8;
- skinPaddingEdges5.Right = 8;
- this.skinRibbonGalleryBarItem.Gallery.ItemImagePadding = skinPaddingEdges5;
+ skinPaddingEdges1.Left = 8;
+ skinPaddingEdges1.Right = 8;
+ this.skinRibbonGalleryBarItem.Gallery.ItemImagePadding = skinPaddingEdges1;
this.skinRibbonGalleryBarItem.Id = 14;
this.skinRibbonGalleryBarItem.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("skinRibbonGalleryBarItem.ImageOptions.Image")));
this.skinRibbonGalleryBarItem.ImageOptions.LargeImage = ((System.Drawing.Image)(resources.GetObject("skinRibbonGalleryBarItem.ImageOptions.LargeImage")));
@@ -326,60 +326,60 @@
//
this.skinPaletteRibbonGalleryBarItem.Gallery.AllowHtmlText = true;
this.skinPaletteRibbonGalleryBarItem.Gallery.ColumnCount = 4;
- galleryItemGroup3.Caption = "General";
- galleryItem13.Caption = "Default";
- galleryItem13.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
- toolTipItem13.Text = "Default";
- superToolTip13.Items.Add(toolTipItem13);
- galleryItem13.SuperTip = superToolTip13;
- galleryItem13.Tag = "DefaultSkinPalette";
- galleryItem13.Value = "DefaultSkinPalette";
- galleryItem14.Caption = "Blue Dark";
- galleryItem14.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image1")));
- toolTipItem14.Text = "Blue Dark";
- superToolTip14.Items.Add(toolTipItem14);
- galleryItem14.SuperTip = superToolTip14;
- galleryItem14.Tag = "Blue Dark";
- galleryItem14.Value = "Blue Dark";
- galleryItem15.Caption = "Pine Light";
- galleryItem15.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image2")));
- toolTipItem15.Text = "Pine Light";
- superToolTip15.Items.Add(toolTipItem15);
- galleryItem15.SuperTip = superToolTip15;
- galleryItem15.Tag = "Pine Light";
- galleryItem15.Value = "Pine Light";
- galleryItem16.Caption = "Pine Dark";
- galleryItem16.Checked = true;
- galleryItem16.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image3")));
- toolTipItem16.Text = "Pine Dark";
- superToolTip16.Items.Add(toolTipItem16);
- galleryItem16.SuperTip = superToolTip16;
- galleryItem16.Tag = "Pine Dark";
- galleryItem16.Value = "Pine Dark";
- galleryItem17.Caption = "Violet Light";
- galleryItem17.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image4")));
- toolTipItem17.Text = "Violet Light";
- superToolTip17.Items.Add(toolTipItem17);
- galleryItem17.SuperTip = superToolTip17;
- galleryItem17.Tag = "Violet Light";
- galleryItem17.Value = "Violet Light";
- galleryItem18.Caption = "Violet Dark";
- galleryItem18.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image5")));
- toolTipItem18.Text = "Violet Dark";
- superToolTip18.Items.Add(toolTipItem18);
- galleryItem18.SuperTip = superToolTip18;
- galleryItem18.Tag = "Violet Dark";
- galleryItem18.Value = "Violet Dark";
- galleryItemGroup3.Items.AddRange(new DevExpress.XtraBars.Ribbon.GalleryItem[] {
- galleryItem13,
- galleryItem14,
- galleryItem15,
- galleryItem16,
- galleryItem17,
- galleryItem18});
+ galleryItemGroup1.Caption = "General";
+ galleryItem1.Caption = "Default";
+ galleryItem1.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image")));
+ toolTipItem1.Text = "Default";
+ superToolTip1.Items.Add(toolTipItem1);
+ galleryItem1.SuperTip = superToolTip1;
+ galleryItem1.Tag = "DefaultSkinPalette";
+ galleryItem1.Value = "DefaultSkinPalette";
+ galleryItem2.Caption = "Blue Dark";
+ galleryItem2.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image1")));
+ toolTipItem2.Text = "Blue Dark";
+ superToolTip2.Items.Add(toolTipItem2);
+ galleryItem2.SuperTip = superToolTip2;
+ galleryItem2.Tag = "Blue Dark";
+ galleryItem2.Value = "Blue Dark";
+ galleryItem3.Caption = "Pine Light";
+ galleryItem3.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image2")));
+ toolTipItem3.Text = "Pine Light";
+ superToolTip3.Items.Add(toolTipItem3);
+ galleryItem3.SuperTip = superToolTip3;
+ galleryItem3.Tag = "Pine Light";
+ galleryItem3.Value = "Pine Light";
+ galleryItem4.Caption = "Pine Dark";
+ galleryItem4.Checked = true;
+ galleryItem4.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image3")));
+ toolTipItem4.Text = "Pine Dark";
+ superToolTip4.Items.Add(toolTipItem4);
+ galleryItem4.SuperTip = superToolTip4;
+ galleryItem4.Tag = "Pine Dark";
+ galleryItem4.Value = "Pine Dark";
+ galleryItem5.Caption = "Violet Light";
+ galleryItem5.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image4")));
+ toolTipItem5.Text = "Violet Light";
+ superToolTip5.Items.Add(toolTipItem5);
+ galleryItem5.SuperTip = superToolTip5;
+ galleryItem5.Tag = "Violet Light";
+ galleryItem5.Value = "Violet Light";
+ galleryItem6.Caption = "Violet Dark";
+ galleryItem6.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("resource.Image5")));
+ toolTipItem6.Text = "Violet Dark";
+ superToolTip6.Items.Add(toolTipItem6);
+ galleryItem6.SuperTip = superToolTip6;
+ galleryItem6.Tag = "Violet Dark";
+ galleryItem6.Value = "Violet Dark";
+ galleryItemGroup1.Items.AddRange(new DevExpress.XtraBars.Ribbon.GalleryItem[] {
+ galleryItem1,
+ galleryItem2,
+ galleryItem3,
+ galleryItem4,
+ galleryItem5,
+ galleryItem6});
this.skinPaletteRibbonGalleryBarItem.Gallery.Groups.AddRange(new DevExpress.XtraBars.Ribbon.GalleryItemGroup[] {
- galleryItemGroup3});
- this.skinPaletteRibbonGalleryBarItem.Gallery.ImageSize = new System.Drawing.Size(80, 56);
+ galleryItemGroup1});
+ this.skinPaletteRibbonGalleryBarItem.Gallery.ImageSize = new System.Drawing.Size(120, 84);
this.skinPaletteRibbonGalleryBarItem.Gallery.ItemCheckMode = DevExpress.XtraBars.Ribbon.Gallery.ItemCheckMode.SingleRadio;
this.skinPaletteRibbonGalleryBarItem.Gallery.ItemImageLayout = DevExpress.Utils.Drawing.ImageLayoutMode.Stretch;
this.skinPaletteRibbonGalleryBarItem.Gallery.MinimumColumnCount = 2;
@@ -614,9 +614,9 @@
this.skinRibbonGalleryBarItemTheme.Gallery.ItemCheckMode = DevExpress.XtraBars.Ribbon.Gallery.ItemCheckMode.SingleRadio;
this.skinRibbonGalleryBarItemTheme.Gallery.ItemImageLayout = DevExpress.Utils.Drawing.ImageLayoutMode.Squeeze;
this.skinRibbonGalleryBarItemTheme.Gallery.ItemImageLocation = DevExpress.Utils.Locations.Top;
- skinPaddingEdges6.Left = 8;
- skinPaddingEdges6.Right = 8;
- this.skinRibbonGalleryBarItemTheme.Gallery.ItemImagePadding = skinPaddingEdges6;
+ skinPaddingEdges2.Left = 8;
+ skinPaddingEdges2.Right = 8;
+ this.skinRibbonGalleryBarItemTheme.Gallery.ItemImagePadding = skinPaddingEdges2;
this.skinRibbonGalleryBarItemTheme.Id = 74;
this.skinRibbonGalleryBarItemTheme.ImageOptions.Image = ((System.Drawing.Image)(resources.GetObject("skinRibbonGalleryBarItemTheme.ImageOptions.Image")));
this.skinRibbonGalleryBarItemTheme.ImageOptions.LargeImage = ((System.Drawing.Image)(resources.GetObject("skinRibbonGalleryBarItemTheme.ImageOptions.LargeImage")));
@@ -907,11 +907,11 @@
// ribbonStatusBar
//
this.ribbonStatusBar.ItemLinks.Add(this.barStaticItem1);
- this.ribbonStatusBar.Location = new System.Drawing.Point(0, 753);
+ this.ribbonStatusBar.Location = new System.Drawing.Point(0, 747);
this.ribbonStatusBar.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
this.ribbonStatusBar.Name = "ribbonStatusBar";
this.ribbonStatusBar.Ribbon = this.ribbonControl;
- this.ribbonStatusBar.Size = new System.Drawing.Size(1485, 30);
+ this.ribbonStatusBar.Size = new System.Drawing.Size(1485, 36);
//
// dockManager
//
@@ -934,9 +934,9 @@
this.hideContainerLeft.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(50)))), ((int)(((byte)(50)))));
this.hideContainerLeft.Controls.Add(this.dockPanel);
this.hideContainerLeft.Dock = System.Windows.Forms.DockStyle.Left;
- this.hideContainerLeft.Location = new System.Drawing.Point(0, 197);
+ this.hideContainerLeft.Location = new System.Drawing.Point(0, 237);
this.hideContainerLeft.Name = "hideContainerLeft";
- this.hideContainerLeft.Size = new System.Drawing.Size(28, 556);
+ this.hideContainerLeft.Size = new System.Drawing.Size(32, 510);
//
// dockPanel
//
@@ -1022,7 +1022,7 @@
// MainForm
//
this.Appearance.Options.UseFont = true;
- this.AutoScaleDimensions = new System.Drawing.SizeF(11F, 24F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(14F, 29F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackgroundImageLayoutStore = System.Windows.Forms.ImageLayout.Zoom;
this.BackgroundImageStore = ((System.Drawing.Image)(resources.GetObject("$this.BackgroundImageStore")));
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.cs
index d1a93b6..b81d1ec 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.cs
@@ -409,7 +409,7 @@ namespace SystemX.Product.CP.TRA
{
foreach (string catalog in DatabaseConnControl.LongTermCatalogName)
{
- DatabaseConnControl.ConnectDataDB2(strConnIPAddressDT1, nConnPortDT1, catalog);
+ DatabaseConnControl.ConnectDataDB2(strConnIPAddressDT2, nConnPortDT2, catalog);
}
DBConnShortTerm2 = DatabaseConnControl.GetShortTermConn2();
@@ -425,10 +425,11 @@ namespace SystemX.Product.CP.TRA
LongTermSQLCmd1 = new Dictionary();
+ SqlCommand sqlCmd;
foreach (var con in DatabaseConnControl.GetLongTermConn1())
{
LongTermSQLCmd1.Add($"{con.Key}", new SqlCommand());
- if (LongTermSQLCmd1.TryGetValue($"{con.Key}", out var sqlCmd) == true)
+ if (LongTermSQLCmd1.TryGetValue($"{con.Key}", out sqlCmd) == true)
{
sqlCmd.Connection = con.Value;
}
@@ -448,12 +449,14 @@ namespace SystemX.Product.CP.TRA
ShortTermSQLCmd2.Connection = DatabaseConnControl.GetShortTermConn2();
LongTermSQLCmd2 = new Dictionary();
+ SqlCommand sqlCmd2;
+
foreach (var con in DatabaseConnControl.GetLongTermConn2())
{
LongTermSQLCmd2.Add($"{con.Key}", new SqlCommand());
- if (LongTermSQLCmd2.TryGetValue($"{con.Key}", out var sqlCmd) == true)
+ if (LongTermSQLCmd2.TryGetValue($"{con.Key}", out sqlCmd2) == true)
{
- sqlCmd.Connection = con.Value;
+ sqlCmd2.Connection = con.Value;
}
}
@@ -1465,7 +1468,7 @@ namespace SystemX.Product.CP.TRA
{
nFirstViewCount++;
- strSetViewID = eContents.TestSumamry.ToString() + eDataView.C1.ToString() + $"({nFirstViewCount})";
+ strSetViewID = eContents.TestSummary.ToString() + eDataView.C1.ToString() + $"({nFirstViewCount})";
view.ViewID = strSetViewID;
DicViewFirstMgr.Add(strSetViewID, view);
}
@@ -1473,13 +1476,13 @@ namespace SystemX.Product.CP.TRA
{
nSecondViewCount++;
- strSetViewID = eContents.TestSumamry.ToString() + eDataView.C2.ToString() + $"({nSecondViewCount})";
+ strSetViewID = eContents.TestSummary.ToString() + eDataView.C2.ToString() + $"({nSecondViewCount})";
view.ViewID = strSetViewID;
DicViewSecondMgr.Add(strSetViewID, view);
}
tabbedView.AddDocument(view, view.ViewID);
- //tabbedView.AddDocument(view, eContents.TestSumamry.ToString());
+ //tabbedView.AddDocument(view, eContents.TestSummary.ToString());
CreateAccordianElement(view);
SelectAccordianElement(view.ViewID);
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.resx b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.resx
index b1f821a..4cb1773 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.resx
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/MainForm.resx
@@ -313,56 +313,62 @@
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJlJREFUeF7t0EEBAjEQALEqQwIGTgM6MIG0iqiDxUPnm0cMZL2e73BPYCQwEhgJ
- jARGAiOBkcBIYCQwEhgJjARG6/35DfcERgIjgZHASGAkMBIYCYwERgIjgZHASGC09t7DPYGRwEhgJDAS
- GAmMBEYCI4GRwEhgJDASGK1zznBPYCQwEhgJjARGAiOBkcBIYCQwEhgJjAQmZ/7FSM+eKiweNQAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADhSURBVHhe7dHRFMRAFECxISvCCpShHJVYtIEYg1ePnPsR
+ gqzrfieugnEF4wrGFYwrGFcwrmBcwbiCcQXjCsYVjCsYVzCuYFzBuIJxBeMKxhWMW7/nP3EVjCsYVzCu
+ YFzBuIJxBeMKxhWMKxhXMK5gXMG4gnEF4wrGFYwrGFcwrmDc2ntPXAXjCsYVjCsYVzCuYFzBuIJxBeMK
+ xhWMKxhXMK5gXMG4gnEF4wrGFYwrGLfOORNXwbiCcQXjCsYVjCsYVzCuYFzBuIJxBeMKxhWMKxhXMK5g
+ XMG4gnEF4wqmnfkAOWuTNXE9au8AAAAASUVORK5CYII=
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJlJREFUeF7t0DEBAjEUQLFq6tINCRhAAzrOBF4/HvrWDDGQ9fo8wz2BkcBIYCQw
- EhgJjARGAiOBkcBIYCQwEhit9/c33BMYCYwERgIjgZHASGAkMBIYCYwERgIjgdE65wz3BEYCI4GRwEhg
- JDASGAmMBEYCI4GRwEhgtPbewz2BkcBIYCQwEhgJjARGAiOBkcBIYCQwEpjs+QPLxZswtjP5RwAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADgSURBVHhe7dExEcQwEAAxY3Lj7iGEQDAER0g81wuPHRVC
+ oPW736FLcJzgOMFxguMExwmOExwnOE5wnOA4wXGC4wTHCY4THCc4TnCc4DjBcYLj1vX8hy7BcYLjBMcJ
+ jhMcJzhOcJzgOMFxguMExwmOExwnOE5wnOA4wXGC4wTHCY5b55yhS3Cc4DjBcYLjBMcJjhMcJzhOcJzg
+ OMFxguMExwmOExwnOE5wnOA4wXGC49bee+gSHCc4TnCc4DjBcYLjBMcJjhMcJzhOcJzgOMFxguMExwmO
+ ExwnOE5wnOC0PR8WGZ02AM12IQAAAABJRU5ErkJggg==
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJlJREFUeF7t0DEBAjEUQLHaQwIWTgELCrBYEXXw8dC3ZoiBrNfnGe4JjARGAiOB
- kcBIYCQwEhgJjARGAiOBkcBovX/f4Z7ASGAkMBIYCYwERgIjgZHASGAkMBIYCYzW3nu4JzASGAmMBEYC
- I4GRwEhgJDASGAmMBEYCo3XOGe4JjARGAiOBkcBIYCQwEhgJjARGAiOBkcDkzB9hSCuN6ai/7AAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADgSURBVHhe7dFBFYQwEECx2kPCWkABFxSsxYqog8FH3j9E
+ Qdb13BNXwbiCcQXjCsYVjCsYVzCuYFzBuIJxBeMKxhWMKxhXMK5gXMG4gnEF4wrGrd//nbgKxhWMKxhX
+ MK5gXMG4gnEF4wrGFYwrGFcwrmBcwbiCcQXjCsYVjCsYVzBu7b0nroJxBeMKxhWMKxhXMK5gXMG4gnEF
+ 4wrGFYwrGFcwrmBcwbiCcQXjCsYVjFvnnImrYFzBuIJxBeMKxhWMKxhXMK5gXMG4gnEF4wrGFYwrGFcw
+ rmBcwbiCcQXTznwnymH8KvCrXAAAAABJRU5ErkJggg==
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJlJREFUeF7t0DEBAjEUQLFq6lINSMACClhOAaI/HvrWDDGQ9fp+hnsCI4GRwEhg
- JDASGAmMBEYCI4GRwEhgJDBa798z3BMYCYwERgIjgZHASGAkMBIYCYwERgIjgdE65wz3BEYCI4GRwEhg
- JDASGAmMBEYCI4GRwEhgtPbewz2BkcBIYCQwEhgJjARGAiOBkcBIYCQwEpjs+QNnxfcQhclFDAAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADgSURBVHhe7dExEcQwEAAxY3JjDA8hFIIgTRA86AuPHRVC
+ oPV77qFLcJzgOMFxguMExwmOExwnOE5wnOA4wXGC4wTHCY4THCc4TnCc4DjBcYLj1vV/hy7BcYLjBMcJ
+ jhMcJzhOcJzgOMFxguMExwmOExwnOE5wnOA4wXGC4wTHCY5b55yhS3Cc4DjBcYLjBMcJjhMcJzhOcJzg
+ OMFxguMExwmOExwnOE5wnOA4wXGC49bee+gSHCc4TnCc4DjBcYLjBMcJjhMcJzhOcJzgOMFxguMExwmO
+ ExwnOE5wnOC0PR8EeGv9yHPBgQAAAABJRU5ErkJggg==
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJlJREFUeF7t0DEBAjEUQLE6ZEHALVjAAx4rog4+HvrWDDGQ9X59h3sCI4GRwEhg
- JDASGAmMBEYCI4GRwEhgJDBan+c33BMYCYwERgIjgZHASGAkMBIYCYwERgIjgdHaew/3BEYCI4GRwEhg
- JDASGAmMBEYCI4GRwEhgtM45wz2BkcBIYCQwEhgJjARGAiOBkcBIYCQwEpic+QOCcYmeZWOr9AAAAABJ
- RU5ErkJggg==
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADgSURBVHhe7dExEcQwEAAxM0zzANKEQjg8R4MwgwsPzRZC
+ oPW73omrYFzBuIJxBeMKxhWMKxhXMK5gXMG4gnEF4wrGFYwrGFcwrmBcwbiCcQXj1nP/J66CcQXjCsYV
+ jCsYVzCuYFzBuIJxBeMKxhWMKxhXMK5gXMG4gnEF4wrGFYxbe++Jq2BcwbiCcQXjCsYVjCsYVzCuYFzB
+ uIJxBeMKxhWMKxhXMK5gXMG4gnEF49Y5Z+IqGFcwrmBcwbiCcQXjCsYVjCsYVzCuYFzBuIJxBeMKxhWM
+ KxhXMK5gXMG0Mx/PfPWmlONhxAAAAABJRU5ErkJggg==
- iVBORw0KGgoAAAANSUhEUgAAAFAAAAA4CAYAAABqtn+aAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
- wwAADsMBx2+oZAAAAJhJREFUeF7t0DEBAjEUQLFq6lIZLAhgwcJ5QPXHQ9+aIQay3q9nuCcwEhgJjARG
- AiOBkcBIYCQwEhgJjARGAqP1/fyGewIjgZHASGAkMBIYCYwERgIjgZHASGAkMFrnnOGewEhgJDASGAmM
- BEYCI4GRwEhgJDASGAmM1t57uCcwEhgJjARGAiOBkcBIYCQwEhgJjARGApM9f4juVTDktQ5SAAAAAElF
- TkSuQmCC
+ iVBORw0KGgoAAAANSUhEUgAAAHgAAABUCAYAAABJCvOfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
+ YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADgSURBVHhe7dExEcQwEAAxY3JjGN8EQJpQCIdHfeGxo0II
+ tK7fO3QJjhMcJzhOcJzgOMFxguMExwmOExwnOE5wnOA4wXGC4wTHCY4THCc4TnDceu7/0CU4TnCc4DjB
+ cYLjBMcJjhMcJzhOcJzgOMFxguMExwmOExwnOE5wnOA4wXHrnDN0CY4THCc4TnCc4DjBcYLjBMcJjhMc
+ JzhOcJzgOMFxguMExwmOExwnOE5w3Np7D12C4wTHCY4THCc4TnCc4DjBcYLjBMcJjhMcJzhOcJzgOMFx
+ guMExwmOE5y25wOsKv+nDIwGewAAAABJRU5ErkJggg==
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/SystemX.Product.CP.TRA.csproj b/CPXV2 TRA V2/SystemX.Product.CP.TRA/SystemX.Product.CP.TRA.csproj
index 0ea8f6e..5c0efd3 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/SystemX.Product.CP.TRA.csproj
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/SystemX.Product.CP.TRA.csproj
@@ -84,7 +84,7 @@
- ..\..\Output.SystemX\log4net.dll
+ ..\..\RPDM\Output.SystemX\log4net.dll
..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.1\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll
@@ -196,13 +196,13 @@
..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
- ..\..\Output.SystemX\System.Reactive.Core.dll
+ ..\..\RPDM\Output.SystemX\System.Reactive.Core.dll
- ..\..\Output.SystemX\System.Reactive.Interfaces.dll
+ ..\..\RPDM\Output.SystemX\System.Reactive.Interfaces.dll
- ..\..\Output.SystemX\System.Reactive.Linq.dll
+ ..\..\RPDM\Output.SystemX\System.Reactive.Linq.dll
..\packages\System.Runtime.CompilerServices.Unsafe.4.7.1\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
@@ -218,17 +218,17 @@
-
- ..\Output.SystemX\SystemX.Net.PCAdaptor.dll
-
- ..\..\Output.SystemX\SystemX.Net.Platform.dll
+ ..\..\RPDM\Output.SystemX\SystemX.Net.Platform.dll
+
+
+ ..\..\RPDM\Output.SystemX\SystemX.Net.XAdaptor.PC.UIM.dll
..\SystemX.Product.CP.TRA.BaseView\bin\x64\SystemX.Product.CP.TRA.BaseView.dll
- ..\..\Output.SystemX\SystemX.XEFCore.dll
+ ..\..\RPDM\Output.SystemX\SystemX.XEFCore.dll
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRADetailTestResult.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRADetailTestResult.cs
index 10879b5..24c9d10 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRADetailTestResult.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRADetailTestResult.cs
@@ -1,4 +1,5 @@
-using DevExpress.Spreadsheet;
+using DevExpress.Data.Helpers;
+using DevExpress.Spreadsheet;
using DevExpress.XtraPrinting;
using DevExpress.XtraVerticalGrid;
using DevExpress.XtraVerticalGrid.Rows;
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.Designer.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.Designer.cs
index b2816dd..90908c9 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.Designer.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.Designer.cs
@@ -88,28 +88,31 @@
this.layoutControl1.Controls.Add(this.splitContainerControl1);
this.layoutControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.layoutControl1.Location = new System.Drawing.Point(0, 0);
+ this.layoutControl1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.layoutControl1.Name = "layoutControl1";
this.layoutControl1.Root = this.Root;
- this.layoutControl1.Size = new System.Drawing.Size(1179, 635);
+ this.layoutControl1.Size = new System.Drawing.Size(1684, 952);
this.layoutControl1.TabIndex = 0;
this.layoutControl1.Text = "layoutControl1";
//
// labelControl1
//
- this.labelControl1.Location = new System.Drawing.Point(12, 578);
+ this.labelControl1.Location = new System.Drawing.Point(17, 868);
+ this.labelControl1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.labelControl1.Name = "labelControl1";
- this.labelControl1.Size = new System.Drawing.Size(77, 14);
+ this.labelControl1.Size = new System.Drawing.Size(110, 22);
this.labelControl1.StyleController = this.layoutControl1;
this.labelControl1.TabIndex = 9;
this.labelControl1.Text = "Auto Range : ";
//
// toggleSwitchAutoRange
//
- this.toggleSwitchAutoRange.Location = new System.Drawing.Point(93, 578);
+ this.toggleSwitchAutoRange.Location = new System.Drawing.Point(133, 868);
+ this.toggleSwitchAutoRange.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.toggleSwitchAutoRange.Name = "toggleSwitchAutoRange";
this.toggleSwitchAutoRange.Properties.OffText = "Off";
this.toggleSwitchAutoRange.Properties.OnText = "On";
- this.toggleSwitchAutoRange.Size = new System.Drawing.Size(196, 19);
+ this.toggleSwitchAutoRange.Size = new System.Drawing.Size(279, 27);
this.toggleSwitchAutoRange.StyleController = this.layoutControl1;
this.toggleSwitchAutoRange.TabIndex = 2;
//
@@ -117,9 +120,10 @@
//
this.simpleButtonAllData.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Question;
this.simpleButtonAllData.Appearance.Options.UseBackColor = true;
- this.simpleButtonAllData.Location = new System.Drawing.Point(148, 601);
+ this.simpleButtonAllData.Location = new System.Drawing.Point(211, 901);
+ this.simpleButtonAllData.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.simpleButtonAllData.Name = "simpleButtonAllData";
- this.simpleButtonAllData.Size = new System.Drawing.Size(141, 22);
+ this.simpleButtonAllData.Size = new System.Drawing.Size(201, 33);
this.simpleButtonAllData.StyleController = this.layoutControl1;
this.simpleButtonAllData.TabIndex = 8;
this.simpleButtonAllData.Text = "All Data";
@@ -129,9 +133,10 @@
//
this.simpleButtonOKDataOnly.Appearance.BackColor = DevExpress.LookAndFeel.DXSkinColors.FillColors.Primary;
this.simpleButtonOKDataOnly.Appearance.Options.UseBackColor = true;
- this.simpleButtonOKDataOnly.Location = new System.Drawing.Point(12, 601);
+ this.simpleButtonOKDataOnly.Location = new System.Drawing.Point(17, 901);
+ this.simpleButtonOKDataOnly.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.simpleButtonOKDataOnly.Name = "simpleButtonOKDataOnly";
- this.simpleButtonOKDataOnly.Size = new System.Drawing.Size(132, 22);
+ this.simpleButtonOKDataOnly.Size = new System.Drawing.Size(188, 33);
this.simpleButtonOKDataOnly.StyleController = this.layoutControl1;
this.simpleButtonOKDataOnly.TabIndex = 6;
this.simpleButtonOKDataOnly.Text = "Only OK Data";
@@ -140,42 +145,57 @@
// groupControl2
//
this.groupControl2.Controls.Add(this.vGridControlStepSummary);
- this.groupControl2.Location = new System.Drawing.Point(12, 314);
+ this.groupControl2.Location = new System.Drawing.Point(17, 471);
+ this.groupControl2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.groupControl2.Name = "groupControl2";
- this.groupControl2.Size = new System.Drawing.Size(277, 260);
+ this.groupControl2.Size = new System.Drawing.Size(395, 391);
this.groupControl2.TabIndex = 7;
this.groupControl2.Text = "Measured Data Analysis";
//
// vGridControlStepSummary
//
+ this.vGridControlStepSummary.BandsInterval = 3;
this.vGridControlStepSummary.Cursor = System.Windows.Forms.Cursors.Default;
this.vGridControlStepSummary.Dock = System.Windows.Forms.DockStyle.Fill;
- this.vGridControlStepSummary.Location = new System.Drawing.Point(2, 23);
+ this.vGridControlStepSummary.Location = new System.Drawing.Point(2, 34);
+ this.vGridControlStepSummary.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.vGridControlStepSummary.Name = "vGridControlStepSummary";
- this.vGridControlStepSummary.Size = new System.Drawing.Size(273, 235);
+ this.vGridControlStepSummary.OptionsView.FixedLineWidth = 3;
+ this.vGridControlStepSummary.OptionsView.MinRowAutoHeight = 15;
+ this.vGridControlStepSummary.RecordWidth = 143;
+ this.vGridControlStepSummary.RowHeaderWidth = 143;
+ this.vGridControlStepSummary.Size = new System.Drawing.Size(391, 355);
this.vGridControlStepSummary.TabIndex = 1;
//
// groupControl1
//
this.groupControl1.Controls.Add(this.vGridControlInfo);
- this.groupControl1.Location = new System.Drawing.Point(12, 12);
+ this.groupControl1.Location = new System.Drawing.Point(17, 18);
+ this.groupControl1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.groupControl1.Name = "groupControl1";
- this.groupControl1.Size = new System.Drawing.Size(277, 298);
+ this.groupControl1.Size = new System.Drawing.Size(395, 447);
this.groupControl1.TabIndex = 6;
this.groupControl1.Text = "Test Step Info.";
//
// vGridControlInfo
//
+ this.vGridControlInfo.BandsInterval = 3;
this.vGridControlInfo.Cursor = System.Windows.Forms.Cursors.Default;
this.vGridControlInfo.Dock = System.Windows.Forms.DockStyle.Fill;
- this.vGridControlInfo.Location = new System.Drawing.Point(2, 23);
+ this.vGridControlInfo.Location = new System.Drawing.Point(2, 34);
+ this.vGridControlInfo.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.vGridControlInfo.Name = "vGridControlInfo";
- this.vGridControlInfo.Size = new System.Drawing.Size(273, 273);
+ this.vGridControlInfo.OptionsView.FixedLineWidth = 3;
+ this.vGridControlInfo.OptionsView.MinRowAutoHeight = 15;
+ this.vGridControlInfo.RecordWidth = 143;
+ this.vGridControlInfo.RowHeaderWidth = 143;
+ this.vGridControlInfo.Size = new System.Drawing.Size(391, 411);
this.vGridControlInfo.TabIndex = 1;
//
// splitContainerControl1
//
- this.splitContainerControl1.Location = new System.Drawing.Point(293, 12);
+ this.splitContainerControl1.Location = new System.Drawing.Point(418, 18);
+ this.splitContainerControl1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.splitContainerControl1.Name = "splitContainerControl1";
//
// splitContainerControl1.Panel1
@@ -187,17 +207,19 @@
//
this.splitContainerControl1.Panel2.Controls.Add(this.chartControlMain);
this.splitContainerControl1.Panel2.Text = "Panel2";
- this.splitContainerControl1.Size = new System.Drawing.Size(874, 611);
- this.splitContainerControl1.SplitterPosition = 472;
+ this.splitContainerControl1.Size = new System.Drawing.Size(1249, 916);
+ this.splitContainerControl1.SplitterPosition = 674;
this.splitContainerControl1.TabIndex = 6;
//
// gridControlMain
//
this.gridControlMain.Dock = System.Windows.Forms.DockStyle.Fill;
+ this.gridControlMain.EmbeddedNavigator.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.gridControlMain.Location = new System.Drawing.Point(0, 0);
this.gridControlMain.MainView = this.gridViewMain;
+ this.gridControlMain.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.gridControlMain.Name = "gridControlMain";
- this.gridControlMain.Size = new System.Drawing.Size(472, 611);
+ this.gridControlMain.Size = new System.Drawing.Size(674, 916);
this.gridControlMain.TabIndex = 5;
this.gridControlMain.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
this.gridViewMain});
@@ -206,6 +228,7 @@
//
this.gridViewMain.Appearance.Row.BackColor = System.Drawing.Color.Transparent;
this.gridViewMain.Appearance.Row.Options.UseBackColor = true;
+ this.gridViewMain.DetailHeight = 525;
this.gridViewMain.GridControl = this.gridControlMain;
this.gridViewMain.Name = "gridViewMain";
this.gridViewMain.OptionsBehavior.Editable = false;
@@ -220,9 +243,10 @@
//
this.chartControlMain.Dock = System.Windows.Forms.DockStyle.Fill;
this.chartControlMain.Location = new System.Drawing.Point(0, 0);
+ this.chartControlMain.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.chartControlMain.Name = "chartControlMain";
this.chartControlMain.SeriesSerializable = new DevExpress.XtraCharts.Series[0];
- this.chartControlMain.Size = new System.Drawing.Size(392, 611);
+ this.chartControlMain.Size = new System.Drawing.Size(560, 916);
this.chartControlMain.TabIndex = 0;
this.chartControlMain.DoubleClick += new System.EventHandler(this.chartControlMain_DoubleClick);
//
@@ -239,15 +263,15 @@
this.layoutControlItem7,
this.layoutControlItem6});
this.Root.Name = "Root";
- this.Root.Size = new System.Drawing.Size(1179, 635);
+ this.Root.Size = new System.Drawing.Size(1684, 952);
this.Root.TextVisible = false;
//
// layoutControlItem3
//
this.layoutControlItem3.Control = this.splitContainerControl1;
- this.layoutControlItem3.Location = new System.Drawing.Point(281, 0);
+ this.layoutControlItem3.Location = new System.Drawing.Point(401, 0);
this.layoutControlItem3.Name = "layoutControlItem3";
- this.layoutControlItem3.Size = new System.Drawing.Size(878, 615);
+ this.layoutControlItem3.Size = new System.Drawing.Size(1255, 922);
this.layoutControlItem3.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem3.TextVisible = false;
//
@@ -255,10 +279,10 @@
//
this.layoutControlItem1.Control = this.groupControl1;
this.layoutControlItem1.Location = new System.Drawing.Point(0, 0);
- this.layoutControlItem1.MaxSize = new System.Drawing.Size(281, 0);
- this.layoutControlItem1.MinSize = new System.Drawing.Size(281, 5);
+ this.layoutControlItem1.MaxSize = new System.Drawing.Size(401, 0);
+ this.layoutControlItem1.MinSize = new System.Drawing.Size(401, 7);
this.layoutControlItem1.Name = "layoutControlItem1";
- this.layoutControlItem1.Size = new System.Drawing.Size(281, 302);
+ this.layoutControlItem1.Size = new System.Drawing.Size(401, 453);
this.layoutControlItem1.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.layoutControlItem1.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem1.TextVisible = false;
@@ -266,11 +290,11 @@
// layoutControlItem4
//
this.layoutControlItem4.Control = this.simpleButtonOKDataOnly;
- this.layoutControlItem4.Location = new System.Drawing.Point(0, 589);
- this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 26);
- this.layoutControlItem4.MinSize = new System.Drawing.Size(89, 26);
+ this.layoutControlItem4.Location = new System.Drawing.Point(0, 883);
+ this.layoutControlItem4.MaxSize = new System.Drawing.Size(0, 39);
+ this.layoutControlItem4.MinSize = new System.Drawing.Size(127, 39);
this.layoutControlItem4.Name = "layoutControlItem4";
- this.layoutControlItem4.Size = new System.Drawing.Size(136, 26);
+ this.layoutControlItem4.Size = new System.Drawing.Size(194, 39);
this.layoutControlItem4.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.layoutControlItem4.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem4.TextVisible = false;
@@ -278,11 +302,11 @@
// layoutControlItem5
//
this.layoutControlItem5.Control = this.simpleButtonAllData;
- this.layoutControlItem5.Location = new System.Drawing.Point(136, 589);
- this.layoutControlItem5.MaxSize = new System.Drawing.Size(0, 26);
- this.layoutControlItem5.MinSize = new System.Drawing.Size(89, 26);
+ this.layoutControlItem5.Location = new System.Drawing.Point(194, 883);
+ this.layoutControlItem5.MaxSize = new System.Drawing.Size(0, 39);
+ this.layoutControlItem5.MinSize = new System.Drawing.Size(127, 39);
this.layoutControlItem5.Name = "layoutControlItem5";
- this.layoutControlItem5.Size = new System.Drawing.Size(145, 26);
+ this.layoutControlItem5.Size = new System.Drawing.Size(207, 39);
this.layoutControlItem5.SizeConstraintsType = DevExpress.XtraLayout.SizeConstraintsType.Custom;
this.layoutControlItem5.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem5.TextVisible = false;
@@ -290,37 +314,38 @@
// layoutControlItem2
//
this.layoutControlItem2.Control = this.groupControl2;
- this.layoutControlItem2.Location = new System.Drawing.Point(0, 302);
+ this.layoutControlItem2.Location = new System.Drawing.Point(0, 453);
this.layoutControlItem2.Name = "layoutControlItem2";
- this.layoutControlItem2.Size = new System.Drawing.Size(281, 264);
+ this.layoutControlItem2.Size = new System.Drawing.Size(401, 397);
this.layoutControlItem2.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem2.TextVisible = false;
//
// layoutControlItem7
//
this.layoutControlItem7.Control = this.labelControl1;
- this.layoutControlItem7.Location = new System.Drawing.Point(0, 566);
+ this.layoutControlItem7.Location = new System.Drawing.Point(0, 850);
this.layoutControlItem7.Name = "layoutControlItem7";
- this.layoutControlItem7.Size = new System.Drawing.Size(81, 23);
+ this.layoutControlItem7.Size = new System.Drawing.Size(116, 33);
this.layoutControlItem7.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem7.TextVisible = false;
//
// layoutControlItem6
//
this.layoutControlItem6.Control = this.toggleSwitchAutoRange;
- this.layoutControlItem6.Location = new System.Drawing.Point(81, 566);
+ this.layoutControlItem6.Location = new System.Drawing.Point(116, 850);
this.layoutControlItem6.Name = "layoutControlItem6";
- this.layoutControlItem6.Size = new System.Drawing.Size(200, 23);
+ this.layoutControlItem6.Size = new System.Drawing.Size(285, 33);
this.layoutControlItem6.TextSize = new System.Drawing.Size(0, 0);
this.layoutControlItem6.TextVisible = false;
//
// UcTRAStepTrend
//
- this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
+ this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 18F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.layoutControl1);
+ this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
this.Name = "UcTRAStepTrend";
- this.Size = new System.Drawing.Size(1179, 635);
+ this.Size = new System.Drawing.Size(1684, 952);
this.Load += new System.EventHandler(this.UcTRADetailTestResult_Load);
((System.ComponentModel.ISupportInitialize)(this.layoutControl1)).EndInit();
this.layoutControl1.ResumeLayout(false);
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.cs
index 43e0703..88460cc 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRAStepTrend.cs
@@ -199,14 +199,17 @@ namespace SystemX.Product.TRA.UIControl
DataRow dtRowLogFirst = vdtRowLogs[0];
DateTime dtTested = Convert.ToDateTime(dtRowLogFirst[DMTestHistory.eColList.TestDateTime.ToString()]);
+ ulong ulAccessNo = Convert.ToUInt64(dtRowLogFirst[DMTestHistory.eColList.No.ToString()]);
+
CPXV2Log.Tables.HIST_TestResult drStep = null;
for (int i = 0; i < vdtRowLogs.Count; i++)
{
dtRowLogFirst = vdtRowLogs[i];
- dtTested = Convert.ToDateTime(dtRowLogFirst[DMTestHistory.eColList.TestDateTime.ToString()]);
+ dtTested = Convert.ToDateTime(dtRowLogFirst[DMTestHistory.eColList.TestDateTime.ToString()]);
+ ulAccessNo = Convert.ToUInt64(dtRowLogFirst[DMTestHistory.eColList.No.ToString()]);
- DataTable dtFirstLog = DataManager.SearchTestResult(dtTested);
+ DataTable dtFirstLog = DataManager.SearchTestResult(dtTested, ulAccessNo);
var logData = dtFirstLog.Rows[0]["LogData"].ToString();
var decompStr = logData.GzipDecompress();
@@ -221,17 +224,24 @@ namespace SystemX.Product.TRA.UIControl
if (drStep == null)
return;
-
+
+ int nPoint = 0;
DataTable dtResult = GetTrendData(dtTested, vdtRowLogs);
+ nPoint = 1;
dtResult = CombineLogForm(dtResult, dtRow);
+ nPoint = 2;
TrendDataResult resultUnit = MakeTrendSummary(dtResult, dtRow, data);
+ nPoint = 3;
ShowDataTable(dtResult);
- ShowTestStepSummary(resultUnit);
- ShowTrendChart(resultUnit);
+ nPoint = 4;
+ ShowTestStepSummary(resultUnit);
+
+ nPoint = 5;
+ ShowTrendChart(resultUnit);
}
catch (Exception ex)
{
@@ -248,16 +258,14 @@ namespace SystemX.Product.TRA.UIControl
{
DataTable dtResult = DataManager.GetTestStepResults(dtTested, vnData.Select(x => Convert.ToUInt64(x[0])).ToList());
- dtResult.Columns.Add(eColDataTable.RowNo.ToString(), typeof(int));
+ dtResult.Columns.Add(eColDataTable.RowNo.ToString(), typeof(ulong));
for (int i = 0; i < dtResult.Rows.Count; i++)
dtResult.Rows[i][eColDataTable.RowNo.ToString()] = i + 1;
-
return dtResult;
}
-
DataTable CombineLogForm(DataTable dtResult, DataRow dtRowTestlistSpec)
{
DataTable dtFinal = new DataTable();
@@ -275,41 +283,101 @@ namespace SystemX.Product.TRA.UIControl
DataRow drTL = DTTestLogList.AsEnumerable().Where(x =>
x[DMTestHistory.eColList.TestID.ToString()].ToString() == drLog[DMTestHistory.eColList.TestID.ToString()].ToString()).FirstOrDefault();*/
- //string strValue = drLog[DMTestHistory.eColList.No.ToString()].ToString();
+ try
+ {
+ string logData = drLog["LogData"].ToString();
+ string decompStr = logData.GzipDecompress();
+ List list = JsonConvert.DeserializeObject>(decompStr);
- DataRow drTL = DTTestLogList.AsEnumerable()
- .Where(x => Convert.ToInt64(x[DMTestHistory.eColList.No.ToString()]) == Convert.ToInt64(drLog[0].ToString())).FirstOrDefault();
+ long outValue = 0;
+ if (Int64.TryParse(dtRowTestlistSpec[2].ToString(), out outValue))
+ {
+ CPXV2Log.Tables.HIST_TestResult row = list.Where(x => x.StepID == outValue)?.First();
+ if(row == null)
+ {
+ continue;
+ }
- DataRow drDisp = dtFinal.NewRow();
+ if (//!string.IsNullOrEmpty(row.MeasValStr) ||
+ //!string.IsNullOrEmpty(row.Message) ||
+ ((row.MeasVal == 0) ||
+ string.Compare(row.Result, "NONE") == 0))
+ continue;
- if (drTL == null)
- continue;
+ //string strValue = drLog[DMTestHistory.eColList.No.ToString()].ToString();
+ try
+ {
+ DataRow drTL = DTTestLogList.AsEnumerable()
+ .Where(x => Convert.ToInt64(x[DMTestHistory.eColList.No.ToString()]) == Convert.ToInt64(drLog[0].ToString())).FirstOrDefault();
- var logData = drLog["LogData"].ToString();
- var decompStr = logData.GzipDecompress();
- var list = JsonConvert.DeserializeObject>(decompStr);
- var row = list.Where(x => x.StepID == Convert.ToInt64(dtRowTestlistSpec[2].ToString())).First();
+ DataRow drDisp = dtFinal.NewRow();
- drDisp[eColDataTable.RowNo.ToString()] = (int)drLog[eColDataTable.RowNo.ToString()];
- drDisp[eColDataTable.TestTime.ToString()] = drTL[1].ToString();
- drDisp[eColDataTable.ProductID.ToString()] = drTL[5].ToString();
- drDisp[eColDataTable.Result.ToString()] = row.Result.ToString();
+ if (drTL == null)
+ continue;
- bool bIsGlobal = (Convert.ToInt32(dtRowTestlistSpec[eColTestlist.IsGlobal.ToString()])) > 0 ? true : false;
-
- drDisp[eColDataTable.Min.ToString()] = bIsGlobal ? row.GlobalMin.ToString() : dtRowTestlistSpec[eColTestlist.SpecMin.ToString()].ToString();
- drDisp[eColDataTable.Max.ToString()] = bIsGlobal ? row.GlobalMAx.ToString() : dtRowTestlistSpec[eColTestlist.SpecMax.ToString()].ToString();
+ drDisp[0] = drLog[0];
+ drDisp[1] = drTL[1].ToString();
+ drDisp[2] = drTL[5].ToString();
- string strMessage = row.Message.ToString();
- string strMeasValStr = row.MeasValStr.ToString();
- string strMeasVal = row.MeasVal.ToString();
+ bool bIsGlobal = (Convert.ToInt32(dtRowTestlistSpec[eColTestlist.IsGlobal.ToString()])) > 0 ? true : false;
- drDisp[eColDataTable.Value.ToString()] = string.IsNullOrWhiteSpace(strMessage) ? (string.IsNullOrWhiteSpace(strMeasValStr) ? strMeasVal : strMeasValStr) : strMessage;
- drDisp[eColDataTable.Result.ToString()] = row.Result.ToString();
+ drDisp[3] = bIsGlobal ? row.GlobalMin.ToString() : dtRowTestlistSpec[eColTestlist.SpecMin.ToString()].ToString();
+ drDisp[5] = bIsGlobal ? row.GlobalMAx.ToString() : dtRowTestlistSpec[eColTestlist.SpecMax.ToString()].ToString();
- dtFinal.Rows.Add(drDisp);
+ string strMessage = row.Message.ToString();
+ string strMeasValStr = row.MeasValStr.ToString();
+ string strMeasVal = row.MeasVal.ToString();
+
+ drDisp[4] = string.IsNullOrWhiteSpace(strMessage) ? (string.IsNullOrWhiteSpace(strMeasValStr) ? strMeasVal : strMeasValStr) : strMessage;
+ drDisp[6] = row.Result.ToString();
+
+ /*
+ public enum eColDataTable
+ {
+ RowNo,
+ TestTime,
+ ProductID,
+ Min,
+ Value,
+ Max,
+ Result,
+ Duration
+ }
+ drDisp[eColDataTable.RowNo.ToString()] = drLog[eColDataTable.RowNo.ToString()];
+ drDisp[eColDataTable.TestTime.ToString()] = drTL[1].ToString();
+ drDisp[eColDataTable.ProductID.ToString()] = drTL[5].ToString();
+ drDisp[eColDataTable.Result.ToString()] = row.Result.ToString();
+
+ bool bIsGlobal = (Convert.ToInt32(dtRowTestlistSpec[eColTestlist.IsGlobal.ToString()])) > 0 ? true : false;
+
+ drDisp[eColDataTable.Min.ToString()] = bIsGlobal ? row.GlobalMin.ToString() : dtRowTestlistSpec[eColTestlist.SpecMin.ToString()].ToString();
+ drDisp[eColDataTable.Max.ToString()] = bIsGlobal ? row.GlobalMAx.ToString() : dtRowTestlistSpec[eColTestlist.SpecMax.ToString()].ToString();
+
+ string strMessage = row.Message.ToString();
+ string strMeasValStr = row.MeasValStr.ToString();
+ string strMeasVal = row.MeasVal.ToString();
+
+ drDisp[eColDataTable.Value.ToString()] = string.IsNullOrWhiteSpace(strMessage) ? (string.IsNullOrWhiteSpace(strMeasValStr) ? strMeasVal : strMeasValStr) : strMessage;
+ drDisp[eColDataTable.Result.ToString()] = row.Result.ToString();
+ */
+
+ dtFinal.Rows.Add(drDisp);
+ }
+ catch (Exception e)
+ {
+
+ }
+ }
+
+ }
+ catch (Exception ex)
+ {
+
+ }
}
+
+
return dtFinal;
}
diff --git a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRASummaryTestResult.cs b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRASummaryTestResult.cs
index 858320d..e599c9b 100644
--- a/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRASummaryTestResult.cs
+++ b/CPXV2 TRA V2/SystemX.Product.CP.TRA/UIControl/UcTRASummaryTestResult.cs
@@ -72,7 +72,7 @@ namespace SystemX.Product.TRA.UIControl
public UcTRASummaryTestResult()
{
- ContentsType = eContents.TestSumamry;
+ ContentsType = eContents.TestSummary;
InitializeComponent();
}
@@ -235,6 +235,18 @@ namespace SystemX.Product.TRA.UIControl
*/
//drTL = DataManager[nAccessPos].Rows.Find(drLog[eColTestLog.StepID.ToString()]);
+
+ /*
+ try
+ {
+ drTL = DataManager.dtHistVersionTL.Rows.Find(drLog[eColTestLog.StepID.ToString()]);
+ }
+ catch
+ {
+ drTL = null;
+ }
+ */
+
drTL = DataManager.dtHistVersionTL.Rows.Find(drLog[eColTestLog.StepID.ToString()]);
if (drTL == null)
@@ -251,24 +263,47 @@ namespace SystemX.Product.TRA.UIControl
DataRow drDisp = dtFinal.NewRow();
drDisp[eColDataTable.StepNo.ToString()] = Convert.ToInt32(Convert.ToInt32(drLog[eColTestSummary.StepID.ToString()]));
- drDisp[eColDataTable.Variant.ToString()] = drTL[eColTestlist.Variant.ToString()].ToString();
- drDisp[eColDataTable.Gate.ToString()] = drTL[eColTestlist.Gate.ToString()].ToString();
- drDisp[eColDataTable.MO.ToString()] = drTL[eColTestlist.StepDesc.ToString()].ToString();
- drDisp[eColDataTable.Function.ToString()] = drTL[eColTestlist.UseFunction.ToString()].ToString();
- bool bIsGlobal = (Convert.ToInt32(drTL[eColTestlist.IsGlobal.ToString()])) > 0 ? true : false;
+ if (drTL != null)
+ {
+ drDisp[eColDataTable.Variant.ToString()] = drTL[eColTestlist.Variant.ToString()].ToString();
+ drDisp[eColDataTable.Gate.ToString()] = drTL[eColTestlist.Gate.ToString()].ToString();
+ drDisp[eColDataTable.MO.ToString()] = drTL[eColTestlist.StepDesc.ToString()].ToString();
+ drDisp[eColDataTable.Function.ToString()] = drTL[eColTestlist.UseFunction.ToString()].ToString();
- drDisp[eColDataTable.Min.ToString()] = bIsGlobal ? "Global Var" : drTL[eColTestlist.SpecMin.ToString()].ToString();
- drDisp[eColDataTable.Max.ToString()] = bIsGlobal ? "Global Var" : drTL[eColTestlist.SpecMax.ToString()].ToString();
+ bool bIsGlobal = (Convert.ToInt32(drTL[eColTestlist.IsGlobal.ToString()])) > 0 ? true : false;
+ drDisp[eColDataTable.Min.ToString()] = bIsGlobal ? "Global Var" : drTL[eColTestlist.SpecMin.ToString()].ToString();
+ drDisp[eColDataTable.Max.ToString()] = bIsGlobal ? "Global Var" : drTL[eColTestlist.SpecMax.ToString()].ToString();
+ }
+ /*
+ else
+ {
+ drDisp[eColDataTable.Variant.ToString()] = drLog[eColDataTable.Variant.ToString()].ToString();
+ drDisp[eColDataTable.Gate.ToString()] = drLog[eColDataTable.Gate.ToString()].ToString();
+ drDisp[eColDataTable.MO.ToString()] = drLog[eColDataTable.MO.ToString()].ToString();
+ drDisp[eColDataTable.Function.ToString()] = drLog[eColDataTable.Function.ToString()].ToString();
+
+ drDisp[eColDataTable.Min.ToString()] = drLog[eColDataTable.Min.ToString()].ToString();
+ drDisp[eColDataTable.Max.ToString()] = drLog[eColDataTable.Max.ToString()].ToString();
+ }
+ */
var strMeasVal = drLog[eColTestSummary.Average.ToString()];
int nOK = Convert.ToInt32(drLog[eColTestSummary.OK.ToString()]);
int nNOK = Convert.ToInt32(drLog[eColTestSummary.NG.ToString()]);
drDisp[eColDataTable.Average.ToString()] = strMeasVal == null ? string.Empty : (nOK + nNOK) == 0 ? string.Empty : strMeasVal.ToString();
- drDisp[eColDataTable.Dimension.ToString()] = drTL[eColTestlist.Dim.ToString()].ToString();
-
+ if (drTL != null)
+ {
+ drDisp[eColDataTable.Dimension.ToString()] = drTL[eColTestlist.Dim.ToString()].ToString();
+ }
+ /*
+ else
+ {
+ drDisp[eColDataTable.Dimension.ToString()] = drLog[eColTestlist.Dim.ToString()].ToString();
+ }
+ */
drDisp[eColDataTable.Total.ToString()] = Convert.ToInt32(drLog[eColTestSummary.Total.ToString()]);
drDisp[eColDataTable.OK.ToString()] = nOK;
drDisp[eColDataTable.NG.ToString()] = nNOK;