/// <summary> /// Pritiskom na tipku provjerava se ako je označen partnera u datagridviewu i ako je /// izdaje se upozorenje i ako se potvrdi briše se partner ako referencijalni integritet baze to dopušta /// Uz pomoć try catch-a hvata se iznimka koju vraća baza /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void obrisiButton_Click(object sender, EventArgs e) { Partner selektiraniPartner = partnerBindingSource.Current as Partner; if (selektiraniPartner != null) { if (MessageBox.Show("Da li ste sigurni?", "Upozorenje!", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes) { using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { db.Partner.Attach(selektiraniPartner); db.Partner.Remove(selektiraniPartner); try { db.SaveChanges(); } catch (Exception) { MessageBox.Show("Nije moguće obrisati partnera"); } } } PrikaziPartnere(); } }
/// <summary> /// Metoda koja dohvaća i puni data sourceove sa partnerima i tipovima partnera /// </summary> private void PrikaziPartnere() { BindingList <Partner> listaPartnera = null; BindingList <Tip_partnera> listaTipova = new BindingList <Tip_partnera>(); using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { listaPartnera = new BindingList <Partner>(db.Partner.ToList()); foreach (var P in listaPartnera) { listaTipova.Add(P.Tip_partnera1 as Tip_partnera); } } partnerBindingSource.DataSource = listaPartnera; tippartneraBindingSource.DataSource = listaTipova; }
/// <summary> /// Učitava se tip partnera za prikaz u padajućem izborniku i pune se polja ukoliko se radi /// o izmjeni partnera /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void NoviPartnerForm_Load(object sender, EventArgs e) { BindingList <Tip_partnera> listaTipova = null; using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { listaTipova = new BindingList <Tip_partnera>(db.Tip_partnera.ToList()); } tippartneraBindingSource.DataSource = listaTipova; if (odabraniPartner != null) { using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { db.Partner.Attach(odabraniPartner); tboxIme.Text = odabraniPartner.ime.ToString(); tboxOIB.Text = odabraniPartner.OIB.ToString(); tboxAdresa.Text = odabraniPartner.adresa.ToString(); } } }
/// <summary> /// Izmjenom teksta u polju za pretraživanje data source partnera puni se /// onim partnerima čije ime sadrži dio teksta iz polja /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void textBox1_TextChanged(object sender, EventArgs e) { BindingList <Partner> listaPartnera = null; BindingList <Partner> bindingListaPartnera = new BindingList <Partner>(); BindingList <Tip_partnera> listaTipova = new BindingList <Tip_partnera>(); using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { listaPartnera = new BindingList <Partner>(db.Partner.ToList()); foreach (var P in listaPartnera) { if (P.ime.ToLower().Contains(tboxPretrazi.Text)) { bindingListaPartnera.Add(P); listaTipova.Add(P.Tip_partnera1 as Tip_partnera); } } } partnerBindingSource.DataSource = bindingListaPartnera; tippartneraBindingSource.DataSource = listaTipova; }
/// <summary> /// Radi se novi objekt partner ako se radi o novom unosu, posebno se provjerava ako je OIB broj /// te se sprema u bazu podataka. Ako se radi o izmjeni podaci se ažuriraju i spremaju u bazu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void spremiButton_Click(object sender, EventArgs e) { if (odabraniPartner == null) { using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { int OIB; if (!int.TryParse(tboxOIB.Text, out OIB) && tboxOIB.Text.Length == 11) { Partner noviPartner = new Partner { ime = tboxIme.Text, adresa = tboxAdresa.Text, OIB = tboxOIB.Text, tip_partnera = cboxTip.SelectedValue.ToString(), }; db.Partner.Add(noviPartner); db.SaveChanges(); } else { MessageBox.Show("OIB sadrži nedopuštene znakove"); } } } else { using (var db = new UpravljanjePoslovnimPartnerimaEntities()) { db.Partner.Attach(odabraniPartner); odabraniPartner.ime = tboxIme.Text; odabraniPartner.adresa = tboxAdresa.Text; odabraniPartner.OIB = tboxOIB.Text; odabraniPartner.tip_partnera = cboxTip.SelectedValue.ToString(); } } MessageBox.Show("Uspješno dodan partner"); }