private void InputData_Save()
        {
            _pPOPWorkResult_MIXEntity.PRINT_CODE = "BAR000004";

            _dtList_print = new frmPOPMain_PRODUCT_Work_MIXBusiness().frmPOPMain_PRODUCT_MIX_barcode_Info(_pPOPWorkResult_MIXEntity);

            // 시리얼 연결 여부 확인
            if (_pCoFAS_Serial.IsOpen)
            {
                try
                {
                    //라벨 공정에서 가져오기
                    string _Barcode = string.Empty;

                    //byte[] bytes = Encoding.Default.GetBytes(_Barcode);
                    //_Barcode = Encoding.Default.GetString(bytes);

                    string cmd = null;

                    for (int j = 0; j < Convert.ToInt32(_pP_QTY); j++)
                    {
                        _Barcode = _dtList_print.Rows[0]["PRINT_CMD"].ToString();
                        cmd      = (j + 1).ToString("D3");


                        _pPOPWorkResult_MIXEntity.PRINT_CODE      = _pP_Code + DateTime.Now.ToString("yyMMdd").ToString() + cmd;
                        _pPOPWorkResult_MIXEntity.PART_CODE       = _pP_Code;
                        _pPOPWorkResult_MIXEntity.COLLECTION_DATE = DateTime.Now.ToString("yyMMdd").ToString();
                        _pPOPWorkResult_MIXEntity.USER_CODE       = _pUSER_CODE;
                        _dtList_print2 = new frmPOPMain_PRODUCT_Work_MIXBusiness().frmPOPMain_PRODUCT_MIX_barcode_save_Info(_pPOPWorkResult_MIXEntity);

                        // 푸른들식품 기준 10x5 라벨
                        _Barcode = _Barcode.Replace("@PNAME", _pP_Name);                            // 제품명
                        //_Barcode = _Barcode.Replace("@PQTY", _pP_QTY); // 목표수량
                        _Barcode = _Barcode.Replace("@PDATE", DateTime.Now.ToString("yyyy-MM-dd")); // 날짜
                        //_Barcode = _Barcode.Replace("@PBARCODE", _pP_Code + DateTime.Now.ToString("yyMMdd").ToString() + cmd); // 바코드
                        _Barcode = _Barcode.Replace("@PBARCODE", _dtList_print2.Rows[0]["p_rtn_key"].ToString());

                        _Barcode = _Barcode.Replace("@PCODE", _pP_Code); // 제품코드

                        byte[] bytes = Encoding.Default.GetBytes(_Barcode);
                        _pCoFAS_Serial.Write(bytes, 0, bytes.Length);
                    }
                }
                catch (Exception ex)
                {
                    CoFAS_DevExpressManager.ShowInformationMessage("라벨발행 오류");

                    //_pCoFAS_Serial.Dispose();
                    //_pCoFAS_Serial.Close();
                }
            }
            else  //연결 끊긴 여부
            {
                CoFAS_DevExpressManager.ShowInformationMessage("시리얼 확인");
            }
        }
Пример #2
0
        private void _ucbtRPINT_Click(object sender, EventArgs e)
        {
            CoFAS_DevExpressManager.SetCursor(this, Cursors.WaitCursor);

            if (_PRINT_CMD != "")
            {
                // 시리얼 연결 여부 확인
                if (_pCoFAS_Serial.IsOpen)
                {
                    try
                    {
                        //라벨 공정에서 가져오기

                        if (radioGroup1.SelectedIndex == -1)
                        {
                            CoFAS_DevExpressManager.ShowInformationMessage("발행유형을 선택하세요.");
                            return;
                        }
                        //수동으로
                        if (radioGroup1.Properties.Items[radioGroup1.SelectedIndex].Value.ToString() == "1")
                        {
                            //라벨 공정에서 가져오기

                            if (_luPRINT_SEQ.Text == "")
                            {
                                CoFAS_DevExpressManager.ShowInformationMessage("순번을 입력하세요.\n(범위 : 0~9999");
                                return;
                            }
                            string _Barcode = string.Empty;

                            //byte[] bytes = Encoding.Default.GetBytes(_Barcode);
                            //_Barcode = Encoding.Default.GetString(bytes);

                            string cmd   = null;
                            int    check = 0;

                            _Barcode = _PRINT_CMD;// _gdMAIN_VIEW.GetFocusedRowCellValue("BARCODE").ToString();// _dtList_print.Rows[0]["PRINT_CMD"].ToString();
                            string temp     = string.Empty;
                            string yyyy     = string.Empty;
                            string mm       = string.Empty;
                            string dd       = string.Empty;
                            string yyyymmdd = string.Empty;

                            //2019.01.15
                            _Barcode = _Barcode.Replace("@BARCODE", _INOUT_ID + "-" + _luPRINT_SEQ.Text.PadLeft(4, '0')); // 제조번호

                            //몇장뽑을건지
                            // _Barcode = _Barcode + ",^PQ" + 1;
                            _Barcode = _Barcode + "^XZ";


                            // _Barcode = _Barcode.Replace("@PNAME", tDataTable.Rows[i]["PART_NAME"].ToString().Length < 8 ? "  " + tDataTable.Rows[i]["PART_NAME"].ToString() : tDataTable.Rows[i]["PART_NAME"].ToString()); // 제품명

                            byte[] bytes = Encoding.Default.GetBytes(_Barcode);
                            _pCoFAS_Serial.Write(bytes, 0, bytes.Length);
                            //   }
                        }
                        else
                        //자동으로 seq 수량만큼
                        {
                            for (int cnt = 0; cnt < _INOUT_QTY; cnt++)
                            {
                                string _Barcode = string.Empty;
                                string tmp_seq  = (cnt + 1).ToString();


                                string cmd   = null;
                                int    check = 0;

                                _Barcode = _PRINT_CMD;                                                              //
                                //2019.01.15
                                _Barcode = _Barcode.Replace("@BARCODE", _INOUT_ID + "-" + tmp_seq.PadLeft(4, '0')); // 제조번호

                                //몇장뽑을건지
                                // _Barcode = _Barcode + ",^PQ" + 1;
                                _Barcode = _Barcode + "^XZ";


                                // _Barcode = _Barcode.Replace("@PNAME", tDataTable.Rows[i]["PART_NAME"].ToString().Length < 8 ? "  " + tDataTable.Rows[i]["PART_NAME"].ToString() : tDataTable.Rows[i]["PART_NAME"].ToString()); // 제품명

                                byte[] bytes = Encoding.Default.GetBytes(_Barcode);
                                _pCoFAS_Serial.Write(bytes, 0, bytes.Length);
                            }
                        }
                    }

                    catch (Exception ex)
                    {
                        CoFAS_DevExpressManager.ShowInformationMessage("라벨발행 오류");
                        _COM_STATUS.Text      = "라벨발행 오류.";
                        _COM_STATUS.ForeColor = Color.Red;

                        _pCoFAS_Serial.Dispose();
                        _pCoFAS_Serial.Close();
                    }
                    finally
                    {
                        CoFAS_DevExpressManager.SetCursor(this, Cursors.Default);
                    }
                }
                else  //연결 끊긴 여부
                {
                    _COM_STATUS.Text      = "프린터를 연결하세요.";
                    _COM_STATUS.ForeColor = Color.Red;
                    CoFAS_DevExpressManager.ShowInformationMessage("프린터를 연결하세요");
                }
            }
            else
            {
                CoFAS_DevExpressManager.ShowInformationMessage("발행할 항목을 선택하세요");
            }
        }