Browse Source

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

Hcsy 7 years ago
parent
commit
abb3b065ac

+ 25 - 0
UAS-出货标签管理(吉利通)/PublicMethod/BaseUtil.cs

@@ -35,6 +35,31 @@ namespace UAS_LabelMachine
             }
         }
 
+        public static char GetSplitChar(string Str)
+        {
+            char[] splitchar = new char[] { ',', '@', '#', '|', '&',' ' };
+            char[] arr = Str.ToCharArray();
+            char split = new char();
+            int Count = 0;
+            for (int i = 0; i < splitchar.Length; i++)
+            {
+                int Count1 = 0;
+                for (int j = 0; j < arr.Length; j++)
+                {
+                    if (arr[j] == splitchar[i])
+                    {
+                        Count1 = Count1 + 1;
+                    }
+                }
+                if (Count1 > Count)
+                {
+                    Count = Count1;
+                    split = splitchar[i];
+                }
+            }
+            return split;
+        }
+
         public static string SysDisc1
         {
             get

+ 63 - 37
UAS-出货标签管理(吉利通)/UAS_出货标签管理.cs

@@ -5,16 +5,13 @@ using System.Windows.Forms;
 using System.Text.RegularExpressions;
 using System.Text;
 using System.Collections.Generic;
-using System.Linq;
 using System.Diagnostics;
 using LabelManager2;
 using UAS_LabelMachine.PublicMethod;
 using UAS_LabelMachine.Entity;
-using UAS_特殊解析规则;
 using UAS_LabelMachine.PublicForm;
 using System.Threading;
 using System.IO;
-using System.Globalization;
 using System.IO.Ports;
 using UAS_LabelMachine.CustomControl;
 
@@ -72,6 +69,8 @@ namespace UAS_LabelMachine
 
         bool logout = false;
 
+        string SplitChar = ",@#| &";
+
         DataTable SingleLabelParam;
         DataTable MidLabelParam;
         DataTable OutLabelParam;
@@ -228,7 +227,10 @@ namespace UAS_LabelMachine
                     case "FrontendCheck":
                         //比对当前箱数量和容量
                         FrontCollect.Text = msg;
-                        FrontCheckFunction(msg);
+                        if (!FrontCheckFunction(msg))
+                        {
+                            MessageLog.AppendText(">>未能匹配到合适的采集策略\n", Color.Red);
+                        }
                         break;
                     case "BackendCheck":
                         BackCheck.Text = msg;
@@ -247,17 +249,35 @@ namespace UAS_LabelMachine
 
         private bool FrontCheckFunction(string msg)
         {
+            int GroupCount = 0;
             for (int i = 0; i < ScanGroup.Rows.Count; i++)
             {
+
                 string sg_name = ScanGroup.Rows[i]["sg_name"].ToString();
                 string sg_brand = ScanGroup.Rows[i]["sg_brand"].ToString();
-                reg = new Regex(ScanGroup.Rows[i]["sg_script"].ToString());
+                string sg_script = ScanGroup.Rows[i]["sg_script"].ToString();
+                string sg_id = ScanGroup.Rows[i]["sg_id"].ToString();
+                reg = new Regex(sg_script);
                 Match matchs1 = reg.Match(msg);
                 int index = 0;
-                string[] arr = matchs1.Value.Split(',');
-                DataTable dt = BaseUtil.filterDataTable(ScanItem, "sg_name='" + sg_name + "' and sg_brand='" + sg_brand + "' and items_num=" + arr.Length);
-
-                if (dt.Rows.Count > 0)
+                //自动获取分隔符号,分割解析到的数据
+                char Splitor = BaseUtil.GetSplitChar(matchs1.Value.ToString());
+                string[] sgarr = sg_script.Split(Splitor);
+                string[] arr = matchs1.Value.Split(Splitor);
+                DataTable dt = BaseUtil.filterDataTable(ScanItem, "sg_id=" + sg_id);
+                List<int> ItemIndex = new List<int>();
+                for (int j = 0; j < sgarr.Length; j++)
+                {
+                    for (int k = 0; k < dt.Rows.Count; k++)
+                    {
+                        if (sgarr[j].Contains(dt.Rows[k]["si_name"].ToString()))
+                        {
+                            ItemIndex.Add(j);
+                        }
+                    }
+                }
+                //成功获取到了分隔符号并且匹配的项次相等, 如果不包含分隔符只需要一项
+                if ((SplitChar.Contains(Splitor.ToString()) && ItemIndex.Count == dt.Rows.Count) || (!SplitChar.Contains(Splitor.ToString()) && ItemIndex.Count == 1))
                 {
                     for (int j = 0; j < dt.Rows.Count; j++)
                     {
@@ -269,61 +289,71 @@ namespace UAS_LabelMachine
                                 if (si_expression != "")
                                 {
                                     si_exp = new Regex(si_expression);
-                                    DateCode = si_exp.Match(arr[index]).Value;
+                                    DateCode = si_exp.Match(arr[ItemIndex[j]]).Value;
                                 }
                                 else
                                 {
-                                    DateCode = arr[index];
+                                    DateCode = arr[ItemIndex[j]];
                                 }
                                 LabelInfDataTable.Rows[CurrentRowIndex]["pib_datecode"] = DateCode;
                                 break;
                             case "LotNo":
-                                LotNo = arr[index];
+                                LotNo = arr[ItemIndex[j]];
                                 LabelInfDataTable.Rows[CurrentRowIndex]["pib_lotno"] = LotNo;
                                 break;
                             case "PN":
-                                PN = arr[index];
-                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pib_lotno"].ToString() != QTY.ToString())
+                                PN = arr[ItemIndex[j]];
+                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pd_custprodspec"].ToString() != PN)
                                 {
-                                    return false;
+                                    MessageLog.AppendText(">>客户物料型号不匹配\n", Color.Red);
                                 }
                                 break;
                             case "Order":
-                                Order = arr[index];
-                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pib_ordercode"].ToString() != QTY.ToString())
+                                Order = arr[ItemIndex[j]];
+                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pd_pocode"].ToString() != Order)
                                 {
-                                    return false;
+                                    MessageLog.AppendText(">>订单号不匹配\n", Color.Red);
                                 }
                                 break;
                             case "QTY":
                                 if (si_expression != "")
                                 {
                                     si_exp = new Regex(si_expression);
-                                    QTY = si_exp.Match(arr[index]).Value;
+                                    QTY = si_exp.Match(arr[ItemIndex[j]]).Value;
                                 }
                                 else
                                 {
-                                    QTY = arr[index];
+                                    QTY = arr[ItemIndex[j]];
                                 }
-                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pib_lotno"].ToString() != QTY.ToString())
+                                if (LabelInfDataTable.Rows[CurrentRowIndex]["pib_qty"].ToString() != QTY.ToString())
                                 {
-                                    return false;
+                                    MessageLog.AppendText(">>数量不匹配\n", Color.Red);
                                 }
                                 break;
                             case "OutBox":
-                                OutBox = arr[index];
+                                OutBox = arr[ItemIndex[j]];
                                 break;
                             default:
                                 break;
                         }
                         index = index + 1;
                     }
-                    LabelInf.Refresh();
+                }
+                else
+                {
+                    GroupCount = GroupCount + 1;
                 }
             }
-            LabelInfDataTable.Rows[CurrentRowIndex]["pib_ifpick"] = true;
-            LabelInf.Refresh();
-            return true;
+            if (GroupCount == ScanGroup.Rows.Count)
+            {
+                return false;
+            }
+            else
+            {
+                LabelInfDataTable.Rows[CurrentRowIndex]["pib_ifpick"] = true;
+                LabelInf.Refresh();
+                return true;
+            }
         }
 
         private void BackendCheckFunction(string msg, string pib_id)
@@ -745,17 +775,13 @@ namespace UAS_LabelMachine
                     }
                     //查询所有的采集策略
                     sql.Clear();
-                    sql.Append("select * from (select sg_brand,si_item,sg_name,si_expression,instr(sg_name,si_name) itemindex from (select sg_brand,si_item ");
-                    sql.Append(",max(si_expression)si_expression,sg_name,si_name from prodiodetail left join product on pd_prodcode=pr_code left join scangroup on nvl(pd_brand,pr_brand) ");
-                    sql.Append("=sg_brand left join scanitem on sg_id=si_sgid where pd_inoutno='" + pi_inoutno.Text + "' and si_enable=-1 group by ");
-                    sql.Append("sg_brand,si_item,sg_name,si_name))A left join (select count(1) items_num,sg_name,sg_brand from (select sg_name,sg_brand from prodiodetail ");
-                    sql.Append("left join product on pd_prodcode=pr_code left join scangroup on  nvl(pd_brand,pr_brand)=sg_brand left join scanitem  ");
-                    sql.Append("on sg_id=si_sgid where pd_inoutno='" + pi_inoutno.Text + "' and si_enable=-1 group by sg_brand,si_item,sg_name ");
-                    sql.Append(") group by sg_name,sg_brand)B on A.sg_name=b.sg_name and A.sg_brand=B.sg_brand order by A.sg_name,itemindex");
+                    sql.Append("select sg_id,sg_brand,si_item ,sg_script,max(si_expression)si_expression,instr(sg_name,si_name)itemindex,sg_name,si_name,sg_step from prodiodetail left join ");
+                    sql.Append("product on pd_prodcode=pr_code left join scangroup on nvl(pd_brand,pr_brand) =sg_brand left join scanitem on sg_id=si_sgid ");
+                    sql.Append("where pd_inoutno='" + pi_inoutno.Text + "' and si_enable=-1 group by sg_id,sg_script,sg_brand,si_item,sg_name,si_name,sg_step order by sg_step,itemindex ");
                     ScanItem = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
                     sql.Clear();
-                    sql.Append("select distinct sg_brand from prodiodetail left join product on pd_prodcode=pr_code left join scangroup on nvl(pd_brand,");
-                    sql.Append("pr_brand)=sg_brand left join scanitem on sg_id=si_sgid where pd_inoutno='" + pi_inoutno.Text + "' and si_enable=-1 ");
+                    sql.Append("select distinct sg_brand from prodiodetail left join product on pd_prodcode=pr_code left ");
+                    sql.Append("join scangroup on nvl(pd_brand,pr_brand)=sg_brand where pd_inoutno='" + pi_inoutno.Text + "'");
                     DataTable dt1 = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
                     FrontCombo.DataSource = dt1;
                     FrontCombo.DisplayMember = "sg_brand";
@@ -1320,7 +1346,7 @@ namespace UAS_LabelMachine
                 back_sg_separator.Text = dt.Rows[0]["splitfront"].ToString();
             }
             //获取所有的匹配脚本
-            ScanGroup = (DataTable)dh.ExecuteSql("select distinct sg_brand,sg_script,sg_name from prodiobarcode left join scangroup on pib_brand=sg_brand where pib_inoutno='" + pi_inoutno.Text + "' and sg_id is not null", "select");
+            ScanGroup = (DataTable)dh.ExecuteSql("select distinct sg_brand,sg_id,sg_name,sg_script from prodiobarcode left join scangroup on pib_brand=sg_brand where pib_inoutno='" + pi_inoutno.Text + "' and sg_id is not null", "select");
             //绑定数据之后往下找到未采集的数据显示在当前采集的栏目
             for (int i = 0; i < LabelInf.RowCount; i++)
             {

+ 54 - 40
UAS-出货标签管理(吉利通)/采集策略_NEW.Designer.cs

@@ -67,13 +67,14 @@
             this.sg_step = new System.Windows.Forms.NumericUpDown();
             this.ScanStep_label = new System.Windows.Forms.Label();
             this.sg_autolabel = new System.Windows.Forms.CheckBox();
-            this.si_expression4 = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
-            this.si_expression3 = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
-            this.sg_script = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
             this.CustomerTreeView = new System.Windows.Forms.TreeView();
-            this.ButtonSaveScanGroup = new UAS_LabelMachine.CustomControl.NormalButton();
             this.Brand = new System.Windows.Forms.TextBox();
             this.label1 = new System.Windows.Forms.Label();
+            this.ButtonSaveScanGroup = new UAS_LabelMachine.CustomControl.NormalButton();
+            this.si_expression4 = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
+            this.si_expression3 = new UAS_LabelMachine.CustomControl.RichText.RichTextAutoBottom();
+            this.sg_script = new System.Windows.Forms.RichTextBox();
+            this.AddNew = new UAS_LabelMachine.CustomControl.NormalButton();
             ((System.ComponentModel.ISupportInitialize)(this.sg_step)).BeginInit();
             this.SuspendLayout();
             // 
@@ -447,6 +448,43 @@
             this.sg_autolabel.Text = "自动贴标机标签";
             this.sg_autolabel.UseVisualStyleBackColor = true;
             // 
+            // CustomerTreeView
+            // 
+            this.CustomerTreeView.Location = new System.Drawing.Point(0, 24);
+            this.CustomerTreeView.Name = "CustomerTreeView";
+            this.CustomerTreeView.Size = new System.Drawing.Size(251, 610);
+            this.CustomerTreeView.TabIndex = 0;
+            this.CustomerTreeView.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.CustomerTreeView_NodeMouseClick);
+            // 
+            // Brand
+            // 
+            this.Brand.Location = new System.Drawing.Point(85, 1);
+            this.Brand.Name = "Brand";
+            this.Brand.Size = new System.Drawing.Size(166, 21);
+            this.Brand.TabIndex = 43;
+            this.Brand.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Brand_KeyDown);
+            // 
+            // label1
+            // 
+            this.label1.AutoSize = true;
+            this.label1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label1.Location = new System.Drawing.Point(3, 2);
+            this.label1.Name = "label1";
+            this.label1.Size = new System.Drawing.Size(74, 21);
+            this.label1.TabIndex = 44;
+            this.label1.Text = "策略名称";
+            // 
+            // ButtonSaveScanGroup
+            // 
+            this.ButtonSaveScanGroup.Image = ((System.Drawing.Image)(resources.GetObject("ButtonSaveScanGroup.Image")));
+            this.ButtonSaveScanGroup.Location = new System.Drawing.Point(254, 4);
+            this.ButtonSaveScanGroup.Name = "ButtonSaveScanGroup";
+            this.ButtonSaveScanGroup.Size = new System.Drawing.Size(64, 23);
+            this.ButtonSaveScanGroup.TabIndex = 42;
+            this.ButtonSaveScanGroup.Text = "保存";
+            this.ButtonSaveScanGroup.UseVisualStyleBackColor = true;
+            this.ButtonSaveScanGroup.Click += new System.EventHandler(this.ButtonSaveScanGroup_Click);
+            // 
             // si_expression4
             // 
             this.si_expression4.Enabled = false;
@@ -473,48 +511,23 @@
             this.sg_script.TabIndex = 31;
             this.sg_script.Text = "";
             // 
-            // CustomerTreeView
-            // 
-            this.CustomerTreeView.Location = new System.Drawing.Point(0, 24);
-            this.CustomerTreeView.Name = "CustomerTreeView";
-            this.CustomerTreeView.Size = new System.Drawing.Size(251, 610);
-            this.CustomerTreeView.TabIndex = 0;
-            this.CustomerTreeView.NodeMouseClick += new System.Windows.Forms.TreeNodeMouseClickEventHandler(this.CustomerTreeView_NodeMouseClick);
-            // 
-            // ButtonSaveScanGroup
+            // AddNew
             // 
-            this.ButtonSaveScanGroup.Image = ((System.Drawing.Image)(resources.GetObject("ButtonSaveScanGroup.Image")));
-            this.ButtonSaveScanGroup.Location = new System.Drawing.Point(254, 4);
-            this.ButtonSaveScanGroup.Name = "ButtonSaveScanGroup";
-            this.ButtonSaveScanGroup.Size = new System.Drawing.Size(64, 23);
-            this.ButtonSaveScanGroup.TabIndex = 42;
-            this.ButtonSaveScanGroup.Text = "保存";
-            this.ButtonSaveScanGroup.UseVisualStyleBackColor = true;
-            this.ButtonSaveScanGroup.Click += new System.EventHandler(this.ButtonSaveScanGroup_Click);
-            // 
-            // Brand
-            // 
-            this.Brand.Location = new System.Drawing.Point(85, 1);
-            this.Brand.Name = "Brand";
-            this.Brand.Size = new System.Drawing.Size(166, 21);
-            this.Brand.TabIndex = 43;
-            this.Brand.KeyDown += new System.Windows.Forms.KeyEventHandler(this.Brand_KeyDown);
-            // 
-            // label1
-            // 
-            this.label1.AutoSize = true;
-            this.label1.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
-            this.label1.Location = new System.Drawing.Point(3, 2);
-            this.label1.Name = "label1";
-            this.label1.Size = new System.Drawing.Size(74, 21);
-            this.label1.TabIndex = 44;
-            this.label1.Text = "策略名称";
+            this.AddNew.Image = ((System.Drawing.Image)(resources.GetObject("AddNew.Image")));
+            this.AddNew.Location = new System.Drawing.Point(324, 4);
+            this.AddNew.Name = "AddNew";
+            this.AddNew.Size = new System.Drawing.Size(64, 23);
+            this.AddNew.TabIndex = 45;
+            this.AddNew.Text = "新增";
+            this.AddNew.UseVisualStyleBackColor = true;
+            this.AddNew.Click += new System.EventHandler(this.AddNew_Click);
             // 
             // 采集策略_NEW
             // 
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
             this.ClientSize = new System.Drawing.Size(1082, 634);
+            this.Controls.Add(this.AddNew);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.Brand);
             this.Controls.Add(this.ButtonSaveScanGroup);
@@ -601,7 +614,7 @@
         private System.Windows.Forms.TextBox si_remark5;
         private System.Windows.Forms.TextBox si_remark6;
         private System.Windows.Forms.TextBox si_remark1;
-        private CustomControl.RichText.RichTextAutoBottom sg_script;
+        private System.Windows.Forms.RichTextBox sg_script;
         private System.Windows.Forms.Label label13;
         private System.Windows.Forms.Label ScanGroupName_label;
         private CustomControl.RichText.RichTextAutoBottom si_expression3;
@@ -616,5 +629,6 @@
         private CustomControl.NormalButton ButtonSaveScanGroup;
         private System.Windows.Forms.TextBox Brand;
         private System.Windows.Forms.Label label1;
+        private CustomControl.NormalButton AddNew;
     }
 }

+ 13 - 29
UAS-出货标签管理(吉利通)/采集策略_NEW.cs

@@ -47,29 +47,15 @@ namespace UAS_LabelMachine
             //点中根节点的时候查询品牌下的采集方案
             if (e.Node.Level == 0)
             {
+                e.Node.Nodes.Clear();
                 dt = (DataTable)dh.ExecuteSql("select sg_id,sg_name from scangroup where sg_brand='" + e.Node.Text + "'", "select");
                 for (int i = 0; i < dt.Rows.Count; i++)
                 {
-                    //不重复添加编号
-                    bool Add = true;
-                    for (int j = 0; j < e.Node.Nodes.Count; j++)
-                    {
-                        if (e.Node.Nodes[j].Text == dt.Rows[i]["sg_name"].ToString())
-                        {
-                            Add = false;
-                            break;
-                        }
-                    }
-                    //添加节点Tag记录主表ID
-                    if (Add)
-                    {
-                        TreeNode tn = new TreeNode(dt.Rows[i]["sg_name"].ToString());
-                        tn.Tag = dt.Rows[i]["sg_id"].ToString();
-                        e.Node.Nodes.Add(tn);
-                    }
+                    TreeNode tn = new TreeNode(dt.Rows[i]["sg_name"].ToString());
+                    tn.Tag = dt.Rows[i]["sg_id"].ToString();
+                    e.Node.Nodes.Add(tn);
                 }
                 SGBrand = e.Node.Text;
-                SGID = "0";
                 CleanFormData();
             }
             //节点为子节点的时候查询界面的值
@@ -134,21 +120,14 @@ namespace UAS_LabelMachine
             }
             if (SGID == "0")
             {
-                if (!dh.CheckExist("scangroup", "sg_name='" + sgname + "' and sg_brand='" + SGBrand + "'"))
-                {
-                    SGID = dh.GetSEQ("scangroup_seq");
-                    dh.ExecuteSql("insert into scangroup(sg_id,sg_brand)values(" + SGID + ",'" + SGBrand + "')", "insert");
-                }
-                else
-                {
-                    SGID = dh.getFieldDataByCondition("scangroup", "sg_id", "sg_name='" + sgname + "' and sg_brand='" + SGBrand + "'").ToString();
-                }
+                SGID = dh.GetSEQ("scangroup_seq");
+                dh.ExecuteSql("insert into scangroup(sg_id,sg_brand)values(" + SGID + ",'" + SGBrand + "')", "insert");
             }
             //更新主表数据
             sql.Clear();
             sql.Append("update scangroup set sg_name=:sg_name,sg_script=:sg_script,sg_step=:sg_step,sg_autolabel=:sg_autolabel where sg_id=" + SGID);
             dh.ExecuteSql(sql.ToString(), "update", sgname, sg_script.Text, sg_step.Value, sg_autolabel.Checked ? "-1" : "0");
-            dh.ExecuteSql("delete from scanitem where si_sgid="+SGID , "delete");
+            dh.ExecuteSql("delete from scanitem where si_sgid=" + SGID, "delete");
             sql.Clear();
             sql.Append("insert into scanitem(si_id,si_sgid,si_item,si_expression,si_remark,si_name,");
             sql.Append("si_enable) values(scanitem_seq.nextval,'" + SGID + "',:si_item,:si_expression,:si_remark,:si_name,:si_enable)");
@@ -192,7 +171,6 @@ namespace UAS_LabelMachine
             }
             else
             {
-
                 Controls["si_name" + index].Enabled = false;
                 Controls["si_remark" + index].Enabled = false;
                 if (Controls["si_expression" + index] != null)
@@ -205,6 +183,7 @@ namespace UAS_LabelMachine
             sg_name.Text = "";
             sg_script.Text = "";
             sg_step.Value = 0;
+            SGID = "0";
             sg_autolabel.Checked = false;
             for (int i = 0; i < 6; i++)
             {
@@ -233,5 +212,10 @@ namespace UAS_LabelMachine
                 }
             }
         }
+
+        private void AddNew_Click(object sender, EventArgs e)
+        {
+            CleanFormData();
+        }
     }
 }

+ 12 - 0
UAS-出货标签管理(吉利通)/采集策略_NEW.resx

@@ -118,6 +118,18 @@
     <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="AddNew.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        R0lGODlhUgAXAIQAAK/G1qjB1dzn6bTK2MfZ46rE1arD1/D4+/n//d/o7/X6/ez1/K7D1tLj6+Pt9ubx
+        877S3fT09DxZeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBF
+        Mi4wAwEBAAAh+QQAAAAAACwAAAAAUgAXAAAI/wAlCBxIsKDBgwgTKlzIsGCEhxAjSpxIsaLFixgzPhQY
+        AYHHjyBDihxJsqTJkygjcFTAsqXLlzBjypxJs6ZNlRIiHNjJs6fPn0CDCh1KtCjOCAuSKl3KtKnTp1Cj
+        Sp169IHVq1izat3KtavXr2Crgh1LtqzZrUcdqF3Ltq3bt3Djyp1L92iCu3jz6t3Lt6/fv4ADHxVAuLDh
+        w4gTK17MuLHjow0iS55MubLly5gza958lIHnz6BDix5NurTp06iPGljNurXr17Bjy55Nu/bRALhz697N
+        u7fv38CDCz9aoLjx48iTK1/OvLnz50cBSJ9Ovbr169iza9/O/eiA7+DDi0EfT768+fPo0x+FwL69+/fw
+        48ufT7++/fX28+vfzz/+UQIABijggAQWaOCBCCao4FEaNejggxBG1NCEFFZoIUIBAQA7
+</value>
+  </data>
   <data name="ButtonSaveScanGroup.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
     <value>
         R0lGODlhUgAXAIQAAK/G1qjB1dzn6bTK2MfZ46rE1arD1/D4+/n//d/o7/X6/ez1/K7D1tLj6+Pt9ubx