private void buttonAdisyonYazdir_Click(object sender, EventArgs e) { if (yaziciForm != null) { yaziciForm.BringToFront(); return; } if (Properties.Settings.Default.Server == 2) //server { // yazıcıların içerisinde Adisyon ismi ile başlayan yazıcı var mı diye bak varsa o yazıcıya gönder yoksa // Show(); ile yazıcı seçim formu göster. seçildiğinde seçilen yazıcıya gönder List<string[]> adisyonYazicilari = new List<string[]>(); List<string[]> digerYazicilar = new List<string[]>(); SqlCommand cmd = SQLBaglantisi.getCommand("SELECT YaziciAdi,FirmaAdi,FirmaAdres,Yazici,Telefon FROM Yazici"); SqlDataReader dr = cmd.ExecuteReader(); while (dr.Read()) { string[] yazici = new string[5]; yazici[0] = dr.GetString(0); // yazici adı yazici[1] = dr.GetString(1); // firma adı yazici[2] = dr.GetString(2); // firma adres yazici[3] = dr.GetString(3); // yazıcı windows adı yazici[4] = dr.GetString(4); // telefon try { if (yazici[0].Substring(0, 7) == "Adisyon") { adisyonYazicilari.Add(yazici); } else { digerYazicilar.Add(yazici); } } catch { digerYazicilar.Add(yazici); } } cmd.Connection.Close(); cmd.Connection.Dispose(); if (adisyonYazicilari.Count == 1) // tek adisyon yazıcısı var direk gönder { yazdir(adisyonYazicilari[0]); } else if (adisyonYazicilari.Count > 1) // 1 den fazla adisyon yazıcısı var hangisinin istendiğini sor { yaziciForm = new YaziciFormu(this, digerYazicilar, adisyonYazicilari); yaziciForm.Show(); } else if (digerYazicilar.Count > 0)// adisyon yazıcısı yok, olan yazıcıları göster { yaziciForm = new YaziciFormu(this, digerYazicilar); yaziciForm.Show(); } else // hata mesajı, lütfen yazıcı yükleyiniz { KontrolFormu dialog = new KontrolFormu("Yüklü yazıcı bulunamadı, lütfen yazıcı yükleyin", false); dialog.Show(); return; } } else // client { // yazıcılar serverdan istenir menuFormu.masaFormu.hesapFormundanYazicilariIste("YaziciIstegi", masaAdi, departmanAdi); } }
// serverdan yazıcılar geldi public void yazicilarGeldi(string aYazicilari, string dYazicilari, string garson, string acilisZamani) { this.garson = garson; this.acilisZamaniString = acilisZamani; string[] adisyonYaziciDizisi, digerYaziciDizisi; List<string[]> adisyonYazicilari = new List<string[]>(); List<string[]> digerYazicilar = new List<string[]>(); try { //Gelen mesajı * ile ayır adisyonYaziciDizisi = aYazicilari.Split('*'); digerYaziciDizisi = dYazicilari.Split('*'); } catch (Exception) { KontrolFormu dialog = new KontrolFormu("Yazıcıları alırken bir hata oluştu, lütfen tekrar deneyiniz", false); dialog.Show(); return; } for (int i = 0; i < adisyonYaziciDizisi.Count(); i++) { string[] detaylari = adisyonYaziciDizisi[i].Split('-'); adisyonYazicilari.Add(detaylari); } for (int i = 0; i < digerYaziciDizisi.Count(); i++) { string[] detaylari = digerYaziciDizisi[i].Split('-'); digerYazicilar.Add(detaylari); } if (adisyonYazicilari.Count == 1) // tek adisyon yazıcısı var direk gönder { yazdir(adisyonYazicilari[0]); } else if (adisyonYazicilari.Count > 1) // 1 den fazla adisyon yazıcısı var hangisinin istendiğini sor { yaziciForm = new YaziciFormu(this, digerYazicilar, adisyonYazicilari); yaziciForm.Show(); } else if (digerYazicilar.Count > 0)// adisyon yazıcısı yok, olan yazıcıları göster { yaziciForm = new YaziciFormu(this, digerYazicilar); yaziciForm.Show(); } else // hata mesajı, lütfen yazıcı yükleyiniz { KontrolFormu dialog = new KontrolFormu("Yüklü yazıcı bulunamadı, lütfen yazıcı yükleyin", false); dialog.Show(); return; } }