C# Taksitlendirme Programı - Stok Takip Programı

Projelerim

Merhaba arkadaşlar projem  C sharpta yaptığım  taksitlendirme programıdır. Öncelikle Projenin kullanım amacını anlatalım , Uygulamanın amacı senet-çek ile satış yapan mağazalarda  ürünleri kayıt altına tutmak , eğer taksit geciktirilirse mailden bildirim gönderebileceğiz  ya da ödeme taksidini zamanında yatırmış ise kayıt altında oluşturduğumuzdan dolayı yeni gelen ürünler hakkında iletişim bilgilerinden telefon veya mail yoluya haberdar edebiliriz  ve zamanında ödediği için müşteriye özel indirmeler sağlayabiliriz.projede bildirim olaylarını  mail yoluyla gerçekleştirdik , eğer isterseniz telefon numarası ile de bildirimleri sağlayabilirsiniz ve devamında projemizde satıcı stoktakileri görüntüleyebilecek hangi üründen ne kadar kaldı , veya eğer ürün yeni geldi ise eklemesini yapabilecek bu şekilde stok kontrolünü de düzgün bir şekilde sağlamış olacak, stoktaki ürünlerde bir azalma veya bitme olursa sorumlu olan kişiye mail yoluyla haber vermiş olacak .Sorumlu olan kişi mağazada veya dükkanda kaç kasa var ise ona göre ekleyip çıkarabilecek bu sayede hangi kasiyer ne kadar satış yaptığını günlük, aylık veya yıllık olarak geçmişe yönelik yaptıkları ciroyu görüntüleyebilecek , kasiyerinde çalışma durumlarını yaptıkları satıştan ortaya çıkarabilecek , 

Projemde 10 Form ve 5 Adet Tablo  Kullanarak yaptım  veritabanı olarak microsoft Access veritabanını kullandım. Formları anlatmaya başlayalım.

 

ana-giris-ekrani

Arkadaşlar Yukardaki Uygulamamızın ilk formudur.

Formda 4 buton ve 1 tane label kullandım.

Müdür girişi : Müdür Girişi butonun’da, bizi Müdür giriş sayfasına yönledirecek.

Kasiyer girişi : Kasiyer Girişi butonun’da ise bizi Kasiyer giriş sayfasına yönlendirecek.

Sol Üstte ise  Kapat Butonu ile uygulamamızdan çıkış işlemini gerçekleştiriyoruz.

 

 

hakkimda-taksitlendirme

 

Hakkımızda : Butonuna tıklayarak uygulama resimde de görüldüğü gibi messagebox ile uygulamamızın adı , Son güncellenme tarihi, Uygulamayı kodlayan ve sürümü hakkında bir kısa bilgi ekrana getiriyoruz.

 

Müdür Giriş Form ile devam edelim.

mudur-giris-formu

Müdür Girişinde Daha önceden oluşturulmuş olan Kullanıcı Adı ve Parola ile giriş yapılıyor ve Aşağıda ki oluşturulan güvenlik kontrolündeki karakterleri güvenlik koduna doğru bir şekilde yazdıktan sonra Müdür Formu geçebiliyoruz.

Uygulamada  3 Kere yanlış girme hakkı var  3 hakkıda yanlış girdiği takdirde uygulama otomatik bir şekilde kapanacaktır.

Sol üst köşede ise bir önceki forma geri dönmek için bir ikon yardımı ile geçiş yapıyoruz

 

hata-mesaji

 kullanıcı adı ve parolayı yanlış girdiğine dair küçük bir bilgilendirme ve Kalan hak sayısını messagebox ‘ta ekrana getiriyoruz.

 

Şimdi de Müdür Sayfasına Bakalım

mudur-formu

Kasiyer Ekle: Kasiyer bilgilerini görüntüleyen forma geçmemizi sağlar

Stoktakiler : Stoktakileri Görüntüleyen Forma geçişi Sağlar

Satış Görüntüle : Burada satış yapılan ürünleri görüntülemeye , ödeme alınmasına ve mail göndermesini sağlar.

 

Kasiyer Ekle Butonuna Bastığımızda Karşımıza Aşağıdaki ekran gelmekte.

kasiyer-duzenleme-ekleme

Formda Eklenecek kasiyerin Kasiyer numarası form yüklendiğinde veritabanındaki  eklenmiş olan son kasiyer numarasını 1 arttırıp ekrana yazdırılıyor. hemen sağındaki ? ikonu üzerine gelindiğinde ise dışarıdan veri almadığını yani textbox’ın pasif olduğunu bildiriyor . Sol üstteki buton ile bir önceki forma geri gitmemizi sağlar

devamında ise ad, soyad ,şifre ,adres telefon ,öğrenim durumu,ve doğum yeri bilgileri doldurarak yeni kasiyer ekliyoruz. öğrenim durumu ve doğum yeri verileri combobox(seçenekli ) olarak ayarladık butonlar ise :

Verileri Göster : Form ilk yüklendiğinde listview temiz yani boş bir şekilde geliyor. Verileri göster butonu yardımı ile veri tabanındaki kayıtlı olan tablodaki değerleri ekrana yazdırmamıza sağlıyor.

Ekle : Ekle butonu ile yukardaki gerekli olan alanları doldurup ,yeni eklenmiş kayıt ile beraber listview güncellenip ekrana son hali ile getiriyoruz

Güncelle : Öncelikle listview’e çift tıklayıp güncellemek istediğimiz kasiyeri bilgilerini boşluklara gerektiği gibi doldurup güncellemek istediğimiz  alanı güncelliyoruz. ve sonrasında güncel bir şekilde listview de ekrana yazdırıyoruz

Sil : Sil butonu yardımı ile silmek istediğimiz kasiyeri listview de üzerinde çift tıklayıp bilgileri gereken yerlere doldurduktan sonra sil butonuna basarak kasiyer veritabanından siliniyor.  ve sonrasında güncel bir şekilde listview de ekrana yazdırıyoruz.

Şimdi de sıraki forma yani Stoktakiler formunu inceleyelim..

urun-listeleri

Yukarda ki formda ise Stoktakileri görüntüleme,Stok ekleme, Stok güncelleme , Stoktan çıkarma gibi işlemleri yapmamızı sağlar

Yukarıda yine önceki slaytta görüldüğü gibi Stok numarası veri tabanındaki son stok numarası 1 arttırılarak ekrana getiriyoruz. Form yüklenirken listview boş bir şekilde karşımıza geliyor. Butonlarının işlevleri ise :

Stok Görüntüle : Form ilk yüklendiğinde listview temiz yani boş bir şekilde geliyor. Stok  Görüntüle butonu yardımı ile veri tabanındaki kayıtlı olan tablodaki değerleri ekrana yazdırmamıza sağlıyor.

 Stok Ekle : Stok Ekle butonu ile yukardaki gerekli olan alanları doldurup ,yeni eklenmiş kayıt ile beraber listview güncellenip ekrana son hali ile getiriyoruz

Stok Güncelle : Öncelikle listview’e çift tıklayıp güncellemek istediğimiz kasiyeri bilgilerini boşluklara gerektiği gibi doldurup güncellemek istediğimiz  alanı güncelliyoruz. ve sonrasında güncel bir şekilde listview de ekrana yazdırıyoruz

Stoktan Çıkar : Stoktan Çıkar butonu yardımı ile silmek istediğimiz Ürünü  listview de üzerinde çift tıklayıp bilgileri gereken yerlere doldurduktan sonra Stoktan Çıkar  butonuna basarak Ürün veritabanından siliniyor.  ve sonrasında güncel bir şekilde listview de ekrana yazdırıyoruz.

Listview Renkli yaptık çünkü listview okumaya çalışırken verileri rahat bir şekilde ayırt  edebilmek için bu yolu tercih ettik Listviewde multi row select özelliği sayesindede üzerine geldiğimiz satırı daha rahat bir şekilde görebilmek için Üzerine geldiğimiz verinin rengini değiştirmeyi sağladık.

Satış Görüntüle Butonuna Bastığımızda Aşağıdaki Ekran Karşımıza Geliyor.

satislar-kontrol

Yukardaki Formda ise Günlük Yapılan satış fiyatını veriyor ve Toplam şu ana kadar yaptığımız satış ekrana getiriyor  yandaki tarih ve kasa no’suna göre listview filtreleyebiliriz bu sayede hangi tarihte ne kadarlık satış yaptığımızı veya hangi kasiyer ne kadarlık satış yaptığımızı görebiliririz bu sayede en aktif kasaya görebiliriz Aşağıda  checkbox ile oluşturduğum Checkbox ile sadece taksit gününü geciktirenleri görüntüleyebilir bu sayede taksiti geciktirenleri satır satır arama derdinden kurtarıyor bizi son olarak taksitleri burada yatırıyoruz ve şimdide ödeme onaylama veya taksiti geçiren müşterilere mail gönderen forma geçelim. Forma geçmek için istediğimiz veriyi listview’de çift tıklama ile bizi ödeme alma  formuna geçiş yapmamızı sağlıyor.

satis-bilgileri

Yukarıdaki formda ise önceki  formda listview deki bilgileri direk buraya aktarıyoruz form yüklenirken ödendi check’i true geliyor. Eğer ödenmedi check’i true olursa Mail gönder butonu visible true olup ekranda gözüküyor .

öncelikle ödeme alma işlemini anlatalım Ödeme tutarıını textbox’ a giriyoruz textbox alacağı minimum değeri alabiliyor maximum değeri ise kalan tutar ne kadar ise en fazla onu alabiliyor ve sonraki kısım ise eğer tüm borç ödenmedi ise Taksit tarihini 1 ay sonra’ya güncelleyip veri tabanına aktarıyor . Eğer borç işlemi tamamlanmış ise satışı tamamlanan tabloya eklenip taksiti olan müşteri listesinden çıkarılıyor.

Eğer Taksit gecikmiş ise ödenmedi radiobutton true yapıyoruz ve mail buttonu visible true yapıyoruz  butona basarak müşteriye taksiti geciktirdiğine dair bilgilendirme maili gönderiyoruz .

Müdür formlarının genel yapısını bitirdik şimdi de sıra kasiyer formlarında öncelikle kasiyer giriş formu ile başlayalım…

 

kasiyer ekrani

Yukardaki formda da görüldüğü gibi gerekli bilgileri doldurarak kasiyer ekranına geçiş yapıyoruz  3 hakkımız var eğer 3. de doğru giriş yapmaz isek programımız direk kapanıyor.

Gereken bilgileri Müdür veri tabanına kaydediyor yani verileri daha önceden oluşturduğumuz  tabloya göre doğru olup olmadığı kontrol ediliyor bilgileri doğru girdiğimizi farzedip bir sonraki  yani satış yatpığımız menüye geçiş yapalım..

kasiyer-formu

 

Bu formda ise kasiyer Satış yapacağı forma geldik form yüklenirken satış butonu enabled false bir şekilde geliyor verileri doldurdukça satışı tamamla butonu enabled true oluyor.Adet sayısı  ve Taksit sayısı da enabled false olarak yükleniyor enabled true olabilmesi için öncelikle ürünü seçmemiz gerekiyor  yani Ürün adı ile yaptığımız combobox’tan veri seçiyoruz vceriler stoktaki ürünlerden çekiyoruz aynı zamanda stoktaki verileri de çekerek oluşabilecek yetersiz stok hatasını gidermiş oluyoruz verileri düzgün bir şekilde boş bırakmayacak şekilde dolduruyoruz eğer boş bırakılırsa satış tamamlanmayacak bizi satırda boşluk yaptığımız yerleri küçük icon’lar şeklinde gösterecek ve messagebox ile tekrar kontrol etmemiz için uyarı gelecek..

Üstteki KasaNo ise giriş yaparken kullandığımız kasano’ya göre  belirleniyor ve şimdi son formumuza geliyoruz Satış İade butonu‘na basarak Kasiyer Satış formuna geçiş yapıyoruz.

satis-listesi

Üstteki formda ise yüklenirken listview sadece kasiyer hangi satışı yaptı ise ona göre listview dolduruluyor yani Üstte sadece kasa 1 ‘de yapılan satışlar vardır. Diğer kasaların yaptıkları satışları silmemek için böyle yapmayı tercih ettim . Silme işlemini yapabilmek için öncelikle listview silmek istediğimiz veriye çift tıklayıp textbox’lardaki boşluklara gerektiği gibi yerleştiriyoruz. gerekli silme işlemi tamamlandıktan sonra liste güncelleniyor stok sayısı , Toplam ciro Kasiyerin yaptığı ciro yani gerekli olanlar veriler güncelleniyor ve veritabanına kaydediliyor.

Arkadaşlar Projem genel itibari ile böyle Aşağıda Proje kodlarına ulaşabilirsiniz. Eksik, Hatalı veya  anlayamadığınız yerlerde benimle iletişime Geçebilirsiniz

Kodlara buradan ulaşabilirsiniz.

Ebu  Yahya Suheyb b. Sinan (r.a.)'den: Rasullah (s.a.v.):  "Müminin durumuna gerçekten hayret edilir. Zira onun her işi hayırdır. Bu da sadece müminler içindir. Eğer ona bir iyilik isabet eder ve ona şükrederse bu onun için hayırdır ve eğer ona bir kötülük isabet eder buna da sabrederse bu da onun için hayırdır. " buyurdular. (Müslim, Zühd 64)