示例#1
0
 public FrmUrediDodajStavkuNaloga(object _stavkeNaloga, int _idNalog)
 {
     InitializeComponent();
     stavkeNaloga = (stavke_naloga)_stavkeNaloga;
     if (stavkeNaloga == null)
     {
         idNalog = _idNalog;
     }
     materijalLogika = new MaterijalLogika();
 }
示例#2
0
        /// <summary>
        /// Metoda koja se poziva prilikom klika na gumb "Spremi promjene"
        /// (dodaje novu stavku/ažurira vrijednosti postojeće stavke radnog naloga)
        /// </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 (stavkeNaloga == null)
                    {
                        stavke_naloga novaStavka = new stavke_naloga()
                        {
                            ID_materijal = int.Parse(cbMaterijal.SelectedValue.ToString()),
                            ID_nalog     = idNalog,
                            kolicina     = int.Parse(tbKolicina.Text)
                        };
                        if (!string.IsNullOrWhiteSpace(tbKolicina.Text) && int.Parse(tbKolicina.Text) > 0)
                        {
                            db.stavke_naloga.Add(novaStavka);
                            db.SaveChanges();
                        }
                        else
                        {
                            poruka = "Količina mora biti unešena!";
                        }
                    }
                    else
                    {
                        db.stavke_naloga.Attach(stavkeNaloga);
                        stavkeNaloga.ID_materijal = int.Parse(cbMaterijal.SelectedValue.ToString());
                        stavkeNaloga.ID_nalog     = int.Parse(stavkeNaloga.ID_nalog.ToString());
                        stavkeNaloga.kolicina     = int.Parse(tbKolicina.Text);

                        if (!string.IsNullOrWhiteSpace(tbKolicina.Text) && int.Parse(tbKolicina.Text) > 0)
                        {
                            db.SaveChanges();
                        }
                        else
                        {
                            poruka = "Količina mora biti unešena!";
                        }
                    }
                }
            }
            catch (Exception)
            {
                poruka = "Greška prilikom spremanja stavke radnog naloga u bazu (da li ovi podaci već postoje u bazi?)";
            }
            finally
            {
                if (!string.IsNullOrWhiteSpace(poruka))
                {
                    MessageBox.Show(poruka);
                }
                else
                {
                    Close();
                }
            }
        }