Exemple #1
0
        /// <summary>
        /// 扫描响应事件
        /// </summary>
        /// <param name="DecodeText">扫描到的条码内容</param>
        private void scan_OnDecodeEvent(string DecodeText)
        {
            var cBarCode = DecodeText;


            if (string.IsNullOrEmpty(lblStockPlaceID.Text))
            {
                var cmd = new SqlCommand("select * from t_StockPlace where FNumber=@FNumber");
                cmd.Parameters.AddWithValue("@FNumber", cBarCode);

                if (PDAFunction.ExistSqlKis(cmd))
                {
                    lblStockPlaceID.Text = cBarCode;
                }
                else
                {
                    MessageBox.Show("请先扫描库位", "Error");
                }
                return;
            }


            if (!cBarCode.StartsWith("R*") || !cBarCode.Contains("*L*") || !cBarCode.Contains("*S*"))
            {
                MessageBox.Show("无效条码", "Error");
                return;
            }
            //物料编码
            var FItemID = cBarCode.Substring(2, cBarCode.IndexOf("*L*") - 2);
            //产品序列号
            var cLotNo = cBarCode.Substring(cBarCode.IndexOf("*L*") + 3, cBarCode.IndexOf("*S*") - cBarCode.IndexOf("*L*") - 3);

            //产品批号
            var cSerialNumber = cBarCode.Substring(cBarCode.IndexOf("*S*") + 3, cBarCode.Length - cBarCode.IndexOf("*S*") - 3);

            ////判断该产品序列号是否已经被扫描
            //if (!JudgeBarCode(cSerialNumber))
            //    return;

            //判断波次订单中是否存在此出库要求产品
            if (!JudgeInvCode(FItemID))
                return;

            //判断要拣货的产品是否已经全部拣完
            if (!OutAll(FItemID))
                return;

            using (var pgq = new PdaGetQuantity(_cInvCode, cInvName, cLotNo))
            {
                if (pgq.ShowDialog() != DialogResult.Yes)
                    return;
                //通过校验后进
                SaveOutWareHouse(cSerialNumber, _cInvCode, cInvName, pgq.IQuantity, cLotNo, FItemID);
            }
            lblStockPlaceID.Text = "";

            
        }
Exemple #2
0
        /// <summary>
        /// 扫描响应事件
        /// </summary>
        /// <param name="DecodeText">扫描到的条码内容</param>
        private void scan_OnDecodeEvent(string DecodeText)
        {
            var cBarCode = DecodeText;


            if (string.IsNullOrEmpty(lblStockPlaceID.Text))
            {
                var cmd = new SqlCommand("select * from t_StockPlace where FNumber=@FNumber");
                cmd.Parameters.AddWithValue("@FNumber", cBarCode);

                if (PDAFunction.ExistSqlKis(cmd))
                {
                    lblStockPlaceID.Text = cBarCode;
                }
                else
                {
                    MessageBox.Show("请先扫描库位", "Error");
                }
                return;
            }


            if (!cBarCode.StartsWith("R*") || !cBarCode.Contains("*L*") || !cBarCode.Contains("*S*"))
            {
                MessageBox.Show("无效条码", "Error");
                return;
            }
            //物料编码
            var FItemID = cBarCode.Substring(2, cBarCode.IndexOf("*L*") - 2);
            //产品序列号
            var cLotNo = cBarCode.Substring(cBarCode.IndexOf("*L*") + 3, cBarCode.IndexOf("*S*") - cBarCode.IndexOf("*L*") - 3);

            //产品批号
            var cSerialNumber = cBarCode.Substring(cBarCode.IndexOf("*S*") + 3, cBarCode.Length - cBarCode.IndexOf("*S*") - 3);

            ////判断该产品序列号是否已经被扫描
            //if (!JudgeBarCode(cSerialNumber))
            //    return;

            //判断波次订单中是否存在此出库要求产品
            if (!JudgeInvCode(FItemID))
            {
                return;
            }

            //判断要拣货的产品是否已经全部拣完
            if (!OutAll(FItemID))
            {
                return;
            }

            using (var pgq = new PdaGetQuantity(_cInvCode, cInvName, cLotNo))
            {
                if (pgq.ShowDialog() != DialogResult.Yes)
                {
                    return;
                }
                //通过校验后进
                SaveOutWareHouse(cSerialNumber, _cInvCode, cInvName, pgq.IQuantity, cLotNo, FItemID);
            }
            lblStockPlaceID.Text = "";
        }