Ağu 24

YAZAR: Kübra ATLI

Arkadaşlar merhaba.
Bir önceki yazımda kayıt işlemleri içerisinde genel bilgileri eklemeyi, kaydetmeyi göstermiştim. Bu yazımda ise, genel bilgiler içerisindeki düzenle butonumuzun işlevine bakacağız.

Düzenle butonumuza tıkladığımızda farklı bir forma geçiş yapıyoruz. Ben düzenli olması açısından farklı bir formda yapmayı uygun gördüm. Tasarımı aşağıdaki şekilde.

genelBilgileriDuzenle

Şekildeki gibi TC Kimlik No ile aratıyoruz, kişinin bilgileri geliyor. Ve düzenlemek istediğimiz bilgisini checkbox ile işaretliyoruz, düzenle diyoruz. Daha sonra karşısında olmasını istediğimiz bilgisini girerek ve kaydet butonumuza tıklayarak, yeni bilgisini kaydetmiş oluyoruz.

    public partial class KayitIslemleriGenelBilgilerDuzenle : Form
    {
        public static string TCNo;
        SqlConnection baglanti = new SqlConnection("Data Source=... ;  Initial Catalog=...; Integrated Security= true; User Id=...;  Password=...");

        public KayitIslemleriGenelBilgilerDuzenle()
        {
            InitializeComponent();
        }

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

        //Genel Bilgileri Düzenle formumuz açıldığında yeni olarak kaydetmek istediğimiz bilgilerimizi içeren textboxlarımız görünmemeli.
        private void KayitIslemleriGenelBilgilerDuzenle_Load(object sender, EventArgs e)
        { 
            textBox_yeniAd.Visible = false;
            textBox_yeniSoyad.Visible = false;
            dateTimePicker_YeniKayitTarihi.Visible = false;
            textBox_YeniOkul.Visible = false;
            textBox_yeniBolum.Visible = false;
            comboBox_yeniOgretim.Visible = false; 
        }

        private void btn_kaydet_Click(object sender, EventArgs e)
        {
            try
            { 
                baglanti.Open();
                SqlCommand komut = new SqlCommand();
                komut.Connection = baglanti; 
                komut.CommandText = ("UPDATE GenelBilgiler SET Ogrenci_Ad=@Ogrenci_Ad, Ogrenci_Soyad=@Ogrenci_Soyad, KayitTarihi=@KayitTarihi, Okulu=@Okulu, Bolumu=@Bolumu, Ogretim=@Ogretim WHERE  TC_No='" + textBox_TC.Text + "'");
                // GenelBilgiler tablomuzun ilgili alanlarını değiştirecek olan güncelleme sorgusu.

                //Sorgumuzu ve baglantimizi parametre olarak alan bir SqlCommand nesnesi oluşturuyoruz.
                //Eğer checked edilmemiş ise önceki bilgisini veritabanımızda saklıyoruz.
                if (checkBox_Ad.Checked != true)
                {
                    komut.Parameters.AddWithValue("@Ogrenci_Ad", txtB_Ad.Text); 
                }
                else
                {
                    komut.Parameters.AddWithValue("@Ogrenci_Ad", textBox_yeniAd.Text);
                }
                if (checkBox_Soyad.Checked != true)
                {
                    komut.Parameters.AddWithValue("@Ogrenci_Soyad", txtB_Soyad.Text);
                }
                else
                {
                    komut.Parameters.AddWithValue("@Ogrenci_Soyad", textBox_yeniSoyad.Text);
                }
                if (checkBox_kayitTarihi.Checked != true)
                {
                    komut.Parameters.AddWithValue("@KayitTarihi", dTP_KayitTarihi.Value);
                }
                else
                {
                    komut.Parameters.AddWithValue("@KayitTarihi", Convert.ToDateTime(dateTimePicker_YeniKayitTarihi.Value));
                }
                if (checkBox_okulu.Checked != true)
                {
                    komut.Parameters.AddWithValue("@Okulu", txtB_okulu.Text);
                }
                else
                {
                    komut.Parameters.AddWithValue("@Okulu", textBox_YeniOkul.Text);
                }
                if (checkBox_bolum.Checked != true)
                {
                    komut.Parameters.AddWithValue("@Bolumu", txtB_Bolum.Text);
                }
                else
                {
                    komut.Parameters.AddWithValue("@Bolumu", textBox_yeniBolum.Text);
                }
                if (checkBox_ogretim.Checked != true)
                {
                    komut.Parameters.AddWithValue("@Ogretim", comboBox_ogretim.Text);
                }
                else
                {
                    komut.Parameters.AddWithValue("@Ogretim", comboBox_yeniOgretim.Text);
                }
                //Parametrelerimize Form üzerindeki kontrollerden girilen verileri aktarıyoruz.
                komut.ExecuteNonQuery();

                //Veritabanında değişiklik yapacak komut işlemi bu satırda gerçekleşiyor.
                baglanti.Close();
                MessageBox.Show("Genel Bilgi İşlemleri Güncellendi.");
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                baglanti.Close();
            }
        }

        private void button_Ara_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Güncellemek İstediğiniz Bilgileri İşaretleyiniz.", "Bilgi", MessageBoxButtons.OK, MessageBoxIcon.Information);

            TCNo = textBox_TC.Text;

            try
            {
                baglanti.Open();
                string kayit = "SELECT * FROM GenelBilgiler WHERE TC_No=@TC_No ";
                SqlCommand komut = new SqlCommand(kayit, baglanti); 
                komut.Parameters.AddWithValue("@TC_No", textBox_TC.Text);
                SqlDataAdapter da = new SqlDataAdapter(komut);
                SqlDataReader dr = komut.ExecuteReader();

                if (dr.Read())
                {
                    txtB_Ad.Text = dr["Ogrenci_Ad"].ToString();
                    txtB_Soyad.Text = dr["Ogrenci_Soyad"].ToString();
                    txtB_okulu.Text = dr["Okulu"].ToString();
                    txtB_Bolum.Text = dr["Bolumu"].ToString();
                    comboBox_ogretim.Text = dr["Ogretim"].ToString();
                    dTP_KayitTarihi.Text = dr["KayitTarihi"].ToString();
                }

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                baglanti.Close();
            }
        }

//İşaretlemiş olduğumuz checkboxlarımız ile karşılarında yeni textboxlarımızı görünür yapıyoruz.
        private void button_Duzenle_Click(object sender, EventArgs e)
        {
            if (checkBox_Ad.Checked == true)
            { textBox_yeniAd.Visible = true; }
            if (checkBox_Soyad.Checked == true)
            { textBox_yeniSoyad.Visible = true; } 
            if (checkBox_kayitTarihi.Checked == true)
            { dateTimePicker_YeniKayitTarihi.Visible = true; }
            if (checkBox_okulu.Checked == true)
            { textBox_YeniOkul.Visible = true; }
            if (checkBox_bolum.Checked == true)
            { textBox_yeniBolum.Visible = true; }
            if (checkBox_ogretim.Checked == true)
            { comboBox_yeniOgretim.Visible = true; }
        } }}

Düzenle formumuz da bu şekilde gerçekleşiyor arkadaşlar. Bunları Kimlik Bilgileri, İletişim Bilgileri, Oda Bilgileri, Ücret Bilgileri kısımlarımızda da bu şekilde yapıyoruz sadece içerikleri farklı, onlardan da ilk yazımda bahsetmiştim.

Öğrenci İşlemleri ile yazıma devam edeceğim.

Yorum Yaz