public FrmUrediDodajStavkuIzdatnice(object _stavkeIzdatnice, int _idIzdatnica) { InitializeComponent(); stavkeIzdatnice = (stavke_izdatnice)_stavkeIzdatnice; if (stavkeIzdatnice == null) { idIzdatnica = _idIzdatnica; } materijalLogika = new MaterijalLogika(); }
private void btnDodajRačun_Click(object sender, EventArgs e) { izdatnica novaIzdatnica = new izdatnica(); DateTime datum = new DateTime(); datum = dtpDatum.Value; novaIzdatnica.datum = datum; novaIzdatnica.id_korisnik = Convert.ToInt32(txtIDkorisnik.Text); string imePrezkorisnika = txtImeKorisnik.Text + " " + txtPrezimeKorisnik.Text; novaIzdatnica.izdaje = imePrezkorisnika; baza.izdatnica.Add(novaIzdatnica); baza.SaveChanges(); int id_izdatnice = 0; foreach (var red in baza.izdatnica) { id_izdatnice = red.id_izdatnica; } foreach (DataGridViewRow red in dgvNoveStavke.Rows) { stavke_izdatnice noveStavke = new stavke_izdatnice(); noveStavke.id_artikli = Convert.ToInt32(red.Cells[0].Value); noveStavke.id_izdatnica = id_izdatnice; noveStavke.kolicina = Convert.ToInt32(red.Cells[2].Value); baza.stavke_izdatnice.Add(noveStavke); int id = Convert.ToInt32(red.Cells[0].Value); int kol = Convert.ToInt32(red.Cells[2].Value); if (red.Cells[0].Value != null) { var artikl = baza.artikli.First(o => o.id_artikli == id); artikl.kolicina = artikl.kolicina - kol; baza.SaveChanges(); } } this.Close(); MessageBox.Show("Dodana izdatnica!"); }
/// <summary> /// Metoda koja se poziva prilikom klika na gumb "Spremi promjene" /// (dodaje novu stavku/ažurira vrijednosti postojeće stavke izdatnice) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnSpremiPromjene_Click(object sender, EventArgs e) { // varijabla koja se koristi u slučaju greške (sadržava poruku koja će se prikazati) string poruka = ""; // kod se nalazi unutar try-catch-finally bloka kako bi uspješno detektirali greške kao što su CONSTRAINT Violation try { using (var db = new Entities(Konstante.GetConnectionString())) { if (stavkeIzdatnice == null) { stavke_izdatnice novaStavka = new stavke_izdatnice() { ID_materijal = int.Parse(cbMaterijal.SelectedValue.ToString()), ID_izdatnica = idIzdatnica, kolicina = int.Parse(tbKolicina.Text) }; if (!string.IsNullOrWhiteSpace(tbKolicina.Text) && int.Parse(tbKolicina.Text) > 0) { db.stavke_izdatnice.Add(novaStavka); db.SaveChanges(); } else { poruka = "Quantity is mandatory field!"; } } else { db.stavke_izdatnice.Attach(stavkeIzdatnice); stavkeIzdatnice.ID_materijal = int.Parse(cbMaterijal.SelectedValue.ToString()); stavkeIzdatnice.ID_izdatnica = int.Parse(stavkeIzdatnice.ID_izdatnica.ToString()); stavkeIzdatnice.kolicina = int.Parse(tbKolicina.Text); if (!string.IsNullOrWhiteSpace(tbKolicina.Text) && int.Parse(tbKolicina.Text) > 0) { db.SaveChanges(); } else { poruka = "Quantity is mandatory field!"; } } } } catch (Exception) { poruka = "Error occurred while saving issue line (does this user already exist?)";; } finally { if (!string.IsNullOrWhiteSpace(poruka)) { MessageBox.Show(poruka); } else { Close(); } } }