Ağu 01

YAZAR: Kübra ATLI
Merhaba arkadaşlar, bu yazımızda kayıt işlemi için form oluşturup, Ana Menümüzde ona yönlendireceğiz ve yurda öğrenci kayıt işlemleri ile başlayacağız.

Bir önceki yazımda Ana Menüye geçişten bahsetmiştim. Aşağıda yeniden tasarımının nasıl olduğunu sizinle paylaşayım.

anamenu

İlk butonumuzun içeriği aşağıdaki şekilde, diğerlerini de bu şekilde yaptım. Her birisini farklı yazımda paylaşmak istiyorum.
Ancak bazı kısımlar uzun olduğundan iki yazıda da ele alınabilir, ya da kısa olduğunda birleştirilebilir.

Bugün Kayıt İşlemleri-Genel Bilgiler kısmını anlatacağım, her bir bölümün düzenle, kaydet kısımları ve tasarımları farklı olduğu için tek tek anlatırsam daha faydalı olacağını düşünüyorum.

private void btn_kayitIslemleri_Click(object sender, EventArgs e)
        {
            KayitIslemleri k = new KayitIslemleri();
            k.Show();
            this.Close();
        }

Yönlendirmiş olduğumuz kayıt işlemleri-genel bilgiler tasarımımız aşağıdaki şekilde.

KayitIslemleriGenelB

Şekilde görüldüğü gibi ilk adımda, genel bilgiler olarak TC Kimlik No, Ad, Soyad, Kayıt Tarihi, Okulu, Bölümü, Öğretimi gibi bilgilerini kaydettik. DataGridView içerisinde önceden eklenilen bir öğrencinin genel bilgileri gözüküyor.
Kaydet dediğimizde ise aşağıdaki işlemler yapılacak.

 private void btnKaydet_Click(object sender, EventArgs e)
        { 
            if (baglanti.State == ConnectionState.Open) { baglanti.Close(); } 
            /* Eğer bir yerde bağlantıyı kapatmayı unuttuysak sorun olabiliyor, açık bir bağlantıyı tekrar açamazsınız hata alırsınız, bu nedenle ekledim. Eğer bağlantı açıksa kapat dedik.  */
            try
            {
                //Kontrollerimizi yapıyoruz.
                string sql = "SELECT * FROM GenelBilgiler WHERE TC_No=@TC_No";
                SqlCommand cmd = new SqlCommand(sql, baglanti);
                cmd.Parameters.AddWithValue("@TC_No", textBox_TC.Text);
                baglanti.Open(); //Bağlantımızı açtık.
                SqlDataReader ddr = cmd.ExecuteReader();
                if (ddr.Read()) //Eğer varsa tablomuzda uyarı verdik.
                {
                    MessageBox.Show("Bu Personel Kayıtlı!", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    temizle();
                    baglanti.Close();

                }

                //Eğer textboxlar boş bırakılmış ise uyarımızı veriyoruz.
                else if (textBox_TC.Text == "" || txtB_Ad.Text == "" || txtB_Soyad.Text == "" || txtB_okulu.Text == "" 
                    || txtB_Bolum.Text == "" || comboBox_ogretim.Text == "")
                {
                    MessageBox.Show("Bilgileri Eksiksiz Giriniz!", "Uyarı", MessageBoxButtons.OKCancel, 
                    MessageBoxIcon.Warning); 
                }
                else
                {
                    SqlCommand comn = new SqlCommand();
                    //Ekleme işlemleri için sorgumuzu yazıyoruz.
                    comn.CommandText = "INSERT INTO GenelBilgiler 
                    (TC_No,Ogrenci_Ad,Ogrenci_Soyad,KayitTarihi,Okulu,Bolumu,Ogretim)" +
                        "VALUES('" + textBox_TC.Text + "', '" + txtB_Ad.Text + "','" + txtB_Soyad.Text + "', '"
                        + dTP_KayitTarihi.Value + "','" + txtB_okulu.Text + "'   , '" + txtB_Bolum.Text + "' , '" 
                        + comboBox_ogretim.Text + "')";
                    if (baglanti.State == ConnectionState.Open) { baglanti.Close(); }
                    baglanti.Open();
                    comn.Connection = baglanti;
                    comn.ExecuteNonQuery();
                    MessageBox.Show("Ekleme İşlemi Başarılı");
                    TCNo = textBox_TC.Text;
                    txtB_TCNo.Text = TCNo; 
/* Bu kısımda ise Genel Bilgiler'de kayıt edilmek için girilen öğrencinin TC No'sunu tutuyoruz ve Kimlik Bilgileri içerisinde otomatik gelmesini istediğimiz için textboxına atıyoruz. */ 
                    griddoldur(); 
/* Bu fonksiyonu yazmamızın sebebi ise tablodaki verilerin DataGridView içerisine yüklenmesi. Bu fonksiyonun içeriğini aşağıda vereceğim. */
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                baglanti.Close();
            }
        }

DataGridView’i tabloda kayıtlı olan veriler ile doldurmak için yazılan griddoldur() fonksiyonu aşağıdaki şekilde.

 void griddoldur()
        {
            SqlDataAdapter da;
            DataSet ds;
            da = new SqlDataAdapter("Select * From GenelBilgiler", baglanti);
            ds = new DataSet();
            da.Fill(ds, "GenelBilgiler");
            dGV_ogrenciler.DataSource = ds.Tables["GenelBilgiler"];
            baglanti.Close();
        }

Yorum Yaz