Przeglądaj źródła

新增栈板出库模块

callm 1 tydzień temu
rodzic
commit
05bcc9cba4

+ 739 - 0
UAS_MES_YDCY/FunctionCode/Warehouse/Warehouse_FinishedProductOutSumNEW.Designer.cs

@@ -0,0 +1,739 @@
+namespace UAS_MES_NEW.Warehouse
+{
+    partial class Warehouse_FinishedProductOutSumNEW
+    {
+        /// <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.components = new System.ComponentModel.Container();
+            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Warehouse_FinishedProductOutSumNEW));
+            this.pi_inoutno_label = new System.Windows.Forms.Label();
+            this.pi_titile_label = new System.Windows.Forms.Label();
+            this.pi_title = new System.Windows.Forms.Label();
+            this.panel1 = new System.Windows.Forms.Panel();
+            this.datacount = new UAS_MES_NEW.CustomControl.ValueLabel.ValueLabel();
+            this.Label = new System.Windows.Forms.Label();
+            this.boxqty = new UAS_MES_NEW.CustomControl.ValueLabel.ValueLabel();
+            this.getqty = new UAS_MES_NEW.CustomControl.ValueLabel.ValueLabel();
+            this.ungetqty = new UAS_MES_NEW.CustomControl.ValueLabel.ValueLabel();
+            this.outqty = new UAS_MES_NEW.CustomControl.ValueLabel.ValueLabel();
+            this.label10 = new System.Windows.Forms.Label();
+            this.label8 = new System.Windows.Forms.Label();
+            this.label6 = new System.Windows.Forms.Label();
+            this.label4 = new System.Windows.Forms.Label();
+            this.palletBtn = new System.Windows.Forms.RadioButton();
+            this.bigboxBtn = new System.Windows.Forms.RadioButton();
+            this.pi_id = new System.Windows.Forms.Label();
+            this.pi_type = new System.Windows.Forms.Label();
+            this.bindingSource = new System.Windows.Forms.BindingSource(this.components);
+            this.PrintLabel_label = new System.Windows.Forms.Label();
+            this.pa_restqty_label = new System.Windows.Forms.Label();
+            this.PrintNum = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.EnterTextBox();
+            this.PrintLabel = new UAS_MES_NEW.CustomControl.ComBoxWithFocus.ComboxWithTip(this.components);
+            this.Printlab = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.Prodiodetail = new UAS_MES_NEW.CustomControl.DataGrid_View.DataGridViewWithSerialNum();
+            this.pd_pdno = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pd_id = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pd_prodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.dataGridViewTextBoxColumn2 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pr_detail1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pr_spec1 = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.OperateResult = new UAS_MES_NEW.CustomControl.RichText.RichTextAutoBottom();
+            this.Clean = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.cancel = new UAS_MES_NEW.CustomControl.CustomCheckBox.CustomCheckBox();
+            this.input = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SnCollectionBox();
+            this.InOutDetailDGV = new UAS_MES_NEW.CustomControl.DataGrid_View.DataGridViewWithSerialNum();
+            this.pim_outboxcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pim_mac = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pim_prodcode = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pr_detail = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.pr_spec = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.blank = new System.Windows.Forms.DataGridViewTextBoxColumn();
+            this.ProdDetail = new UAS_MES_NEW.CustomControl.ButtonUtil.NormalButton();
+            this.pi_inoutno = new UAS_MES_NEW.CustomControl.TextBoxWithIcon.SearchTextBox();
+            this.PrinterList_label = new System.Windows.Forms.Label();
+            this.PrinterList = new UAS_MES_NEW.CustomControl.ComBoxWithFocus.PrinterCombox();
+            this.Combine = new System.Windows.Forms.CheckBox();
+            this.panel1.SuspendLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.bindingSource)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.Prodiodetail)).BeginInit();
+            ((System.ComponentModel.ISupportInitialize)(this.InOutDetailDGV)).BeginInit();
+            this.SuspendLayout();
+            // 
+            // pi_inoutno_label
+            // 
+            this.pi_inoutno_label.AutoSize = true;
+            this.pi_inoutno_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pi_inoutno_label.Location = new System.Drawing.Point(10, 15);
+            this.pi_inoutno_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pi_inoutno_label.Name = "pi_inoutno_label";
+            this.pi_inoutno_label.Size = new System.Drawing.Size(146, 41);
+            this.pi_inoutno_label.TabIndex = 211;
+            this.pi_inoutno_label.Text = "出货单号";
+            // 
+            // pi_titile_label
+            // 
+            this.pi_titile_label.AutoSize = true;
+            this.pi_titile_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pi_titile_label.Location = new System.Drawing.Point(504, 15);
+            this.pi_titile_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pi_titile_label.Name = "pi_titile_label";
+            this.pi_titile_label.Size = new System.Drawing.Size(146, 41);
+            this.pi_titile_label.TabIndex = 212;
+            this.pi_titile_label.Text = "客户名称";
+            // 
+            // pi_title
+            // 
+            this.pi_title.AutoSize = true;
+            this.pi_title.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pi_title.Location = new System.Drawing.Point(652, 21);
+            this.pi_title.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pi_title.Name = "pi_title";
+            this.pi_title.Size = new System.Drawing.Size(0, 31);
+            this.pi_title.TabIndex = 213;
+            // 
+            // panel1
+            // 
+            this.panel1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
+            this.panel1.Controls.Add(this.datacount);
+            this.panel1.Controls.Add(this.Label);
+            this.panel1.Controls.Add(this.boxqty);
+            this.panel1.Controls.Add(this.getqty);
+            this.panel1.Controls.Add(this.ungetqty);
+            this.panel1.Controls.Add(this.outqty);
+            this.panel1.Controls.Add(this.label10);
+            this.panel1.Controls.Add(this.label8);
+            this.panel1.Controls.Add(this.label6);
+            this.panel1.Controls.Add(this.label4);
+            this.panel1.Location = new System.Drawing.Point(1182, 132);
+            this.panel1.Margin = new System.Windows.Forms.Padding(4);
+            this.panel1.Name = "panel1";
+            this.panel1.Size = new System.Drawing.Size(280, 388);
+            this.panel1.TabIndex = 217;
+            // 
+            // datacount
+            // 
+            this.datacount.AutoSize = true;
+            this.datacount.CutLength = null;
+            this.datacount.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.datacount.Location = new System.Drawing.Point(190, 310);
+            this.datacount.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.datacount.MaximumSize = new System.Drawing.Size(400, 0);
+            this.datacount.Name = "datacount";
+            this.datacount.Size = new System.Drawing.Size(0, 41);
+            this.datacount.TabIndex = 230;
+            // 
+            // Label
+            // 
+            this.Label.AutoSize = true;
+            this.Label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.Label.Location = new System.Drawing.Point(18, 310);
+            this.Label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.Label.Name = "Label";
+            this.Label.Size = new System.Drawing.Size(146, 41);
+            this.Label.TabIndex = 229;
+            this.Label.Text = "当前明细";
+            // 
+            // boxqty
+            // 
+            this.boxqty.AutoSize = true;
+            this.boxqty.CutLength = null;
+            this.boxqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.boxqty.Location = new System.Drawing.Point(190, 240);
+            this.boxqty.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.boxqty.MaximumSize = new System.Drawing.Size(400, 0);
+            this.boxqty.Name = "boxqty";
+            this.boxqty.Size = new System.Drawing.Size(0, 41);
+            this.boxqty.TabIndex = 227;
+            // 
+            // getqty
+            // 
+            this.getqty.AutoSize = true;
+            this.getqty.CutLength = null;
+            this.getqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.getqty.Location = new System.Drawing.Point(190, 168);
+            this.getqty.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.getqty.MaximumSize = new System.Drawing.Size(400, 0);
+            this.getqty.Name = "getqty";
+            this.getqty.Size = new System.Drawing.Size(0, 41);
+            this.getqty.TabIndex = 226;
+            // 
+            // ungetqty
+            // 
+            this.ungetqty.AutoSize = true;
+            this.ungetqty.CutLength = null;
+            this.ungetqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.ungetqty.Location = new System.Drawing.Point(190, 88);
+            this.ungetqty.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.ungetqty.MaximumSize = new System.Drawing.Size(400, 0);
+            this.ungetqty.Name = "ungetqty";
+            this.ungetqty.Size = new System.Drawing.Size(0, 41);
+            this.ungetqty.TabIndex = 225;
+            // 
+            // outqty
+            // 
+            this.outqty.AutoSize = true;
+            this.outqty.CutLength = null;
+            this.outqty.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.outqty.Location = new System.Drawing.Point(190, 22);
+            this.outqty.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.outqty.MaximumSize = new System.Drawing.Size(400, 0);
+            this.outqty.Name = "outqty";
+            this.outqty.Size = new System.Drawing.Size(0, 41);
+            this.outqty.TabIndex = 224;
+            // 
+            // label10
+            // 
+            this.label10.AutoSize = true;
+            this.label10.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label10.Location = new System.Drawing.Point(18, 240);
+            this.label10.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label10.Name = "label10";
+            this.label10.Size = new System.Drawing.Size(114, 41);
+            this.label10.TabIndex = 222;
+            this.label10.Text = "总箱数";
+            // 
+            // label8
+            // 
+            this.label8.AutoSize = true;
+            this.label8.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label8.Location = new System.Drawing.Point(18, 168);
+            this.label8.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label8.Name = "label8";
+            this.label8.Size = new System.Drawing.Size(146, 41);
+            this.label8.TabIndex = 220;
+            this.label8.Text = "已采集数";
+            // 
+            // label6
+            // 
+            this.label6.AutoSize = true;
+            this.label6.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label6.Location = new System.Drawing.Point(18, 88);
+            this.label6.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label6.Name = "label6";
+            this.label6.Size = new System.Drawing.Size(146, 41);
+            this.label6.TabIndex = 218;
+            this.label6.Text = "待采集数";
+            // 
+            // label4
+            // 
+            this.label4.AutoSize = true;
+            this.label4.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.label4.Location = new System.Drawing.Point(18, 22);
+            this.label4.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.label4.Name = "label4";
+            this.label4.Size = new System.Drawing.Size(146, 41);
+            this.label4.TabIndex = 218;
+            this.label4.Text = "出货数量";
+            // 
+            // palletBtn
+            // 
+            this.palletBtn.AutoSize = true;
+            this.palletBtn.Checked = true;
+            this.palletBtn.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.palletBtn.Location = new System.Drawing.Point(29, 923);
+            this.palletBtn.Margin = new System.Windows.Forms.Padding(4);
+            this.palletBtn.Name = "palletBtn";
+            this.palletBtn.Size = new System.Drawing.Size(145, 45);
+            this.palletBtn.TabIndex = 219;
+            this.palletBtn.TabStop = true;
+            this.palletBtn.Text = "栈板号";
+            this.palletBtn.UseVisualStyleBackColor = true;
+            this.palletBtn.Click += new System.EventHandler(this.serBtn_Click);
+            // 
+            // bigboxBtn
+            // 
+            this.bigboxBtn.AutoSize = true;
+            this.bigboxBtn.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.bigboxBtn.Location = new System.Drawing.Point(195, 923);
+            this.bigboxBtn.Margin = new System.Windows.Forms.Padding(4);
+            this.bigboxBtn.Name = "bigboxBtn";
+            this.bigboxBtn.Size = new System.Drawing.Size(113, 45);
+            this.bigboxBtn.TabIndex = 221;
+            this.bigboxBtn.Text = "箱号";
+            this.bigboxBtn.UseVisualStyleBackColor = true;
+            this.bigboxBtn.Click += new System.EventHandler(this.serBtn_Click);
+            // 
+            // pi_id
+            // 
+            this.pi_id.AutoSize = true;
+            this.pi_id.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pi_id.Location = new System.Drawing.Point(920, 42);
+            this.pi_id.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pi_id.Name = "pi_id";
+            this.pi_id.Size = new System.Drawing.Size(0, 41);
+            this.pi_id.TabIndex = 229;
+            this.pi_id.Visible = false;
+            // 
+            // pi_type
+            // 
+            this.pi_type.AutoSize = true;
+            this.pi_type.Location = new System.Drawing.Point(470, 96);
+            this.pi_type.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pi_type.Name = "pi_type";
+            this.pi_type.Size = new System.Drawing.Size(0, 24);
+            this.pi_type.TabIndex = 230;
+            this.pi_type.Visible = false;
+            // 
+            // PrintLabel_label
+            // 
+            this.PrintLabel_label.AutoSize = true;
+            this.PrintLabel_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.PrintLabel_label.Location = new System.Drawing.Point(851, 155);
+            this.PrintLabel_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.PrintLabel_label.Name = "PrintLabel_label";
+            this.PrintLabel_label.Size = new System.Drawing.Size(82, 41);
+            this.PrintLabel_label.TabIndex = 246;
+            this.PrintLabel_label.Text = "标签";
+            // 
+            // pa_restqty_label
+            // 
+            this.pa_restqty_label.AutoSize = true;
+            this.pa_restqty_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.pa_restqty_label.Location = new System.Drawing.Point(851, 243);
+            this.pa_restqty_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.pa_restqty_label.Name = "pa_restqty_label";
+            this.pa_restqty_label.Size = new System.Drawing.Size(82, 41);
+            this.pa_restqty_label.TabIndex = 243;
+            this.pa_restqty_label.Text = "张数";
+            // 
+            // PrintNum
+            // 
+            this.PrintNum.AllPower = null;
+            this.PrintNum.BackColor = System.Drawing.Color.White;
+            this.PrintNum.ID = null;
+            this.PrintNum.Location = new System.Drawing.Point(958, 249);
+            this.PrintNum.Margin = new System.Windows.Forms.Padding(6);
+            this.PrintNum.Name = "PrintNum";
+            this.PrintNum.Power = null;
+            this.PrintNum.Size = new System.Drawing.Size(219, 35);
+            this.PrintNum.Str = null;
+            this.PrintNum.Str1 = null;
+            this.PrintNum.Str2 = null;
+            this.PrintNum.TabIndex = 247;
+            this.PrintNum.Text = "1";
+            // 
+            // PrintLabel
+            // 
+            this.PrintLabel.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
+            this.PrintLabel.FormattingEnabled = true;
+            this.PrintLabel.Location = new System.Drawing.Point(958, 155);
+            this.PrintLabel.Margin = new System.Windows.Forms.Padding(4, 2, 4, 2);
+            this.PrintLabel.Name = "PrintLabel";
+            this.PrintLabel.Size = new System.Drawing.Size(219, 32);
+            this.PrintLabel.TabIndex = 245;
+            // 
+            // Printlab
+            // 
+            this.Printlab.AllPower = null;
+            this.Printlab.BackColor = System.Drawing.Color.Transparent;
+            this.Printlab.DownImage = ((System.Drawing.Image)(resources.GetObject("Printlab.DownImage")));
+            this.Printlab.Image = ((System.Drawing.Image)(resources.GetObject("Printlab.Image")));
+            this.Printlab.IsShowBorder = true;
+            this.Printlab.Location = new System.Drawing.Point(998, 353);
+            this.Printlab.Margin = new System.Windows.Forms.Padding(6);
+            this.Printlab.MoveImage = ((System.Drawing.Image)(resources.GetObject("Printlab.MoveImage")));
+            this.Printlab.Name = "Printlab";
+            this.Printlab.NormalImage = ((System.Drawing.Image)(resources.GetObject("Printlab.NormalImage")));
+            this.Printlab.Power = null;
+            this.Printlab.Size = new System.Drawing.Size(90, 48);
+            this.Printlab.TabIndex = 244;
+            this.Printlab.Text = "打印";
+            this.Printlab.UseVisualStyleBackColor = true;
+            this.Printlab.Click += new System.EventHandler(this.Printlab_Click);
+            // 
+            // Prodiodetail
+            // 
+            this.Prodiodetail.AllowUserToAddRows = false;
+            this.Prodiodetail.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.Prodiodetail.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.pd_pdno,
+            this.pd_id,
+            this.pd_prodcode,
+            this.dataGridViewTextBoxColumn2,
+            this.pr_detail1,
+            this.pr_spec1});
+            this.Prodiodetail.EnableContentClick = true;
+            this.Prodiodetail.Location = new System.Drawing.Point(18, 79);
+            this.Prodiodetail.Margin = new System.Windows.Forms.Padding(4);
+            this.Prodiodetail.Name = "Prodiodetail";
+            this.Prodiodetail.RowHeadersWidth = 82;
+            this.Prodiodetail.RowTemplate.Height = 27;
+            this.Prodiodetail.Size = new System.Drawing.Size(829, 405);
+            this.Prodiodetail.TabIndex = 242;
+            this.Prodiodetail.CellClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.Prodiodetail_CellClick);
+            // 
+            // pd_pdno
+            // 
+            this.pd_pdno.DataPropertyName = "pd_pdno";
+            this.pd_pdno.HeaderText = "序号";
+            this.pd_pdno.MinimumWidth = 10;
+            this.pd_pdno.Name = "pd_pdno";
+            this.pd_pdno.Width = 200;
+            // 
+            // pd_id
+            // 
+            this.pd_id.DataPropertyName = "pd_id";
+            this.pd_id.HeaderText = "ID";
+            this.pd_id.MinimumWidth = 10;
+            this.pd_id.Name = "pd_id";
+            this.pd_id.Width = 10;
+            // 
+            // pd_prodcode
+            // 
+            this.pd_prodcode.DataPropertyName = "pd_prodcode";
+            this.pd_prodcode.HeaderText = "物料编号";
+            this.pd_prodcode.MinimumWidth = 2;
+            this.pd_prodcode.Name = "pd_prodcode";
+            this.pd_prodcode.ReadOnly = true;
+            this.pd_prodcode.Width = 150;
+            // 
+            // dataGridViewTextBoxColumn2
+            // 
+            this.dataGridViewTextBoxColumn2.DataPropertyName = "pd_outqty";
+            this.dataGridViewTextBoxColumn2.HeaderText = "出货数量";
+            this.dataGridViewTextBoxColumn2.MinimumWidth = 10;
+            this.dataGridViewTextBoxColumn2.Name = "dataGridViewTextBoxColumn2";
+            this.dataGridViewTextBoxColumn2.ReadOnly = true;
+            this.dataGridViewTextBoxColumn2.Width = 200;
+            // 
+            // pr_detail1
+            // 
+            this.pr_detail1.DataPropertyName = "pr_detail";
+            this.pr_detail1.HeaderText = "名称";
+            this.pr_detail1.MinimumWidth = 10;
+            this.pr_detail1.Name = "pr_detail1";
+            this.pr_detail1.ReadOnly = true;
+            this.pr_detail1.Width = 200;
+            // 
+            // pr_spec1
+            // 
+            this.pr_spec1.DataPropertyName = "pr_spec";
+            this.pr_spec1.HeaderText = "规格";
+            this.pr_spec1.MinimumWidth = 200;
+            this.pr_spec1.Name = "pr_spec1";
+            this.pr_spec1.ReadOnly = true;
+            this.pr_spec1.Width = 200;
+            // 
+            // OperateResult
+            // 
+            this.OperateResult.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.OperateResult.Location = new System.Drawing.Point(1182, 532);
+            this.OperateResult.Margin = new System.Windows.Forms.Padding(6);
+            this.OperateResult.Name = "OperateResult";
+            this.OperateResult.Size = new System.Drawing.Size(280, 486);
+            this.OperateResult.TabIndex = 228;
+            this.OperateResult.Text = "";
+            // 
+            // Clean
+            // 
+            this.Clean.AllPower = null;
+            this.Clean.BackColor = System.Drawing.Color.Transparent;
+            this.Clean.DownImage = ((System.Drawing.Image)(resources.GetObject("Clean.DownImage")));
+            this.Clean.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.Clean.Image = null;
+            this.Clean.IsShowBorder = true;
+            this.Clean.Location = new System.Drawing.Point(958, 976);
+            this.Clean.Margin = new System.Windows.Forms.Padding(4);
+            this.Clean.MoveImage = ((System.Drawing.Image)(resources.GetObject("Clean.MoveImage")));
+            this.Clean.Name = "Clean";
+            this.Clean.NormalImage = ((System.Drawing.Image)(resources.GetObject("Clean.NormalImage")));
+            this.Clean.Power = null;
+            this.Clean.Size = new System.Drawing.Size(148, 40);
+            this.Clean.TabIndex = 224;
+            this.Clean.Text = "取消采集";
+            this.Clean.UseVisualStyleBackColor = false;
+            this.Clean.Click += new System.EventHandler(this.Clean_Click);
+            // 
+            // cancel
+            // 
+            this.cancel.AllPower = null;
+            this.cancel.AutoSize = true;
+            this.cancel.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.cancel.Location = new System.Drawing.Point(298, 966);
+            this.cancel.Margin = new System.Windows.Forms.Padding(4);
+            this.cancel.Name = "cancel";
+            this.cancel.Power = null;
+            this.cancel.Size = new System.Drawing.Size(114, 45);
+            this.cancel.TabIndex = 223;
+            this.cancel.Text = "取消";
+            this.cancel.UseVisualStyleBackColor = true;
+            // 
+            // input
+            // 
+            this.input.AllPower = null;
+            this.input.BackColor = System.Drawing.Color.White;
+            this.input.ID = null;
+            this.input.Location = new System.Drawing.Point(18, 976);
+            this.input.Margin = new System.Windows.Forms.Padding(4);
+            this.input.Name = "input";
+            this.input.Power = null;
+            this.input.Size = new System.Drawing.Size(246, 35);
+            this.input.Str = null;
+            this.input.Str1 = null;
+            this.input.Str2 = null;
+            this.input.TabIndex = 222;
+            this.input.KeyDown += new System.Windows.Forms.KeyEventHandler(this.input_KeyDown);
+            // 
+            // InOutDetailDGV
+            // 
+            this.InOutDetailDGV.AllowUserToAddRows = false;
+            this.InOutDetailDGV.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
+            this.InOutDetailDGV.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
+            this.pim_outboxcode,
+            this.pim_mac,
+            this.pim_prodcode,
+            this.pr_detail,
+            this.pr_spec,
+            this.blank});
+            this.InOutDetailDGV.EnableContentClick = true;
+            this.InOutDetailDGV.Location = new System.Drawing.Point(18, 494);
+            this.InOutDetailDGV.Margin = new System.Windows.Forms.Padding(4);
+            this.InOutDetailDGV.Name = "InOutDetailDGV";
+            this.InOutDetailDGV.RowHeadersWidth = 82;
+            this.InOutDetailDGV.RowTemplate.Height = 27;
+            this.InOutDetailDGV.Size = new System.Drawing.Size(1144, 421);
+            this.InOutDetailDGV.TabIndex = 218;
+            this.InOutDetailDGV.DataSourceChanged += new System.EventHandler(this.InOutDetailDGV_DataSourceChanged);
+            // 
+            // pim_outboxcode
+            // 
+            this.pim_outboxcode.DataPropertyName = "pim_outboxcode";
+            this.pim_outboxcode.HeaderText = "栈板/箱号";
+            this.pim_outboxcode.MinimumWidth = 2;
+            this.pim_outboxcode.Name = "pim_outboxcode";
+            this.pim_outboxcode.ReadOnly = true;
+            this.pim_outboxcode.Width = 150;
+            // 
+            // pim_mac
+            // 
+            this.pim_mac.DataPropertyName = "pim_mac";
+            this.pim_mac.HeaderText = "SN号";
+            this.pim_mac.MinimumWidth = 10;
+            this.pim_mac.Name = "pim_mac";
+            this.pim_mac.ReadOnly = true;
+            this.pim_mac.Width = 200;
+            // 
+            // pim_prodcode
+            // 
+            this.pim_prodcode.DataPropertyName = "pim_prodcode";
+            this.pim_prodcode.HeaderText = "产品代码";
+            this.pim_prodcode.MinimumWidth = 10;
+            this.pim_prodcode.Name = "pim_prodcode";
+            this.pim_prodcode.ReadOnly = true;
+            this.pim_prodcode.Width = 200;
+            // 
+            // pr_detail
+            // 
+            this.pr_detail.DataPropertyName = "pr_detail";
+            this.pr_detail.HeaderText = "名称";
+            this.pr_detail.MinimumWidth = 10;
+            this.pr_detail.Name = "pr_detail";
+            this.pr_detail.ReadOnly = true;
+            this.pr_detail.Width = 200;
+            // 
+            // pr_spec
+            // 
+            this.pr_spec.DataPropertyName = "pr_spec";
+            this.pr_spec.HeaderText = "规格";
+            this.pr_spec.MinimumWidth = 200;
+            this.pr_spec.Name = "pr_spec";
+            this.pr_spec.ReadOnly = true;
+            this.pr_spec.Width = 200;
+            // 
+            // blank
+            // 
+            this.blank.AutoSizeMode = System.Windows.Forms.DataGridViewAutoSizeColumnMode.None;
+            this.blank.HeaderText = "";
+            this.blank.MinimumWidth = 2;
+            this.blank.Name = "blank";
+            this.blank.Width = 2;
+            // 
+            // ProdDetail
+            // 
+            this.ProdDetail.AllPower = null;
+            this.ProdDetail.BackColor = System.Drawing.Color.Transparent;
+            this.ProdDetail.DownImage = ((System.Drawing.Image)(resources.GetObject("ProdDetail.DownImage")));
+            this.ProdDetail.Font = new System.Drawing.Font("微软雅黑", 9F);
+            this.ProdDetail.Image = null;
+            this.ProdDetail.IsShowBorder = true;
+            this.ProdDetail.Location = new System.Drawing.Point(1300, 21);
+            this.ProdDetail.Margin = new System.Windows.Forms.Padding(4);
+            this.ProdDetail.MoveImage = ((System.Drawing.Image)(resources.GetObject("ProdDetail.MoveImage")));
+            this.ProdDetail.Name = "ProdDetail";
+            this.ProdDetail.NormalImage = ((System.Drawing.Image)(resources.GetObject("ProdDetail.NormalImage")));
+            this.ProdDetail.Power = null;
+            this.ProdDetail.Size = new System.Drawing.Size(130, 54);
+            this.ProdDetail.TabIndex = 214;
+            this.ProdDetail.Text = "产品明细";
+            this.ProdDetail.UseVisualStyleBackColor = false;
+            this.ProdDetail.Click += new System.EventHandler(this.ProdDetail_Click);
+            // 
+            // pi_inoutno
+            // 
+            this.pi_inoutno.AllPower = null;
+            this.pi_inoutno.Caller = null;
+            this.pi_inoutno.Condition = null;
+            this.pi_inoutno.DBTitle = null;
+            this.pi_inoutno.FormName = null;
+            this.pi_inoutno.Location = new System.Drawing.Point(154, 17);
+            this.pi_inoutno.Margin = new System.Windows.Forms.Padding(4);
+            this.pi_inoutno.Name = "pi_inoutno";
+            this.pi_inoutno.Power = null;
+            this.pi_inoutno.ReturnData = null;
+            this.pi_inoutno.SelectField = null;
+            this.pi_inoutno.SetValueField = null;
+            this.pi_inoutno.Size = new System.Drawing.Size(316, 40);
+            this.pi_inoutno.TabIndex = 0;
+            this.pi_inoutno.TableName = null;
+            this.pi_inoutno.TextBoxEnable = true;
+            // 
+            // PrinterList_label
+            // 
+            this.PrinterList_label.AutoSize = true;
+            this.PrinterList_label.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
+            this.PrinterList_label.Location = new System.Drawing.Point(851, 79);
+            this.PrinterList_label.Margin = new System.Windows.Forms.Padding(6, 0, 6, 0);
+            this.PrinterList_label.Name = "PrinterList_label";
+            this.PrinterList_label.Size = new System.Drawing.Size(114, 41);
+            this.PrinterList_label.TabIndex = 249;
+            this.PrinterList_label.Text = "打印机";
+            // 
+            // PrinterList
+            // 
+            this.PrinterList.Location = new System.Drawing.Point(958, 83);
+            this.PrinterList.Margin = new System.Windows.Forms.Padding(8);
+            this.PrinterList.Name = "PrinterList";
+            this.PrinterList.Size = new System.Drawing.Size(219, 40);
+            this.PrinterList.TabIndex = 248;
+            // 
+            // Combine
+            // 
+            this.Combine.AutoSize = true;
+            this.Combine.Location = new System.Drawing.Point(1039, 26);
+            this.Combine.Name = "Combine";
+            this.Combine.Size = new System.Drawing.Size(138, 28);
+            this.Combine.TabIndex = 250;
+            this.Combine.Text = "合并明细";
+            this.Combine.UseVisualStyleBackColor = true;
+            // 
+            // Warehouse_FinishedProductOutSumNEW
+            // 
+            this.AutoScaleDimensions = new System.Drawing.SizeF(12F, 24F);
+            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+            this.ClientSize = new System.Drawing.Size(1480, 1036);
+            this.Controls.Add(this.Combine);
+            this.Controls.Add(this.PrinterList_label);
+            this.Controls.Add(this.PrinterList);
+            this.Controls.Add(this.PrintNum);
+            this.Controls.Add(this.PrintLabel_label);
+            this.Controls.Add(this.PrintLabel);
+            this.Controls.Add(this.Printlab);
+            this.Controls.Add(this.pa_restqty_label);
+            this.Controls.Add(this.Prodiodetail);
+            this.Controls.Add(this.pi_type);
+            this.Controls.Add(this.pi_id);
+            this.Controls.Add(this.OperateResult);
+            this.Controls.Add(this.Clean);
+            this.Controls.Add(this.cancel);
+            this.Controls.Add(this.input);
+            this.Controls.Add(this.bigboxBtn);
+            this.Controls.Add(this.palletBtn);
+            this.Controls.Add(this.InOutDetailDGV);
+            this.Controls.Add(this.panel1);
+            this.Controls.Add(this.ProdDetail);
+            this.Controls.Add(this.pi_title);
+            this.Controls.Add(this.pi_titile_label);
+            this.Controls.Add(this.pi_inoutno_label);
+            this.Controls.Add(this.pi_inoutno);
+            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
+            this.Margin = new System.Windows.Forms.Padding(4);
+            this.Name = "Warehouse_FinishedProductOutSumNEW";
+            this.Tag = "Warehouse!FinishedProductIn";
+            this.Text = "成品出货";
+            this.Load += new System.EventHandler(this.Warehouse_FinishedProductOut_Load);
+            this.SizeChanged += new System.EventHandler(this.Warehouse_FinishedProductOut_SizeChanged);
+            this.panel1.ResumeLayout(false);
+            this.panel1.PerformLayout();
+            ((System.ComponentModel.ISupportInitialize)(this.bindingSource)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.Prodiodetail)).EndInit();
+            ((System.ComponentModel.ISupportInitialize)(this.InOutDetailDGV)).EndInit();
+            this.ResumeLayout(false);
+            this.PerformLayout();
+
+        }
+
+        #endregion
+
+        private CustomControl.TextBoxWithIcon.SearchTextBox pi_inoutno;
+        private System.Windows.Forms.Label pi_inoutno_label;
+        private System.Windows.Forms.Label pi_titile_label;
+        private System.Windows.Forms.Label pi_title;
+        private CustomControl.ButtonUtil.NormalButton ProdDetail;
+        private System.Windows.Forms.Panel panel1;
+        private System.Windows.Forms.Label label10;
+        private System.Windows.Forms.Label label8;
+        private System.Windows.Forms.Label label6;
+        private System.Windows.Forms.Label label4;
+        private CustomControl.DataGrid_View.DataGridViewWithSerialNum InOutDetailDGV;
+        private System.Windows.Forms.RadioButton palletBtn;
+        private System.Windows.Forms.RadioButton bigboxBtn;
+        private CustomControl.TextBoxWithIcon.SnCollectionBox input;
+        private CustomControl.CustomCheckBox.CustomCheckBox cancel;
+        private CustomControl.ButtonUtil.NormalButton Clean;
+        private CustomControl.RichText.RichTextAutoBottom OperateResult;
+        private System.Windows.Forms.Label pi_id;
+        private System.Windows.Forms.Label pi_type;
+        private CustomControl.ValueLabel.ValueLabel outqty;
+        private CustomControl.ValueLabel.ValueLabel ungetqty;
+        private CustomControl.ValueLabel.ValueLabel getqty;
+        private CustomControl.ValueLabel.ValueLabel boxqty;
+        private System.Windows.Forms.BindingSource bindingSource;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pim_outboxcode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pim_mac;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pim_prodcode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pr_detail;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pr_spec;
+        private System.Windows.Forms.DataGridViewTextBoxColumn blank;
+        private CustomControl.ValueLabel.ValueLabel datacount;
+        private System.Windows.Forms.Label Label;
+        private CustomControl.DataGrid_View.DataGridViewWithSerialNum Prodiodetail;
+        private CustomControl.TextBoxWithIcon.EnterTextBox PrintNum;
+        private System.Windows.Forms.Label PrintLabel_label;
+        private CustomControl.ComBoxWithFocus.ComboxWithTip PrintLabel;
+        private CustomControl.ButtonUtil.NormalButton Printlab;
+        private System.Windows.Forms.Label pa_restqty_label;
+        private System.Windows.Forms.Label PrinterList_label;
+        private CustomControl.ComBoxWithFocus.PrinterCombox PrinterList;
+        private System.Windows.Forms.CheckBox Combine;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pd_pdno;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pd_id;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pd_prodcode;
+        private System.Windows.Forms.DataGridViewTextBoxColumn dataGridViewTextBoxColumn2;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pr_detail1;
+        private System.Windows.Forms.DataGridViewTextBoxColumn pr_spec1;
+    }
+}

+ 693 - 0
UAS_MES_YDCY/FunctionCode/Warehouse/Warehouse_FinishedProductOutSumNEW.cs

@@ -0,0 +1,693 @@
+using Seagull.BarTender.Print;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Drawing;
+using System.Threading;
+using System.Windows.Forms;
+using UAS_MES_NEW.DataOperate;
+using UAS_MES_NEW.Entity;
+using UAS_MES_NEW.PublicForm;
+using UAS_MES_NEW.PublicMethod;
+
+namespace UAS_MES_NEW.Warehouse
+{
+    public partial class Warehouse_FinishedProductOutSumNEW : Form
+    {
+
+        DataTable dbfind;
+
+        AutoSizeFormClass asc = new AutoSizeFormClass();
+
+        LogStringBuilder sql = new LogStringBuilder();
+
+        DataTable dt;
+
+        DataHelper dh;
+
+        DataTable dta;
+
+        DataTable dtpi;
+
+        DataTable dtform;
+
+        DataTable dtms;
+
+        Warehouse_NewPiInOut newpi;
+
+        string needMakeIn;
+
+        public Warehouse_FinishedProductOutSumNEW()
+        {
+            InitializeComponent();
+        }
+
+        Thread thread;
+
+        private void Warehouse_FinishedProductOut_Load(object sender, EventArgs e)
+        {
+            thread = new Thread(NewPrint);
+            SetLoadingWindow stw = new SetLoadingWindow(thread, "初始化打印程序");
+            BaseUtil.SetFormCenter(stw);
+            stw.ShowDialog();
+            pi_inoutno.TableName = "prodinout";
+            pi_inoutno.DBTitle = "出货单查询";
+            pi_inoutno.SelectField = "pi_id # ID,pi_title  # 客户名称,pi_inoutno # 出货单号,pi_type # 出货类型";
+            pi_inoutno.SetValueField = new string[] { "pi_title", "pi_inoutno", "pi_id", "pi_type" };
+            pi_inoutno.FormName = Name;
+            pi_inoutno.Condition = "nvl(pi_pdastatus,' ')<>'已出库' and pi_class='其它出库单' and pi_type='销售出货'";
+            pi_inoutno.DbChange += Pi_inoutno_DbChange;
+            asc.controllInitializeSize(this);
+            dh = SystemInf.dh;
+            needMakeIn = dh.GetConfig("needMakeIn", "MESSetting").ToString();
+            input.Focus();
+            OperateResult.AppendText("请输入栈板进行采集\n", Color.Black, input);
+
+        }
+
+        //创建打印进程
+        private void NewPrint()
+        {
+            try
+            {
+                engine = new Engine(true);
+            }
+            catch
+            {
+                OperateResult.AppendText("未正确安装BarTender软件\n", Color.Red);
+            }
+        }
+
+
+        private void Pi_inoutno_DbChange(object sender, EventArgs e)
+        {
+            dbfind = pi_inoutno.ReturnData;
+            BaseUtil.SetFormValue(this.Controls, dbfind);
+            LoadFormData();
+            LoadGridData();
+        }
+
+        /// <summary>
+        /// j加载Form数据
+        /// </summary>
+        private void LoadFormData()
+        {
+            BaseUtil.CleanControls(panel1.Controls);
+            sql.Clear();
+            sql.Append("select pi_id,pi_title,pi_inoutno,pi_type from prodinout where pi_inoutno = '" + pi_inoutno.Text + "'");
+            dtpi = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+            if (dtpi.Rows.Count > 0)
+            {
+                BaseUtil.SetFormValue(this.Controls, dtpi);
+            }
+
+            if (pi_type.Text == "销售出货")
+            {
+                sql.Clear();
+                sql.Append("select nvl((select sum(pd_outqty) from prodiodetail where pd_piid=" + pi_id.Text + "),0)outqty,nvl((select count(1)cn from prodiomac where pim_inoutno=pd_inoutno),0) getqty  ");
+                sql.Append(" from  prodiodetail where pd_piid='" + pi_id.Text + "' ");
+                dtform = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                if (dtform.Rows.Count > 0)
+                {
+                    int boxqtycount = 0;
+                    BaseUtil.SetFormValue(this.Controls, dtform);
+                    ungetqty.Text = (int.Parse(dtform.Rows[0]["outqty"].ToString()) - int.Parse(dtform.Rows[0]["getqty"].ToString())).ToString();
+                    sql.Clear();
+                    sql.Append("select pim_type,pim_outboxcode from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and NVL(PIM_OUTBOXCODE,' ')<>' ' AND pim_type ='BOX' GROUP BY pim_outboxcode,pim_type");
+                    DataTable dtout = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    boxqtycount += dtout.Rows.Count;
+                    boxqtycount += int.Parse(dh.getFieldDataByCondition("package left join PACKAGEDETAIL on pd_outboxcode = pa_outboxcode left join prodiomac on pim_mac =pd_barcode and pim_prodcode = pd_prodcode and pa_mothercode = pim_outboxcode", "count(DISTINCT pa_outboxcode)", " pim_inoutno='" + pi_inoutno.Text + "' and NVL(PIM_OUTBOXCODE,' ')<>' ' AND  pim_type ='PALLET'").ToString());
+                    boxqty.Text = boxqtycount.ToString();
+                }
+            }
+            else
+            {
+                sql.Clear();
+                sql.Append("select count(1)getqty from prodiomac where pim_inoutno = '" + pi_inoutno.Text + "'");
+                dtform = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                if (dtform.Rows.Count > 0)
+                {
+                    int boxqtycount = 0;
+                    BaseUtil.SetFormValue(this.Controls, dtform);
+                    sql.Clear();
+                    sql.Append("select pim_type,pim_outboxcode from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and NVL(PIM_OUTBOXCODE,' ')<>' ' AND pim_type ='BOX' GROUP BY pim_outboxcode,pim_type");
+                    DataTable dtout = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    boxqtycount += dtout.Rows.Count;
+                    boxqtycount += int.Parse(dh.getFieldDataByCondition("package left join PACKAGEDETAIL on pd_outboxcode = pa_outboxcode left join prodiomac on pim_mac =pd_barcode and pim_prodcode = pd_prodcode and pa_mothercode = pim_outboxcode", "count(DISTINCT pa_outboxcode)", " pim_inoutno='" + pi_inoutno.Text + "' and NVL(PIM_OUTBOXCODE,' ')<>' ' AND  pim_type ='PALLET'").ToString());
+                    boxqty.Text = boxqtycount.ToString();
+                }
+            }
+        }
+
+        /// <summary>
+        /// 加载Grid数据
+        /// </summary>
+        private void LoadGridData()
+        {
+            sql.Clear();
+            sql.Append("select pim_outboxcode,pim_mac,pim_prodcode,pr_detail,pr_spec from prodiomac ");
+            sql.Append("left join product on pr_code=pim_prodcode where pim_inoutno='" + pi_inoutno.Text + "' order by pim_id asc");
+            DataTable dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+            BaseUtil.FillDgvWithDataTable(InOutDetailDGV, dt);
+            if (Combine.Checked)
+            {
+                sql.Clear();
+                sql.Append("select max(pd_pdno)pd_pdno,max(pd_id)pd_id,pd_prodcode,sum(pd_outqty)pd_outqty,max(pr_detail)pr_detail,max(pr_spec)pr_spec from prodiodetail left join prodinout ");
+                sql.Append("on pd_piid=pi_id left join product on pd_prodcode=pr_code where pi_inoutno='" + pi_inoutno.Text + "' group by pd_prodcode");
+                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                BaseUtil.FillDgvWithDataTable(Prodiodetail, dt);
+            }
+            else
+            {
+                sql.Clear();
+                sql.Append("select pd_pdno,pd_prodcode,pd_id,pd_outqty,pr_detail,pr_spec from prodiodetail left join prodinout ");
+                sql.Append("on pd_piid=pi_id left join product on pd_prodcode=pr_code where pi_inoutno='" + pi_inoutno.Text + "'");
+                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                BaseUtil.FillDgvWithDataTable(Prodiodetail, dt);
+            }
+        }
+
+        private void Warehouse_FinishedProductOut_SizeChanged(object sender, EventArgs e)
+        {
+            asc.controlAutoSize(this);
+        }
+
+        private void newpi_clck(object sender, EventArgs e)
+        {
+            if (newpi.generate)
+            {
+                pi_inoutno.Text = newpi.pi_inoutno_text;
+                LoadFormData();
+                LoadGridData();
+                newpi.Close();
+            }
+        }
+
+        private void ProdDetail_Click(object sender, EventArgs e)
+        {
+            Warehouse_ProdDetail newpd = new Warehouse_ProdDetail(pi_inoutno.Text, pi_id.Text);
+            BaseUtil.SetFormCenter(newpd);
+            newpd.ShowDialog();
+        }
+
+        private void input_KeyDown(object sender, KeyEventArgs e)
+        {
+            if (e.KeyCode == Keys.Enter)
+            {
+                needMakeIn = dh.GetConfig("needMakeIn", "MESSetting").ToString();
+                if (input.Text == "")
+                {
+                    OperateResult.AppendText("录入信息不能为空\n", Color.Red, input);
+                    return;
+                }
+                sql.Clear();
+                sql.Append("select nvl(pi_pdastatus,'未备货')pi_pdastatus,pi_type from prodinout where pi_inoutno='" + pi_inoutno.Text + "'");
+                dta = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                if (dta.Rows.Count > 0)
+                {
+                    if (!cancel.Checked)
+                    {
+                        if (dta.Rows[0]["pi_pdastatus"].ToString() == "已出库")
+                        {
+                            OperateResult.AppendText("出货单" + pi_inoutno.Text + "已经出库不允许备货\n", Color.Red);
+                            return;
+                        }
+                        if (palletBtn.Checked)
+                        {
+                            string pa_makecode = "";
+                            sql.Clear();
+                            sql.Append("select pa_outboxcode,pa_status,nvl(pa_iostatus,0) pa_iostatus,pa_makecode,pa_mothercode,nvl(pa_downstatus,0)pa_downstatus,pa_outno from package where pa_outboxcode='" + input.Text + "' and pa_type=3");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt.Rows.Count > 0)
+                            {
+                                if (!checkinput(dt, "栈板号", input.Text))
+                                    return;
+                                pa_makecode = dt.Rows[0]["pa_makecode"].ToString();
+                            }
+                            else
+                            {
+                                OperateResult.AppendText("栈板号" + input.Text + "不存在,请重新输入\n", Color.Red, input);
+                                return;
+                            }
+                            dtms = (DataTable)dh.ExecuteSql("select ma_prodcode from mes_package_view left join make on ma_code=v_makecode where v_outboxcode='" + input.Text + "'", "select");
+                            sql.Clear();
+                            sql.Append("select cn,outqty,outqty-nvl((select count(1) from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_prodcode='" + dtms.Rows[0]["ma_prodcode"].ToString() + "'),0)ungetqty from");
+                            sql.Append("(select nvl(sum(pd_outqty),0) outqty  ,count(1)cn from prodiodetail where pd_piid=" + pi_id.Text + " and pd_prodcode='" + dtms.Rows[0]["ma_prodcode"].ToString() + "')");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt.Rows[0]["cn"].ToString() == "0")
+                            {
+                                OperateResult.AppendText("序列号" + input.Text + "所属产品:" + dtms.Rows[0]["ma_prodcode"].ToString() + ",不在出货单" + pi_inoutno.Text + "中\n", Color.Red, input);
+                                return;
+                            }
+                            else if (int.Parse(dt.Rows[0]["cn"].ToString()) > 0 && int.Parse(dt.Rows[0]["ungetqty"].ToString()) <= 0)
+                            {
+                                OperateResult.AppendText("出货单产品" + dtms.Rows[0]["ma_prodcode"].ToString() + "已经完成出货采集\n", Color.Red, input);
+                                return;
+                            }
+                            if (!checkinsertprodiomac("栈板号"))
+                                return;
+                            //更新箱号对应的出货单号
+                            dh.UpdateByCondition("package", "pa_outno = '" + pi_inoutno.Text + "'", "pa_outboxcode = '" + input.Text + "'");
+                            //.UpdateByCondition("makeserial", "ms_outno='" + pi_inoutno.Text + "'", "ms_id in (select max(ms_id)  from makeserial where ms_sncode in (select v_barcode from MES_PACKAGE_VIEW where v_outboxcode = '" + input.Text + "') and ms_outno is null GROUP BY ms_sncode)");
+                            List<string> v_barcode = new List<string>();
+                            List<string> v_makecode = new List<string>();
+                            DataTable datatable = (DataTable)dh.ExecuteSql("select v_makecode,v_barcode from MES_PACKAGE_VIEW where v_outboxcode = '" + input.Text + "'", "select");
+                            for (int i = 0; i < datatable.Rows.Count; i++)
+                            {
+                                v_barcode.Add(datatable.Rows[i]["v_barcode"].ToString());
+                                v_makecode.Add(datatable.Rows[i]["v_makecode"].ToString());
+                            }
+                            dh.BatchInsert("update makeserial set ms_outno='" + pi_inoutno.Text + "' where ms_sncode = :v_barcode and ms_makecode = :v_makecode and ms_outno is null", new string[] { "v_barcode", "v_makecode" }, v_barcode.ToArray(), v_makecode.ToArray());
+                            LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode, User.UserLineCode, User.UserSourceCode, "栈板" + input.Text + "出货备货", "栈板" + input.Text + "出货备货成功", input.Text, "");
+                        }
+                        else if (bigboxBtn.Checked)
+                        {
+                            string outboxcode = dh.getFieldDataByCondition("makeserial", "ms_outboxcode", "ms_sncode = '" + input.Text + "'").ToString();
+                            string pa_makecode = "";
+                            string pa_mothercode = "";
+                            string pa_id = "";
+                            if (outboxcode != "")
+                            {
+                                input.Text = outboxcode;
+                            }
+                            sql.Clear();
+                            sql.Append("select pa_id,pa_outboxcode,pa_makecode,pa_status,nvl(pa_iostatus,0) pa_iostatus,nvl(pa_downstatus,0)pa_downstatus,pa_outno, pa_mothercode from package where pa_outboxcode='" + input.Text + "' and pa_type in(1,2)");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt.Rows.Count > 0)
+                            {
+                                pa_makecode = dt.Rows[0]["pa_makecode"].ToString();
+                            }
+                            else
+                            {
+                                OperateResult.AppendText("箱号" + input.Text + "不存在,请重新输入\n", Color.Red, input);
+                                return;
+                            }
+                            if (!checkinsertprodiomac("箱号"))
+                                return;
+                            //更新箱号对应的出货单号
+                            dh.UpdateByCondition("package", "pa_outno = '" + pi_inoutno.Text + "'", "pa_outboxcode = '" + input.Text + "'");
+                            List<string> v_barcode = new List<string>();
+                            List<string> v_makecode = new List<string>();
+                            DataTable datatable = (DataTable)dh.ExecuteSql("select v_makecode,v_barcode from MES_PACKAGE_VIEW where v_outboxcode = '" + input.Text + "'", "select");
+                            for (int i = 0; i < datatable.Rows.Count; i++)
+                            {
+                                v_barcode.Add(datatable.Rows[i]["v_barcode"].ToString());
+                                v_makecode.Add(datatable.Rows[i]["v_makecode"].ToString());
+                            }
+                            dh.BatchInsert("update makeserial set ms_outno='" + pi_inoutno.Text + "' where ms_sncode = :v_barcode and ms_makecode = :v_makecode and ms_outno is null", new string[] { "v_barcode", "v_makecode" }, v_barcode.ToArray(), v_makecode.ToArray());
+                            LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode, User.UserLineCode, User.UserSourceCode, "箱号" + input.Text + "出货备货", "箱号" + input.Text + "出货备货成功", input.Text, "");
+                        }
+                        else
+                        {
+                            OperateResult.AppendText("未选择录入数据类型\n", Color.Red, input);
+                            return;
+                        }
+                        LoadFormData();
+                        LoadGridData();
+                        if (dta.Rows[0]["pi_type"].ToString() == "销售出货")
+                        {
+                            if (int.Parse(dtform.Rows[0]["outqty"].ToString()) > int.Parse(dtform.Rows[0]["getqty"].ToString()))
+                            {
+                                dh.UpdateByCondition("prodinout", "pi_pdastatus='备货中'", "pi_inoutno='" + pi_inoutno.Text + "'");
+                                OperateResult.AppendText("出货单" + pi_inoutno.Text + "备货成功,备货数据:" + input.Text + "\n", Color.Black, input);
+                            }
+                            else
+                            {
+                                dh.UpdateByCondition("prodinout", "pi_pdastatus='已备货'", "pi_inoutno='" + pi_inoutno.Text + "'");
+                                OperateResult.AppendText("出货单" + pi_inoutno.Text + "已完成备货,备货数据:" + input.Text + "\n", Color.Black, input);
+                                return;
+                            }
+                        }
+                        else if (dta.Rows[0]["pi_type"].ToString() == "自由出货")
+                        {
+                            dh.UpdateByCondition("prodinout", "pi_pdastatus='备货中'", "pi_inoutno='" + pi_inoutno.Text + "'");
+                            OperateResult.AppendText("出货单" + pi_inoutno.Text + "备货成功,备货数据:" + input.Text + "\n", Color.Black, input);
+                        }
+                    }
+                    else
+                    {
+                        if (dta.Rows[0]["pi_pdastatus"].ToString() == "已出库")
+                        {
+                            OperateResult.AppendText("出货单" + pi_inoutno.Text + "已经出库不允许取消备货\n", Color.Red);
+                            return;
+                        }
+                        else if (dta.Rows[0]["pi_pdastatus"].ToString() == "未备货")
+                        {
+                            OperateResult.AppendText("出货单" + pi_inoutno.Text + "尚未备货,无法取消\n", Color.Red);
+                            return;
+                        }
+                        if (palletBtn.Checked)
+                        {
+                            sql.Clear();
+                            sql.Append("select pa_id,pa_outboxcode,pa_status,nvl(pa_downstatus,0)pa_downstatus, ");
+                            sql.Append("pa_outno, nvl(pa_iostatus,0) pa_iostatus,pa_makecode  from package ");
+                            sql.Append("where pa_outboxcode='" + input.Text + "' and pa_type=3");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt.Rows.Count > 0)
+                            {
+                                string pa_iostatus = dt.Rows[0]["pa_iostatus"].ToString();
+                                string pa_outno = dt.Rows[0]["pa_outno"].ToString();
+                                string pa_makecode = dt.Rows[0]["pa_makecode"].ToString();
+                                if (pa_iostatus != "0" && pa_iostatus != "1")
+                                {
+                                    OperateResult.AppendText("栈板号" + input.Text + "不是备货状态,无法取消备货\n", Color.Red, input);
+                                    return;
+                                }
+                                if (pa_outno == "")
+                                {
+                                    OperateResult.AppendText("栈板号" + input.Text + "无所属出货单号\n", Color.Red, input);
+                                    return;
+                                }
+                                if (pa_outno != pi_inoutno.Text)
+                                {
+                                    OperateResult.AppendText("栈板号" + input.Text + "所属出货单号" + pa_outno + "与当前所选出货单号" + pi_inoutno.Text + "\n", Color.Red, input);
+                                    return;
+                                }
+
+                                List<string> pim_mac = new List<string>();
+                                List<string> pim_prodcode = new List<string>();
+                                DataTable datatable = (DataTable)dh.ExecuteSql("select pim_prodcode,pim_mac from  prodiomac where pim_outboxcode = '" + input.Text + "' and pim_type='PALLET' and pim_inorout='OUT'  AND pim_class='出货'", "select");
+                                for (int i = 0; i < datatable.Rows.Count; i++)
+                                {
+                                    pim_mac.Add(datatable.Rows[i]["pim_mac"].ToString());
+                                    pim_prodcode.Add(datatable.Rows[i]["pim_prodcode"].ToString());
+                                }
+                                dh.BatchInsert("update makeserial set ms_outno='' where ms_sncode = :pim_mac and ms_prodcode = :pim_prodcode and ms_outno = '" + pi_inoutno.Text + "'", new string[] { "pim_mac", "pim_prodcode" }, pim_mac.ToArray(), pim_prodcode.ToArray());
+                                dh.ExecuteSql("delete from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_outboxcode='" + input.Text + "' and pim_type='PALLET' and pim_inorout='OUT'  AND pim_class='出货'", "delete");
+                                dh.UpdateByCondition("package", "pa_outno=''", "pa_outboxcode='" + input.Text + "'");
+                                OperateResult.AppendText("栈板号" + input.Text + "取消备货成功\n", Color.Black, input);
+                                LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode, User.UserLineCode, User.UserSourceCode, "栈板" + input.Text + "取消出货备货", "栈板" + input.Text + "取消出货备货成功", input.Text, "");
+                            }
+                            else
+                            {
+                                OperateResult.AppendText("栈板号" + input.Text + "不存在,请重新输入\n", Color.Red, input);
+                                return;
+                            }
+                        }
+                        else if (bigboxBtn.Checked)
+                        {
+                            string outboxcode = dh.getFieldDataByCondition("makeserial", "ms_outboxcode", "ms_sncode = '" + input.Text + "'").ToString();
+                            if (outboxcode != "")
+                            {
+                                input.Text = outboxcode;
+                            }
+                            sql.Clear();
+                            sql.Append("select pa_id,pa_outboxcode,pa_status,nvl(pa_downstatus,0)pa_downstatus, ");
+                            sql.Append("pa_outno,nvl(pa_iostatus,0) pa_iostatus,pa_makecode,pa_mothercode  from package ");
+                            sql.Append("where pa_outboxcode='" + input.Text + "' and pa_type in (1,2)");
+                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                            if (dt.Rows.Count > 0)
+                            {
+                                string pa_iostatus = dt.Rows[0]["pa_iostatus"].ToString();
+                                string pa_outno = dt.Rows[0]["pa_outno"].ToString();
+                                string pa_mothercode = dt.Rows[0]["pa_mothercode"].ToString();
+                                string pa_makecode = dt.Rows[0]["pa_makecode"].ToString();
+                                if (pa_iostatus != "0" && pa_iostatus != "1")
+                                {
+                                    OperateResult.AppendText("箱号" + input.Text + "不是备货状态,无法取消备货\n", Color.Red, input);
+                                    return;
+                                }
+                                if (pa_outno == "")
+                                {
+                                    OperateResult.AppendText("箱号" + input.Text + "无所属出货单号\n", Color.Red, input);
+                                    return;
+                                }
+                                if (pa_outno != pi_inoutno.Text)
+                                {
+                                    OperateResult.AppendText("箱号" + input.Text + "所属出货单号" + pa_outno + "与当前所选出货单号" + pi_inoutno.Text + "\n", Color.Red, input);
+                                    return;
+                                }
+                                //if (pa_mothercode != "")
+                                //{
+                                //    OperateResult.AppendText("箱号" + input.Text + "已经装大箱或栈板:" + pa_mothercode + ",不允许单独操作\n", Color.Red, input);
+                                //    return;
+                                //}                              
+                                dh.UpdateByCondition("package", "pa_outno=''", "pa_outboxcode='" + input.Text + "'");
+                                List<string> pim_mac = new List<string>();
+                                List<string> pim_prodcode = new List<string>();
+                                DataTable datatable = (DataTable)dh.ExecuteSql("select pim_prodcode,pim_mac from  prodiomac where pim_outboxcode = '" + input.Text + "' and pim_type='BOX' and pim_inorout='OUT'  AND pim_class='出货'", "select");
+                                for (int i = 0; i < datatable.Rows.Count; i++)
+                                {
+                                    pim_mac.Add(datatable.Rows[i]["pim_mac"].ToString());
+                                    pim_prodcode.Add(datatable.Rows[i]["pim_prodcode"].ToString());
+                                }
+                                dh.BatchInsert("update makeserial set ms_outno='' where ms_sncode = :pim_mac and ms_prodcode = :pim_prodcode and ms_outno = '" + pi_inoutno.Text + "'", new string[] { "pim_mac", "pim_prodcode" }, pim_mac.ToArray(), pim_prodcode.ToArray());
+                                dh.ExecuteSql("delete from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_outboxcode='" + input.Text + "' and pim_type='BOX' and pim_inorout='OUT'  AND pim_class='出货'", "delete");
+                                OperateResult.AppendText("箱号" + input.Text + "取消备货成功\n", Color.Black, input);
+                                LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, pa_makecode, User.UserLineCode, User.UserSourceCode, "箱号" + input.Text + "取消出货备货", "箱号" + input.Text + "取消出货备货成功", input.Text, "");
+                            }
+                            else
+                            {
+                                OperateResult.AppendText("箱号" + input.Text + "不在备货数据中\n", Color.Red, input);
+                                return;
+                            }
+                        }
+                        else
+                        {
+                            OperateResult.AppendText("未选择录入数据类型\n", Color.Red, input);
+                            return;
+                        }
+                        LoadFormData();
+                        LoadGridData();
+                    }
+                }
+                else
+                {
+                    OperateResult.AppendText("出货单" + pi_inoutno.Text + "不存在\n", Color.Red, pi_inoutno);
+                    return;
+                }
+            }
+        }
+
+        private void updatesn(string ms_id)
+        {
+            //更新操作
+            sql.Clear();
+            sql.Append("insert into prodiomac(pim_id,pim_inoutno,pim_piid,pim_prodcode,pim_mac,pim_indate,pim_inman,pim_type,pim_inorout,pim_class)");
+            sql.Append("values(prodiomac_seq.nextval,'" + pi_inoutno.Text + "','" + pi_id.Text + "','" + dtms.Rows[0]["ms_prodcode"].ToString() + "','" + input.Text + "',sysdate,'" + User.UserCode + "',' ','OUT','出货')");
+            dh.ExecuteSql(sql.GetString(), "insert");
+            dh.UpdateByCondition("makeserial", "ms_outno='" + pi_inoutno.Text + "'", " ms_id='" + ms_id + "'");
+
+            dt = (DataTable)dh.ExecuteSql("select ms_prodcode1 from makeserial where ms_id=" + ms_id, "select");
+            string ms_prodcode = dt.Rows[0]["ms_prodcode1"].ToString();
+            //如果产品不存在,则插入到明细表中
+            if (!dh.CheckExist("prodiodetail", "pd_piid='" + pi_id.Text + "' and pd_prodcode='" + ms_prodcode + "'"))
+            {
+                string pd_pdno = dh.getFieldDataByCondition("prodiodetail", "nvl(max(pd_pdno),0)+1", "pd_piid=" + pi_id.Text).ToString();
+                dh.ExecuteSql("insert into prodiodetail(pd_id,pd_piid,pd_inoutno,pd_pdno,pd_prodcode,pd_outqty)values(prodiodetail_seq.nextval,'" + pi_id.Text + "','" + pi_inoutno.Text + "','" + pd_pdno + "','" + ms_prodcode + "',1)", "insert");
+            }
+            else
+            {
+                dh.ExecuteSql("update prodiodetail set pd_outqty=pd_outqty+1 where pd_piid='" + pi_id.Text + "' and pd_prodcode='" + ms_prodcode + "'", "update");
+            }
+        }
+
+        //插入prodiomac表
+        private void insertprodiomac(string type)
+        {
+            string pib_type = "";
+            if (type == "栈板号")
+            {
+                pib_type = "PALLET";
+            }
+            else if (type == "箱号")
+            {
+                pib_type = "BOX";
+            }
+            sql.Clear();
+            sql.Append("insert into prodiomac(pim_id,pim_inoutno,pim_piid,pim_prodcode,pim_mac,pim_indate,pim_inman,pim_type,pim_outboxcode,pim_inorout,pim_class)");
+            sql.Append("select prodiomac_seq.nextval,'" + pi_inoutno.Text + "','" + pi_id.Text + "',v_prodcode,ms_sncode,sysdate,'" + User.UserCode + "','" + pib_type + "','" + input.Text + "','OUT','出货' from mes_package_view left join makeserial on ms_sncode=v_barcode and ms_makecode=v_makecode where v_outboxcode='" + input.Text + "' and ms_outno is null");
+            dh.ExecuteSql(sql.GetString(), "insert");
+        }
+
+
+        private Boolean checkinsertprodiomac(string type)
+        {
+            sql.Clear();
+            sql.Append("select wm_concat(v_barcode)data,count(1)cn from mes_package_view left join makeserial on ms_sncode=v_barcode and ms_makecode=v_makecode where v_outboxcode='" + input.Text + "' and nvl(ms_status,0)<>2 and rownum<20");
+            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+            if (dt.Rows[0]["data"].ToString() != "" && int.Parse(dt.Rows[0]["cn"].ToString()) > 0)
+            {
+                OperateResult.AppendText(type + input.Text + "内序列号未完工,序列号:" + dt.Rows[0]["data"].ToString() + "\n", Color.Red, input);
+                return false;
+            }
+            if (dta.Rows[0]["pi_type"].ToString() == "销售出货")
+            {
+                //获取进行出库的产品的包装规则
+                string pr_packrule = dh.getFieldDataByCondition("product left join package on pr_code = pa_prodcode", "pr_packrule", "pa_outboxcode = '" + input.Text + "'").ToString();
+                if (pr_packrule == "SALE")
+                {
+                    sql.Clear();
+                    sql.Append("select ms_prodcode,ms_salecode,cn  from (select nvl(ms_prodcode,' ') ms_prodcode,nvl(ms_salecode,' ') ms_salecode,count(1)cn from mes_package_view left join makeserial on ms_sncode=v_barcode and ms_makecode=v_makecode  where v_outboxcode='" + input.Text + "' ");
+                    sql.Append("and ms_outno is null group by ms_prodcode,ms_salecode) left join (select pd_ordercode,pd_prodcode,outqty-nvl((select count(1) from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_prodcode=pd_prodcode),0)ungetqty");
+                    sql.Append(" from (select pd_ordercode,pd_prodcode,sum(pd_outqty)outqty from prodiodetail where pd_piid=" + pi_id.Text + " group by pd_prodcode,pd_ordercode))  on 1=1 where ms_prodcode<>pd_prodcode or ms_salecode<>pd_ordercode  or (cn>nvl(ungetqty,0))");
+                    DataTable dtAA = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    insertprodiomac(type);
+                    return true;
+                }
+                else
+                {
+                    sql.Clear();
+                    sql.Append("select ms_prodcode,cn  from (select nvl(ms_prodcode,' ') ms_prodcode,count(1)cn from mes_package_view left join makeserial on ms_sncode=v_barcode and ms_makecode=v_makecode  where v_outboxcode='" + input.Text + "' ");
+                    sql.Append("and ms_outno is null group by ms_prodcode) left join (select pd_prodcode,outqty-nvl((select count(1) from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_prodcode=pd_prodcode),0)ungetqty");
+                    sql.Append(" from (select pd_prodcode,sum(pd_outqty)outqty from prodiodetail where pd_piid=" + pi_id.Text + " group by pd_prodcode))  on 1=1 where ms_prodcode<>pd_prodcode   or (cn>nvl(ungetqty,0))");
+                    DataTable dtAA = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    insertprodiomac(type);
+                    return true;
+                }
+            }
+            else if (dta.Rows[0]["pi_type"].ToString() == "自由出货")
+            {
+                insertprodiomac(type);
+                return true;
+            }
+
+            return true;
+        }
+
+        private Boolean checkinput(DataTable dt, string type, string inputmessage)
+        {
+            if (dt.Rows[0]["pa_status"].ToString() != "1")
+            {
+                OperateResult.AppendText(type + inputmessage + "未封装,请重新输入\n", Color.Red, input);
+                return false;
+            }
+            else if (dt.Rows[0]["pa_status"].ToString() == "2")
+            {
+                OperateResult.AppendText(type + inputmessage + "已出库,请重新输入\n", Color.Red, input);
+                return false;
+            }
+            if (needMakeIn != "0")
+            {
+                if (dt.Rows[0]["pa_iostatus"].ToString() != "1" && dt.Rows[0]["pa_mothercode"].ToString() == "")
+                {
+                    OperateResult.AppendText(type + inputmessage + "必须完工入库才允许出库\n", Color.Red, input);
+                    return false;
+                }
+            }
+            if (dt.Rows[0]["pa_downstatus"].ToString() != "0")
+            {
+                OperateResult.AppendText(type + inputmessage + "处于下地状态,若需出货,请先取消下地\n", Color.Red, input);
+                return false;
+            }
+
+            if (input.Text == inputmessage)
+            {
+                if (dt.Rows[0]["pa_iostatus"].ToString() == "2")
+                {
+                    OperateResult.AppendText(type + inputmessage + "已经出货\n", Color.Red, input);
+                    return false;
+                }
+                if (dt.Rows[0]["pa_iostatus"].ToString() == "3")
+                {
+                    OperateResult.AppendText(type + inputmessage + "处于销售退货状态\n", Color.Red, input);
+                    return false;
+                }
+                if (dt.Rows[0]["pa_outno"].ToString() != "")
+                {
+                    OperateResult.AppendText(type + inputmessage + "已经被出货单" + dt.Rows[0]["pa_outno"].ToString() + "采集\n", Color.Red, input);
+                    return false;
+                }
+            }
+            return true;
+        }
+
+        private void Clean_Click(object sender, EventArgs e)
+        {
+            sql.Clear();
+            sql.Append("select nvl(pi_pdastatus,'未备货')pi_pdastatus,pi_id from prodinout where pi_inoutno='" + pi_inoutno.Text + "'");
+            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+            if (dt.Rows.Count > 0)
+            {
+                if (dt.Rows[0]["pi_pdastatus"].ToString() == "已出库")
+                {
+                    OperateResult.AppendText("出货单" + pi_inoutno.Text + "已经出库,不允许取消明细\n", Color.Red);
+                    return;
+                }
+                else if (dt.Rows[0]["pi_pdastatus"].ToString() == "未备货")
+                {
+                    OperateResult.AppendText("出货单" + pi_inoutno.Text + "尚未备货,无法取消明细\n", Color.Red);
+                    return;
+                }
+                List<String> ExeSQL = new List<string>();
+                ExeSQL.Add("update makeserial set ms_outno = '' where exists (select 1 from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_mac=ms_sncode and pim_prodcode=ms_prodcode ) and ms_status=2");
+                ExeSQL.Add("update package set pa_outno = '' where exists (select 1 from prodiomac where pim_inoutno='" + pi_inoutno.Text + "' and pim_outboxcode=pa_outboxcode and ((pim_type='PALLET' AND PA_TYPE=3) OR (PIM_TYPE='BOX' AND PA_TYPE IN(1,2)))) AND PA_OUTNO='" + pi_inoutno.Text + "'");
+                ExeSQL.Add("delete from prodiomac where pim_inoutno='" + pi_inoutno.Text + "'");
+                ExeSQL.Add("update prodinout set pi_pdastatus='未备货' where pi_inoutno='" + pi_inoutno.Text + "'");
+                ExeSQL.Add("insert into messagelog(ml_id,ml_date,ml_man,ml_content,ml_result,ml_search)values(messagelog_seq.nextval,sysdate,'" + User.UserName + "','清除全部备货明细','清除备货明细成功','ProdInOut!Sale|pi_id=" + pi_id.Text + "')");
+                dh.ExecuteSQLTran(ExeSQL.ToArray());
+                OperateResult.AppendText("出货单" + pi_inoutno.Text + "取消明细成功\n", Color.Black, input);
+            }
+            else
+            {
+                OperateResult.AppendText("出货单" + pi_inoutno.Text + "不存在\n", Color.Red, pi_inoutno);
+                return;
+            }
+            LoadFormData();
+            LoadGridData();
+        }
+
+        private void serBtn_Click(object sender, EventArgs e)
+        {
+            if (((RadioButton)sender).Checked == true)
+            {
+                if (((RadioButton)sender).Name == "serBtn")
+                {
+                    input.Focus();
+                    OperateResult.AppendText("请输入序列号进行采集\n", Color.Black, input);
+                }
+                else if (((RadioButton)sender).Name == "bigboxBtn")
+                {
+                    input.Focus();
+                    OperateResult.AppendText("请输入箱号进行采集\n", Color.Black, input);
+                }
+                else if (((RadioButton)sender).Name == "palletBtn")
+                {
+                    input.Focus();
+                    OperateResult.AppendText("请输入栈板进行采集\n", Color.Black, input);
+                }
+            }
+        }
+
+        private void InOutDetailDGV_DataSourceChanged(object sender, EventArgs e)
+        {
+            datacount.Text = InOutDetailDGV.Rows.Count.ToString();
+        }
+        string PrintPrcode = "";
+        string PdPDNO = "";
+        string PDID = "";
+        private void Prodiodetail_CellClick(object sender, DataGridViewCellEventArgs e)
+        {
+            if (e.RowIndex >= 0)
+            {
+                string pd_prodcode = Prodiodetail.Rows[e.RowIndex].Cells["pd_prodcode"].Value.ToString();
+                string pd_pdno = Prodiodetail.Rows[e.RowIndex].Cells["pd_pdno"].Value.ToString();
+                string pd_id = Prodiodetail.Rows[e.RowIndex].Cells["pd_id"].Value.ToString();
+                PrintPrcode = pd_prodcode;
+                PdPDNO = pd_pdno;
+                PDID = pd_id;
+                FillPrintLabel(pd_prodcode);
+            }
+        }
+        string ErrorMessage = "";
+        private void FillPrintLabel(string pr_code)
+        {
+            DataTable _dt = (DataTable)dh.ExecuteSql("select la_id,substr(la_url,instr(la_url,'\\',-1)+1)la_name,la_url,la_isdefault from label where la_prodcode='" + pr_code + "' and la_templatetype='出货标' and la_statuscode='AUDITED' order by la_isdefault", "select");
+            PrintLabel.DataSource = _dt;
+            PrintLabel.DisplayMember = "la_url";
+            PrintLabel.ValueMember = "la_id";
+        }
+        Engine engine;
+        private void Printlab_Click(object sender, EventArgs e)
+        {
+            if (Print.BarTender(Tag.ToString(), ref engine, PrintLabel.Text, PrintLabel.SelectedValue.ToString(), PrinterList.Text, PDID, PrintPrcode, int.Parse(PrintNum.Text), PdPDNO, PrintPrcode, "出货标", "0", out ErrorMessage))
+            {
+                OperateResult.AppendText(">>打印料号" + PrintPrcode + "\n", Color.Black);
+            }
+            else
+            {
+                OperateResult.AppendText(ErrorMessage + "\n", Color.Red);
+            }
+        }
+    }
+}

+ 403 - 0
UAS_MES_YDCY/FunctionCode/Warehouse/Warehouse_FinishedProductOutSumNEW.resx

@@ -0,0 +1,403 @@
+<?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>
+  <metadata name="bindingSource.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
+    <value>17, 17</value>
+  </metadata>
+  <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
+  <data name="Printlab.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFfSURBVFhH5dhNTsJgFIXhM2WiCxL2oAEHrJKhQSYM
+        JIgzjSLIX0sRKPSPtl+Lo2uOgVbWcJu8CzhP8nVwISIAUAFwA+AWQFNh3M39lZMHrgDUu91uyxjji8KP
+        u7mfDgCuiVLt958fkjSTie3I62iqLu7m/sHgpQ2gRpSG6/nmc2bL23imtuHMkp0f5ADuidIMoljev+bq
+        o8PpH4NmcIjlY7JQHx0KlPCQyHBqqY8OJUqcyGhuq48OBUoUJzJeLNVHhwLlkKQysRz10eECZbpcqe8C
+        JU6NzJ1v9dGhQElSI9Zqoz46lCgmE3u9VR8dCpTUZOJsXPXRoUTJclltd+qjQ4FislzW7l59dChR8lw2
+        e099dDijNA5xYnZBKFvPVxv3x0lanA5qT71eOzsexQsjcf1AXdzN/XQ4H5l4fqs/djqtIIzC/Pgj2uJu
+        7i/Okf8O11UAd6c3pS3u5v6/w/UvTaFspAxAMh4AAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="Printlab.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        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
+        YII=
+</value>
+  </data>
+  <data name="Printlab.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAF3SURBVFhH5djbSgJRFMbxHsP7wBfYT7jvu46QDIoI
+        C4QNQRAIgVBRSdpxpgZN83wYx5nZOjNqrvgEd73DGvhfzdX3g32ztohoS0iVElLtCakehVQdhmE39qfg
+        AZBtIdX70Y0TjsJ4SQw/7MZ+OAip0kDJnD3UdJAsyXIjKvWm7MJu7M+X6lpIlQWK3ZhEq8pgRvfdKdvK
+        /Rk1/XglpHKA0ulPF3Tb0eyDAzzWKL3pgq7bmn1wMChdPadiK2QfHAxKW8/pqhmwDw4GpRXOqdAI2AcH
+        g9IME7qs++yDg0H5DhK6qE3YBweD0vATOq967IODQfnyE1KOxz44GJTaJKb855h9cDAoVS+mU9tlHxwM
+        iuPFdGK57IPDH8o4ouO3EfvgYFA+xhEdvg7ZB4cNil3uhquc5dLBy5Bt2P/U0+Z0kN0tOhqHlpzt0v7z
+        gF3Yjf1w2ByZ0jjD7RSs8K7l/+Ant7Ab+8058t/hOiOkquBNMQy7sX99uP4F5D4U8hdr4uMAAAAASUVO
+        RK5CYII=
+</value>
+  </data>
+  <data name="Printlab.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGpSURBVFhH5dg/ayJBGMfxB4YFXTARBAvBQhAsBEEQ
+        ZLnNzFu4I6aYV5kyF9tgbad1jrsYY9T4Z3fcnV2f45e38Sx8q6l+n2IWhpiZjDFVY8wPY8xPY4wVGHZj
+        fxUepLW+0Vrfz+fzR+fclgV+2I39cNBa31Icx/FisXi6XpnL8io27F8ul89xHN9RFEWTPM+ToihZet57
+        F0XRA43HYwsp7wvxwQEeNBqNbFmWnOW5+OAADxoOh7YoS3ZZJj44wIMGg4H1RcGpu4gPDvCgfr9vvfd8
+        TlPxwQEe1Ov1bO49H8+J+OAAD+p2uxaXzNfpJD44wIM6nY69ZDnvDkfxwQEe1G637SXLeLs/iA8O8KBW
+        q2XdJePNbi8+OMCDms2mxe9o/bkTHxzgQY1GwybO8WrzKT44wIPq9bpNUsdv64344AAPqtVq9pw6/vv+
+        IT44wIPCMJzsvg7Jv/UH/1m9iw3794ejC8PwgSqVyt3LbPZ8SpLvg9e3lbiwG/vhAA8KguA2CIL739Pp
+        42a73eNQWtiN/XCAB+GhVilVVUrFSqlfSikrMOzG/u+H6/+yQ4jdXN8e9AAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <metadata name="pd_pdno.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pd_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pd_prodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_detail1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_spec1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pd_pdno.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pd_id.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pd_prodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="dataGridViewTextBoxColumn2.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_detail1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_spec1.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="Clean.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFfSURBVFhH5dhNTsJgFIXhM2WiCxL2oAEHrJKhQSYM
+        JIgzjSLIX0sRKPSPtl+Lo2uOgVbWcJu8CzhP8nVwISIAUAFwA+AWQFNh3M39lZMHrgDUu91uyxjji8KP
+        u7mfDgCuiVLt958fkjSTie3I62iqLu7m/sHgpQ2gRpSG6/nmc2bL23imtuHMkp0f5ADuidIMoljev+bq
+        o8PpH4NmcIjlY7JQHx0KlPCQyHBqqY8OJUqcyGhuq48OBUoUJzJeLNVHhwLlkKQysRz10eECZbpcqe8C
+        JU6NzJ1v9dGhQElSI9Zqoz46lCgmE3u9VR8dCpTUZOJsXPXRoUTJclltd+qjQ4FislzW7l59dChR8lw2
+        e099dDijNA5xYnZBKFvPVxv3x0lanA5qT71eOzsexQsjcf1AXdzN/XQ4H5l4fqs/djqtIIzC/Pgj2uJu
+        7i/Okf8O11UAd6c3pS3u5v6/w/UvTaFspAxAMh4AAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="Clean.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAF3SURBVFhH5djbSgJRFMbxHsP7wBfYT7jvu46QDIoI
+        C4QNQRAIgVBRSdpxpgZN83wYx5nZOjNqrvgEd73DGvhfzdX3g32ztohoS0iVElLtCakehVQdhmE39qfg
+        AZBtIdX70Y0TjsJ4SQw/7MZ+OAip0kDJnD3UdJAsyXIjKvWm7MJu7M+X6lpIlQWK3ZhEq8pgRvfdKdvK
+        /Rk1/XglpHKA0ulPF3Tb0eyDAzzWKL3pgq7bmn1wMChdPadiK2QfHAxKW8/pqhmwDw4GpRXOqdAI2AcH
+        g9IME7qs++yDg0H5DhK6qE3YBweD0vATOq967IODQfnyE1KOxz44GJTaJKb855h9cDAoVS+mU9tlHxwM
+        iuPFdGK57IPDH8o4ouO3EfvgYFA+xhEdvg7ZB4cNil3uhquc5dLBy5Bt2P/U0+Z0kN0tOhqHlpzt0v7z
+        gF3Yjf1w2ByZ0jjD7RSs8K7l/+Ant7Ab+8058t/hOiOkquBNMQy7sX99uP4F5D4U8hdr4uMAAAAASUVO
+        RK5CYII=
+</value>
+  </data>
+  <data name="Clean.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGpSURBVFhH5dg/ayJBGMfxB4YFXTARBAvBQhAsBEEQ
+        ZLnNzFu4I6aYV5kyF9tgbad1jrsYY9T4Z3fcnV2f45e38Sx8q6l+n2IWhpiZjDFVY8wPY8xPY4wVGHZj
+        fxUepLW+0Vrfz+fzR+fclgV+2I39cNBa31Icx/FisXi6XpnL8io27F8ul89xHN9RFEWTPM+ToihZet57
+        F0XRA43HYwsp7wvxwQEeNBqNbFmWnOW5+OAADxoOh7YoS3ZZJj44wIMGg4H1RcGpu4gPDvCgfr9vvfd8
+        TlPxwQEe1Ov1bO49H8+J+OAAD+p2uxaXzNfpJD44wIM6nY69ZDnvDkfxwQEe1G637SXLeLs/iA8O8KBW
+        q2XdJePNbi8+OMCDms2mxe9o/bkTHxzgQY1GwybO8WrzKT44wIPq9bpNUsdv64344AAPqtVq9pw6/vv+
+        IT44wIPCMJzsvg7Jv/UH/1m9iw3794ejC8PwgSqVyt3LbPZ8SpLvg9e3lbiwG/vhAA8KguA2CIL739Pp
+        42a73eNQWtiN/XCAB+GhVilVVUrFSqlfSikrMOzG/u+H6/+yQ4jdXN8e9AAAAABJRU5ErkJggg==
+</value>
+  </data>
+  <metadata name="pim_outboxcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pim_mac.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pim_prodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_detail.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_spec.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="blank.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pim_outboxcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pim_mac.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pim_prodcode.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_detail.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="pr_spec.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <metadata name="blank.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
+    <value>True</value>
+  </metadata>
+  <data name="ProdDetail.DownImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAFfSURBVFhH5dhNTsJgFIXhM2WiCxL2oAEHrJKhQSYM
+        JIgzjSLIX0sRKPSPtl+Lo2uOgVbWcJu8CzhP8nVwISIAUAFwA+AWQFNh3M39lZMHrgDUu91uyxjji8KP
+        u7mfDgCuiVLt958fkjSTie3I62iqLu7m/sHgpQ2gRpSG6/nmc2bL23imtuHMkp0f5ADuidIMoljev+bq
+        o8PpH4NmcIjlY7JQHx0KlPCQyHBqqY8OJUqcyGhuq48OBUoUJzJeLNVHhwLlkKQysRz10eECZbpcqe8C
+        JU6NzJ1v9dGhQElSI9Zqoz46lCgmE3u9VR8dCpTUZOJsXPXRoUTJclltd+qjQ4FislzW7l59dChR8lw2
+        e099dDijNA5xYnZBKFvPVxv3x0lanA5qT71eOzsexQsjcf1AXdzN/XQ4H5l4fqs/djqtIIzC/Pgj2uJu
+        7i/Okf8O11UAd6c3pS3u5v6/w/UvTaFspAxAMh4AAAAASUVORK5CYII=
+</value>
+  </data>
+  <data name="ProdDetail.MoveImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAF3SURBVFhH5djbSgJRFMbxHsP7wBfYT7jvu46QDIoI
+        C4QNQRAIgVBRSdpxpgZN83wYx5nZOjNqrvgEd73DGvhfzdX3g32ztohoS0iVElLtCakehVQdhmE39qfg
+        AZBtIdX70Y0TjsJ4SQw/7MZ+OAip0kDJnD3UdJAsyXIjKvWm7MJu7M+X6lpIlQWK3ZhEq8pgRvfdKdvK
+        /Rk1/XglpHKA0ulPF3Tb0eyDAzzWKL3pgq7bmn1wMChdPadiK2QfHAxKW8/pqhmwDw4GpRXOqdAI2AcH
+        g9IME7qs++yDg0H5DhK6qE3YBweD0vATOq967IODQfnyE1KOxz44GJTaJKb855h9cDAoVS+mU9tlHxwM
+        iuPFdGK57IPDH8o4ouO3EfvgYFA+xhEdvg7ZB4cNil3uhquc5dLBy5Bt2P/U0+Z0kN0tOhqHlpzt0v7z
+        gF3Yjf1w2ByZ0jjD7RSs8K7l/+Ant7Ab+8058t/hOiOkquBNMQy7sX99uP4F5D4U8hdr4uMAAAAASUVO
+        RK5CYII=
+</value>
+  </data>
+  <data name="ProdDetail.NormalImage" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
+    <value>
+        iVBORw0KGgoAAAANSUhEUgAAAEUAAAAWCAYAAACWl1FwAAAABGdBTUEAALGPC/xhBQAAABl0RVh0U29m
+        dHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAGpSURBVFhH5dg/ayJBGMfxB4YFXTARBAvBQhAsBEEQ
+        ZLnNzFu4I6aYV5kyF9tgbad1jrsYY9T4Z3fcnV2f45e38Sx8q6l+n2IWhpiZjDFVY8wPY8xPY4wVGHZj
+        fxUepLW+0Vrfz+fzR+fclgV+2I39cNBa31Icx/FisXi6XpnL8io27F8ul89xHN9RFEWTPM+ToihZet57
+        F0XRA43HYwsp7wvxwQEeNBqNbFmWnOW5+OAADxoOh7YoS3ZZJj44wIMGg4H1RcGpu4gPDvCgfr9vvfd8
+        TlPxwQEe1Ov1bO49H8+J+OAAD+p2uxaXzNfpJD44wIM6nY69ZDnvDkfxwQEe1G637SXLeLs/iA8O8KBW
+        q2XdJePNbi8+OMCDms2mxe9o/bkTHxzgQY1GwybO8WrzKT44wIPq9bpNUsdv64344AAPqtVq9pw6/vv+
+        IT44wIPCMJzsvg7Jv/UH/1m9iw3794ejC8PwgSqVyt3LbPZ8SpLvg9e3lbiwG/vhAA8KguA2CIL739Pp
+        42a73eNQWtiN/XCAB+GhVilVVUrFSqlfSikrMOzG/u+H6/+yQ4jdXN8e9AAAAABJRU5ErkJggg==
+</value>
+  </data>
+</root>

+ 9 - 0
UAS_MES_YDCY/UAS_MES_YDCY.csproj

@@ -1487,6 +1487,12 @@
     <Compile Include="FunctionCode\Warehouse\Warehouse_FinishedProductIn.Designer.cs">
       <DependentUpon>Warehouse_FinishedProductIn.cs</DependentUpon>
     </Compile>
+    <Compile Include="FunctionCode\Warehouse\Warehouse_FinishedProductOutSumNEW.cs">
+      <SubType>Form</SubType>
+    </Compile>
+    <Compile Include="FunctionCode\Warehouse\Warehouse_FinishedProductOutSumNEW.Designer.cs">
+      <DependentUpon>Warehouse_FinishedProductOutSumNEW.cs</DependentUpon>
+    </Compile>
     <Compile Include="FunctionCode\Warehouse\Warehouse_FinishedProductOutSum.cs">
       <SubType>Form</SubType>
     </Compile>
@@ -2200,6 +2206,9 @@
     <EmbeddedResource Include="FunctionCode\Warehouse\Warehouse_FinishedProductIn.resx">
       <DependentUpon>Warehouse_FinishedProductIn.cs</DependentUpon>
     </EmbeddedResource>
+    <EmbeddedResource Include="FunctionCode\Warehouse\Warehouse_FinishedProductOutSumNEW.resx">
+      <DependentUpon>Warehouse_FinishedProductOutSumNEW.cs</DependentUpon>
+    </EmbeddedResource>
     <EmbeddedResource Include="FunctionCode\Warehouse\Warehouse_FinishedProductOutSum.resx">
       <DependentUpon>Warehouse_FinishedProductOutSum.cs</DependentUpon>
     </EmbeddedResource>