// サブプロシージャ:上限・下限、行セット・列セット、コマンド、の設定
        private void setLimitSetAndCommand(ref DataTable dt)
        {
            dt.Clear();
            string sql = "select upper, lower, clm_set, row_set, instrument from tbl_measure_item " +
                         "where model = '" + txtModel.Text + "' and " +
                         "inspect = '" + txtInspect.Text + "' and process = '" + txtProcess.Text + "'";

            System.Diagnostics.Debug.Print(sql);
            TfSQL tf = new TfSQL();

            tf.sqlDataAdapterFillDatatable(sql, ref dt);

            upp         = (double)dt.Rows[0]["upper"];
            txtUsl.Text = upp.ToString();
            low         = (double)dt.Rows[0]["lower"];
            txtLsl.Text = low.ToString();
            rowSet      = (int)dt.Rows[0]["row_set"];
            clmSet      = (int)dt.Rows[0]["clm_set"];
            if (dt.Rows[0]["instrument"].ToString() == "push")
            {
                command = push;
            }
            else if (dt.Rows[0]["instrument"].ToString() == "pull")
            {
                command = pull;
            }
        }
Beispiel #2
0
        // ロード時の処理(コンボボックスに、オートコンプリート機能の追加)
        private void Form5_Load(object sender, EventArgs e)
        {
            if (System.Deployment.Application.ApplicationDeployment.IsNetworkDeployed)
            {
                Version deploy = System.Deployment.Application.ApplicationDeployment.CurrentDeployment.CurrentVersion;

                StringBuilder version = new StringBuilder();
                version.Append("VERSION: ");
                //version.Append(applicationName + "_");
                version.Append(deploy.Major);
                version.Append(".");
                version.Append(deploy.Minor);
                version.Append(".");
                version.Append(deploy.Build);
                version.Append(".");
                version.Append(deploy.Revision);

                Version_lbl.Text = version.ToString();
            }
            TfSQL  con = new TfSQL();
            string sql = "select distinct user_name from m_user order by user_name";

            con.getComboBoxData(sql, ref cmbUserName);

            AcceptButton = btnLogIn;
        }
        // サブプロシージャ:DBからのDTHISTORYへの読み込み
        private void readDtHistory(ref DataTable dt)
        {
            dt.Clear();

            string   model   = txtModel.Text;
            string   process = txtProcess.Text;
            string   inspect = txtInspect.Text;
            DateTime lotFrom = dtpLotFrom.Value;
            DateTime lotTo   = dtpLotTo.Value;
            string   line    = cmbLine.Text;

            string sql = "select inspect, lot, inspectdate, line, qc_user, status, " +
                         "m1, m2, m3, m4, m5, x, r FROM tbl_measure_history " +
                         "WHERE model = '" + model + "' AND " +
                         "process = '" + process + "' AND " +
                         "inspect = '" + inspect + "' AND " +
                         "lot >= '" + lotFrom.ToString() + "' AND " +
                         "lot <= '" + lotTo.ToString() + "' AND " +
                         "line = '" + line + "' " +
                         "order by lot, inspectdate";

            System.Diagnostics.Debug.Print(sql);
            TfSQL tf = new TfSQL();

            tf.sqlDataAdapterFillDatatable(sql, ref dt);
        }
Beispiel #4
0
        // データ受信が発生したときのイベント処理(デレゲート先)
        private void RcvDataToBufferDataTable(string cmd)
        {
            // 測定値の送信要求に対する返信の場合のみ処理
            //if (cmd.Length != 17) return;

            // 因数の決定:検査項目に応じて、2つの測定値の差を、因数で割って表示・登録する(デフォルト因数は1)
            string        inspect = txtInspect.Text;
            double        factor  = 1;
            List <string> list10  = new List <string> {
                "CAFBVP2", "CAFBVP4", "CAFBVP2", "CAFBVP4", "CAFBVP2", "CAFBVP4"
            };
            List <string> list5 = new List <string> {
                "RBCAVL", "RBCAVL", "RBCAVL"
            };

            if (list10.Contains(inspect))
            {
                factor = 10;
            }
            if (list5.Contains(inspect))
            {
                factor = 5;
            }

            // 正しい文字列から始まる受信文字列のみ処理する
            if (cmd.Substring(0, 2) == command2)
            {
                // 測定値のテキストを、DOUBLEに変換してBUFFERTABLEへ格納する
                double value = 0;
                string sql   = "select dbplace from tbl_model_dbplace where model='" + txtModel.Text + "'";
                System.Diagnostics.Debug.Print(sql);
                TfSQL  tf      = new TfSQL();
                string dbplace = tf.sqlExecuteScalarString(sql);

                // HAYWARD2は10桁の精度、CARは8桁の精度
                if (dbplace == "A")
                {
                    double.TryParse(cmd.Substring(4, 8), out value);
                }
                else if (dbplace == "CAR")
                {
                    double.TryParse(cmd.Substring(4, 8), out value);
                }

                dtBuffer.Rows[vAdr][hAdr] = value;

                // 上位と下位の、2つの測定値の差を、3行目に表示する
                if (dtBuffer.Rows[0][hAdr].ToString() != String.Empty && dtBuffer.Rows[1][hAdr].ToString() != String.Empty)
                {
                    dtBuffer.Rows[2][hAdr] =
                        Math.Round((double.Parse(dtBuffer.Rows[0][hAdr].ToString()) - double.Parse(dtBuffer.Rows[1][hAdr].ToString())) / factor, 4);
                }

                // グリットビューの更新
                updateDataGripViews(dtBuffer, dtHistory, ref dgvBuffer, ref dgvHistory);

                // スペック外のセルをマーキングする(一時テーブル)
                colorBufferViewBySpec(value, ref dgvBuffer);
            }
        }
Beispiel #5
0
        private void cmbModel_SelectedIndexChanged(object sender, EventArgs e)
        {
            TfSQL  con = new TfSQL();
            string sql = "select distinct model_sub_cd from m_model  where model_cd = '" + cmbModel.Text + "' order by model_sub_cd";

            con.getComboBoxData(sql, ref cmbSubModel);
        }
        public void updateDataGripViews(ref DataGridView dgv, bool load)
        {
            dgv.Columns.Clear();
            dtInspectItems.Clear();
            dgv.RowTemplate.MinimumHeight = 28;
            string sql = @"select b.model_sub_cd as model, a.dwr_cd, a.dwr_name, a.doc_name, a.registration_date_time,a.dwr_id from m_drawing a
                            left join m_model b on a.model_id = b.model_id
                            where b.model_cd = '" + cmbModel.Text + "' and b.model_sub_cd = '" + cmbSubModel.Text + "' order by dwr_cd";
            TfSQL  tf  = new TfSQL();

            tf.sqlDataAdapterFillDatatable(sql, ref dtInspectItems);
            dgv.DataSource = dtInspectItems;
            if (dgv.RowCount > 0)
            {
                colNew = new DataGridViewButtonColumn
                {
                    Text = "Measure New",
                    UseColumnTextForButtonValue = true,
                };
                colCon = new DataGridViewButtonColumn
                {
                    Text = "Continue",
                    UseColumnTextForButtonValue = true,
                };
                colEdit = new DataGridViewButtonColumn
                {
                    Text = "Edit",
                    UseColumnTextForButtonValue = true,
                };
                dgv.Columns.Add(colNew);
                dgv.Columns.Add(colCon);

                string sqlpermision = "select distinct user_permision from m_user where user_name = '" + username + "'";
                if (tf.sqlExecuteScalarString(sqlpermision) == "admin")
                {
                    dgv.Columns.Add(colEdit);
                    dgv.Columns[8].HeaderText = "Edit";
                }

                dgv.Columns["model"].HeaderText    = "Model";
                dgv.Columns["dwr_cd"].HeaderText   = "Drawing Code";
                dgv.Columns["dwr_name"].HeaderText = "Drawing Name";
                dgv.Columns["doc_name"].HeaderText = "Document";
                dgv.Columns["registration_date_time"].HeaderText = "Date";
                dgv.Columns[6].HeaderText = "New";
                dgv.Columns[7].HeaderText = "Continue";

                dgv.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

                dgv.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.Columns[4].Visible      = false;
                dgv.Columns[5].Visible      = false;
                dgv.Columns[7].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;
                dgv.AutoSizeColumnsMode     = DataGridViewAutoSizeColumnsMode.Fill;
            }
        }
        private void btnAdd_Click(object sender, EventArgs e)
        {
            dgvTester.ReadOnly           = false;
            dgvTester.AllowUserToAddRows = true;
            btnSave.Enabled = true;
            btnAdd.Enabled  = false;
            TfSQL tf = new TfSQL();

            itemId = int.Parse(tf.sqlExecuteScalarString("select max(item_id) from m_item"));
        }
        public void SaveImage(PictureBox pic, string column)
        {
            OpenFileDialog file = new OpenFileDialog();

            file.Title  = "Open Image File";
            file.Filter = "Image files|*.jpg;*.png";

            if (file.ShowDialog() == DialogResult.OK)
            {
                if (file.FileName != "")
                {
                    string fileName = file.FileName.ToString();
                    long   size     = new System.IO.FileInfo(fileName).Length / 1024;
                    bool   doing    = false;
                    if (size > 310)
                    {
                        DialogResult dialog = MessageBox.Show("File size is greater than 300 Kb !" + System.Environment.NewLine + "Do you want continue!", "Note!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);
                        if (dialog == DialogResult.Yes)
                        {
                            doing = true;
                        }
                    }
                    else
                    {
                        doing = true;
                    }

                    if (doing == true)
                    {
                        byte[]       img      = System.IO.File.ReadAllBytes(fileName);
                        MemoryStream meStream = new MemoryStream(img);

                        pic.Image    = new Bitmap(meStream);
                        pic.SizeMode = PictureBoxSizeMode.Zoom;

                        FileStream fs      = new FileStream(fileName, FileMode.Open, FileAccess.Read);
                        byte[]     picbyte = new byte[fs.Length];
                        fs.Read(picbyte, 0, System.Convert.ToInt32(fs.Length));
                        fs.Close();

                        TfSQL  sql   = new TfSQL();
                        int    dwrId = int.Parse(sql.sqlExecuteScalarString("select dwr_id from m_drawing where dwr_cd = '" + DrawingCd + "'"));
                        string sqlEx = "update m_drawing set " + column + " = '" + Convert.ToBase64String(picbyte) + "' where dwr_id = " + dwrId;
                        sql.sqlExecuteNonQueryInt(sqlEx, false);

                        doing = false;
                    }
                }
                else
                {
                    MessageBox.Show("No file selected!", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
        }
        // XRグラフ作成ボタン押下時の処理
        private void btnExport_Click(object sender, EventArgs e)
        {
            TfSQL         sampl   = new TfSQL();
            string        sample  = sampl.sqlExecuteScalarString("select clm_set from tbl_measure_item where inspect = '" + txtInspect.Text + "'");
            string        descrip = sampl.sqlExecuteScalarString("select description from tbl_measure_item where inspect = '" + txtInspect.Text + "'");
            ExcelClassnew xl      = new ExcelClassnew();

            string dtpFrom = dtpLotFrom.Value.ToString("yyyy/MM/dd");
            string dtpTo   = dtpLotTo.Value.ToString("yyyy/MM/dd");

            xl.exportExcel(txtModel.Text, cmbLine.Text, txtUser.Text, txtUsl.Text, txtLsl.Text, txtProcess.Text, txtInspect.Text, sample, descrip, dgvHistory, dtpFrom, dtpTo);
        }
        private void frmItem_Load(object sender, EventArgs e)
        {
            TfSQL  con = new TfSQL();
            string sql = @"select distinct model_cd from(select model_cd ,user_dept_cd from m_model a,m_user b where a.user_id = b.user_id )t,m_user a 
            where a.user_dept_cd = t.user_dept_cd and a.user_name = '" + username + "'";

            con.getComboBoxData(sql, ref cmbModel);
            cmbModel.Text     = "";
            txtUser.Text      = username;
            dtInspectItems    = new DataTable();
            dtpFromDate.Value = DateTime.Now.AddDays(-7);
        }
        // 測定値の取り込みが終わったら、データベースへ登録する
        private void btnRegister_Click(object sender, EventArgs e)
        {
            if (dtBuffer.Rows.Count <= 0)
            {
                return;
            }

            string   model       = txtModel.Text;
            string   process     = txtProcess.Text;
            string   inspect     = txtInspect.Text;
            string   status      = txtStatus.Text;
            DateTime lot         = DateTime.Parse(dtBuffer.Rows[0]["lot"].ToString());;
            DateTime inspectdate = DateTime.Parse(dtBuffer.Rows[0]["inspectdate"].ToString());;
            string   line        = cmbLine.Text;

            if (txtInspect.Text == "CORE07" || txtProcess.Text == "COREASSY08")
            {
                for (int a = 5; a < 15; a++)
                {
                    if (dgvBuffer[a, 0].Value.ToString() != "" && a % 2 == 0)
                    {
                        double vm1 = double.Parse(dgvBuffer[a, 0].Value.ToString());
                        dgvBuffer[a, 0].Value = vm1 * 1000;
                    }
                }
            }

            // ブァッファーテーブル内で、平均とレンジを計算する
            calculateAverageAndRangeInDataTable(ref dtBuffer);

            // IPQCDB 測定履歴テーブルに登録する
            TfSQL tf  = new TfSQL();
            bool  res = tf.sqlMultipleInsert(model, process, inspect, lot, inspectdate, line, status, dtBuffer);

            if (res)
            {
                // バックグラウンドでPQMテーブルに登録する
                DataTable dtTemp = new DataTable();
                dtTemp = dtBuffer.Copy();
                //registerMeasurementToPqmTable(dtTemp);

                // 登録済の状態を、当フォームに表示する
                dtBuffer.Clear();
                readDtHistory(ref dtHistory);
                updateDataGripViews(dtBuffer, dtHistory, ref dgvBuffer, ref dgvHistory);

                // 編集モードフラグを立て、登録・修正ボタンを「登録」の表示に戻す
                editMode            = false;
                btnRegister.Text    = "Register";
                dtpLotInput.Enabled = true;
            }
        }
Beispiel #12
0
        // サブプロシージャ: PQMテーブルへの登録(バックグラウンド処理)
        //private void registerMeasurementToPqmTable(DataTable dt)
        //{
        //    var task = Task.Factory.StartNew(() =>
        //    {
        //        string model = txtModel.Text;
        //        string process = txtProcess.Text;
        //        string inspect = txtInspect.Text;
        //        DateTime lot = DateTime.Parse(dt.Rows[0]["lot"].ToString());
        //        DateTime inspectdate = DateTime.Parse(dt.Rows[0]["inspectdate"].ToString());
        //        string line = cmbLine.Text;

        //        TfSql


        //        Tfc = new TfSqlPqm();
        //        Tfc.sqlMultipleInsertMeasurementToPqmTable(model, process, inspect, lot, inspectdate, line, dt, upp, low);
        //    });
        //}

        // 削除ボタン押下時の処理
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (dtBuffer.Rows.Count <= 0)
            {
                return;
            }

            DialogResult result = MessageBox.Show("Do you really want to delete the selected row?",
                                                  "Notice", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);

            if (result == DialogResult.No)
            {
                MessageBox.Show("Delete process was canceled.",
                                "Notice", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2);
            }
            else if (result == DialogResult.Yes)
            {
                // データの削除
                string sql = "delete from tbl_measure_history where " +
                             "model='" + txtModel.Text + "' and " +
                             "inspect='" + txtInspect.Text + "' and " +
                             "lot ='" + dtBuffer.Rows[0]["lot"] + "' and " +
                             "inspectdate ='" + dtBuffer.Rows[0]["inspectdate"] + "' and " +
                             "line ='" + cmbLine.Text + "'";

                System.Diagnostics.Debug.Print(sql);
                TfSQL tf  = new TfSQL();
                int   res = tf.sqlExecuteNonQueryInt(sql, false);

                // バックグラウンドでPQMテーブル内の削除
                DataTable dtTemp = new DataTable();
                dtTemp = dtBuffer.Copy();
                // deleteFromPqmTable(dtTemp);

                // 新規登録用バッファーテーブル、バッファーグリットビューを初期化する
                dtBuffer.Clear();

                // 削除後テーブルの再読み込み
                readDtHistory(ref dtHistory);

                // HISTORYデータグリッドビューのマーキングをクリアする
                colorViewReset(ref dgvHistory);

                // グリットビューの更新
                updateDataGripViews(dtBuffer, dtHistory, ref dgvBuffer, ref dgvHistory);

                // 編集モードフラグを下し、登録・修正ボタンを「登録」の表示にする
                editMode            = false;
                btnRegister.Text    = "Register";
                dtpLotInput.Enabled = true;
            }
        }
Beispiel #13
0
        public void updateControls(string model, string process, string inspect, string user, string ip)
        {
            txtModel.Text   = model;
            txtProcess.Text = process;
            txtInspect.Text = inspect;
            txtUser.Text    = user;
            _ip             = ip;
            string sql_line = "select line from tbl_model_line where model = '" + txtModel.Text + "' order by line";
            TfSQL  ln       = new TfSQL();

            ln.getComboBoxData(sql_line, ref cmbLine);
            //cmbLine.SelectedIndex = 0;
        }
        // •Û‘¶
        private void btnSave_Click(object sender, EventArgs e)
        {
            TfSQL tfsql = new TfSQL();

            bool save = tfsql.sqlMultipleInsertItem(DrawingCd, ref dt, User);

            if (save)
            {
                dgvTester.AllowUserToAddRows = false;
                dgvTester.ReadOnly           = true;
                btnSave.Enabled = false;
                btnAdd.Enabled  = true;
            }
        }
Beispiel #15
0
        public void updateDataGripViews(ref DataGridView dgv, bool load)
        {
            dtInspectItems.Clear();

            string sql = @"select   b.model_sub_cd as model, a.dwr_cd, a.dwr_name, a.doc_name, a.registration_date_time from m_drawing a
                            left join m_model b on a.model_id = b.model_id
                            where
                        b.model_cd = '" + cmbModel.Text + "' and b.model_sub_cd = '" + cmbSubModel.Text + "' order by dwr_cd";
            // System.Diagnostics.Debug.Print(sql);
            TfSQL tf = new TfSQL();

            tf.sqlDataAdapterFillDatatable(sql, ref dtInspectItems);
            dgv.DataSource = dtInspectItems;
        }
        private void drawingToolStripMenuItem_Click(object sender, EventArgs e)
        {
            TfSQL  tf        = new TfSQL();
            string pemission = tf.sqlExecuteScalarString("select distinct user_permision from m_user where user_name = '" + username + "'");

            if (pemission == "admin")
            {
                IPQC_Part.frmDrawing dwrFrm = new IPQC_Part.frmDrawing(username);
                dwrFrm.ShowDialog();
            }
            else
            {
                MessageBox.Show("Your have not permision", "Error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
        }
        // 既存測定値の修正
        private void dgvHistory_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int curRow = int.Parse(e.RowIndex.ToString());

            if (dgvHistory.Columns[e.ColumnIndex] == Open && curRow >= 0)
            {
                // 編集モードフラグを立て、登録・修正ボタンを「修正」の表示にする
                editMode            = true;
                btnRegister.Text    = "Update";
                dtpLotInput.Enabled = false;

                // 新規登録用バッファーテーブル、バッファーグリットビューを初期化し、ボタンに対応する値を格納する
                dtBuffer.Clear();

                string sql = "select inspect, lot, inspectdate, line, qc_user, status, " +
                             "m1, m2, m3, m4, m5 FROM tbl_measure_history WHERE " +
                             "model = '" + txtModel.Text + "' AND " +
                             "inspect = '" + dgvHistory["inspect", curRow].Value.ToString() + "' AND " +
                             "lot = '" + (DateTime)dgvHistory["lot", curRow].Value + "' AND " +
                             "inspectdate = '" + (DateTime)dgvHistory["inspectdate", curRow].Value + "' AND " +
                             "line = '" + dgvHistory["line", curRow].Value.ToString() + "' " +
                             "order by qc_user";
                System.Diagnostics.Debug.Print(sql);
                TfSQL tf = new TfSQL();
                tf.sqlDataAdapterFillDatatable(sql, ref dtBuffer);

                // グリットビューの更新
                updateDataGripViews(dtBuffer, dtHistory, ref dgvBuffer, ref dgvHistory);

                // 新規登録用グリットビュー(バッファテーブル)へ、ボタンを追加する
                if (dgvBuffer.Columns.Count <= 13)
                {
                    addButtonsToDgvBuffer(dgvBuffer, edit1, edit2, edit3, edit4, edit5);
                }

                // 変更ターゲット行を表示する
                if (dgvHistory.Rows.Count >= 1)
                {
                    dgvHistory.FirstDisplayedScrollingRowIndex = curRow;
                }

                // サブプロシージャ:編集中の行をマーキングする
                colorViewForEdit(ref dgvHistory, curRow);
                colorViewForEdit(ref dgvBuffer, 0);
            }
        }
Beispiel #18
0
        private void frmItem_Load(object sender, EventArgs e)
        {
            TfSQL  con = new TfSQL();
            string sql = @"
select distinct model_cd from(
select model_cd ,user_dept_cd from m_model a,m_user b where a.user_id = b.user_id )t,m_user a 
where a.user_dept_cd = t.user_dept_cd and a.user_name = '" + username + "'";

            con.getComboBoxData(sql, ref cmbModel);
            cmbModel.Text  = "";
            txtUser.Text   = username;
            dtInspectItems = new DataTable();
            if (username == "admin")
            {
                btnEditMaster.Visible = true;
            }
        }
        public void LoadItem()
        {
            txtDwr.Text = DrawingCd;
            string sql   = "select item_id,a.dwr_id , item_measure,  item_symbol,item_tool,item_row,item_detail,item_spec_x,  item_lower, item_upper  from m_item a left join m_drawing b on a.dwr_id = b.dwr_id where b.dwr_cd = '" + DrawingCd + "'  ";
            TfSQL  tfSql = new TfSQL();

            dt = new DataTable();
            tfSql.sqlDataAdapterFillDatatable(sql, ref dt);

            dgvTester.DataSource = dt;

            //Fix DGV

            //dgvTester.Columns["item_id"].HeaderText = "Id";
            //dgvTester.Columns["dwr_cd"].HeaderText = "Drawing";
            dgvTester.Columns["item_id"].Visible         = false;
            dgvTester.Columns["dwr_id"].Visible          = false;
            dgvTester.Columns["item_measure"].HeaderText = "Measure Item";
            dgvTester.Columns["item_symbol"].HeaderText  = "Symbol";
            dgvTester.Columns["item_spec_x"].HeaderText  = "Spec";
            dgvTester.Columns["item_lower"].HeaderText   = "Lower";
            dgvTester.Columns["item_upper"].HeaderText   = "Upper";
            dgvTester.Columns["item_tool"].HeaderText    = "Tool";
            dgvTester.Columns["item_detail"].HeaderText  = "Detail";
            dgvTester.Columns["item_row"].HeaderText     = "Row";

            dgvTester.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            //dgvTester.Columns["item_measure"].AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
            dgvTester.Columns["item_measure"].Width = 100;

            //Load Image to picture box

            string bytePic = tfSql.sqlExecuteScalarString("select dwr_image from m_drawing where dwr_cd = '" + DrawingCd + "'");

            if (bytePic != "")
            {
                byte[]       imgBytes = Convert.FromBase64String(bytePic);
                MemoryStream ms       = new MemoryStream(imgBytes, 0, imgBytes.Length);
                ms.Write(imgBytes, 0, imgBytes.Length);
                Image image = Image.FromStream(ms, true);

                picbox.Image    = image;
                picbox.SizeMode = PictureBoxSizeMode.Zoom;
            }
        }
        // Šù‘¶ƒŒƒR[ƒh‚̍폜
        private void btnDelete_Click(object sender, EventArgs e)
        {
            if (dgvTester.Rows.Count > 0)
            {
                int          rowIndex = dgvTester.CurrentRow.Index;
                DialogResult dialog   = MessageBox.Show("Do you want to delete Measure item no " + dgvTester.Rows[rowIndex].Cells["item_measure"].Value.ToString(), "Note !", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                if (dialog == DialogResult.Yes)
                {
                    TfSQL tfsql = new TfSQL();

                    int    item_measure = int.Parse(dgvTester.Rows[rowIndex].Cells["item_measure"].Value.ToString());
                    string sqlDelete    = @"delete from m_item where dwr_id = (select dwr_id from m_drawing where dwr_cd = '" + DrawingCd +
                                          "') and item_measure = " + item_measure;
                    bool del = tfsql.sqlExecuteNonQuery(sqlDelete, true);
                    LoadItem();
                }
            }
        }
        public void LoadItem()
        {
            dgvTester.Columns.Clear();
            txtDwr.Text = DrawingCd;
            string sql   = "select item_id,a.dwr_id , item_measure,  item_symbol,item_tool,item_row,item_detail,item_spec_x,  item_lower, item_upper  from m_item a left join m_drawing b on a.dwr_id = b.dwr_id where b.dwr_cd = '" + DrawingCd + "' order by item_measure,item_id asc ";
            TfSQL  tfSql = new TfSQL();

            dt = new DataTable();
            tfSql.sqlDataAdapterFillDatatable(sql, ref dt);
            dgvTester.DataSource = dt;

            //add columns Delete
            colDel = new DataGridViewButtonColumn()
            {
                Text = "Delete", UseColumnTextForButtonValue = true
            };
            dgvTester.Columns.Add(colDel);

            //Fix DGV
            dgvTester.Columns["item_id"].Visible         = false;
            dgvTester.Columns["dwr_id"].Visible          = false;
            dgvTester.Columns["item_measure"].HeaderText = "Item";
            dgvTester.Columns["item_symbol"].HeaderText  = "Symbol";
            dgvTester.Columns["item_spec_x"].HeaderText  = "Spec";
            dgvTester.Columns["item_lower"].HeaderText   = "Lower";
            dgvTester.Columns["item_upper"].HeaderText   = "Upper";
            dgvTester.Columns["item_tool"].HeaderText    = "Tool";
            dgvTester.Columns["item_detail"].HeaderText  = "Detail";
            dgvTester.Columns["item_row"].HeaderText     = "Row";
            dgvTester.Columns[10].HeaderText             = "Delete";

            dgvTester.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            dgvTester.Columns["item_measure"].AutoSizeMode = DataGridViewAutoSizeColumnMode.DisplayedCells;

            //Load Image to picture box
            string bytePic = tfSql.sqlExecuteScalarString("select dwr_image from m_drawing where dwr_cd = '" + DrawingCd + "'");

            ShowImage(bytePic, picbox);

            string bytePicMain = tfSql.sqlExecuteScalarString("select dwr_image_main from m_drawing where dwr_cd = '" + DrawingCd + "'");

            ShowImage(bytePicMain, picbox_main);
        }
        private void dgvTester_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (dgvTester.RowCount > 0)
            {
                if (dgvTester.Columns[e.ColumnIndex] == colDel)
                {
                    TfSQL  tf        = new TfSQL();
                    int    itemId    = int.Parse(dgvTester.Rows[e.RowIndex].Cells["item_id"].Value.ToString());
                    string sqlDelete = "delete from m_item where item_id = " + itemId;

                    DialogResult dialog = MessageBox.Show("Do you want to delete Measure item no " + dgvTester.Rows[e.RowIndex].Cells["item_measure"].Value.ToString(), "Note !", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
                    if (dialog == DialogResult.Yes)
                    {
                        tf.sqlExecuteNonQuery(sqlDelete, false);
                        LoadItem();
                    }
                }
            }
        }
 private void dgvTester_RowsAdded(object sender, DataGridViewRowsAddedEventArgs e)
 {
     if (btnAdd.Enabled == false)
     {
         TfSQL  tf     = new TfSQL();
         string itemId = tf.sqlExecuteScalarString("select max(item_id) +1 from m_item");
         string drwId  = tf.sqlExecuteScalarString("select dwr_id from m_drawing where dwr_cd = '" + DrawingCd + "'");
         if (dgvTester.Rows.Count >= 1)
         {
             dgvTester.Rows[dgvTester.Rows.Count - 2].Cells["item_id"].Value = itemId;
             dgvTester.Rows[dgvTester.Rows.Count - 2].Cells["dwr_id"].Value  = drwId;
         }
         else if (dgvTester.Rows.Count == 0)
         {
             dgvTester.Rows[0].Cells["item_id"].Value = itemId;
             dgvTester.Rows[0].Cells["dwr_id"].Value  = drwId;
         }
     }
 }
Beispiel #24
0
        // 検索ボタン押下時、データを読み込み、DATAGRIDVIEWを更新する


        // サブサブプロシージャ:グリットビュー右端にボタンを追加
        private void addButtonsToDataGridView(DataGridView dgv)
        {
            bool  adm_flag = false;
            TfSQL flag     = new TfSQL();
            bool  fl       = flag.sqlExecuteScalarBool("select admin_flag from qc_user where qcuser = '******'");

            if (fl == true)
            {
                adm_flag = true;
            }
            Open      = new DataGridViewButtonColumn();
            Open.Text = "Open";
            Open.UseColumnTextForButtonValue = true;
            Open.Width = 45;
            dgv.Columns.Add(Open);

            if (adm_flag == true)
            {
                btnDelete.Visible = true;
            }
        }
        private void btnSaveImg_Click(object sender, EventArgs e)
        {
            if (txtLink.Text != "")
            {
                FileStream fs  = new FileStream(txtLink.Text, FileMode.Open, FileAccess.Read);
                byte[]     pic = new byte[fs.Length];
                fs.Read(pic, 0, System.Convert.ToInt32(fs.Length));
                fs.Close();

                TfSQL  sql   = new TfSQL();
                int    dwrId = int.Parse(sql.sqlExecuteScalarString("select dwr_id from m_drawing where dwr_cd = '" + DrawingCd + "'"));
                string sqlEx = "update m_drawing set dwr_image = '" + Convert.ToBase64String(pic) + "' where dwr_id = " + dwrId;
                bool   bsave = true;
                sql.sqlExecuteNonQueryInt(sqlEx, bsave);
            }
            else
            {
                MessageBox.Show("Select a file !", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information);
                txtLink.Text = "";
            }
        }
Beispiel #26
0
        private void btnLogIn_Click(object sender, EventArgs e)
        {
            TfSQL  con  = new TfSQL();
            string sql  = "select user_pass from m_user where  user_name = '" + cmbUserName.Text + "'";
            string pass = con.sqlExecuteScalarString(sql);

            try
            {
                if (pass == txtPassword.Text)
                {
                    frmItem frm = new frmItem(cmbUserName.Text);
                    frm.ShowDialog();
                }
                else
                {
                    MessageBox.Show("Pasword is incorrect", "Error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);//danglq3 test
                }
            }
            catch
            {
                MessageBox.Show("An error happened in the process.", "Error", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
        }
Beispiel #27
0
        // ロード時の処理
        private void frmManual_Load(object sender, EventArgs e)
        {
            // 当フォームの表示場所を指定
            this.Left = 300;
            this.Top  = 15;

            if (cmbLine.Text == "")
            {
                btnMeasure.Enabled = false;
            }

            //Exit app if user has been log in by another device
            TfSQL  flag    = new TfSQL();
            string ipadd   = flag.sqlExecuteScalarString("select ip_address from qc_user where qcuser = '******'");
            bool   expmiss = flag.sqlExecuteScalarBool("select export_permission from qc_user where qcuser = '******'");

            if (ipadd == "null")
            {
                flag.sqlExecuteScalarString("UPDATE qc_user SET loginstatus=true, ip_address = '" + _ip + "' where qcuser = '******'");
            }
            if (ipadd != "null" && ipadd != _ip)
            {
                DialogResult res = MessageBox.Show("User is logged in " + _ip + "," + System.Environment.NewLine +
                                                   "Do you want to log out and log in again ?", "Notice", MessageBoxButtons.OK, MessageBoxIcon.Question);
                if (res == DialogResult.OK)
                {
                    Application.Exit();
                }
            }
            if (txtUser.Text != "Admin")
            {
                string[] a = txtUser.Text.Split('_');

                //User permission
                if (a[1] != "CHK" && txtUser.Text != "Admin")
                {
                    btnMeasure.Enabled  = false;
                    btnRegister.Enabled = false;
                    btnDelete.Enabled   = false;
                }
                if (expmiss == false && txtUser.Text != "Admin")
                {
                    btnExport.Enabled = false;
                }
            }

            // DATETIMEPICKERを10日前の日付にする
            dtpSet10daysBefore(dtpLotFrom);

            // DATETIMEPICKERの分以下を切り上げる
            dtpRoundUpHour(dtpLotTo);

            // DATETIMEPICKERの分以下を下げる
            dtpRounddownHour(dtpLotInput);



            // 各種処理用のテーブルを生成してデータを読み込む
            dtBuffer = new DataTable();
            defineBufferAndHistoryTable(ref dtBuffer);
            dtHistory = new DataTable();
            defineBufferAndHistoryTable(ref dtHistory);
            readDtHistory(ref dtHistory);
            dtUpLowIns = new DataTable();
            setLimitSetAndCommand(ref dtUpLowIns);


            // グリットビューの更新
            updateDataGripViews(dtBuffer, dtHistory, ref dgvBuffer, ref dgvHistory);



            // グリットビュー右端にボタンを追加(初回のみ)
            addButtonsToDataGridView(dgvHistory);
        }