Selaa lähdekoodia

Merge branch 'master' of ssh://10.10.100.21/source/mes-client

Hcsy 8 vuotta sitten
vanhempi
commit
635b396bba

+ 1 - 1
TestProject/Program.cs

@@ -25,7 +25,7 @@ namespace TestProject
                 //如果是管理员的身份
                 if (principal.IsInRole(WindowsBuiltInRole.Administrator))
                 {
-                    Application.Run(new Form2());
+                    Application.Run(new TaskTEST());
                 }
                 else
                 {

+ 47 - 0
TestProject/TaskTEST.Designer.cs

@@ -0,0 +1,47 @@
+namespace TestProject
+{
+    partial class TaskTEST
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the contents of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.SuspendLayout();
+            // 
+            // Form3
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(692, 376);
+            this.Name = "Form3";
+            this.Text = "Form3";
+            this.Load += new System.EventHandler(this.Form3_Load);
+            this.ResumeLayout(false);
+
+        }
+
+        #endregion
+    }
+}

+ 207 - 0
TestProject/TaskTEST.cs

@@ -0,0 +1,207 @@
+using System;
+using System.Collections.Concurrent;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Diagnostics;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace TestProject
+{
+    public partial class TaskTEST : Form
+    {
+        public TaskTEST()
+        {
+            InitializeComponent();
+        }
+
+        private Stopwatch stopWatch = new Stopwatch();
+
+        public void ParallelInvokeMethod1()
+        {
+            Parallel.For(0, 100, item =>
+            {
+                DoWork(item);
+            });
+        }
+
+        private void DoWork(int item)
+        {
+
+        }
+
+        public void ParallelBreak()
+        {
+            ConcurrentBag<int> bag = new ConcurrentBag<int>();
+            stopWatch.Start();
+            Parallel.For(0, 5000, (i, state) =>
+            {
+                if (bag.Count == 3000)
+                {
+                    state.Stop();
+                    return;
+                }
+                bag.Add(i);
+            });
+            stopWatch.Stop();
+            Console.WriteLine("Bag count is " + bag.Count + ", " + stopWatch.ElapsedMilliseconds);
+        }
+
+        public void Run1()
+        {
+            Thread.Sleep(2000);
+            Console.WriteLine("Task 1 is cost 2 sec");
+            throw new Exception("Exception in task 1");
+        }
+        public void Run2()
+        {
+            Thread.Sleep(3000);
+            Console.WriteLine("Task 2 is cost 3 sec");
+            throw new Exception("Exception in task 2");
+        }
+
+        public void ParallelInvokeMethod()
+        {
+            stopWatch.Start();
+            try
+            {
+                Parallel.Invoke(Run1, Run2);
+            }
+            catch (AggregateException aex)
+            {
+                foreach (var ex in aex.InnerExceptions)
+                {
+                    Console.WriteLine(ex.Message);
+                }
+            }
+            stopWatch.Stop();
+            Console.WriteLine("Parallel run " + stopWatch.ElapsedMilliseconds + " ms.");
+
+            stopWatch.Reset();
+            stopWatch.Start();
+            try
+            {
+                Run1();
+                Run2();
+            }
+            catch (Exception ex)
+            {
+                Console.WriteLine(ex.Message);
+            }
+            stopWatch.Stop();
+            Console.WriteLine("Normal run " + stopWatch.ElapsedMilliseconds + " ms.");
+        }
+
+
+        private void Form3_Load(object sender, EventArgs e)
+        {
+            //var task1 = new Task(() =>
+            //{
+            //    Console.WriteLine("Begin");
+            //    Thread.Sleep(2000);
+            //    Console.WriteLine("Finish");
+            //});
+            //Console.WriteLine("Before start:" + task1.Status);
+            //task1.Start();
+            //Console.WriteLine("After start:" + task1.Status);
+            //task1.Wait();
+            //Console.WriteLine("After Finish:" + task1.Status);
+            //Console.Read();
+
+            //var task1 = new System.Threading.Tasks.Task(() =>
+            //{
+            //    Console.WriteLine("Task 1 Begin");
+            //    Thread.Sleep(2000);
+            //    Console.WriteLine("Task 1 Finish");
+            //});
+            //var task2 = new System.Threading.Tasks.Task(() =>
+            //{
+            //    Console.WriteLine("Task 2 Begin");
+            //    Thread.Sleep(3000);
+            //    Console.WriteLine("Task 2 Finish");
+            //});
+
+            //task1.Start();
+            //task2.Start();
+            //var result = task1.ContinueWith(task =>
+            //{
+            //    Console.WriteLine("task1 finished!");
+            //    return "This is task result!";
+            //});
+
+            //Console.WriteLine(result.Result.ToString());
+
+            //TaskFactory tf = new TaskFactory();
+            //var SendFeedBackTask = tf.StartNew(() => { Console.WriteLine("Get some Data!"); })
+            //                .ContinueWith(s => { return false; })
+            //                .ContinueWith<string>(r =>
+            //                {
+            //                    if (r.Result)
+            //                    {
+            //                        return "Finished";
+            //                    }
+            //                    else
+            //                    {
+            //                        return "Error";
+            //                    }
+            //                });
+            //Console.WriteLine(SendFeedBackTask.Result);
+            //线程取消
+            var tokenSource = new CancellationTokenSource();
+            var token = tokenSource.Token;
+            var task = new TaskFactory().StartNew(() =>
+            {
+                for (var i = 0; i < 1000; i++)
+                {
+                    Thread.Sleep(1000);
+                    if (token.IsCancellationRequested)
+                    {
+                        Console.WriteLine("Abort mission success!");
+                        return;
+                    }
+                    Console.WriteLine("TASK");
+                }
+            }, token);
+            token.Register(() =>
+            {
+                Console.WriteLine("Canceled");
+            });
+            Console.WriteLine("Press enter to cancel task...");
+            Thread.Sleep(10000);
+            tokenSource.Cancel();
+            //关联子进程
+            //var pTask = new TaskFactory().StartNew(() =>
+            //{
+            //    var cTask = new TaskFactory().StartNew(() =>
+            //    {
+            //        Thread.Sleep(2000);
+            //        Console.WriteLine("Childen task finished!");
+            //    });
+            //    Console.WriteLine("Parent task finished!");
+            //});
+            //pTask.Wait();
+            //Console.WriteLine("Flag");
+            //Console.Read();
+
+            //加入关联关系,父Task会等子Task完成后才继续执行
+            //var pTask = new TaskFactory().StartNew(() =>
+            //{
+            //    var cTask = new TaskFactory().StartNew(() =>
+            //    {
+            //        Console.WriteLine("Childen task finished!");
+            //    }, TaskCreationOptions.AttachedToParent);
+            //    Thread.Sleep(2000);
+            //    Console.WriteLine("Parent task finished!");
+            //});
+            //pTask.Wait();
+            //System.Threading.Tasks.Task.WaitAll();
+
+            //Console.WriteLine("Flag");
+        }
+    }
+}

+ 120 - 0
TestProject/TaskTEST.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 13 - 0
TestProject/TestProject.csproj

@@ -73,6 +73,10 @@
     <NoWin32Manifest>true</NoWin32Manifest>
   </PropertyGroup>
   <ItemGroup>
+    <Reference Include="BenQGuru.eMES.DLLService, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
+      <SpecificVersion>False</SpecificVersion>
+      <HintPath>..\UAS_MesInterface(4.0)\bin\Debug\BenQGuru.eMES.DLLService.dll</HintPath>
+    </Reference>
     <Reference Include="CSkin">
       <HintPath>tool\CSkin.dll</HintPath>
     </Reference>
@@ -102,6 +106,12 @@
     <Compile Include="Form2.cs">
       <SubType>Form</SubType>
     </Compile>
+    <Compile Include="TaskTEST.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="TaskTEST.Designer.cs">
+      <DependentUpon>TaskTEST.cs</DependentUpon>
+    </Compile>
     <Compile Include="Program.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
     <Compile Include="QQButton.cs">
@@ -122,6 +132,9 @@
     <EmbeddedResource Include="Form2.resx">
       <DependentUpon>Form2.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="TaskTEST.resx">
+      <DependentUpon>TaskTEST.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
       <LastGenOutput>Resources.Designer.cs</LastGenOutput>

+ 3 - 2
UAS-出货标签管理/DbFind.cs

@@ -3,6 +3,7 @@ using System.Data;
 using System.Drawing;
 using System.Windows.Forms;
 using UAS_LabelMachine.CustomControl;
+using UAS_LabelMachine.Entity;
 using UAS_LabelMachine.PublicMethod;
 
 namespace UAS_LabelMachine
@@ -11,7 +12,7 @@ namespace UAS_LabelMachine
     {
         bool IsAbleDbFind;
         string BindTable;
-        DataHelper dh = new DataHelper();
+        DataHelper dh = SystemInf.dh;
         DataTable dt = new DataTable();
         AutoSizeFormClass asc = new AutoSizeFormClass();
 
@@ -76,7 +77,7 @@ namespace UAS_LabelMachine
             BindTable = tablename;
             SelectField = selectfield.Replace("#", "as");
             //返回一个带有结构的空的DataTable
-            dt = (DataTable)dh.ExecuteSql("select " + SelectField + " from " + tablename +" where rownum<20", "select");
+            dt = (DataTable)dh.ExecuteSql("select " + SelectField + " from " + tablename + " where rownum<20", "select");
             //设置DataTable的描述和列名,为了字段赋值
             selectfield = selectfield.Replace(",", "#");
             string[] NameAndCapation = selectfield.Split('#');

+ 12 - 0
UAS-出货标签管理/Entity/SystemInf.cs

@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace UAS_LabelMachine.Entity
+{
+    class SystemInf
+    {
+       public static DataHelper dh;
+    }
+}

+ 1 - 0
UAS-出货标签管理/Login.cs

@@ -30,6 +30,7 @@ namespace UAS_LabelMachine
         private void Login_Load(object sender, EventArgs e)
         {
             dh = new DataHelper();
+            SystemInf.dh = dh;
             //获取账套信息
             dt = (DataTable)dh.ExecuteSql("select ma_function,ms_pwd,ma_user from master ", "select");
             DataTable MasterDB = dt.Clone();

+ 1 - 1
UAS-出货标签管理/PowerSetting.cs

@@ -21,7 +21,7 @@ namespace UAS_LabelMachine
 
         private void PowerSetting_Load(object sender, EventArgs e)
         {
-            dh = new DataHelper();
+            dh = SystemInf.dh;
             LoadData();
             ChooseAll.ChooseAll(PowerSetDGV);
         }

+ 10 - 0
UAS-出货标签管理/UAS-出货标签管理.csproj

@@ -211,6 +211,7 @@
     <Compile Include="DbFind.Designer.cs">
       <DependentUpon>DbFind.cs</DependentUpon>
     </Compile>
+    <Compile Include="Entity\SystemInf.cs" />
     <Compile Include="Entity\User.cs" />
     <Compile Include="Login.cs">
       <SubType>Form</SubType>
@@ -281,6 +282,12 @@
     <Compile Include="采集策略.Designer.cs">
       <DependentUpon>采集策略.cs</DependentUpon>
     </Compile>
+    <Compile Include="附件内容打印.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="附件内容打印.Designer.cs">
+      <DependentUpon>附件内容打印.cs</DependentUpon>
+    </Compile>
     <EmbeddedResource Include="CustomControl\BlurSearch.resx">
       <DependentUpon>BlurSearch.cs</DependentUpon>
     </EmbeddedResource>
@@ -342,6 +349,9 @@
     <EmbeddedResource Include="采集策略.resx">
       <DependentUpon>采集策略.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="附件内容打印.resx">
+      <DependentUpon>附件内容打印.cs</DependentUpon>
+    </EmbeddedResource>
     <None Include="Properties\app.manifest" />
     <None Include="Properties\Settings.settings">
       <Generator>SettingsSingleFileGenerator</Generator>

+ 230 - 193
UAS-出货标签管理/UAS_出货标签管理.Designer.cs

@@ -28,7 +28,6 @@
         /// </summary>
         private void InitializeComponent()
         {
-            this.components = new System.ComponentModel.Container();
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(UAS_出货标签打印));
             this.pi_inoutno_label = new System.Windows.Forms.Label();
             this.label1 = new System.Windows.Forms.Label();
@@ -62,7 +61,7 @@
             this.CleanInputAfterCollect = new System.Windows.Forms.CheckBox();
             this.AllCollected = new System.Windows.Forms.Button();
             this.PowerSetting = new System.Windows.Forms.Button();
-            this.RefreshDBConnect = new System.Windows.Forms.Timer(this.components);
+            this.RefreshDBConnect = new System.Windows.Forms.Timer();
             this.GetGridOnly = new System.Windows.Forms.CheckBox();
             this.dataGridViewCheckBoxColumn1 = new System.Windows.Forms.DataGridViewCheckBoxColumn();
             this.dataGridViewTextBoxColumn1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
@@ -90,7 +89,7 @@
             this.dataGridViewTextBoxColumn21 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn22 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.dataGridViewTextBoxColumn23 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.MidSource = new System.Windows.Forms.BindingSource(this.components);
+            this.MidSource = new System.Windows.Forms.BindingSource();
             this.ChooseAll = new System.Windows.Forms.Button();
             this.ExportFileDialog = new System.Windows.Forms.FolderBrowserDialog();
             this.groupBoxWithBorder1 = new UAS_LabelMachine.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
@@ -122,6 +121,28 @@
             this.sg_code = new UAS_LabelMachine.CustomControl.SearchTextBox();
             this.MessageLog = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
             this.LabelInf = new UAS_LabelMachine.CustomControl.DataGridViewWithSerialNum();
+            this.Choose = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.pib_ifpick = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.pib_ifprint = new System.Windows.Forms.DataGridViewCheckBoxColumn();
+            this.pib_id1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_pdno = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_prodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pr_vendprodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_brand = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_madein = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_lotno = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_datecode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_cusbarcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_cusoutboxcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_datecode1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_qty = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_barcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_custbarcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pd_pocode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pd_custprodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pd_custprodspec = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_outboxcode1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pib_outboxcode2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
             this.pi_inoutno = new UAS_LabelMachine.CustomControl.EnterTextBox();
             this.SingleLabel = new UAS_LabelMachine.CustomControl.GroupBoxWithBorder.GroupBoxWithBorder();
             this.ViVoPlate = new System.Windows.Forms.Button();
@@ -155,28 +176,8 @@
             this.OutBoxLabelPrint = new System.Windows.Forms.Button();
             this.OutBoxLabelAutoPrint = new System.Windows.Forms.CheckBox();
             this.OutBoxCombox = new System.Windows.Forms.ComboBox();
-            this.Choose = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.pib_ifpick = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.pib_ifprint = new System.Windows.Forms.DataGridViewCheckBoxColumn();
-            this.pib_id1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_pdno = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_prodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pr_vendprodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_brand = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_madein = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_lotno = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_datecode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_cusbarcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_cusoutboxcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_datecode1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_qty = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_barcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_custbarcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pd_pocode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pd_custprodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pd_custprodspec = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_outboxcode1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
-            this.pib_outboxcode2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.AttachInfo = new System.Windows.Forms.Button();
+            this.pi_date = new System.Windows.Forms.Label();
             ((System.ComponentModel.ISupportInitialize)(this.Si_ItemDGV)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.MidSource)).BeginInit();
             this.groupBoxWithBorder1.SuspendLayout();
@@ -878,17 +879,22 @@
             // 
             // pr_code
             // 
+            this.pr_code.AllPower = null;
             this.pr_code.Caller = null;
             this.pr_code.Condition = null;
+            this.pr_code.DBTitle = null;
             this.pr_code.FormName = null;
             this.pr_code.Location = new System.Drawing.Point(76, 182);
             this.pr_code.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.pr_code.Name = "pr_code";
+            this.pr_code.Power = null;
+            this.pr_code.ReturnData = null;
             this.pr_code.SelectField = null;
             this.pr_code.SetValueField = null;
             this.pr_code.Size = new System.Drawing.Size(149, 22);
             this.pr_code.TabIndex = 68;
             this.pr_code.TableName = null;
+            this.pr_code.TextBoxEnable = false;
             this.pr_code.UserControlTextChanged += new UAS_LabelMachine.CustomControl.SearchTextBox.OnTextChange(this.pr_code_UserControlTextChanged);
             this.pr_code.SearchIconClick += new UAS_LabelMachine.CustomControl.SearchTextBox.Icon_Click(this.pr_code_SearchIconClick);
             // 
@@ -1065,17 +1071,22 @@
             // 
             // sg_code
             // 
+            this.sg_code.AllPower = null;
             this.sg_code.Caller = null;
             this.sg_code.Condition = null;
+            this.sg_code.DBTitle = null;
             this.sg_code.FormName = null;
             this.sg_code.Location = new System.Drawing.Point(76, 66);
             this.sg_code.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
             this.sg_code.Name = "sg_code";
+            this.sg_code.Power = null;
+            this.sg_code.ReturnData = null;
             this.sg_code.SelectField = null;
             this.sg_code.SetValueField = null;
             this.sg_code.Size = new System.Drawing.Size(149, 24);
             this.sg_code.TabIndex = 32;
             this.sg_code.TableName = null;
+            this.sg_code.TextBoxEnable = false;
             this.sg_code.UserControlTextChanged += new UAS_LabelMachine.CustomControl.SearchTextBox.OnTextChange(this.sg_code_UserControlTextChanged);
             // 
             // MessageLog
@@ -1128,6 +1139,178 @@
             this.LabelInf.CellValueChanged += new System.Windows.Forms.DataGridViewCellEventHandler(this.LabelInf_CellValueChanged);
             this.LabelInf.DataError += new System.Windows.Forms.DataGridViewDataErrorEventHandler(this.LabelInf_DataError);
             // 
+            // Choose
+            // 
+            this.Choose.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.Choose.HeaderText = "勾选";
+            this.Choose.Name = "Choose";
+            this.Choose.Resizable = System.Windows.Forms.DataGridViewTriState.True;
+            this.Choose.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
+            this.Choose.Width = 55;
+            // 
+            // pib_ifpick
+            // 
+            this.pib_ifpick.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.pib_ifpick.DataPropertyName = "pib_ifpick";
+            this.pib_ifpick.HeaderText = "已采集";
+            this.pib_ifpick.Name = "pib_ifpick";
+            this.pib_ifpick.Width = 60;
+            // 
+            // pib_ifprint
+            // 
+            this.pib_ifprint.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.pib_ifprint.DataPropertyName = "pib_ifprint";
+            this.pib_ifprint.HeaderText = "已打印";
+            this.pib_ifprint.Name = "pib_ifprint";
+            this.pib_ifprint.Width = 60;
+            // 
+            // pib_id1
+            // 
+            this.pib_id1.DataPropertyName = "pib_id";
+            this.pib_id1.HeaderText = "pib_id";
+            this.pib_id1.Name = "pib_id1";
+            this.pib_id1.Visible = false;
+            this.pib_id1.Width = 66;
+            // 
+            // pib_pdno
+            // 
+            this.pib_pdno.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.pib_pdno.DataPropertyName = "pib_pdno";
+            this.pib_pdno.HeaderText = "明细序号";
+            this.pib_pdno.Name = "pib_pdno";
+            this.pib_pdno.ReadOnly = true;
+            this.pib_pdno.Width = 96;
+            // 
+            // pib_prodcode
+            // 
+            this.pib_prodcode.DataPropertyName = "pib_prodcode";
+            this.pib_prodcode.HeaderText = "物料编号";
+            this.pib_prodcode.Name = "pib_prodcode";
+            this.pib_prodcode.ReadOnly = true;
+            this.pib_prodcode.Width = 78;
+            // 
+            // pr_vendprodcode
+            // 
+            this.pr_vendprodcode.DataPropertyName = "pr_vendprodcode";
+            this.pr_vendprodcode.HeaderText = "MPN";
+            this.pr_vendprodcode.Name = "pr_vendprodcode";
+            this.pr_vendprodcode.ReadOnly = true;
+            this.pr_vendprodcode.Width = 48;
+            // 
+            // pib_brand
+            // 
+            this.pib_brand.DataPropertyName = "pib_brand";
+            this.pib_brand.HeaderText = "品牌";
+            this.pib_brand.Name = "pib_brand";
+            this.pib_brand.ReadOnly = true;
+            this.pib_brand.Width = 54;
+            // 
+            // pib_madein
+            // 
+            this.pib_madein.DataPropertyName = "pib_madein";
+            this.pib_madein.HeaderText = "产地";
+            this.pib_madein.Name = "pib_madein";
+            this.pib_madein.Width = 54;
+            // 
+            // pib_lotno
+            // 
+            this.pib_lotno.DataPropertyName = "pib_lotno";
+            this.pib_lotno.HeaderText = "LotNo";
+            this.pib_lotno.Name = "pib_lotno";
+            this.pib_lotno.Width = 60;
+            // 
+            // pib_datecode
+            // 
+            this.pib_datecode.DataPropertyName = "pib_datecode";
+            this.pib_datecode.HeaderText = "DateCode";
+            this.pib_datecode.Name = "pib_datecode";
+            this.pib_datecode.Width = 78;
+            // 
+            // pib_cusbarcode
+            // 
+            this.pib_cusbarcode.DataPropertyName = "pib_cusbarcode";
+            this.pib_cusbarcode.HeaderText = "ViVo条码号";
+            this.pib_cusbarcode.Name = "pib_cusbarcode";
+            this.pib_cusbarcode.Width = 90;
+            // 
+            // pib_cusoutboxcode
+            // 
+            this.pib_cusoutboxcode.DataPropertyName = "pib_cusoutboxcode";
+            this.pib_cusoutboxcode.HeaderText = "ViVo外箱";
+            this.pib_cusoutboxcode.Name = "pib_cusoutboxcode";
+            this.pib_cusoutboxcode.Width = 78;
+            // 
+            // pib_datecode1
+            // 
+            this.pib_datecode1.DataPropertyName = "pib_datecode1";
+            this.pib_datecode1.HeaderText = "DateCode1";
+            this.pib_datecode1.Name = "pib_datecode1";
+            this.pib_datecode1.Visible = false;
+            this.pib_datecode1.Width = 84;
+            // 
+            // pib_qty
+            // 
+            this.pib_qty.DataPropertyName = "pib_qty";
+            this.pib_qty.HeaderText = "数量";
+            this.pib_qty.Name = "pib_qty";
+            this.pib_qty.ReadOnly = true;
+            this.pib_qty.Width = 54;
+            // 
+            // pib_barcode
+            // 
+            this.pib_barcode.DataPropertyName = "pib_barcode";
+            this.pib_barcode.HeaderText = "唯一条码";
+            this.pib_barcode.Name = "pib_barcode";
+            this.pib_barcode.ReadOnly = true;
+            this.pib_barcode.Width = 78;
+            // 
+            // pib_custbarcode
+            // 
+            this.pib_custbarcode.DataPropertyName = "pib_custbarcode";
+            this.pib_custbarcode.HeaderText = "客户条码";
+            this.pib_custbarcode.Name = "pib_custbarcode";
+            this.pib_custbarcode.Width = 78;
+            // 
+            // pd_pocode
+            // 
+            this.pd_pocode.DataPropertyName = "pd_pocode";
+            this.pd_pocode.HeaderText = "客户PO";
+            this.pd_pocode.Name = "pd_pocode";
+            this.pd_pocode.ReadOnly = true;
+            this.pd_pocode.Width = 66;
+            // 
+            // pd_custprodcode
+            // 
+            this.pd_custprodcode.DataPropertyName = "pd_custprodcode";
+            this.pd_custprodcode.HeaderText = "客户料号";
+            this.pd_custprodcode.Name = "pd_custprodcode";
+            this.pd_custprodcode.ReadOnly = true;
+            this.pd_custprodcode.Width = 78;
+            // 
+            // pd_custprodspec
+            // 
+            this.pd_custprodspec.DataPropertyName = "pd_custprodspec";
+            this.pd_custprodspec.HeaderText = "客户型号";
+            this.pd_custprodspec.Name = "pd_custprodspec";
+            this.pd_custprodspec.ReadOnly = true;
+            this.pd_custprodspec.Width = 78;
+            // 
+            // pib_outboxcode1
+            // 
+            this.pib_outboxcode1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.pib_outboxcode1.DataPropertyName = "pib_outboxcode1";
+            this.pib_outboxcode1.HeaderText = "中盒号";
+            this.pib_outboxcode1.Name = "pib_outboxcode1";
+            this.pib_outboxcode1.Width = 90;
+            // 
+            // pib_outboxcode2
+            // 
+            this.pib_outboxcode2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.pib_outboxcode2.DataPropertyName = "pib_outboxcode2";
+            this.pib_outboxcode2.HeaderText = "外箱号";
+            this.pib_outboxcode2.Name = "pib_outboxcode2";
+            this.pib_outboxcode2.Width = 90;
+            // 
             // pi_inoutno
             // 
             this.pi_inoutno.ID = null;
@@ -1535,177 +1718,27 @@
             this.OutBoxCombox.TabIndex = 78;
             this.OutBoxCombox.SelectedIndexChanged += new System.EventHandler(this.OutBoxCombox_SelectedIndexChanged);
             // 
-            // Choose
-            // 
-            this.Choose.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.Choose.HeaderText = "勾选";
-            this.Choose.Name = "Choose";
-            this.Choose.Resizable = System.Windows.Forms.DataGridViewTriState.True;
-            this.Choose.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
-            this.Choose.Width = 55;
-            // 
-            // pib_ifpick
-            // 
-            this.pib_ifpick.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.pib_ifpick.DataPropertyName = "pib_ifpick";
-            this.pib_ifpick.HeaderText = "已采集";
-            this.pib_ifpick.Name = "pib_ifpick";
-            this.pib_ifpick.Width = 60;
-            // 
-            // pib_ifprint
-            // 
-            this.pib_ifprint.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.pib_ifprint.DataPropertyName = "pib_ifprint";
-            this.pib_ifprint.HeaderText = "已打印";
-            this.pib_ifprint.Name = "pib_ifprint";
-            this.pib_ifprint.Width = 60;
-            // 
-            // pib_id1
-            // 
-            this.pib_id1.DataPropertyName = "pib_id";
-            this.pib_id1.HeaderText = "pib_id";
-            this.pib_id1.Name = "pib_id1";
-            this.pib_id1.Visible = false;
-            this.pib_id1.Width = 66;
-            // 
-            // pib_pdno
-            // 
-            this.pib_pdno.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.pib_pdno.DataPropertyName = "pib_pdno";
-            this.pib_pdno.HeaderText = "明细序号";
-            this.pib_pdno.Name = "pib_pdno";
-            this.pib_pdno.ReadOnly = true;
-            this.pib_pdno.Width = 96;
-            // 
-            // pib_prodcode
-            // 
-            this.pib_prodcode.DataPropertyName = "pib_prodcode";
-            this.pib_prodcode.HeaderText = "物料编号";
-            this.pib_prodcode.Name = "pib_prodcode";
-            this.pib_prodcode.ReadOnly = true;
-            this.pib_prodcode.Width = 78;
-            // 
-            // pr_vendprodcode
-            // 
-            this.pr_vendprodcode.DataPropertyName = "pr_vendprodcode";
-            this.pr_vendprodcode.HeaderText = "MPN";
-            this.pr_vendprodcode.Name = "pr_vendprodcode";
-            this.pr_vendprodcode.ReadOnly = true;
-            this.pr_vendprodcode.Width = 48;
-            // 
-            // pib_brand
-            // 
-            this.pib_brand.DataPropertyName = "pib_brand";
-            this.pib_brand.HeaderText = "品牌";
-            this.pib_brand.Name = "pib_brand";
-            this.pib_brand.ReadOnly = true;
-            this.pib_brand.Width = 54;
-            // 
-            // pib_madein
-            // 
-            this.pib_madein.DataPropertyName = "pib_madein";
-            this.pib_madein.HeaderText = "产地";
-            this.pib_madein.Name = "pib_madein";
-            this.pib_madein.Width = 54;
-            // 
-            // pib_lotno
-            // 
-            this.pib_lotno.DataPropertyName = "pib_lotno";
-            this.pib_lotno.HeaderText = "LotNo";
-            this.pib_lotno.Name = "pib_lotno";
-            this.pib_lotno.Width = 60;
-            // 
-            // pib_datecode
-            // 
-            this.pib_datecode.DataPropertyName = "pib_datecode";
-            this.pib_datecode.HeaderText = "DateCode";
-            this.pib_datecode.Name = "pib_datecode";
-            this.pib_datecode.Width = 78;
-            // 
-            // pib_cusbarcode
-            // 
-            this.pib_cusbarcode.DataPropertyName = "pib_cusbarcode";
-            this.pib_cusbarcode.HeaderText = "ViVo条码号";
-            this.pib_cusbarcode.Name = "pib_cusbarcode";
-            this.pib_cusbarcode.Width = 90;
-            // 
-            // pib_cusoutboxcode
-            // 
-            this.pib_cusoutboxcode.DataPropertyName = "pib_cusoutboxcode";
-            this.pib_cusoutboxcode.HeaderText = "ViVo外箱";
-            this.pib_cusoutboxcode.Name = "pib_cusoutboxcode";
-            this.pib_cusoutboxcode.Width = 78;
-            // 
-            // pib_datecode1
-            // 
-            this.pib_datecode1.DataPropertyName = "pib_datecode1";
-            this.pib_datecode1.HeaderText = "DateCode1";
-            this.pib_datecode1.Name = "pib_datecode1";
-            this.pib_datecode1.Visible = false;
-            this.pib_datecode1.Width = 84;
-            // 
-            // pib_qty
-            // 
-            this.pib_qty.DataPropertyName = "pib_qty";
-            this.pib_qty.HeaderText = "数量";
-            this.pib_qty.Name = "pib_qty";
-            this.pib_qty.ReadOnly = true;
-            this.pib_qty.Width = 54;
-            // 
-            // pib_barcode
-            // 
-            this.pib_barcode.DataPropertyName = "pib_barcode";
-            this.pib_barcode.HeaderText = "唯一条码";
-            this.pib_barcode.Name = "pib_barcode";
-            this.pib_barcode.ReadOnly = true;
-            this.pib_barcode.Width = 78;
-            // 
-            // pib_custbarcode
-            // 
-            this.pib_custbarcode.DataPropertyName = "pib_custbarcode";
-            this.pib_custbarcode.HeaderText = "客户条码";
-            this.pib_custbarcode.Name = "pib_custbarcode";
-            this.pib_custbarcode.Width = 78;
-            // 
-            // pd_pocode
-            // 
-            this.pd_pocode.DataPropertyName = "pd_pocode";
-            this.pd_pocode.HeaderText = "客户PO";
-            this.pd_pocode.Name = "pd_pocode";
-            this.pd_pocode.ReadOnly = true;
-            this.pd_pocode.Width = 66;
-            // 
-            // pd_custprodcode
-            // 
-            this.pd_custprodcode.DataPropertyName = "pd_custprodcode";
-            this.pd_custprodcode.HeaderText = "客户料号";
-            this.pd_custprodcode.Name = "pd_custprodcode";
-            this.pd_custprodcode.ReadOnly = true;
-            this.pd_custprodcode.Width = 78;
-            // 
-            // pd_custprodspec
-            // 
-            this.pd_custprodspec.DataPropertyName = "pd_custprodspec";
-            this.pd_custprodspec.HeaderText = "客户型号";
-            this.pd_custprodspec.Name = "pd_custprodspec";
-            this.pd_custprodspec.ReadOnly = true;
-            this.pd_custprodspec.Width = 78;
-            // 
-            // pib_outboxcode1
+            // AttachInfo
             // 
-            this.pib_outboxcode1.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.pib_outboxcode1.DataPropertyName = "pib_outboxcode1";
-            this.pib_outboxcode1.HeaderText = "中盒号";
-            this.pib_outboxcode1.Name = "pib_outboxcode1";
-            this.pib_outboxcode1.Width = 90;
+            this.AttachInfo.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.AttachInfo.Location = new System.Drawing.Point(230, 141);
+            this.AttachInfo.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2);
+            this.AttachInfo.Name = "AttachInfo";
+            this.AttachInfo.Size = new System.Drawing.Size(88, 26);
+            this.AttachInfo.TabIndex = 85;
+            this.AttachInfo.Text = "附加信息设置";
+            this.AttachInfo.UseVisualStyleBackColor = true;
+            this.AttachInfo.Click += new System.EventHandler(this.AttachInfo_Click);
             // 
-            // pib_outboxcode2
+            // pi_date
             // 
-            this.pib_outboxcode2.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
-            this.pib_outboxcode2.DataPropertyName = "pib_outboxcode2";
-            this.pib_outboxcode2.HeaderText = "外箱号";
-            this.pib_outboxcode2.Name = "pib_outboxcode2";
-            this.pib_outboxcode2.Width = 90;
+            this.pi_date.AutoSize = true;
+            this.pi_date.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pi_date.Location = new System.Drawing.Point(5, 158);
+            this.pi_date.Name = "pi_date";
+            this.pi_date.Size = new System.Drawing.Size(0, 20);
+            this.pi_date.TabIndex = 86;
+            this.pi_date.Visible = false;
             // 
             // UAS_出货标签打印
             // 
@@ -1713,6 +1746,8 @@
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(229)))), ((int)(((byte)(233)))), ((int)(((byte)(206)))));
             this.ClientSize = new System.Drawing.Size(1257, 686);
+            this.Controls.Add(this.pi_date);
+            this.Controls.Add(this.AttachInfo);
             this.Controls.Add(this.groupBoxWithBorder1);
             this.Controls.Add(this.ChooseAll);
             this.Controls.Add(this.GetGridOnly);
@@ -1929,5 +1964,7 @@
         private System.Windows.Forms.DataGridViewTextBoxColumn pd_custprodspec;
         private System.Windows.Forms.DataGridViewTextBoxColumn pib_outboxcode1;
         private System.Windows.Forms.DataGridViewTextBoxColumn pib_outboxcode2;
+        private System.Windows.Forms.Button AttachInfo;
+        private System.Windows.Forms.Label pi_date;
     }
 }

+ 70 - 92
UAS-出货标签管理/UAS_出货标签管理.cs

@@ -653,7 +653,9 @@ namespace UAS_LabelMachine
         {
             //获取维护的变量名称和SQL
             dt = (DataTable)dh.ExecuteSql("select lp_name,lp_sql from label left join LABELPARAMETER on la_id= lp_laid where la_id=" + la_id, "select");
+            DataTable Attach = (DataTable)dh.ExecuteSql("select lap_param lp_name,lap_value lp_sql  from LabelAttachPARAMETER where lap_custcode='" + pi_cardcode.Text + "'", "select");
             //用标签本身的变量作为最外层的循环条件去匹配;
+            dt.Merge(Attach);
             for (int j = 0; j < SingleDoc.Variables.FreeVariables.Count; j++)
             {
                 //将维护的模板参数和模板本身的参数名称进行比对
@@ -1113,11 +1115,12 @@ namespace UAS_LabelMachine
             if (e.KeyCode == Keys.Enter)
             {
                 sql.Clear();
-                sql.Append("select pi_id,pi_cardcode from prodinout where pi_inoutno='" + pi_inoutno.Text + "'");
+                sql.Append("select pi_id,pi_cardcode,to_char(pi_date,'yyyymmdd')pi_date from prodinout where pi_inoutno='" + pi_inoutno.Text + "'");
                 dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
                 if (dt.Rows.Count > 0)
                 {
                     pi_cardcode.Text = dt.Rows[0]["pi_cardcode"].ToString();
+                    pi_date.Text = dt.Rows[0]["pi_date"].ToString();
                     PI_ID = dt.Rows[0]["pi_id"].ToString();
                     LoadGridData(sender, e);
                     //重新输入单号后清除缓存
@@ -1235,6 +1238,9 @@ namespace UAS_LabelMachine
                 int CheckedRowCount = 0;
                 string[] arg = SingleBoxArgument.ToArray();
                 //打印所有的选中行
+                DataTable Attach = (DataTable)dh.ExecuteSql("select lap_param lp_name,lap_value lp_sql  from LabelAttachPARAMETER where lap_custcode='" + pi_cardcode.Text + "'", "select");
+                //用标签本身的变量作为最外层的循环条件去匹配;
+                dt.Merge(Attach);
                 for (int i = 0; i < LabelInf.RowCount; i++)
                 {
                     //勾选了并且未打印
@@ -1277,6 +1283,10 @@ namespace UAS_LabelMachine
                                     if (LabelInf.Rows[i].Cells["pib_cusbarcode"].Value != null)
                                         SingleDoc.Variables.FreeVariables.Item(j + 1).Value = LabelInf.Rows[i].Cells["pib_cusbarcode"].Value.ToString();
                                 }
+                                if (SingleDoc.Variables.FreeVariables.Item(j + 1).Value == "")
+                                {
+                                    SingleDoc.Variables.FreeVariables.Item(j + 1).Value = dt.Select("lp_name='" + SingleDoc.Variables.FreeVariables.Item(j + 1).Name + "'")[0]["lp_sql"].ToString();
+                                }
                                 ParamLog.AppendLine("pib_id:" + LabelInf.Rows[i].Cells["pib_id1"].Value.ToString() + ",SingleDoc打印参数【" + SingleDoc.Variables.FreeVariables.Item(j + 1).Name + "】赋值," + "取到值" + SingleDoc.Variables.FreeVariables.Item(j + 1).Value);
                             }
                             LogManager.DoLog(ParamLog.ToString());
@@ -1686,6 +1696,9 @@ namespace UAS_LabelMachine
                 GetMidBoxData();
             }
             DataTable dt = (DataTable)dh.ExecuteSql("select lp_name,lp_sql from label left join LABELPARAMETER on la_id= lp_laid where la_id=" + la_id, "select");
+            DataTable Attach = (DataTable)dh.ExecuteSql("select lap_param lp_name,lap_value lp_sql from LabelAttachPARAMETER where lap_custcode='" + pi_cardcode.Text + "'", "select");
+            //用标签本身的变量作为最外层的循环条件去匹配;
+            dt.Merge(Attach);
             string[] arg = MidBoxArgument.ToArray();
             for (int j = 0; j < MidDoc.Variables.FreeVariables.Count; j++)
             {
@@ -1752,6 +1765,9 @@ namespace UAS_LabelMachine
         private void MidBoxCodePrint(string la_id, int rowindex, int[] midindex)
         {
             DataTable dt = (DataTable)dh.ExecuteSql("select lp_name,lp_sql from label left join LABELPARAMETER on la_id= lp_laid where la_id=" + la_id, "select");
+            DataTable Attach = (DataTable)dh.ExecuteSql("select lap_param lp_name,lap_value lp_sql  from LabelAttachPARAMETER where lap_custcode='" + pi_cardcode.Text + "'", "select");
+            //用标签本身的变量作为最外层的循环条件去匹配;
+            dt.Merge(Attach);
             for (int j = 0; j < MidDoc.Variables.FreeVariables.Count; j++)
             {
                 //将维护的模板参数和模板本身的参数名称进行比对
@@ -1821,78 +1837,15 @@ namespace UAS_LabelMachine
             MidDoc.PrintDocument();
         }
 
-        private void MidBoxCodePrint(string la_id, int rowindex, string HandPrint)
-        {
-            DataTable dt = (DataTable)dh.ExecuteSql("select lp_name,lp_sql from label left join LABELPARAMETER on la_id= lp_laid where la_id=" + la_id, "select");
-            for (int j = 0; j < MidDoc.Variables.FreeVariables.Count; j++)
-            {
-                //将维护的模板参数和模板本身的参数名称进行比对
-                for (int k = 0; k < dt.Rows.Count; k++)
-                {
-                    //名称相等的时候,取SQL进行值的查询
-                    if (MidDoc.Variables.FreeVariables.Item(j + 1).Name == dt.Rows[k]["lp_name"].ToString())
-                    {
-                        //获取对应行的pib_id
-                        string pib_id = LabelInf.Rows[rowindex].Cells["pib_id1"].Value.ToString();
-                        string pib_outboxcode1 = LabelInf.Rows[rowindex].Cells["pib_outboxcode1"].Value.ToString();
-                        //获取打印执行的SQL
-                        string sql = dt.Rows[k]["lp_sql"].ToString();
-                        try
-                        {
-                            //获取打印执行的SQL
-                            if (sql.IndexOf("{") == 0)
-                            {
-                                MidDoc.Variables.FreeVariables.Item(j + 1).Value = dh.GetLabelParam(sql).ToString();
-                                LogManager.DoLog("打印参数【" + MidDoc.Variables.FreeVariables.Item(j + 1).Name + "】赋值," + "取值SQL:" + dt.Rows[k]["lp_sql"].ToString() + ",取到值" + MidDoc.Variables.FreeVariables.Item(j + 1).Value);
-                            }
-                            else
-                            {
-                                string ExeSQL = "";
-                                if (sql.ToLower().Contains("pib_lotno"))
-                                    MidDoc.Variables.FreeVariables.Item(j + 1).Value = LabelInf.Rows[rowindex].Cells["pib_lotno"].Value.ToString();
-                                else if (sql.ToLower().Contains("pib_datecode"))
-                                    MidDoc.Variables.FreeVariables.Item(j + 1).Value = LabelInf.Rows[rowindex].Cells["pib_datecode"].Value.ToString();
-                                else if (sql.ToLower().Contains("pib_madein"))
-                                    MidDoc.Variables.FreeVariables.Item(j + 1).Value = LabelInf.Rows[rowindex].Cells["pib_madein"].Value.ToString();
-                                else
-                                {
-                                    ExeSQL = sql.Substring(0, sql.IndexOf("{")) + pib_id + sql.Substring(sql.IndexOf("}") + 1);
-                                    ExeSQL = ExeSQL.Substring(0, ExeSQL.IndexOf("{")) + pib_outboxcode1;
-                                    if (ExeSQL.ToLower().Contains("pib_qty"))
-                                    {
-                                        ExeSQL += "group by pib_outboxcode1";
-                                    }
-                                    MidDoc.Variables.FreeVariables.Item(j + 1).Value = dh.GetLabelParam(ExeSQL).ToString();
-                                }
-                                LogManager.DoLog("打印参数【" + MidDoc.Variables.FreeVariables.Item(j + 1).Name + "】赋值," + "取值SQL:" + ExeSQL + ",取到值" + MidDoc.Variables.FreeVariables.Item(j + 1).Value);
-                            }
-                        }
-                        catch (Exception)
-                        {
-                            MessageBox.Show("SQL维护不正确,请检查SQL语句\n" + sql);
-                            return;
-                        }
-                    }
-                    else if (MidDoc.Variables.FreeVariables.Item(j + 1).Name == "DateCode1")
-                    {
-                        if (LabelInf.Rows[rowindex].Cells["pib_datecode1"].Value != null)
-                        {
-                            MidDoc.Variables.FreeVariables.Item(j + 1).Value = LabelInf.Rows[rowindex].Cells["pib_datecode1"].Value.ToString();
-                        }
-                    }
-                }
-            }
-            //保存参数打印
-            MidDoc.Printer.SwitchTo(MidLabelPrinter.Text);
-            MidDoc.PrintDocument();
-        }
-
         /// <summary>
         /// 执行打印外箱号
         /// </summary>
         private void OutBoxCodePrint(string la_id, int rowindex)
         {
             DataTable dt = (DataTable)dh.ExecuteSql("select lp_name,lp_sql,lp_valuetype from label left join LABELPARAMETER on la_id= lp_laid where la_id=" + la_id, "select");
+            DataTable Attach = (DataTable)dh.ExecuteSql("select lap_param lp_name,lap_value lp_sql  from LabelAttachPARAMETER where lap_custcode='" + pi_cardcode.Text + "'", "select");
+            //用标签本身的变量作为最外层的循环条件去匹配;
+            dt.Merge(Attach);
             try
             {
                 for (int j = 0; j < OutBoxDoc.Variables.FreeVariables.Count; j++)
@@ -2070,13 +2023,12 @@ namespace UAS_LabelMachine
             else
             {
                 sql.Clear();
-                sql.Append("select pd_custprodcode,pd_custprodspec,pd_pocode,pib_madein,pib_custbarcode,pib_id,pib_datecode1,pib_pdid,pib_piid,pib_pdno,pib_prodcode,pr_brand,nvl(nvl(pd_brand,pib_brand),pr_brand)pib_brand, pr_vendprodcode,");
+                sql.Append("select pd_custprodcode,pd_custprodspec,pd_pocode,pib_madein,pib_custbarcode,pib_id,pib_datecode1,pib_pdid,pib_piid,pib_pdno,pib_prodcode,nvl(nvl(pd_brand,pib_brand),pr_brand)pib_brand, pr_vendprodcode,");
                 sql.Append("pib_lotno,pib_datecode,pib_qty,pib_barcode,pib_outboxcode1,pib_outboxcode2,nvl(pib_ifpick,0)pib_ifpick,nvl(pib_ifprint,0)pib_ifprint");
-                sql.Append(",sa_pocode from prodiobarcode left join prodiodetail on pib_piid=pd_piid and pd_pdno=pib_pdno and ");
+                sql.Append(" from prodiobarcode left join prodiodetail on pib_piid=pd_piid and pd_pdno=pib_pdno and ");
                 sql.Append(" pd_prodcode=pib_prodcode left join product on pr_code=pib_prodcode left join sale on sa_code=pib_ordercode ");
                 sql.Append("where pib_piid='" + PI_ID + "' order by to_number(pib_outboxcode1),pib_id,pd_prodcode");
             }
-            Console.WriteLine(sql.ToString());
             dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
             MidSource.DataSource = dt;
             BaseUtil.FillDgvWithDataTable(LabelInf, (DataTable)MidSource.DataSource);
@@ -2327,33 +2279,48 @@ namespace UAS_LabelMachine
 
         private void GetOutBoxCode_Click(object sender, EventArgs e)
         {
-            int Current = 0;
-            sql.Clear();
-            sql.Append("select pr_qtyperplace,pd_qty,packingdetail.pd_cartonno,pr_zxbzs,packingdetail.pd_cartons from packingdetail left join packing on pd_piid=pi_id left join prodinout on ");
-            sql.Append("pi_packingcode=packing.pi_code left join product on pd_prodcode=pr_code where pi_inoutno='" + pi_inoutno.Text + "' order by pr_code,pd_detno");
-            dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
-            if (dt.Rows.Count > 0)
-            {
-                try { OutboxCapacity.Value = (decimal)dt.Rows[0]["pr_qtyperplace"] / (decimal)dt.Rows[0]["pr_zxbzs"]; }
-                catch (Exception) { }
-            }
-            try
+            if (dh.GetConfig("UsingPacking", "ProdInOut!Sale").ToString() != "")
             {
-                for (int i = 0; i < dt.Rows.Count; i++)
+                int Current = 0;
+                sql.Clear();
+                sql.Append("select pr_qtyperplace,pd_qty,packingdetail.pd_cartonno,pr_zxbzs,packingdetail.pd_cartons from packingdetail left join packing on pd_piid=pi_id left join prodinout on ");
+                sql.Append("pi_packingcode=packing.pi_code left join product on pd_prodcode=pr_code where pi_inoutno='" + pi_inoutno.Text + "' order by pr_code,pd_detno");
+                dt = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
+                if (dt.Rows.Count > 0)
                 {
-                    int pd_qty = int.Parse(dt.Rows[i]["pd_qty"].ToString());
-                    int pr_zxbzs = int.Parse(dt.Rows[i]["pr_zxbzs"].ToString());
-                    int pd_cartons = int.Parse(dt.Rows[i]["pd_cartons"].ToString());
-                    for (int j = 0; j < pd_qty * pd_cartons / pr_zxbzs; j++)
+                    try { OutboxCapacity.Value = (decimal)dt.Rows[0]["pr_qtyperplace"] / (decimal)dt.Rows[0]["pr_zxbzs"]; }
+                    catch (Exception) { }
+                }
+                try
+                {
+                    for (int i = 0; i < dt.Rows.Count; i++)
                     {
-                        LabelInf.Rows[Current].Cells["pib_outboxcode2"].Value = dt.Rows[i]["pd_cartonno"].ToString();
-                        Current++;
+                        int pd_qty = int.Parse(dt.Rows[i]["pd_qty"].ToString());
+                        int pr_zxbzs = int.Parse(dt.Rows[i]["pr_zxbzs"].ToString());
+                        int pd_cartons = int.Parse(dt.Rows[i]["pd_cartons"].ToString());
+                        for (int j = 0; j < pd_qty * pd_cartons / pr_zxbzs; j++)
+                        {
+                            LabelInf.Rows[Current].Cells["pib_outboxcode2"].Value = dt.Rows[i]["pd_cartonno"].ToString();
+                            Current++;
+                        }
                     }
+                    GetPackingCode = true;
+                }
+                catch (Exception)
+                {
                 }
-                GetPackingCode = true;
             }
-            catch (Exception)
+            else
             {
+                int BoxCode = 0;
+                for (int i = 0; i < LabelInf.Rows.Count; i++)
+                {
+                    if (i % OutboxCapacity.Value == 0)
+                    {
+                        BoxCode = BoxCode + 1;
+                    }
+                    LabelInf.Rows[i].Cells["pib_outboxcode2"].Value = BoxCode;
+                }
             }
             SaveGrid_Click(sender, e);
         }
@@ -2574,14 +2541,25 @@ namespace UAS_LabelMachine
                         if (dt.Columns[i].ColumnName.ToLower() == LabelInf.Columns[j].DataPropertyName.ToLower())
                         {
                             dt.Columns[i].ColumnName = LabelInf.Columns[j].HeaderText;
+                            break;
                         }
                     }
                 }
-                eh.ExportExcel(dt, ExportFileDialog.SelectedPath, pi_inoutno.Text);
+                eh.ExportExcel(dt, ExportFileDialog.SelectedPath, pi_date.Text + "-" + pi_inoutno.Text);
                 string close = MessageBox.Show(this.ParentForm, "导出成功,是否打开文件", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
                 if (close.ToString() == "Yes")
-                    System.Diagnostics.Process.Start(ExportFileDialog.SelectedPath + "\\" + pi_inoutno.Text + ".xls");
+                    System.Diagnostics.Process.Start(ExportFileDialog.SelectedPath + "\\" + pi_date.Text + "-" + pi_inoutno.Text + ".xls");
+            }
+        }
+
+        private void AttachInfo_Click(object sender, EventArgs e)
+        {
+            if (pi_cardcode.Text != "")
+            {
+                附件内容打印 att = new 附件内容打印(pi_cardcode.Text);
+                att.ShowDialog();
             }
+            else MessageBox.Show("请先获取出库单信息");
         }
     }
 }

+ 2 - 1
UAS-出货标签管理/客户标签维护.cs

@@ -8,6 +8,7 @@ using System.Windows.Forms;
 using UAS_LabelMachine.CustomControl;
 using UAS_LabelMachine.Properties;
 using UAS_LabelMachine.PublicMethod;
+using UAS_LabelMachine.Entity;
 
 namespace UAS_LabelMachine
 {
@@ -88,7 +89,7 @@ namespace UAS_LabelMachine
             {
                 FTPShare.Visible = false;
             }
-            dh = new DataHelper();
+            dh = SystemInf.dh;
             condition.Append("");
             ChooseAll.ChooseAll(LabelDataGridView);
             BaseUtil.SetComboxData(la_type, "display", "value", labeltype);

+ 2 - 1
UAS-出货标签管理/生成条码.cs

@@ -6,6 +6,7 @@ using System.Drawing;
 using System.Text;
 using System.Text.RegularExpressions;
 using System.Windows.Forms;
+using UAS_LabelMachine.Entity;
 using UAS_LabelMachine.PublicMethod;
 
 namespace UAS_LabelMachine
@@ -44,7 +45,7 @@ namespace UAS_LabelMachine
 
         private void 生成条码_Load(object sender, EventArgs e)
         {
-            dh = new DataHelper();
+            dh = SystemInf.dh;
             ChooseAll.ChooseAll(ProdIoInfDGV);
             //如果传进了出入库单号则默认执行一次取数据
             if (pi_inoutno.Text != "")

+ 2 - 1
UAS-出货标签管理/采集策略.cs

@@ -2,6 +2,7 @@
 using System.Data;
 using System.Text;
 using System.Windows.Forms;
+using UAS_LabelMachine.Entity;
 using UAS_LabelMachine.PublicMethod;
 
 namespace UAS_LabelMachine
@@ -41,7 +42,7 @@ namespace UAS_LabelMachine
         private void 采集策略_Load(object sender, EventArgs e)
         {
             asc.controllInitializeSize(this);
-            dh = new DataHelper();
+            dh = SystemInf.dh;
             pb_name.FormName = Name;
             pb_name.SetValueField = new string[] { "pb_name" };
             pb_name.TableName = "productbrand";

+ 413 - 0
UAS-出货标签管理/附件内容打印.Designer.cs

@@ -0,0 +1,413 @@
+namespace UAS_LabelMachine
+{
+    partial class 附件内容打印
+    {
+        /// <summary>
+        /// Required designer variable.
+        /// </summary>
+        private System.ComponentModel.IContainer components = null;
+
+        /// <summary>
+        /// Clean up any resources being used.
+        /// </summary>
+        /// <lap_param name="disposing">true if managed resources should be disposed; otherwise, false.</lap_param>
+        protected override void Dispose(bool disposing)
+        {
+            if (disposing && (components != null))
+            {
+                components.Dispose();
+            }
+            base.Dispose(disposing);
+        }
+
+        #region Windows Form Designer generated code
+
+        /// <summary>
+        /// Required method for Designer support - do not modify
+        /// the lap_values of this method with the code editor.
+        /// </summary>
+        private void InitializeComponent()
+        {
+            this.lap_param1 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_param1_label = new System.Windows.Forms.Label();
+            this.lap_value1 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_value1_label = new System.Windows.Forms.Label();
+            this.lap_value3 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_value3_label = new System.Windows.Forms.Label();
+            this.lap_param3 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_param3_labe = new System.Windows.Forms.Label();
+            this.lap_value2 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_value2_label = new System.Windows.Forms.Label();
+            this.lap_param2 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_param2_label = new System.Windows.Forms.Label();
+            this.lap_value5 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_value5_label = new System.Windows.Forms.Label();
+            this.lap_param5 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_param5_label = new System.Windows.Forms.Label();
+            this.lap_value4 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_value4_label = new System.Windows.Forms.Label();
+            this.lap_param4 = new UAS_LabelMachine.CustomControl.EnterTextBox();
+            this.lap_param4_label = new System.Windows.Forms.Label();
+            this.Confirm = new System.Windows.Forms.Button();
+            this.lap_id4 = new System.Windows.Forms.Label();
+            this.lap_id5 = new System.Windows.Forms.Label();
+            this.lap_id2 = new System.Windows.Forms.Label();
+            this.lap_id3 = new System.Windows.Forms.Label();
+            this.lap_id1 = new System.Windows.Forms.Label();
+            this.SuspendLayout();
+            // 
+            // lap_param1
+            // 
+            this.lap_param1.ID = null;
+            this.lap_param1.Location = new System.Drawing.Point(77, 49);
+            this.lap_param1.Name = "lap_param1";
+            this.lap_param1.Size = new System.Drawing.Size(89, 21);
+            this.lap_param1.Str = null;
+            this.lap_param1.Str1 = null;
+            this.lap_param1.Str2 = null;
+            this.lap_param1.TabIndex = 0;
+            // 
+            // lap_param1_label
+            // 
+            this.lap_param1_label.AutoSize = true;
+            this.lap_param1_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_param1_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_param1_label.Location = new System.Drawing.Point(29, 49);
+            this.lap_param1_label.Name = "lap_param1_label";
+            this.lap_param1_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_param1_label.TabIndex = 61;
+            this.lap_param1_label.Text = "参数";
+            // 
+            // lap_value1
+            // 
+            this.lap_value1.ID = null;
+            this.lap_value1.Location = new System.Drawing.Point(235, 49);
+            this.lap_value1.Name = "lap_value1";
+            this.lap_value1.Size = new System.Drawing.Size(89, 21);
+            this.lap_value1.Str = null;
+            this.lap_value1.Str1 = null;
+            this.lap_value1.Str2 = null;
+            this.lap_value1.TabIndex = 1;
+            // 
+            // lap_value1_label
+            // 
+            this.lap_value1_label.AutoSize = true;
+            this.lap_value1_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_value1_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_value1_label.Location = new System.Drawing.Point(187, 49);
+            this.lap_value1_label.Name = "lap_value1_label";
+            this.lap_value1_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_value1_label.TabIndex = 63;
+            this.lap_value1_label.Text = "内容";
+            // 
+            // lap_value3
+            // 
+            this.lap_value3.ID = null;
+            this.lap_value3.Location = new System.Drawing.Point(235, 153);
+            this.lap_value3.Name = "lap_value3";
+            this.lap_value3.Size = new System.Drawing.Size(89, 21);
+            this.lap_value3.Str = null;
+            this.lap_value3.Str1 = null;
+            this.lap_value3.Str2 = null;
+            this.lap_value3.TabIndex = 5;
+            // 
+            // lap_value3_label
+            // 
+            this.lap_value3_label.AutoSize = true;
+            this.lap_value3_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_value3_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_value3_label.Location = new System.Drawing.Point(187, 153);
+            this.lap_value3_label.Name = "lap_value3_label";
+            this.lap_value3_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_value3_label.TabIndex = 67;
+            this.lap_value3_label.Text = "内容";
+            // 
+            // lap_param3
+            // 
+            this.lap_param3.ID = null;
+            this.lap_param3.Location = new System.Drawing.Point(77, 153);
+            this.lap_param3.Name = "lap_param3";
+            this.lap_param3.Size = new System.Drawing.Size(89, 21);
+            this.lap_param3.Str = null;
+            this.lap_param3.Str1 = null;
+            this.lap_param3.Str2 = null;
+            this.lap_param3.TabIndex = 4;
+            // 
+            // lap_param3_labe
+            // 
+            this.lap_param3_labe.AutoSize = true;
+            this.lap_param3_labe.BackColor = System.Drawing.Color.Transparent;
+            this.lap_param3_labe.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_param3_labe.Location = new System.Drawing.Point(29, 153);
+            this.lap_param3_labe.Name = "lap_param3_labe";
+            this.lap_param3_labe.Size = new System.Drawing.Size(42, 21);
+            this.lap_param3_labe.TabIndex = 65;
+            this.lap_param3_labe.Text = "参数";
+            // 
+            // lap_value2
+            // 
+            this.lap_value2.ID = null;
+            this.lap_value2.Location = new System.Drawing.Point(235, 102);
+            this.lap_value2.Name = "lap_value2";
+            this.lap_value2.Size = new System.Drawing.Size(89, 21);
+            this.lap_value2.Str = null;
+            this.lap_value2.Str1 = null;
+            this.lap_value2.Str2 = null;
+            this.lap_value2.TabIndex = 3;
+            // 
+            // lap_value2_label
+            // 
+            this.lap_value2_label.AutoSize = true;
+            this.lap_value2_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_value2_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_value2_label.Location = new System.Drawing.Point(187, 102);
+            this.lap_value2_label.Name = "lap_value2_label";
+            this.lap_value2_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_value2_label.TabIndex = 71;
+            this.lap_value2_label.Text = "内容";
+            // 
+            // lap_param2
+            // 
+            this.lap_param2.ID = null;
+            this.lap_param2.Location = new System.Drawing.Point(77, 102);
+            this.lap_param2.Name = "lap_param2";
+            this.lap_param2.Size = new System.Drawing.Size(89, 21);
+            this.lap_param2.Str = null;
+            this.lap_param2.Str1 = null;
+            this.lap_param2.Str2 = null;
+            this.lap_param2.TabIndex = 2;
+            // 
+            // lap_param2_label
+            // 
+            this.lap_param2_label.AutoSize = true;
+            this.lap_param2_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_param2_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_param2_label.Location = new System.Drawing.Point(29, 102);
+            this.lap_param2_label.Name = "lap_param2_label";
+            this.lap_param2_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_param2_label.TabIndex = 69;
+            this.lap_param2_label.Text = "参数";
+            // 
+            // lap_value5
+            // 
+            this.lap_value5.ID = null;
+            this.lap_value5.Location = new System.Drawing.Point(235, 247);
+            this.lap_value5.Name = "lap_value5";
+            this.lap_value5.Size = new System.Drawing.Size(89, 21);
+            this.lap_value5.Str = null;
+            this.lap_value5.Str1 = null;
+            this.lap_value5.Str2 = null;
+            this.lap_value5.TabIndex = 9;
+            // 
+            // lap_value5_label
+            // 
+            this.lap_value5_label.AutoSize = true;
+            this.lap_value5_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_value5_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_value5_label.Location = new System.Drawing.Point(187, 247);
+            this.lap_value5_label.Name = "lap_value5_label";
+            this.lap_value5_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_value5_label.TabIndex = 75;
+            this.lap_value5_label.Text = "内容";
+            // 
+            // lap_param5
+            // 
+            this.lap_param5.ID = null;
+            this.lap_param5.Location = new System.Drawing.Point(77, 247);
+            this.lap_param5.Name = "lap_param5";
+            this.lap_param5.Size = new System.Drawing.Size(89, 21);
+            this.lap_param5.Str = null;
+            this.lap_param5.Str1 = null;
+            this.lap_param5.Str2 = null;
+            this.lap_param5.TabIndex = 8;
+            // 
+            // lap_param5_label
+            // 
+            this.lap_param5_label.AutoSize = true;
+            this.lap_param5_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_param5_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_param5_label.Location = new System.Drawing.Point(29, 247);
+            this.lap_param5_label.Name = "lap_param5_label";
+            this.lap_param5_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_param5_label.TabIndex = 73;
+            this.lap_param5_label.Text = "参数";
+            // 
+            // lap_value4
+            // 
+            this.lap_value4.ID = null;
+            this.lap_value4.Location = new System.Drawing.Point(235, 197);
+            this.lap_value4.Name = "lap_value4";
+            this.lap_value4.Size = new System.Drawing.Size(89, 21);
+            this.lap_value4.Str = null;
+            this.lap_value4.Str1 = null;
+            this.lap_value4.Str2 = null;
+            this.lap_value4.TabIndex = 7;
+            // 
+            // lap_value4_label
+            // 
+            this.lap_value4_label.AutoSize = true;
+            this.lap_value4_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_value4_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_value4_label.Location = new System.Drawing.Point(187, 197);
+            this.lap_value4_label.Name = "lap_value4_label";
+            this.lap_value4_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_value4_label.TabIndex = 79;
+            this.lap_value4_label.Text = "内容";
+            // 
+            // lap_param4
+            // 
+            this.lap_param4.ID = null;
+            this.lap_param4.Location = new System.Drawing.Point(77, 197);
+            this.lap_param4.Name = "lap_param4";
+            this.lap_param4.Size = new System.Drawing.Size(89, 21);
+            this.lap_param4.Str = null;
+            this.lap_param4.Str1 = null;
+            this.lap_param4.Str2 = null;
+            this.lap_param4.TabIndex = 6;
+            // 
+            // lap_param4_label
+            // 
+            this.lap_param4_label.AutoSize = true;
+            this.lap_param4_label.BackColor = System.Drawing.Color.Transparent;
+            this.lap_param4_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_param4_label.Location = new System.Drawing.Point(29, 197);
+            this.lap_param4_label.Name = "lap_param4_label";
+            this.lap_param4_label.Size = new System.Drawing.Size(42, 21);
+            this.lap_param4_label.TabIndex = 77;
+            this.lap_param4_label.Text = "参数";
+            // 
+            // Confirm
+            // 
+            this.Confirm.Location = new System.Drawing.Point(148, 308);
+            this.Confirm.Name = "Confirm";
+            this.Confirm.Size = new System.Drawing.Size(75, 23);
+            this.Confirm.TabIndex = 81;
+            this.Confirm.Text = "确认";
+            this.Confirm.UseVisualStyleBackColor = true;
+            this.Confirm.Click += new System.EventHandler(this.Confirm_Click);
+            // 
+            // lap_id4
+            // 
+            this.lap_id4.AutoSize = true;
+            this.lap_id4.BackColor = System.Drawing.Color.Transparent;
+            this.lap_id4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_id4.Location = new System.Drawing.Point(139, 197);
+            this.lap_id4.Name = "lap_id4";
+            this.lap_id4.Size = new System.Drawing.Size(0, 21);
+            this.lap_id4.TabIndex = 86;
+            this.lap_id4.Visible = false;
+            // 
+            // lap_id5
+            // 
+            this.lap_id5.AutoSize = true;
+            this.lap_id5.BackColor = System.Drawing.Color.Transparent;
+            this.lap_id5.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_id5.Location = new System.Drawing.Point(139, 247);
+            this.lap_id5.Name = "lap_id5";
+            this.lap_id5.Size = new System.Drawing.Size(0, 21);
+            this.lap_id5.TabIndex = 85;
+            this.lap_id5.Visible = false;
+            // 
+            // lap_id2
+            // 
+            this.lap_id2.AutoSize = true;
+            this.lap_id2.BackColor = System.Drawing.Color.Transparent;
+            this.lap_id2.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_id2.Location = new System.Drawing.Point(139, 102);
+            this.lap_id2.Name = "lap_id2";
+            this.lap_id2.Size = new System.Drawing.Size(0, 21);
+            this.lap_id2.TabIndex = 84;
+            this.lap_id2.Visible = false;
+            // 
+            // lap_id3
+            // 
+            this.lap_id3.AutoSize = true;
+            this.lap_id3.BackColor = System.Drawing.Color.Transparent;
+            this.lap_id3.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_id3.Location = new System.Drawing.Point(139, 153);
+            this.lap_id3.Name = "lap_id3";
+            this.lap_id3.Size = new System.Drawing.Size(0, 21);
+            this.lap_id3.TabIndex = 83;
+            this.lap_id3.Visible = false;
+            // 
+            // lap_id1
+            // 
+            this.lap_id1.AutoSize = true;
+            this.lap_id1.BackColor = System.Drawing.Color.Transparent;
+            this.lap_id1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.lap_id1.Location = new System.Drawing.Point(139, 49);
+            this.lap_id1.Name = "lap_id1";
+            this.lap_id1.Size = new System.Drawing.Size(0, 21);
+            this.lap_id1.TabIndex = 82;
+            this.lap_id1.Visible = false;
+            // 
+            // 附件内容打印
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(364, 359);
+            this.Controls.Add(this.lap_id4);
+            this.Controls.Add(this.lap_id5);
+            this.Controls.Add(this.lap_id2);
+            this.Controls.Add(this.lap_id3);
+            this.Controls.Add(this.lap_id1);
+            this.Controls.Add(this.Confirm);
+            this.Controls.Add(this.lap_value4);
+            this.Controls.Add(this.lap_value4_label);
+            this.Controls.Add(this.lap_param4);
+            this.Controls.Add(this.lap_param4_label);
+            this.Controls.Add(this.lap_value5);
+            this.Controls.Add(this.lap_value5_label);
+            this.Controls.Add(this.lap_param5);
+            this.Controls.Add(this.lap_param5_label);
+            this.Controls.Add(this.lap_value2);
+            this.Controls.Add(this.lap_value2_label);
+            this.Controls.Add(this.lap_param2);
+            this.Controls.Add(this.lap_param2_label);
+            this.Controls.Add(this.lap_value3);
+            this.Controls.Add(this.lap_value3_label);
+            this.Controls.Add(this.lap_param3);
+            this.Controls.Add(this.lap_param3_labe);
+            this.Controls.Add(this.lap_value1);
+            this.Controls.Add(this.lap_value1_label);
+            this.Controls.Add(this.lap_param1);
+            this.Controls.Add(this.lap_param1_label);
+            this.Name = "附件内容打印";
+            this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
+            this.Text = "附加内容打印";
+            this.Load += new System.EventHandler(this.附件内容打印_Load);
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private CustomControl.EnterTextBox lap_param1;
+        private System.Windows.Forms.Label lap_param1_label;
+        private CustomControl.EnterTextBox lap_value1;
+        private System.Windows.Forms.Label lap_value1_label;
+        private CustomControl.EnterTextBox lap_value3;
+        private System.Windows.Forms.Label lap_value3_label;
+        private CustomControl.EnterTextBox lap_param3;
+        private System.Windows.Forms.Label lap_param3_labe;
+        private CustomControl.EnterTextBox lap_value2;
+        private System.Windows.Forms.Label lap_value2_label;
+        private CustomControl.EnterTextBox lap_param2;
+        private System.Windows.Forms.Label lap_param2_label;
+        private CustomControl.EnterTextBox lap_value5;
+        private System.Windows.Forms.Label lap_value5_label;
+        private CustomControl.EnterTextBox lap_param5;
+        private System.Windows.Forms.Label lap_param5_label;
+        private CustomControl.EnterTextBox lap_value4;
+        private System.Windows.Forms.Label lap_value4_label;
+        private CustomControl.EnterTextBox lap_param4;
+        private System.Windows.Forms.Label lap_param4_label;
+        private System.Windows.Forms.Button Confirm;
+        private System.Windows.Forms.Label lap_id4;
+        private System.Windows.Forms.Label lap_id5;
+        private System.Windows.Forms.Label lap_id2;
+        private System.Windows.Forms.Label lap_id3;
+        private System.Windows.Forms.Label lap_id1;
+    }
+}

+ 56 - 0
UAS-出货标签管理/附件内容打印.cs

@@ -0,0 +1,56 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.Windows.Forms;
+using UAS_LabelMachine.Entity;
+
+namespace UAS_LabelMachine
+{
+    public partial class 附件内容打印 : Form
+    {
+
+        DataHelper dh = SystemInf.dh;
+
+        string custcode;
+
+        public 附件内容打印(string CustCode)
+        {
+            custcode = CustCode;
+            InitializeComponent();
+        }
+
+        private void 附件内容打印_Load(object sender, EventArgs e)
+        {
+            DataTable dt = (DataTable)dh.ExecuteSql("select *  from LabelAttachPARAMETER where lap_custcode='" + custcode + "'", "select");
+            for (int i = 0; i < dt.Rows.Count; i++)
+            {
+                Controls["lap_id" + (i + 1)].Text = dt.Rows[i]["lap_id"].ToString();
+                Controls["lap_param" + (i + 1)].Text = dt.Rows[i]["lap_param"].ToString();
+                Controls["lap_value" + (i + 1)].Text = dt.Rows[i]["lap_value"].ToString();
+            }
+        }
+
+        private void Confirm_Click(object sender, EventArgs e)
+        {
+            string SQL = "";
+            for (int i = 1; i < 6; i++)
+            {
+                if (Controls["lap_id" + i].Text == "")
+                {
+                    SQL = "insert into LabelAttachPARAMETER(lap_id,lap_custcode,lap_param,lap_value)values(LabelAttachPARAMETER_seq.nextval,'" + custcode + "','" + Controls["lap_param" + i].Text + "','" + Controls["lap_value" + i].Text + "')";
+                }
+                else
+                {
+                    SQL = "update LabelAttachPARAMETER set lap_custcode='" + custcode + "',lap_param='" + Controls["lap_param" + i].Text + "',lap_value='" + Controls["lap_value" + i].Text + "' where lap_id='" + Controls["lap_id" + i].Text + "'";
+                }
+                dh.ExecuteSql(SQL, "insert");
+            }
+            MessageBox.Show("保存成功");
+            Close();
+        }
+    }
+}

+ 120 - 0
UAS-出货标签管理/附件内容打印.resx

@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="utf-8"?>
+<root>
+  <!-- 
+    Microsoft ResX Schema 
+    
+    Version 2.0
+    
+    The primary goals of this format is to allow a simple XML format 
+    that is mostly human readable. The generation and parsing of the 
+    various data types are done through the TypeConverter classes 
+    associated with the data types.
+    
+    Example:
+    
+    ... ado.net/XML headers & schema ...
+    <resheader name="resmimetype">text/microsoft-resx</resheader>
+    <resheader name="version">2.0</resheader>
+    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
+    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
+    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
+    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
+    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
+        <value>[base64 mime encoded serialized .NET Framework object]</value>
+    </data>
+    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
+        <comment>This is a comment</comment>
+    </data>
+                
+    There are any number of "resheader" rows that contain simple 
+    name/value pairs.
+    
+    Each data row contains a name, and value. The row also contains a 
+    type or mimetype. Type corresponds to a .NET class that support 
+    text/value conversion through the TypeConverter architecture. 
+    Classes that don't support this are serialized and stored with the 
+    mimetype set.
+    
+    The mimetype is used for serialized objects, and tells the 
+    ResXResourceReader how to depersist the object. This is currently not 
+    extensible. For a given mimetype the value must be set accordingly:
+    
+    Note - application/x-microsoft.net.object.binary.base64 is the format 
+    that the ResXResourceWriter will generate, however the reader can 
+    read any of the formats listed below.
+    
+    mimetype: application/x-microsoft.net.object.binary.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
+            : and then encoded with base64 encoding.
+    
+    mimetype: application/x-microsoft.net.object.soap.base64
+    value   : The object must be serialized with 
+            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
+            : and then encoded with base64 encoding.
+
+    mimetype: application/x-microsoft.net.object.bytearray.base64
+    value   : The object must be serialized into a byte array 
+            : using a System.ComponentModel.TypeConverter
+            : and then encoded with base64 encoding.
+    -->
+  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
+    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
+    <xsd:element name="root" msdata:IsDataSet="true">
+      <xsd:complexType>
+        <xsd:choice maxOccurs="unbounded">
+          <xsd:element name="metadata">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" />
+              </xsd:sequence>
+              <xsd:attribute name="name" use="required" type="xsd:string" />
+              <xsd:attribute name="type" type="xsd:string" />
+              <xsd:attribute name="mimetype" type="xsd:string" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="assembly">
+            <xsd:complexType>
+              <xsd:attribute name="alias" type="xsd:string" />
+              <xsd:attribute name="name" type="xsd:string" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="data">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
+              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
+              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
+              <xsd:attribute ref="xml:space" />
+            </xsd:complexType>
+          </xsd:element>
+          <xsd:element name="resheader">
+            <xsd:complexType>
+              <xsd:sequence>
+                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
+              </xsd:sequence>
+              <xsd:attribute name="name" type="xsd:string" use="required" />
+            </xsd:complexType>
+          </xsd:element>
+        </xsd:choice>
+      </xsd:complexType>
+    </xsd:element>
+  </xsd:schema>
+  <resheader name="resmimetype">
+    <value>text/microsoft-resx</value>
+  </resheader>
+  <resheader name="version">
+    <value>2.0</value>
+  </resheader>
+  <resheader name="reader">
+    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+  <resheader name="writer">
+    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
+  </resheader>
+</root>

+ 195 - 76
UAS_DeviceMonitor/Main.Designer.cs

@@ -36,18 +36,19 @@ namespace UAS_DeviceMonitor
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main));
             this.RibbonNav = new DevExpress.XtraBars.Ribbon.RibbonControl();
             this.ButtonDeviceList = new DevExpress.XtraBars.BarButtonItem();
-            this.ButtonDeviceKind = new DevExpress.XtraBars.BarButtonItem();
-            this.ButtonDeviceStatus = new DevExpress.XtraBars.BarButtonItem();
+            this.ButtonDeviceNetSetting = new DevExpress.XtraBars.BarButtonItem();
             this.ButtonCommandSet = new DevExpress.XtraBars.BarButtonItem();
             this.ButtonPollingSetting = new DevExpress.XtraBars.BarButtonItem();
             this.ButtionPolling = new DevExpress.XtraBars.BarButtonItem();
+            this.ButtonDeviceStatus = new DevExpress.XtraBars.BarButtonItem();
+            this.ButtonWorkCenterStatus = new DevExpress.XtraBars.BarButtonItem();
             this.DeviceInf = new DevExpress.XtraBars.Ribbon.RibbonPage();
             this.RibDeviceInf = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
             this.DeviceCommandSetting = new DevExpress.XtraBars.Ribbon.RibbonPage();
             this.RibDeviceCommand = new DevExpress.XtraBars.Ribbon.RibbonPageGroup();
             this.MainTabControl = new DevExpress.XtraTab.XtraTabControl();
             this.PageDeviceList = new DevExpress.XtraTab.XtraTabPage();
-            this.PageControlDeviceList = new UAS_DeviceMonitor.CustomerControl.PagingControl.PageControl();
+            this.ToolPageControlDeviceList = new UAS_DeviceMonitor.CustomerControl.PagingControl.PageControl();
             this.GridDeviceList = new UAS_DeviceMonitor.CustomerControl.AutoDataGridControl.AutoDataGridControl();
             this.GridViewDeviceList = new UAS_DeviceMonitor.CustomerControl.GridViewWithSerialNum.GridViewWithSerialNum();
             this.de_id = new DevExpress.XtraGrid.Columns.GridColumn();
@@ -74,8 +75,9 @@ namespace UAS_DeviceMonitor
             this.dc_code = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dc_name = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dc_command = new DevExpress.XtraGrid.Columns.GridColumn();
-            this.PageDeviceKind = new DevExpress.XtraTab.XtraTabPage();
-            this.PageDeviceStatus = new DevExpress.XtraTab.XtraTabPage();
+            this.PageDeviceNetSetting = new DevExpress.XtraTab.XtraTabPage();
+            this.GridDeviceNetSetting = new DevExpress.XtraGrid.GridControl();
+            this.GridViewDeviceNetSetting = new DevExpress.XtraGrid.Views.Grid.GridView();
             this.PagePollingSetting = new DevExpress.XtraTab.XtraTabPage();
             this.ButtonDeleteCommandSet = new UAS_DeviceMonitor.CustomerControl.Button.ButtonDeleteRow();
             this.ButtonNewCommandSet = new UAS_DeviceMonitor.CustomerControl.Button.ButtonAddRow();
@@ -99,12 +101,12 @@ namespace UAS_DeviceMonitor
             this.dpc_plname = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dpc_interval = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dpc_dccode = new DevExpress.XtraGrid.Columns.GridColumn();
-            this.PollingSetItemLookUpEdit = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();
             this.dpc_function = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dpc_enable = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dpc_status = new DevExpress.XtraGrid.Columns.GridColumn();
             this.dpc_remark = new DevExpress.XtraGrid.Columns.GridColumn();
             this.POLLSETTINGSTATUSCOLUMN = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.PollingSetItemLookUpEdit = new DevExpress.XtraEditors.Repository.RepositoryItemLookUpEdit();
             this.PagePolling = new DevExpress.XtraTab.XtraTabPage();
             this.ButtonAddPolling = new UAS_DeviceMonitor.CustomerControl.Button.ButtonAddRow();
             this.ButtonDeletePolling = new UAS_DeviceMonitor.CustomerControl.Button.ButtonDeleteRow();
@@ -118,6 +120,12 @@ namespace UAS_DeviceMonitor
             this.pl_type = new DevExpress.XtraGrid.Columns.GridColumn();
             this.pl_dccode = new DevExpress.XtraGrid.Columns.GridColumn();
             this.pl_remark = new DevExpress.XtraGrid.Columns.GridColumn();
+            this.PageDeviceStatus = new DevExpress.XtraTab.XtraTabPage();
+            this.GridDeviceStatus = new DevExpress.XtraGrid.GridControl();
+            this.GridViewDeviceStatus = new DevExpress.XtraGrid.Views.Grid.GridView();
+            this.PageWorkCenterStatus = new DevExpress.XtraTab.XtraTabPage();
+            this.GridWorkCenterStatus = new DevExpress.XtraGrid.GridControl();
+            this.GridViewWorkCenterStatus = new DevExpress.XtraGrid.Views.Grid.GridView();
             ((System.ComponentModel.ISupportInitialize)(this.RibbonNav)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.MainTabControl)).BeginInit();
             this.MainTabControl.SuspendLayout();
@@ -129,6 +137,9 @@ namespace UAS_DeviceMonitor
             ((System.ComponentModel.ISupportInitialize)(this.GridCommandSetting)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewCommandSet)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.CheckEditCommandSet)).BeginInit();
+            this.PageDeviceNetSetting.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceNetSetting)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceNetSetting)).BeginInit();
             this.PagePollingSetting.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.GridPollingSetting)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewPollSetting)).BeginInit();
@@ -139,6 +150,12 @@ namespace UAS_DeviceMonitor
             this.PagePolling.SuspendLayout();
             ((System.ComponentModel.ISupportInitialize)(this.GridPolling)).BeginInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewPolling)).BeginInit();
+            this.PageDeviceStatus.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceStatus)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceStatus)).BeginInit();
+            this.PageWorkCenterStatus.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.GridWorkCenterStatus)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewWorkCenterStatus)).BeginInit();
             this.SuspendLayout();
             // 
             // RibbonNav
@@ -149,13 +166,14 @@ namespace UAS_DeviceMonitor
             this.RibbonNav.Items.AddRange(new DevExpress.XtraBars.BarItem[] {
             this.RibbonNav.ExpandCollapseItem,
             this.ButtonDeviceList,
-            this.ButtonDeviceKind,
-            this.ButtonDeviceStatus,
+            this.ButtonDeviceNetSetting,
             this.ButtonCommandSet,
             this.ButtonPollingSetting,
-            this.ButtionPolling});
+            this.ButtionPolling,
+            this.ButtonDeviceStatus,
+            this.ButtonWorkCenterStatus});
             this.RibbonNav.Location = new System.Drawing.Point(0, 0);
-            this.RibbonNav.MaxItemId = 13;
+            this.RibbonNav.MaxItemId = 15;
             this.RibbonNav.Name = "RibbonNav";
             this.RibbonNav.Pages.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPage[] {
             this.DeviceInf,
@@ -164,37 +182,26 @@ namespace UAS_DeviceMonitor
             // 
             // ButtonDeviceList
             // 
-            this.ButtonDeviceList.Caption = "设备清单";
+            this.ButtonDeviceList.Caption = "设备主档资料";
             this.ButtonDeviceList.Id = 5;
             this.ButtonDeviceList.LargeGlyph = global::UAS_DeviceMonitor.Properties.Resources.netstatus_tx_64px_18991_easyicon_net;
             this.ButtonDeviceList.Name = "ButtonDeviceList";
             this.ButtonDeviceList.Tag = "PageDeviceList";
             this.ButtonDeviceList.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
             // 
-            // ButtonDeviceKind
-            // 
-            this.ButtonDeviceKind.Caption = "设备类型维护";
-            this.ButtonDeviceKind.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceKind.Glyph")));
-            this.ButtonDeviceKind.Id = 6;
-            this.ButtonDeviceKind.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceKind.LargeGlyph")));
-            this.ButtonDeviceKind.Name = "ButtonDeviceKind";
-            this.ButtonDeviceKind.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large;
-            this.ButtonDeviceKind.Tag = "PageDeviceKind";
-            this.ButtonDeviceKind.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
-            // 
-            // ButtonDeviceStatus
+            // ButtonDeviceNetSetting
             // 
-            this.ButtonDeviceStatus.Caption = "运行状态";
-            this.ButtonDeviceStatus.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceStatus.Glyph")));
-            this.ButtonDeviceStatus.Id = 8;
-            this.ButtonDeviceStatus.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceStatus.LargeGlyph")));
-            this.ButtonDeviceStatus.Name = "ButtonDeviceStatus";
-            this.ButtonDeviceStatus.Tag = "PageDeviceStatus";
-            this.ButtonDeviceStatus.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
+            this.ButtonDeviceNetSetting.Caption = "设备联网配置";
+            this.ButtonDeviceNetSetting.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceNetSetting.Glyph")));
+            this.ButtonDeviceNetSetting.Id = 8;
+            this.ButtonDeviceNetSetting.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceNetSetting.LargeGlyph")));
+            this.ButtonDeviceNetSetting.Name = "ButtonDeviceNetSetting";
+            this.ButtonDeviceNetSetting.Tag = "PageDeviceNetSetting";
+            this.ButtonDeviceNetSetting.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
             // 
             // ButtonCommandSet
             // 
-            this.ButtonCommandSet.Caption = "指令设置";
+            this.ButtonCommandSet.Caption = "通信规则定义";
             this.ButtonCommandSet.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonCommandSet.Glyph")));
             this.ButtonCommandSet.Id = 9;
             this.ButtonCommandSet.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonCommandSet.LargeGlyph")));
@@ -204,7 +211,7 @@ namespace UAS_DeviceMonitor
             // 
             // ButtonPollingSetting
             // 
-            this.ButtonPollingSetting.Caption = "轮询配置";
+            this.ButtonPollingSetting.Caption = "设备轮询配置";
             this.ButtonPollingSetting.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonPollingSetting.Glyph")));
             this.ButtonPollingSetting.Id = 11;
             this.ButtonPollingSetting.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonPollingSetting.LargeGlyph")));
@@ -214,7 +221,7 @@ namespace UAS_DeviceMonitor
             // 
             // ButtionPolling
             // 
-            this.ButtionPolling.Caption = "轮询业务";
+            this.ButtionPolling.Caption = "轮询业务定义";
             this.ButtionPolling.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtionPolling.Glyph")));
             this.ButtionPolling.Id = 12;
             this.ButtionPolling.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtionPolling.LargeGlyph")));
@@ -222,19 +229,41 @@ namespace UAS_DeviceMonitor
             this.ButtionPolling.Tag = "PagePolling";
             this.ButtionPolling.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
             // 
+            // ButtonDeviceStatus
+            // 
+            this.ButtonDeviceStatus.Caption = "设备运行监控";
+            this.ButtonDeviceStatus.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceStatus.Glyph")));
+            this.ButtonDeviceStatus.Id = 13;
+            this.ButtonDeviceStatus.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonDeviceStatus.LargeGlyph")));
+            this.ButtonDeviceStatus.Name = "ButtonDeviceStatus";
+            this.ButtonDeviceStatus.Tag = "PageDeviceStatus";
+            this.ButtonDeviceStatus.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
+            // 
+            // ButtonWorkCenterStatus
+            // 
+            this.ButtonWorkCenterStatus.Caption = "车间全局监控";
+            this.ButtonWorkCenterStatus.Glyph = ((System.Drawing.Image)(resources.GetObject("ButtonWorkCenterStatus.Glyph")));
+            this.ButtonWorkCenterStatus.Id = 14;
+            this.ButtonWorkCenterStatus.LargeGlyph = ((System.Drawing.Image)(resources.GetObject("ButtonWorkCenterStatus.LargeGlyph")));
+            this.ButtonWorkCenterStatus.Name = "ButtonWorkCenterStatus";
+            this.ButtonWorkCenterStatus.Tag = "PageWorkCenterStatus";
+            this.ButtonWorkCenterStatus.ItemClick += new DevExpress.XtraBars.ItemClickEventHandler(this.ButtonItem_ItemClick);
+            // 
             // DeviceInf
             // 
             this.DeviceInf.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] {
             this.RibDeviceInf});
             this.DeviceInf.Name = "DeviceInf";
-            this.DeviceInf.Text = "设备信息";
+            this.DeviceInf.Text = "设备参数配置";
             // 
             // RibDeviceInf
             // 
             this.RibDeviceInf.AllowTextClipping = false;
+            this.RibDeviceInf.ItemLinks.Add(this.ButtonCommandSet, true);
             this.RibDeviceInf.ItemLinks.Add(this.ButtonDeviceList);
-            this.RibDeviceInf.ItemLinks.Add(this.ButtonDeviceKind);
-            this.RibDeviceInf.ItemLinks.Add(this.ButtonDeviceStatus);
+            this.RibDeviceInf.ItemLinks.Add(this.ButtonDeviceNetSetting);
+            this.RibDeviceInf.ItemLinks.Add(this.ButtionPolling);
+            this.RibDeviceInf.ItemLinks.Add(this.ButtonPollingSetting);
             this.RibDeviceInf.Name = "RibDeviceInf";
             this.RibDeviceInf.ShowCaptionButton = false;
             // 
@@ -243,13 +272,12 @@ namespace UAS_DeviceMonitor
             this.DeviceCommandSetting.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] {
             this.RibDeviceCommand});
             this.DeviceCommandSetting.Name = "DeviceCommandSetting";
-            this.DeviceCommandSetting.Text = "设备指令配置";
+            this.DeviceCommandSetting.Text = "设备运行监控";
             // 
             // RibDeviceCommand
             // 
-            this.RibDeviceCommand.ItemLinks.Add(this.ButtonCommandSet);
-            this.RibDeviceCommand.ItemLinks.Add(this.ButtionPolling);
-            this.RibDeviceCommand.ItemLinks.Add(this.ButtonPollingSetting);
+            this.RibDeviceCommand.ItemLinks.Add(this.ButtonDeviceStatus);
+            this.RibDeviceCommand.ItemLinks.Add(this.ButtonWorkCenterStatus);
             this.RibDeviceCommand.Name = "RibDeviceCommand";
             this.RibDeviceCommand.Text = "ribbonPageGroup3";
             // 
@@ -265,28 +293,29 @@ namespace UAS_DeviceMonitor
             this.MainTabControl.TabPages.AddRange(new DevExpress.XtraTab.XtraTabPage[] {
             this.PageDeviceList,
             this.PageCommandSet,
-            this.PageDeviceKind,
-            this.PageDeviceStatus,
+            this.PageDeviceNetSetting,
             this.PagePollingSetting,
-            this.PagePolling});
+            this.PagePolling,
+            this.PageDeviceStatus,
+            this.PageWorkCenterStatus});
             // 
             // PageDeviceList
             // 
-            this.PageDeviceList.Controls.Add(this.PageControlDeviceList);
+            this.PageDeviceList.Controls.Add(this.ToolPageControlDeviceList);
             this.PageDeviceList.Controls.Add(this.GridDeviceList);
             this.PageDeviceList.Name = "PageDeviceList";
             this.PageDeviceList.PageVisible = false;
             this.PageDeviceList.Size = new System.Drawing.Size(1027, 577);
             this.PageDeviceList.Text = "xtraTabPage1";
             // 
-            // PageControlDeviceList
+            // ToolPageControlDeviceList
             // 
-            this.PageControlDeviceList.Dock = System.Windows.Forms.DockStyle.Bottom;
-            this.PageControlDeviceList.Gridcontrol = null;
-            this.PageControlDeviceList.Location = new System.Drawing.Point(0, 548);
-            this.PageControlDeviceList.Name = "PageControlDeviceList";
-            this.PageControlDeviceList.Size = new System.Drawing.Size(1027, 29);
-            this.PageControlDeviceList.TabIndex = 1;
+            this.ToolPageControlDeviceList.Dock = System.Windows.Forms.DockStyle.Bottom;
+            this.ToolPageControlDeviceList.Gridcontrol = null;
+            this.ToolPageControlDeviceList.Location = new System.Drawing.Point(0, 548);
+            this.ToolPageControlDeviceList.Name = "ToolPageControlDeviceList";
+            this.ToolPageControlDeviceList.Size = new System.Drawing.Size(1027, 29);
+            this.ToolPageControlDeviceList.TabIndex = 1;
             // 
             // GridDeviceList
             // 
@@ -322,6 +351,7 @@ namespace UAS_DeviceMonitor
             this.GridViewDeviceList.GridControl = this.GridDeviceList;
             this.GridViewDeviceList.IndicatorWidth = 30;
             this.GridViewDeviceList.Name = "GridViewDeviceList";
+            this.GridViewDeviceList.OptionsView.ShowGroupPanel = false;
             // 
             // de_id
             // 
@@ -506,6 +536,7 @@ namespace UAS_DeviceMonitor
             this.GridViewCommandSet.GridControl = this.GridCommandSetting;
             this.GridViewCommandSet.IndicatorWidth = 30;
             this.GridViewCommandSet.Name = "GridViewCommandSet";
+            this.GridViewCommandSet.OptionsView.ShowGroupPanel = false;
             // 
             // CommandSetCheckedColumn
             // 
@@ -556,19 +587,32 @@ namespace UAS_DeviceMonitor
             this.dc_command.VisibleIndex = 3;
             this.dc_command.Width = 768;
             // 
-            // PageDeviceKind
+            // PageDeviceNetSetting
             // 
-            this.PageDeviceKind.Name = "PageDeviceKind";
-            this.PageDeviceKind.PageVisible = false;
-            this.PageDeviceKind.Size = new System.Drawing.Size(1027, 577);
-            this.PageDeviceKind.Text = "xtraTabPage2";
+            this.PageDeviceNetSetting.Controls.Add(this.GridDeviceNetSetting);
+            this.PageDeviceNetSetting.Name = "PageDeviceNetSetting";
+            this.PageDeviceNetSetting.PageVisible = false;
+            this.PageDeviceNetSetting.Size = new System.Drawing.Size(1027, 577);
             // 
-            // PageDeviceStatus
+            // GridDeviceNetSetting
             // 
-            this.PageDeviceStatus.Name = "PageDeviceStatus";
-            this.PageDeviceStatus.PageVisible = false;
-            this.PageDeviceStatus.Size = new System.Drawing.Size(1027, 577);
-            this.PageDeviceStatus.Text = "xtraTabPage3";
+            this.GridDeviceNetSetting.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.GridDeviceNetSetting.Location = new System.Drawing.Point(0, 2);
+            this.GridDeviceNetSetting.MainView = this.GridViewDeviceNetSetting;
+            this.GridDeviceNetSetting.MenuManager = this.RibbonNav;
+            this.GridDeviceNetSetting.Name = "GridDeviceNetSetting";
+            this.GridDeviceNetSetting.Size = new System.Drawing.Size(1024, 572);
+            this.GridDeviceNetSetting.TabIndex = 0;
+            this.GridDeviceNetSetting.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
+            this.GridViewDeviceNetSetting});
+            // 
+            // GridViewDeviceNetSetting
+            // 
+            this.GridViewDeviceNetSetting.GridControl = this.GridDeviceNetSetting;
+            this.GridViewDeviceNetSetting.Name = "GridViewDeviceNetSetting";
+            this.GridViewDeviceNetSetting.OptionsView.ShowGroupPanel = false;
             // 
             // PagePollingSetting
             // 
@@ -678,6 +722,7 @@ namespace UAS_DeviceMonitor
             this.GridViewPollSetting.IndicatorWidth = 30;
             this.GridViewPollSetting.Name = "GridViewPollSetting";
             this.GridViewPollSetting.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.CheckBoxRowSelect;
+            this.GridViewPollSetting.OptionsView.ShowGroupPanel = false;
             this.GridViewPollSetting.CellValueChanging += new DevExpress.XtraGrid.Views.Base.CellValueChangedEventHandler(this.GridViewPollSetting_CellValueChanging);
             // 
             // PollSettingCheckedColumn
@@ -816,16 +861,6 @@ namespace UAS_DeviceMonitor
             this.dpc_dccode.VisibleIndex = 5;
             this.dpc_dccode.Width = 90;
             // 
-            // PollingSetItemLookUpEdit
-            // 
-            this.PollingSetItemLookUpEdit.AutoHeight = false;
-            this.PollingSetItemLookUpEdit.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
-            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
-            this.PollingSetItemLookUpEdit.Name = "PollingSetItemLookUpEdit";
-            this.PollingSetItemLookUpEdit.NullText = "";
-            this.PollingSetItemLookUpEdit.ShowFooter = false;
-            this.PollingSetItemLookUpEdit.ShowHeader = false;
-            // 
             // dpc_function
             // 
             this.dpc_function.Caption = "解析函数";
@@ -873,6 +908,16 @@ namespace UAS_DeviceMonitor
             this.POLLSETTINGSTATUSCOLUMN.VisibleIndex = 10;
             this.POLLSETTINGSTATUSCOLUMN.Width = 98;
             // 
+            // PollingSetItemLookUpEdit
+            // 
+            this.PollingSetItemLookUpEdit.AutoHeight = false;
+            this.PollingSetItemLookUpEdit.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
+            new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Combo)});
+            this.PollingSetItemLookUpEdit.Name = "PollingSetItemLookUpEdit";
+            this.PollingSetItemLookUpEdit.NullText = "";
+            this.PollingSetItemLookUpEdit.ShowFooter = false;
+            this.PollingSetItemLookUpEdit.ShowHeader = false;
+            // 
             // PagePolling
             // 
             this.PagePolling.Controls.Add(this.ButtonAddPolling);
@@ -951,6 +996,7 @@ namespace UAS_DeviceMonitor
             this.GridViewPolling.GridControl = this.GridPolling;
             this.GridViewPolling.IndicatorWidth = 30;
             this.GridViewPolling.Name = "GridViewPolling";
+            this.GridViewPolling.OptionsView.ShowGroupPanel = false;
             // 
             // PollingCheckedColumn
             // 
@@ -1010,6 +1056,62 @@ namespace UAS_DeviceMonitor
             this.pl_remark.Visible = true;
             this.pl_remark.VisibleIndex = 5;
             // 
+            // PageDeviceStatus
+            // 
+            this.PageDeviceStatus.Controls.Add(this.GridDeviceStatus);
+            this.PageDeviceStatus.Name = "PageDeviceStatus";
+            this.PageDeviceStatus.PageVisible = false;
+            this.PageDeviceStatus.Size = new System.Drawing.Size(1027, 577);
+            this.PageDeviceStatus.Text = "xtraTabPage1";
+            // 
+            // GridDeviceStatus
+            // 
+            this.GridDeviceStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.GridDeviceStatus.Location = new System.Drawing.Point(3, 0);
+            this.GridDeviceStatus.MainView = this.GridViewDeviceStatus;
+            this.GridDeviceStatus.MenuManager = this.RibbonNav;
+            this.GridDeviceStatus.Name = "GridDeviceStatus";
+            this.GridDeviceStatus.Size = new System.Drawing.Size(1024, 577);
+            this.GridDeviceStatus.TabIndex = 0;
+            this.GridDeviceStatus.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
+            this.GridViewDeviceStatus});
+            // 
+            // GridViewDeviceStatus
+            // 
+            this.GridViewDeviceStatus.GridControl = this.GridDeviceStatus;
+            this.GridViewDeviceStatus.Name = "GridViewDeviceStatus";
+            this.GridViewDeviceStatus.OptionsView.ShowGroupPanel = false;
+            // 
+            // PageWorkCenterStatus
+            // 
+            this.PageWorkCenterStatus.Controls.Add(this.GridWorkCenterStatus);
+            this.PageWorkCenterStatus.Name = "PageWorkCenterStatus";
+            this.PageWorkCenterStatus.PageVisible = false;
+            this.PageWorkCenterStatus.Size = new System.Drawing.Size(1027, 577);
+            this.PageWorkCenterStatus.Text = "车间全局监控";
+            // 
+            // GridWorkCenterStatus
+            // 
+            this.GridWorkCenterStatus.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
+            | System.Windows.Forms.AnchorStyles.Left) 
+            | System.Windows.Forms.AnchorStyles.Right)));
+            this.GridWorkCenterStatus.Location = new System.Drawing.Point(0, 0);
+            this.GridWorkCenterStatus.MainView = this.GridViewWorkCenterStatus;
+            this.GridWorkCenterStatus.MenuManager = this.RibbonNav;
+            this.GridWorkCenterStatus.Name = "GridWorkCenterStatus";
+            this.GridWorkCenterStatus.Size = new System.Drawing.Size(1024, 574);
+            this.GridWorkCenterStatus.TabIndex = 0;
+            this.GridWorkCenterStatus.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] {
+            this.GridViewWorkCenterStatus});
+            // 
+            // GridViewWorkCenterStatus
+            // 
+            this.GridViewWorkCenterStatus.GridControl = this.GridWorkCenterStatus;
+            this.GridViewWorkCenterStatus.Name = "GridViewWorkCenterStatus";
+            this.GridViewWorkCenterStatus.OptionsView.ShowGroupPanel = false;
+            // 
             // Main
             // 
             this.AllowFormGlass = DevExpress.Utils.DefaultBoolean.False;
@@ -1037,6 +1139,9 @@ namespace UAS_DeviceMonitor
             ((System.ComponentModel.ISupportInitialize)(this.GridCommandSetting)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewCommandSet)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.CheckEditCommandSet)).EndInit();
+            this.PageDeviceNetSetting.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceNetSetting)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceNetSetting)).EndInit();
             this.PagePollingSetting.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.GridPollingSetting)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewPollSetting)).EndInit();
@@ -1047,6 +1152,12 @@ namespace UAS_DeviceMonitor
             this.PagePolling.ResumeLayout(false);
             ((System.ComponentModel.ISupportInitialize)(this.GridPolling)).EndInit();
             ((System.ComponentModel.ISupportInitialize)(this.GridViewPolling)).EndInit();
+            this.PageDeviceStatus.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.GridDeviceStatus)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewDeviceStatus)).EndInit();
+            this.PageWorkCenterStatus.ResumeLayout(false);
+            ((System.ComponentModel.ISupportInitialize)(this.GridWorkCenterStatus)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.GridViewWorkCenterStatus)).EndInit();
             this.ResumeLayout(false);
             this.PerformLayout();
 
@@ -1058,16 +1169,14 @@ namespace UAS_DeviceMonitor
         private DevExpress.XtraBars.BarButtonItem ButtonDeviceList;
         private DevExpress.XtraBars.Ribbon.RibbonPage DeviceInf;
         private DevExpress.XtraBars.Ribbon.RibbonPageGroup RibDeviceInf;
-        private DevExpress.XtraBars.BarButtonItem ButtonDeviceKind;
         private DevExpress.XtraTab.XtraTabControl MainTabControl;
-        private DevExpress.XtraBars.BarButtonItem ButtonDeviceStatus;
+        private DevExpress.XtraBars.BarButtonItem ButtonDeviceNetSetting;
         private DevExpress.XtraBars.Ribbon.RibbonPage DeviceCommandSetting;
         private DevExpress.XtraBars.BarButtonItem ButtonCommandSet;
         private DevExpress.XtraBars.Ribbon.RibbonPageGroup RibDeviceCommand;
         private DevExpress.XtraTab.XtraTabPage PageDeviceList;
         private DevExpress.XtraTab.XtraTabPage PageCommandSet;
-        private DevExpress.XtraTab.XtraTabPage PageDeviceKind;
-        private DevExpress.XtraTab.XtraTabPage PageDeviceStatus;
+        private DevExpress.XtraTab.XtraTabPage PageDeviceNetSetting;
         private AutoDataGridControl GridDeviceList;
         private DevExpress.XtraBars.BarButtonItem ButtonPollingSetting;
         private DevExpress.XtraBars.BarButtonItem ButtionPolling;
@@ -1083,7 +1192,7 @@ namespace UAS_DeviceMonitor
         private DevExpress.XtraGrid.Columns.GridColumn de_vendname;
         private DevExpress.XtraGrid.Columns.GridColumn de_address;
         private DevExpress.XtraGrid.Columns.GridColumn de_wccode;
-        private CustomerControl.PagingControl.PageControl PageControlDeviceList;
+        private CustomerControl.PagingControl.PageControl ToolPageControlDeviceList;
         private AutoDataGridControl GridCommandSetting;
         private DevExpress.XtraGrid.Columns.GridColumn dc_id;
         private DevExpress.XtraGrid.Columns.GridColumn dc_code;
@@ -1138,5 +1247,15 @@ namespace UAS_DeviceMonitor
         private DevExpress.XtraGrid.Columns.GridColumn gridColumn3;
         private DevExpress.XtraGrid.Columns.GridColumn gridColumn4;
         private DevExpress.XtraGrid.Columns.GridColumn gridColumn5;
+        private DevExpress.XtraBars.BarButtonItem ButtonDeviceStatus;
+        private DevExpress.XtraBars.BarButtonItem ButtonWorkCenterStatus;
+        private DevExpress.XtraGrid.GridControl GridDeviceNetSetting;
+        private DevExpress.XtraGrid.Views.Grid.GridView GridViewDeviceNetSetting;
+        private DevExpress.XtraTab.XtraTabPage PageDeviceStatus;
+        private DevExpress.XtraTab.XtraTabPage PageWorkCenterStatus;
+        private DevExpress.XtraGrid.GridControl GridDeviceStatus;
+        private DevExpress.XtraGrid.Views.Grid.GridView GridViewDeviceStatus;
+        private DevExpress.XtraGrid.GridControl GridWorkCenterStatus;
+        private DevExpress.XtraGrid.Views.Grid.GridView GridViewWorkCenterStatus;
     }
 }

+ 3 - 2
UAS_DeviceMonitor/Main.cs

@@ -17,7 +17,7 @@ namespace UAS_DeviceMonitor
 
         StringBuilder sql = new StringBuilder();
 
-
+        #region 初始化代码
         public Main()
         {
             SystemInf.dh = new DataHelper();
@@ -37,7 +37,7 @@ namespace UAS_DeviceMonitor
         {
             //设备列表
             GridDeviceList.GetDataSQL = "select de_id,de_code,de_name,de_spec,de_indate,de_runstatus,de_address,de_wccode,de_vendcode,de_vendname from device".ToUpper();
-            PageControlDeviceList.Gridcontrol = GridDeviceList;
+            ToolPageControlDeviceList.Gridcontrol = GridDeviceList;
             //轮询业务
             GridPolling.GetDataSQL = "select 0 CHECKEDCOLUMN,pl_id,pl_code,pl_name,pl_type,pl_dccode,pl_remark from polling".ToUpper();
             GridPolling.ID = "pl_id";
@@ -66,6 +66,7 @@ namespace UAS_DeviceMonitor
 
             Ptime = new Dictionary<int, PollingTimer>();
         }
+        #endregion
 
         #region 界面通用事件
         /// <summary>

+ 162 - 86
UAS_DeviceMonitor/Main.resx

@@ -118,96 +118,49 @@
     <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
   </resheader>
   <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
-  <data name="ButtonDeviceKind.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="ButtonDeviceNetSetting.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
-        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAATdEVYdFRpdGxlAFRhYmxlO0Zvcm1hdDvurMrjAAAC
-        1klEQVQ4T32TbUhTURzGj3c6DSXLEoNITKmP+aWvKkFYSgoRkpLDd5e1+UrlhxJsEGHDV0ydupyOoaUp
-        uZlKadtsy5dFGIUvfYjA1KnXbVrTvjydc10iGf3hd+//3PM8D+fcew+hJaL4/AfxHtjYm+IFgDBIbvWo
-        UVprgrTGhNxqE3KqjMiufIMs5SgyKRmPRqCoGYaiehD3qwZRpuw3sqDdACYemlvH4BwvUGOY8/Q7zyr1
-        s3Bt/oLrxw53K/TURfx2A9IevhaEHe+X0WFbQmHrFO2XhJ5R0DwJ3uHGmmNLCGrRvWUB/hS2dY6kKIag
-        7JtBftMk5KoJyJsmIGsch6xhHDc9NOusUOkssNq+Qv9qGtaMZNVHqYTXhUUkkSv3DBiY5aGxLUIztYS8
-        eqvQt9NeM7WI3DoLVukKnBvbcG24YSwrx5fbeXD0P0X3idBVknjnBQZm1tBGxSwgp9YiGNmYkV09Bgc1
-        845NmCrKMFeQA9dAD/oTLiCL49QkvrgH5Z3TyKwa24MZGZVmpFNq+z5hbHwWLxUlsEmT4errhP5SLFJF
-        3l0hhAQQ6S0tHK5trPBu2Cn1bWbhbue3wDu3YHo3g06VGmZlBZyd7eiNPYfLnKgviJCDwkvMLNJgnQYs
-        ewLqnpiwQt8473Rj2b4OTW0DDAYzFmigMq0Q8ZxX9yFCApk5jl5IyvV6k0SuhkSmRqqsFTdKddD2WNDe
-        0AKtNBq6pGP4tuxCXvkwgk+XPPfjxNRPOPYPxLAAWuybHqbQVZEjlJD0SP+EZ+kRP+cNcljKwtB4MQhH
-        w/O1InEw0wlmxlk6EJo/0BJFh/qGNiUEf1+wlMI5r8XjqAMoPiO20zkWvmv26PcF+D2ICugdUcTgc5cM
-        NecDURrpg6snRUV0znev1qPfFyCm4muZp7z12adEHyThIm3ccS6RPmfb9GKCffVXABOxYxtAYZ+JGdkR
-        5ij/KEJ+A7zjIhnwnf68AAAAAElFTkSuQmCC
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACx0RVh0VGl0
+        bGUARG9jdW1lbnQ7TWFwO1NjaGVtZTtEaWFncmFtO0hpZXJhcjtOZXRODypEAAAB80lEQVQ4T5WS3UtT
+        cRzGj261pakb+Er+IRa0i2ApEUvFWiFtShgrCodvF63RTsjEMYKCyhpE1C6ki1IQfLnaqmkZrBcw6GWW
+        V2GCVBj0Ij59Hz3I+d2dDnw4v+e75/c55+wcDcA259MfNTmKBJuwQ9hp4DBykblPlBC68046mj36sJCN
+        jS1hk/EtIg8+PKXI3CdK6Bh5S4FzYLSAzz838MlgcW0DA6OL0tbKzH2iBP/VNxSUBm8u4PXqOmaX/yL3
+        dR2ZL38QvL5AgdvcJ0o4kshTUO4bzuPR+zWkXv7A7VffcUvOvkSegkpznyjBqz+nwOWNzWPkxSrij1cQ
+        z65gSPDq8xRUm/tECZ6LcxTs3tc7nfNcmINkeCI57I/MYm944hnl5j5RQkP/Ewr4CsuFmkPH+tJNbT1p
+        WdcJbsHefFJX9miXp+u3aT+TxIlQEv7TCfi7hnH01BDaOuNo7RhES1CHbIav/RLY1af2aLHJenFufTjF
+        go2bjPUmrQE91RyIpcyzw8ej7PAumblXs4Xv1WXC92tw7m4tQqnarMwcFmd2ChxdN6qx9PsaCr+SCFyp
+        4hUqLM6cFJT4ByuR/xbGzHIjWqJu/lBlcVZKgbOx25Vp6nXhYE8FDpwt4625Lc52UcA/o0RwGXDNZ7My
+        K1be6f8D7R8bleevx1tLIwAAAABJRU5ErkJggg==
 </value>
   </data>
-  <data name="ButtonDeviceKind.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+  <data name="ButtonDeviceNetSetting.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
-        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
-        z5X+PxSF4t+qN/szT9oWSwAAAABJRU5ErkJggg==
-</value>
-  </data>
-  <data name="ButtonDeviceStatus.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
-        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAVdEVYdFRpdGxlAEdhdWdlO0NpcmN1bGFyO9nUvNQA
-        AAFOSURBVDhPnZM/S8NAGIczi1M3cYiz4KSrFqQUHMTNL1AJKgqBgmuhDQhBF6eCOAlCJzMI7VY6iaOb
-        n6GT3yD+nvCe5M910OGBy937/JL37hIkSVKnK+7Fu/g2GDPHWqW+/LAl7sRCDERbtAzGzLFGDbWVACae
-        xfhq9Hh4PJzFYiqWBuOYNWqstghxAaSOT4dZR4WZyFdw+3FxckCtOUUAfS3szU6ei0iEBuOHz7Oj669e
-        J5vcnPMltNMlgM0ZqIDPdvJunudBGYk7Yi5yEePgEsAOtyXRJwFRXXZIjCxgioNLAMfUkshmERD6ZJAY
-        WsASB9cbkKZpLnxteAMaLSBbSL8W4G2hvolvYg3ZQuQW8rqYWUBlE8vH+CL2ECTCb4CF7ItJ/RihuEiX
-        o6cNV7yK135vk1pzmldZbPtEYM1qGlfZhZD6r5+pzB9+5yT4ARH/KQWgyOnDAAAAAElFTkSuQmCC
-</value>
-  </data>
-  <data name="ButtonDeviceStatus.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
-    <value>
-        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
-        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAVdEVYdFRpdGxlAEdhdWdlO0NpcmN1bGFyO9nUvNQA
-        AAMoSURBVFhHxZe/S5VRHIf91eAiBAllEIhL1OZkkQgRSEPg4NDecvEPSFtCwjGCcBEakqBAAsFNxNb+
-        gZDuKEStTmJD9PY8h3Mu517OvfdVSYdHz4/P+X6+7/n1vnegqqpLJfxZW1urwwQ8hTewD4dwErFsm31q
-        1JZitFE3gbuwCl9hB5ZhHiZhNGLZNvvUqHWMY0sxA/0SGIQGfIF1mFNbB7VxjGONYazO+EGbBrR48mrX
-        /9fhNezCgm2RGViBbWjCccSybfapSXEWYgxjGbPNq5gAKNyA9zAVg83CBhxB1Qc1ah1jvKkYy5htSZQS
-        cKrM1gHjBoAl8AlLZr14C0Mx/niMaezWcpQScL2csvTkL+A3pKBO9xY0YBrGIpZts0/NZ7hi7OazR/ej
-        hzNhbD2KCbhj3TRpzX3y3HwPFtX3Ao17YMQy5g/hGJasGzt6hNNhW/hjBTw26wxOa55P+ye4o7YumN6L
-        5hU0YdZ2PaJX0IU/VLw4PLtzGJmAmyh/8lOZC4a3YS8mIBu26xG9JqwHMRVvrx3LmDmFabe7nn2nvRuY
-        LkKahSOYsV0vPS0HIRWv0GXLGHqW09Nv2XYeMN2KCciKbXrpaTmIqHiPz1vG1AslJdCw7Txg2sgS2LZN
-        Lz0tBxEVXyaTljHNN9907H8Jt8ByEXUlMJ3OEmjaht53x6HlIKLiG23UMqaue0pgLPZfgx/wHEagZZxQ
-        VwLTsSyBY9vQ+wI7sRxEVmy03CUB8QxX8A0exLYW6krUTaDfEiQ+gEn8Ba9WZyb0qSuBaa0l6LkJNYhc
-        hZ9gEvIHfoEXy7jaTjCttQl7HkP6ch5DSiBnVW0nmNY6hj0vIvryBOQINE11yweOz8Gw9kXU7yq+SV8y
-        k+/QMwHMbkDtq1i6vYw+wlDU5FpNc9qWAMMh2IzmfV9GUnodb8JwCppA4weGQQ4ixU2I6TC8g1qvY+n8
-        IBlMwc4K5iGGMWPsrh8k0vZJloKcF2PFmH0/yaTtozQPdBaMEWPV+ihNKDRbp2whD3gaHBtjGKvNXNQk
-        YQmnyvVy01zcD5MC7lh3uWf3Qn+adfL/fpxeHtXAP2zZTBNbPKbVAAAAAElFTkSuQmCC
+        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
+        YII=
 </value>
   </data>
   <data name="ButtonCommandSet.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
@@ -392,6 +345,129 @@
         Pj7d1FP1ktmXqjcog2D42cxL7aLhZ+PTtCVKzmTLeebLimtL/HJKfSYICv6sKbZC8ZXkXvH55Z4vIDWC
         z78WMW0IPp6cW57DNop/S+yP+bcaT+CALERU/waK94ob8E1YIAflrVTY/8ftzaD/2t787Y/4C00Q/gEI
         ifbQIqnXAgAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="ButtonDeviceStatus.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAACF0RVh0VGl0
+        bGUARHJpbGw7RG93bjtDaGFydDtGYWxsO0Fycm93lyIucQAAArRJREFUOE+NUmtIk1EY/jan02lF9KPU
+        hstM1/JSEYkhJPnXG4r36XLmhVXTmVnz85K4xFsazUgJb7n1I+hGNeYE3cpapkiFlKkz0IqQ/KNmzktv
+        5/3cwGI/euDhPe/lec75zncoAGD4D1gO6BhbDWRND7jKO2Z5ac+widYMWxn2vDEpu81yMd3qSkZYpEbR
+        mhGK1g4zmq0GrOL212+NE3Mws7QKc+u/YXrBCi8s89BpnIILneZ3ufUPfXDu8/IGdbFrCDV/GbDlba/g
+        q3UDtIMWSKh4BJEFd+FcSz+Mfl+Ee0OzcL715Vik+BJv4uc6JW8zM3pK0RJCKdQhuGRJap+eCkq5ZRXG
+        N18RxagEh2KrBUfSbladlGmtxplFuK4bB2ljbxGZZeepB1HDAC+ITehEyLER1/bL4xxOVVdmNhhAM/IN
+        xHUG3JqT2ThAwibYsmuigbNNgZDfIDKSHMV2oIGz4ESWb3hON9y3LEGyyrBKah5Yt/UpTn7DQbDMd0Ne
+        vRAvw7lQHUwV3AhmelH0s/fR5XpIqOqDrvEFwHV0mR6iaN0kzuKQc05tAPRNSCG7xh8NuCi0NV2Oi5vD
+        0uuMa/ovK6CdXgHd7C+IyOtZ8wpTRJA+c1qXLNUB6P0kgdPVfmjgfqYmwJRbJ4Tsq/4mkvNCpR10bvso
+        3J5ahuQaA+wOVapIHTdiwM2o8gXdRzGIK/ehwY4slR9M/ugASfV+zN0IeUelmud07wzsOlZq5rh7byc1
+        5vsRrmnlAnjyIQVSy3xQsDO9QgD68UxIK2dyNHDih8v8gzK0Fld+XCDmHqISEjbhlqzkw+OxREi6vJcx
+        SCrlM4aJSiZHAwR+Lx57619i4BJX5NWfUOINsQrPfpJvwxhf7AkxhXsw59pfqyMi8BGhM+5k3wEjzxbZ
+        joR2Oiz+P4H6AyqzjUzILNpjAAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="ButtonDeviceStatus.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAACF0RVh0VGl0
+        bGUARHJpbGw7RG93bjtDaGFydDtGYWxsO0Fycm93lyIucQAACEZJREFUWEfFVntYzmka/hqnpHH6KDJo
+        DDNjSWHXrl0zsztmlnYcFrUWa1Q6TDofSMrMqqQSKTJGREi06UQJDaXz6eskRkpnHSXpRFz3Ps+vfjOl
+        fLPzz85zXff1vj2/933u+32e5337JAB+VQx0yDeFn8Evt/9RAAd/izCEMJQw7DWwj7/xml8m5mcEiMRD
+        t+0PU3cMTLJxPpNxffe5TNnXwdkvGU5BGblOQenXHQISbLe6BM2gtSyIxSjsPJUu2RmYLtlxMk2y/WQq
+        uQYxOQKYfIiR29lpTkFpJ32v3HkVnlmB1NImFDe1o7ajW0BxYzuSHzQiNK0c3hH5r7YH3A7c6HBUnfay
+        ECEjNe3dEtvjyTQdxN4gQCC3Pxa/ioK2x+bVoPhxOyo6X6K4/QXuPHuO3KfPIWt5jvynXbjb+gIlbeSv
+        b0MEiXQLyWo39oxYQzGGEwQRVkcTaRjE5AgY5h1ZgMzyZpQTcSERyFqfI4eQ3dKFrCddyGjuQnpzJ9Ka
+        OpHa2IFMGu/St4TiBhyIyIOpd4wDxRlBEHtjoMkRMHTV9mD349fv0ImJnE6c29qFfBJwh1DEI/nyn5Cg
+        xySgoQOJdR1IqG1DFom5XdIErzDZqy17Lv6TYomZGGhvEMDGG0ZoW5/2OBJbQKQvEFP0CPtCM7HFPQpL
+        zYMEfLk3Cm4XMhCRX42UunZ8X9OGG9VtSKltx7XCWjgEJD1bZuDyAcXinhiYBTkChD4gKH5uFuhhd+wW
+        1n9z6cUfDfwDfrve/W9S9QVSxkKaL9b3D9DdHdbtG1OARCaufIarFa1Io/npm8X40iUyiOKM7I3X3+QI
+        YBNFjFii5/MXzZW2fM0UCZxSvvsMnistXOf8sbbtuTrf2ELcrHqGmLKnAm6VPIb9scRXn27+Zg6tG5gF
+        eQIan7/kgTdwOVgIQ2woEeK3kb/TcV6y2S26+2JONWLLWhFV0oJblA2/6ALoOAS70hoW378X5Amo73op
+        oI5AJhDWdHRLBNDdrmK0dYvfOBvKfzU7Eeh5SYZr5a2IKG7BZRIRklIOXacwvofKBBbL63tMvoBuSV1n
+        t6SW8KgPsUhe+RM5B+X0jvroX66rLI/cRHzFM4T98AThJCKmqAE6ThG19H0cga+l+HQrDBBgf3RBP9j5
+        i/P5AnF176kr217QfoGciZUIYwjS0SrTZ2zcE0Wpb0XovSe4ePcJ4h+2kIBw3vAOryGMJYwi8N7+Zuc/
+        nwfxVGKj9U/bT8b1VNLbexU9iIWeeyx0d0cijx6pkDuPEVz4GLFUhrWO4dB3j4PBPsZVbKWR9rKI/mbn
+        r8XDEGs/rQRbfy3YHtGCtZ9mAvv4w2smCPjC8kz8tdwqUJlAZRIgo1cxKK8Rp3IbEXmvGYX0UJXSw3WP
+        Hq7zifehtcbje9rLPdHfbI4IAobZHNZEbWuiAOvD81jtwHT1CFDU0rZYtOnfkd1XiptxStaAwJx6nMxu
+        wInsegRk1eNw6iO4XqvA7itl8I6vxMf633ZPW7jhD7xXiNLXrP3m8TDcym8ecqsPITJ/E6z8NFjA8Nf7
+        g4zLwiUavWSzzwGX85k4l9eA7zLq8G16LXySauB2nYhjyuBE5Dzf5HYFsz7d4UN7uGeG9gvIsDykQX7J
+        CEvfuciq3I9LeRtgcWguC2C1nAXuYgbPWQBjxGjVmWqfGB6vCEipxL4blQKpcy/xrssP4UyjU1gRZmu7
+        VCqOmTqF9vz4JnCA1wMrmvvMQVq5G/4jWw+ek+9ta1+t23QrQI0KK1/N271reT/3h7KGtsOWzS5ROJhQ
+        BWciZeKd0Q/hEFUK17hyLDU5gSkL9fU5Vu8e3isZxoFtKSijN/DbZgdmI/nh17iYo4NtNCffWG5IsS+4
+        R8gn1pAD8ZMsnb/G65bLpQKqdw/xjsgS7IouhbF/Eqb/yZ6beULvWoGcTdHmsBZKm8IE9DbcOFPvD3Hr
+        gSNCstfiK5qTbzzdBsiqfRBOfWHpK/SFUp9e4BMpTdFcu/gTg+86PePLsSOiFNvDSUDkA8xbsa9z3Ixl
+        H9Eavnr9rvVIKwoWf98a4UK9hcBSk/3vI/4HOwRnroKx5/uCj/oDGRVefcvC14jLxg8RB+a/x8/8s4P3
+        Vu84oe6OlIUVdiFQ1TL0pm/8Egplm7zInoYeU+JgV4u2IVSmC7ODQronGHvOQlyROc6kr4CRx0z2TTQ7
+        +BuklLngQs46sSzjLX00krkc1gRz77kp5BurLFWfNlvbtWrP5fswP5UFtUU2VcOUVKbTN/6XzI2noLrA
+        moYeUzL1no3oQkOc53Tv/0AgM9z3Hi4XGuF0mja9Wu+xT8V0/4dILNmF4Ky/w8RLWKfKV7SkKZRwERY9
+        WeHrNUZtgd5WbcvT+P0GX4ydtc6w189XViG9rkMyUdOCpj02ysRrFsLyNuFsxkoY0cnJp2rg/i4i8vQQ
+        mLoMBnvfZd8kLkX8ffu+WZnM2Yu7a47QHF3KitArowlcFunUxfZxE+YY3eB5r09BqrFNItUwk4ynUTRl
+        PuGFbJ2e07rPEMj096pTSTbiRPLn0HNTF8h43VUiC0xdLq5T42aNpkxxr5h4Cb3CJ+UmY0IWw+Db0q/x
+        +pqyPhGczViNEyk/kk3a4jodIVm6OJ60FDwn32R9ykp0gZGwjveQT4175VLuJpwi8YYeQqmYkIm41uI/
+        M6HuhEFNca395ATdnWrQIay2msR3ddxKS9WE1baqWGWjiuWmKvxjYvzyr1QSv7BQgbbZRHxmLGWf9B+O
+        7yRucJ6K9bumYo2NGvu40URj0jcSi8bqeBO/Tgye81XhUUyhPJ/4W4DB87de/40hD4M6/3+A5L//M1C/
+        OAos2gAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <data name="ButtonWorkCenterStatus.Glyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAWdEVYdFRpdGxlAEV4cGxvZGVkUGllO1BpZTts02W8
+        AAADEklEQVQ4T2XS+0+TVxzH8ee/2Q/7B4zJpvGHZZoYoxCRi5eiKMikA+nKpdxUkAC1Cky2GAtMdNlw
+        zkRpwQvtWhkoN0cYagpKpdiWcofSO++d5zjwB394Pd/knO/zeb5PzlGaO0afCjTdUo1Ijb9sGeZa+0dX
+        21RDmFqHuGIelIw3XzxValr+ZhM+Eo/t+pnN/0FC2qSq0Yly6cc+uRgKx9kIx4Q4QVljsub9PEBZxzC3
+        eifxzAdZD8WkhEipuOpAudj8TAaozUHx8op3Dvft20yUlsjG3Ot99LxZos3ppqR9iGFXgLWNKHERUG6y
+        o6hjqOOozYF/xpgo0uE21TF6+pRszBb7Pw0E6BhdpOv1Mvqbz3HPrRKPJyg12lDKTQ45ztKsn/EfCvlw
+        3cSyuZFBjYbVYJSsK3YaHH4anH5MKosLs2WCqAgorutFKTPa5Tiu1namqitZaL6Mv6qA/vQMVtYjZNY9
+        obbXx2Wbl8pHHzDaZsm7ZicaS6CvfYJS0mAjFt9k8GwunroqfAYtfkMezpQUlkVA06/9ZNT3UmSZobhr
+        BoOoxy52E4nG0dU8RlFTIiLNeSQNX0UBXn0O3qIcBsQvTPe9YH4ljN7YxeHqHs4/cKPtdJFd+0ieUv6F
+        HpRCkRKOJvjr6AlcWanM5qbjyUljobGaZ6mpTDn6CSyHMLU5SLpgRdPUT9PvwwRDUbSV1k8Bg/UmhtKS
+        8ZxJYea0kHWYQH0ZtqQkXt5oFyFhjK12Dup+Y2J64VNAwaUeQpE4njfTPNy7j7EjB3CfTOb9ySTcmYeY
+        qyli5JSGkRYzc0shxt/Oi7ohj/hchQUlv6pbXiJ1zFePndzdvQf7N3sYS97Hu6P7GTv0Lfb9e7mz8yve
+        /juJT7zsX9xgdT1KruEhirbCKi+RX6SrG+/GJ+nWl9G6cxctX3yJecfXWHUGpsS6T+x7F1RBeUJnS0XA
+        d+UWMU5MXpotKyrxBZXauG0twtJaWIiwuBomu/gBSqbuvjWz8D6awj85IRw/f4/jBfc4lv+HlPH93W3p
+        2i2dpOWpOq3/AVs2K2Pf2Jb7AAAAAElFTkSuQmCC
+</value>
+  </data>
+  <data name="ButtonWorkCenterStatus.LargeGlyph" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
 </value>
   </data>
   <data name="dpc_enableCheckEdit.PictureChecked" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">

+ 38 - 38
UAS_MesInterface(4.0)/MesHelper.cs

@@ -13,14 +13,14 @@ namespace BenQGuru.eMES.DLLService
     [InterfaceType(ComInterfaceType.InterfaceIsDual)]
     public interface IMESHelper
     {
-        [DispId(17)]
+        [DispId(16)]
         bool CheckRoutePassed(string iSN, string iResCode, out string oErrMessage);
         bool GetRcardMOInfo(string iSN, out string oMoCode, out string oErrMessage);
-        bool GetMaster(out string Master);
-        bool SetMaster(string Master);
         bool CheckUserAndResourcePassed(string iUserCode, string iResCode, string iPassWord, out string oErrMessage);
         bool GetAddressRangeByMO(string iSN, out string oWIFI, out string oBT, out string oCode1, out string oCode2, out string oCdoe3, out string oErrMessage);
         bool SetAddressInfo(string iSN, string iWIFI, string iBT, string iCode1, string iCode2, string iCode3, out string oErrorMessage);
+        bool GetMaster(out string oMaster);
+        bool SetMaster(string Master);
         bool SetTestDetail(string iSN, string iTestResult, string iResCode, string[] iTestDetail, out string oErrMessage);
         bool GetMEIOrNetCodeRange(string iSnCode, string iIMEI1, string iNetCode, out string oIMEI1, out string oIMEI2, out string oMEID, out string oNetCode, out string oPSN, out string oID1, out string oID2, out string oID3, out string oID4, out string oID5, out string oErrMessage);
         bool SetIMEIInfo(string iSnCode, string iIMEI1, out string oErrMessage);
@@ -586,6 +586,41 @@ namespace BenQGuru.eMES.DLLService
             return CS_SetFinish(iMakeCode, iSourceCode, iSN, iUserCode, iResult, out oErrMessage);
         }
 
+        [Description("获取账套信息")]
+        public bool GetMaster(out string oMaster)
+        {
+            MasterDB = (DataTable)ExecuteSql("select ms_pwd,ma_user,ma_inneraddress from master", "select");
+            oMaster = "";
+            for (int i = 0; i < MasterDB.Rows.Count; i++)
+            {
+                if (i != MasterDB.Rows.Count - 1)
+                    oMaster += MasterDB.Rows[i]["ma_user"].ToString() + "|";
+                else
+                    oMaster += MasterDB.Rows[i]["ma_user"].ToString();
+            }
+            return true;
+        }
+
+        [Description("设置账套信息")]
+        public bool SetMaster(string iMaster)
+        {
+            DataTable dt = (DataTable)ExecuteSql("select ms_pwd,ma_user,ma_inneraddress from master where ma_user='" + iMaster + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                ConnectionStrings = "Data Source=" + dt.Rows[0]["ma_inneraddress"].ToString() + "/orcl;User ID=" + iMaster + ";PassWord=" + dt.Rows[0]["ms_pwd"].ToString() + ";";
+                try
+                {
+                    connection = new OracleConnection(ConnectionStrings);
+                }
+                catch (Exception)
+                {
+                    return false;
+                }
+                return true;
+            }
+            return false;
+        }
+
         /// <summary>
         /// 设置测试结果
         /// </summary>
@@ -1173,40 +1208,5 @@ namespace BenQGuru.eMES.DLLService
                 cmd.Connection.Open();
             }
         }
-
-        [Description("获取账套信息")]
-        public bool GetMaster(out string oMaster)
-        {
-            MasterDB = (DataTable)ExecuteSql("select ms_pwd,ma_user,ma_inneraddress from master", "select");
-            oMaster = "";
-            for (int i = 0; i < MasterDB.Rows.Count; i++)
-            {
-                if (i != MasterDB.Rows.Count - 1)
-                    oMaster += MasterDB.Rows[i]["ma_user"].ToString() + "|";
-                else
-                    oMaster += MasterDB.Rows[i]["ma_user"].ToString();
-            }
-            return true;
-        }
-
-        [Description("设置账套信息")]
-        public bool SetMaster(string iMaster)
-        {
-            DataTable dt = (DataTable)ExecuteSql("select ms_pwd,ma_user,ma_inneraddress from master where ma_user='" + iMaster + "'", "select");
-            if (dt.Rows.Count > 0)
-            {
-                ConnectionStrings = "Data Source=" + dt.Rows[0]["ma_inneraddress"].ToString() + "/orcl;User ID=" + iMaster + ";PassWord=" + dt.Rows[0]["ms_pwd"].ToString() + ";";
-                try
-                {
-                    connection = new OracleConnection(ConnectionStrings);
-                }
-                catch (Exception)
-                {
-                    return false;
-                }
-                return true;
-            }
-            return false;
-        }
     }
 }