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); } } }
// サブプロシージャ: 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; } }
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 = ""; } }