// kun valitaan tilauslistalta jokin rivi private void TilauksetLtk_SelectionChanged(object sender, EventArgs e) { // jos tilausta ei kesken niin ladataan valitun tilauksen tiedot if (TilausKesken == false) { // apumuuttuja int tilausnro = 0; TyhjennaTilaus(); //onko yksi rivi valittu if (TilauksetLtk.SelectedRows.Count == 1) { //MessageBox.Show(TilauksetLtk.SelectedRows[0].Cells[0].Value.ToString(), "DEBUG"); if (Int32.TryParse(TilauksetLtk.SelectedRows[0].Cells[0].Value.ToString(), out tilausnro) == false) { // jos lukumuunnoksessa virhe, annetaan virhe ja palataan metodista heti MessageBox.Show("Virhe tilausnumerossa", "Virhe!"); return; } if (LataaTilauksenTiedot(tilausnro) == false) { MessageBox.Show("Tilausta ei löydy tilauskannasta", "Virhe!"); return; } } } // jos tilaus on kesken niin tyhjennetään valinta else { TilauksetLtk.ClearSelection(); } }
// ***** painikkeet ******** // uuden tilauksen aloitus painike private void UusiTilausButton_Click(object sender, EventArgs e) { if (TilausKesken == false) { // tilauslista selection pois TilauksetLtk.ClearSelection(); TilausKesken = true; TyhjennaTilaus(); OhjelmanTila(); } }
// metodi suoritetaan kun ohjelma avautuu private void Saliavustaja_Load(object sender, EventArgs e) { // instanssi jotta voidaan kutsua Tilaus luokan metodia Tilaus tilaushallinta = new Tilaus(); // ohjelman avauksessa ei ole uutta tilausta auki TilausKesken = false; TyhjennaTilaus(); OhjelmanTila(); // jos tietokantatiedosto löytyy niin yritetään ladata if (File.Exists(tietokanta)) { try { using (Stream tiedosto = File.Open(tietokanta, FileMode.Open)) { BinaryFormatter bin = new BinaryFormatter(); tilauskanta = (List <Tilaus>)bin.Deserialize(tiedosto); } } // jos tiedostovirhe, palautetaan false catch (IOException) { MessageBox.Show(Path.GetFullPath(tietokanta) + "\nVirhe tietokannan lataamisessa, lopetetaan!", "Virhe"); this.Close(); } // jos datassa on virhe, palautetaan false catch (SerializationException) { MessageBox.Show(Path.GetFullPath(tietokanta) + "\nVirhe tietokannan lataamisessa, lopetetaan!", "Virhe"); this.Close(); } } // tilauslista refresh TilauksetRefresh(); // tilauslista selection pois TilauksetLtk.ClearSelection(); // ikkunan otsikko this.Text = ohjelmanNimi; }
// tilauksen tallennus tilauskantaan private void LisaaTilausButton_Click(object sender, EventArgs e) { if (TilausKesken == true) { // instanssi tilaukselle Tilaus uusitilaus = new Tilaus(); if (MuunnaTilausRivit(uusitilaus) == false) { MessageBox.Show("Loppusummaa ei voitu laskea\nTarkista rivit!", "Virhe!"); // jos virhe, palataan metodista heti return; } // tarkistetaan että on valittu pöytä if (ValitsePoytaValikko.Text == "") { MessageBox.Show("Pöytää ei ole valittu!", "Virhe!"); // jos virhe, palataan metodista heti return; } else { uusitilaus.poyta = ValitsePoytaValikko.Text; } // tallennetaan tilaus tilauskantaan uusitilaus.TallennaTilaus(tilauskanta, uusitilaus); // refresh tilauslista TilauksetRefresh(); // tilauslistan selection pois TilauksetLtk.ClearSelection(); // tyhjennetään tilausrivit TilausKesken = false; TyhjennaTilaus(); OhjelmanTila(); } }