/// <summary> /// Lists all the kontier from the given kunde /// </summary> public SqlDataAdapter KontiList() { return(SQLAPI.Read( "KontoNr, Saldo, TypeNavn, Rentesats, OprettelsesDato " + "FROM Konto, KontoType " + "WHERE Konto.KontoType = KontoType.TypeNr AND KundeNr = " + kundeNr)); }
/// <summary> /// Creates a transaction for a udbetaling. /// </summary> /// <param name="amount"></param> public void Udbetaling(double amount) { if (amount < 0) { MessageBox.Show("Error!\n\nDer var en taste fejl!"); return; } double newSaldo = 0; System.Data.DataTable table = new System.Data.DataTable(); adapter = SQLAPI.Read("Saldo FROM Konto WHERE KontoNr = " + kontoNr); adapter.Fill(table); newSaldo = Double.Parse(table.Rows[0]["Saldo"].ToString()) - amount; if (newSaldo < 0) { MessageBox.Show("Error!\n\nDer er ikke penge nok på kontoen"); } else { SQLAPI.Update("Konto SET Saldo = " + newSaldo + " WHERE KontoNr = " + kontoNr); // Update the saldo on the the account SQLAPI.Insert("Transaktion(Beløb,Dato,KontoNr) Values(" + (amount * -1) + ", CAST('" + DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss") + "' AS DATETIME)," + kontoNr + ")"); // Create a transaction } }
/// <summary> /// Vis kundeoversigt button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Kundeoversigt_btn_Click(object sender, EventArgs e) { adapter = SQLAPI.Read("* FROM Kunde"); table.Clear(); table.Columns.Clear(); adapter.Fill(table); dataGridView1.DataSource = table; dataGridView1.AutoResizeColumns(); }
/// <summary> /// Opdaterer SamletBeløb_label med den samlede saldo fra serveren. /// </summary> private void UpdateSBL() { adapter = SQLAPI.Read("Sum(Saldo) FROM Konto WHERE KundeNr = " + valgteKunde.kundeNr); table.Clear(); table.Columns.Clear(); adapter.Fill(table); SamletBeløb_label.Text = String.IsNullOrWhiteSpace(table.Rows[0][0].ToString()) ? "0.00" : String.Format("{0:N2}", Convert.ToDouble(table.Rows[0][0].ToString())); table.Clear(); table.Columns.Clear(); }
/// <summary> /// Do this when the form loads /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Form1_Load(object sender, EventArgs e) { adapter = SQLAPI.Read("CONCAT(Fornavn, ' ', Efternavn, ' | ', KundeNr) AS Navn FROM Kunde;"); adapter.Fill(table); AutoCompleteStringCollection strColl = new AutoCompleteStringCollection(); for (int i = 0; i < table.Rows.Count; i++) { strColl.Add(table.Rows[i][0].ToString()); } SøgKunde_text.AutoCompleteCustomSource = strColl; table.Clear(); table.Columns.Clear(); }
/// <summary> /// Sætter værdierne i dropdown menuen for kontotyper når man skal skabe en konto. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void comboBox2_Enter(object sender, EventArgs e) { adapter = SQLAPI.Read("TypeNavn FROM KontoType"); table.Clear(); table.Columns.Clear(); adapter.Fill(table); List <string> typeliste = new List <string>(); foreach (DataRow row in table.Rows) { typeliste.Add(row[0].ToString()); } comboBox2.DataSource = typeliste; table.Clear(); table.Columns.Clear(); }
/// <summary> /// Vælg en konto /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SøgKonto_text_KeyUp(object sender, KeyEventArgs e) { try { if (e.KeyCode == Keys.Enter) { if (string.IsNullOrWhiteSpace(SøgKonto_text.Text)) { return; } string kontoSearch = SøgKonto_text.Text; adapter = SQLAPI.Read("* FROM Konto WHERE KontoNr LIKE '" + kontoSearch + "'"); table.Clear(); adapter.Fill(table); if (table.Rows.Count != 1) { table.Columns.Clear(); throw new KeyNotFoundException("Kontonummeret eksister ikke!"); } else { valgteKonto = new Konto((int)table.Rows[0]["KontoNr"], (int)table.Rows[0]["KundeNr"]); } label18.Text = valgteKonto.kontoNr.ToString(); label19.Text = valgteKonto.kundeNr.ToString(); table.Clear(); table.Columns.Clear(); Show(label18, label19); Indsæt_btn.Enabled = true; Hæv_btn.Enabled = true; FjernKonto_btn.Enabled = true; UdskrivTrans_btn.Enabled = true; } } catch (Exception) { table.Clear(); SøgKonto_text.Clear(); MessageBox.Show("Error!\n\nDer er sket en fejl, hvis dette forsætter så kontakt IT-Support!"); } }
/// <summary> /// Vælg en kunde fra databasen /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void textBox6_KeyUp(object sender, KeyEventArgs e) { try { if (e.KeyCode == Keys.Enter) { if (String.IsNullOrWhiteSpace(SøgKunde_text.Text)) { return; } string searchVal = SøgKunde_text.Text.Split('|').Last(); searchVal = searchVal.Trim(); if (String.IsNullOrEmpty(searchVal)) { if (Int32.TryParse(SøgKunde_text.Text, out int n)) { searchVal = SøgKunde_text.Text; } else { throw new FormatException("Kundenummeret kunne ikke læses"); } } adapter = SQLAPI.Read("* FROM Kunde, PostNr WHERE Kunde.PostNr = PostNr.PostNr AND KundeNr LIKE '" + searchVal + "'"); table.Clear(); adapter.Fill(table); if (table.Rows.Count != 1) { table.Columns.Clear(); throw new KeyNotFoundException("Kunne ikke finde kundenummeret for den specificerede kunde"); } else { valgteKunde = new Kunde((int)table.Rows[0]["KundeNr"], table.Rows[0]["Fornavn"].ToString().Trim(), table.Rows[0]["Efternavn"].ToString().Trim()) { postNr = (int)table.Rows[0]["PostNr"], adresse = table.Rows[0]["Adresse"].ToString().Trim(), byNavn = table.Rows[0]["Bynavn"].ToString().Trim(), oprettelsesdato = DateTime.Parse(table.Rows[0]["Oprettelsesdato"].ToString()) }; if (!String.IsNullOrEmpty(table.Rows[0]["TlfNr"].ToString())) { valgteKunde.tlfNr = Int32.Parse(table.Rows[0]["TlfNr"].ToString().Trim()); } } label13.Text = valgteKunde.kundeNr.ToString(); label14.Text = valgteKunde.fornavn + " " + valgteKunde.efternavn; label15.Text = valgteKunde.adresse; label16.Text = valgteKunde.postNr + " " + valgteKunde.byNavn; label17.Text = valgteKunde.tlfNr == 0 ? "N/A" : valgteKunde.tlfNr.ToString(); UpdateSBL(); Show(label13, label14, label15, label16, label17, SamletBeløb_label); VisKonto_btn.Enabled = true; FjernKunde_btn.Enabled = true; } } catch (Exception) { table.Clear(); SøgKunde_text.Clear(); MessageBox.Show("Error!\n\nDer er sket en fejl, hvis dette forsætter så kontakt IT-Support!"); } }
/// <summary> /// Lists all the kunde data from the given kunde /// </summary> public SqlDataAdapter ListKundeData() { return(SQLAPI.Read("* FROM Kunde WHERE KundeNr = " + kundeNr)); }
/// <summary> /// List all transactions for the given konto /// </summary> public SqlDataAdapter ListTransaktioner() { return(SQLAPI.Read("* FROM Transaktion WHERE KontoNr = " + kontoNr)); }
/// <summary> /// Lists all data for the given konto /// </summary> public SqlDataAdapter ListKontoData() { return(SQLAPI.Read("* FROM Konto WHERE KontoNr = " + kontoNr)); }