/// <summary> /// Inserts the request to the database. /// </summary> private int InsertEntry() { dbman = new DBConnectionManager(); using (conn = new MySqlConnection(dbman.GetConnStr())) { conn.Open(); //TODO try { string recID = pmsutil.GenRecordID(); MySqlCommand cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO records(record_id, book_number, page_number, entry_number, record_date, recordholder_fullname, parent1_fullname, parent2_fullname)" + "VALUES(@record_id, @book_number, @page_number, @entry_number, @record_date, @recordholder_fullname, @parent1_fullname, @parent2_fullname)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@book_number", bookNum); cmd.Parameters.AddWithValue("@page_number", pageNum); cmd.Parameters.AddWithValue("@entry_number", entryNum); cmd.Parameters.AddWithValue("@record_date", deathDate); cmd.Parameters.AddWithValue("@recordholder_fullname", fullName); cmd.Parameters.AddWithValue("@parent1_fullname", parent1); cmd.Parameters.AddWithValue("@parent2_fullname", parent2); int stat_code = cmd.ExecuteNonQuery(); conn.Close(); conn.Open(); //Phase 2 cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO burial_records(record_id, burial_date, age, status, residence, residence2, sacrament, cause_of_death, place_of_interment, stipend, minister, remarks)" + "VALUES(@record_id, @burial_date, @age, @status, @residence, @residence2, @sacrament, @cause_of_death, @place_of_interment, @stipend, @minister, @remarks)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@burial_date", burialDate); cmd.Parameters.AddWithValue("@age", age); cmd.Parameters.AddWithValue("@status", status); cmd.Parameters.AddWithValue("@residence", residence1); cmd.Parameters.AddWithValue("@residence2", residence2); cmd.Parameters.AddWithValue("@sacrament", sacrament); cmd.Parameters.AddWithValue("@cause_of_death", causeOfDeath); cmd.Parameters.AddWithValue("@place_of_interment", intermentPlace); cmd.Parameters.AddWithValue("@stipend", stipend); cmd.Parameters.AddWithValue("@minister", minister); cmd.Parameters.AddWithValue("@remarks", remarks); stat_code = cmd.ExecuteNonQuery(); conn.Close(); conn.Open(); string dirID = pmsutil.GenDirectoryID(); string block = "Not Specified"; string lot = "Not Specified"; string plot = "Not Specified"; string rconnum = "Not Specified"; byte[] ImageData; //Phase 3 if (!string.IsNullOrWhiteSpace(Block.Text)) { block = Block.Text; } if (!string.IsNullOrWhiteSpace(Lot.Text)) { lot = Lot.Text; } if (!string.IsNullOrWhiteSpace(Plot.Text)) { plot = Plot.Text; } if (!string.IsNullOrWhiteSpace(RContactNo.Text)) { rconnum = RContactNo.Text; } if (!string.IsNullOrWhiteSpace(imageURI)) { FileStream fs = new FileStream(imageURI, FileMode.Open, FileAccess.Read); BinaryReader br = new BinaryReader(fs); ImageData = br.ReadBytes((int)fs.Length); br.Close(); fs.Close(); } else { ImageData = null; } cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO burial_directory(directory_id, record_id, block, lot, plot, gravestone, relative_contact_number)" + "VALUES(@directory_id, @record_id, @block, @lot, @plot, @gravestone, @relative_contact_number)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@directory_id", dirID); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@block", block); cmd.Parameters.AddWithValue("@lot", lot); cmd.Parameters.AddWithValue("@plot", plot); cmd.Parameters.AddWithValue("@gravestone", ImageData); cmd.Parameters.AddWithValue("@relative_contact_number", rconnum); stat_code = cmd.ExecuteNonQuery(); conn.Close(); string tmp = pmsutil.LogRecord(recID, "LOGC-01"); return(stat_code); } catch (MySqlException ex) { Console.WriteLine("Error: {0}", ex.ToString()); return(0); } } }
private async void DoWork(object sender, DoWorkEventArgs e) { try { DataTable dt = new DataTable(); dt = ((DataView)databur.ItemsSource).ToTable(); for (int i = 0; i < dt.Rows.Count; i++) { dbman = new DBConnectionManager(); pmsutil = new PMSUtil(); using (conn = new MySqlConnection(dbman.GetConnStr())) { conn.Open(); if (conn.State == ConnectionState.Open) { bool doProceed = false; //Check inputs for (int _tmp = 0; _tmp < 12; _tmp++) { if (String.IsNullOrEmpty(dt.Rows[i][i].ToString()) == true) { doProceed = false; } else { doProceed = true; } } if (doProceed == true) { App.Current.Dispatcher.Invoke((Action) delegate // <--- HERE { string recID = pmsutil.GenRecordID(); MySqlCommand cmd = dbman.DBConnect().CreateCommand(); cmd.CommandText = "INSERT INTO records(record_id, book_number, page_number, entry_number, record_date, recordholder_fullname, parent1_fullname, parent2_fullname)" + "VALUES(@record_id, @book_number, @page_number, @entry_number, @record_date, @recordholder_fullname, @parent1_fullname, @parent2_fullname)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@book_number", _bookNum); cmd.Parameters.AddWithValue("@page_number", PageNum.Value); cmd.Parameters.AddWithValue("@entry_number", dt.Rows[i][0].ToString()); cmd.Parameters.AddWithValue("@record_date", dt.Rows[i][1].ToString()); cmd.Parameters.AddWithValue("@recordholder_fullname", dt.Rows[i][3].ToString()); cmd.Parameters.AddWithValue("@parent1_fullname", dt.Rows[i][6].ToString()); cmd.Parameters.AddWithValue("@parent2_fullname", dt.Rows[i][7].ToString()); int stat_code = cmd.ExecuteNonQuery(); dbman.DBClose(); //Phase 2 cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO burial_records(record_id, burial_date, age, status, residence, residence2, sacrament, cause_of_death, place_of_interment, stipend, minister, remarks)" + "VALUES(@record_id, @burial_date, @age, @status, @residence, @residence2, @sacrament, @cause_of_death, @place_of_interment, @stipend, @minister, @remarks)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@burial_date", dt.Rows[i][2].ToString()); cmd.Parameters.AddWithValue("@age", dt.Rows[i][4].ToString()); cmd.Parameters.AddWithValue("@status", dt.Rows[i][5].ToString()); cmd.Parameters.AddWithValue("@residence", dt.Rows[i][8].ToString()); cmd.Parameters.AddWithValue("@residence2", dt.Rows[i][9].ToString()); cmd.Parameters.AddWithValue("@sacrament", dt.Rows[i][10].ToString()); cmd.Parameters.AddWithValue("@cause_of_death", dt.Rows[i][11].ToString()); cmd.Parameters.AddWithValue("@place_of_interment", dt.Rows[i][12].ToString()); cmd.Parameters.AddWithValue("@stipend", dt.Rows[i][13].ToString()); cmd.Parameters.AddWithValue("@minister", dt.Rows[i][14].ToString()); cmd.Parameters.AddWithValue("@remarks", dt.Rows[i][15].ToString()); stat_code = cmd.ExecuteNonQuery(); conn.Close(); conn.Open(); string dirID = pmsutil.GenDirectoryID(); cmd = conn.CreateCommand(); cmd.CommandText = "INSERT INTO burial_directory(directory_id, record_id, block, lot, plot, relative_contact_number)" + "VALUES(@directory_id, @record_id, @block, @lot, @plot, @relative_contact_number)"; cmd.Prepare(); cmd.Parameters.AddWithValue("@directory_id", dirID); cmd.Parameters.AddWithValue("@record_id", recID); cmd.Parameters.AddWithValue("@block", dt.Rows[i][16].ToString()); cmd.Parameters.AddWithValue("@lot", dt.Rows[i][17].ToString()); cmd.Parameters.AddWithValue("@plot", dt.Rows[i][18].ToString()); cmd.Parameters.AddWithValue("@relative_contact_number", dt.Rows[i][19].ToString()); stat_code = cmd.ExecuteNonQuery(); conn.Close(); _statcode = stat_code; string tmp = pmsutil.LogRecord(recID, "LOGC-01"); //return stat_code; }); } else { _statcode = 601; } } else { } } } this.Close(); } catch { } }