Delphi Can
Masaüstü Database Uygulama Şablonu - Baskı Önizleme

+- Delphi Can (https://www.delphican.com)
+-- Forum: Delphi (https://www.delphican.com/forumdisplay.php?fid=3)
+--- Forum: Açık Kaynak Kodlu Yazılım & Bileşen & Geliştirici Araçları (https://www.delphican.com/forumdisplay.php?fid=100)
+--- Konu Başlığı: Masaüstü Database Uygulama Şablonu (/showthread.php?tid=2371)



Masaüstü Database Uygulama Şablonu - 3ddark - 26-06-2018

Proje henüz tam olarak bitmedi. Fakat bu haliyle de girmek istedim. GitHub Link aşağıda.
https://github.com/3ddark/Delphi

Proje 3 klasörden oluşuyor.
1. Components
  Burada ana proje içinde kullandığım şu anda 3 tane olan bileşenler var. Bu bileşenler thsEdit, thsMemo, thsComboBox dır. Bu bileşenler base bileşen olan TEdit, TMemo, TComboBox bileşenlerinden türetiliyor.
2. TableClassWizard
  Burada proje içinde kullanılan veri tabanı sınıflarının tekrar tekrar yazılmasını önlemek için girilen bilgilere göre sınıfı otomatik olarak oluşturuyor. İleride bu uygulama SQL kodunu ve input output formları da default olarak oluşturacak.
3. ThsFramework
  Burada uygulamanın ana dosyaları mevcut. Kullandığım veri tabanının SQL yedeğini de ana dizine ekledim. Bu projede de eksikler fazlasıyla var. Tabi bunlar biraz da nerede duracağınıza bağlı olarak değişiyor. Arayüzler eksik. 

Projenin özellikleri
  1. Çok basit bir şekilde yeni bir tablo ekleyerek input(veri girişi) ve output(toplu kayıtları görme) ekranlarını yapabilirsiniz.
  2. Outputform üzerinde verdiğiniz limit üzerinden hücre değerine göre yüzdelik olarak gösterim yapabilirsiniz. (Progress Bar benzeri). Bu işlem için fazladan kod yazmanıza gerek yok. Sadece veri tabanında gerekli tabloya bilgilerinizi girmeniz yeterli olacaktır.
  3. Outputform üzerinde verdiğiniz max ve min değere göre üstün veya altında olması durumuna göre hücreyi farklı renkte gösterebilirsiniz. Bu işlem için fazladan kod yazmanıza gerek yok. Sadece veri tabanında gerekli tabloya bilgilerinizi girmeniz yeterli olacaktır.
  4. Kullanıcı erişim hakkı kontrolü otomatik olarak yapılıyor. Kullanıcı erişim hakları;
  • Okuma(Read)
  • Yeni Kayıt(Add Record)
  • Güncelleme(Update)
  • Silme(Delete)
  • Özel(Special)

Bu haklardan sadece Özel olan hak şimdilik herhangi bir işe yaramıyor. Diğerleri sorunsuz çalışıyor.
  5. Çok dil desteği mevcut. Kullanımı bir düzene göre otomatik olarak yapılıyor fakat bunun haricinde de müdahale ile istediğiniz gibi işlem yapabilirsiniz. Düzenli otomatik olarak çalışması için sadece girişleri istenilen düzende yapın yeterli.

  6. Çalışma anında Stil değişimi yapabiliyorsunuz. Delphi yeni sürümünde gelen style özelliği ile istediğiniz stili seçebiliyorsunuz. Bu işlemini de Ana formda başlığa sağ tıkladığınızda karşınıza çıkan menüden yapabiliyorsunuz.

  7. Kısayol tuşları ile rahat kullanım.
  • CTRL+E   Excel
  • CTRL+P   Yazdır
  • CTRL+ENTER  İncele
  • F4   Kayıt Sil   Giriş formlarında
  • F5   İşlem Onayı / Kaydet
  • F6   İşlem İptal / Kapat
  • F7   Yeni Kayıt Ekle  Outputformlarda
  • CTRL+F   Arama ekranı. Henüz tam verimli çalışmıyor.
  8. **** İlave Output formda Grid üzerinde hangi bilgilerin görüneceğini ve kolon genişliklerini kendiniz çalışma anında belirleyebiliyorsunuz.

Excel kaydet, Yazdır, PDF Kaydet fonksiyonları eklenmedi. Transaction kısmında tam testler yapılmadı. Fakat kabaca çalışıyor.

Veritabanı bağlantısını FireDAC ile sağlıyor.

Projenin en büyük avantajı lisans hakkı olabilecek bir ayrıca bileşen kullanılmadı. Memory leak kısmına özellikle dikkat ettim. 

Ben veritabanı olarak PostgreSQL 9.5 sürümünü kullanıyorum.
Delphi sürümü olarak da Delphi XE10.1 Berlin ile çalıştım ve testlerini yaptım. Diğer sürümlerde test işlemleri yapılmadı.

KURULUM
Kurulum için PostgreSQL sisteminizde yoksa önce kurulumunu yapın. Kurulumu çok basit. Görsel standart program kurulumu gibi kuruyorsunuz. Kurulum sırasında size postgres kullıcısı için şifre ve haberleşme için port soruyor. Port varsayılanı 5432 dir.

Veri tabanı kurulumu bittikten sonra veri tabanında bir tane kullanıcı oluşturun. Bütün yetkileri olsun.
Kullanıcı adı: ths_admin
Şifresi: THSERP

Daha sonra bir veri tabanı oluşturun. Bu veri tabanı oluşturma işlemi pgAdmin3/4 arayüzü ile çok basit oluşturabilirsiniz. Örnek ths_erp2017
Komutu Satırını yönetici olarak açın ve aşağıdaki kodları çalıştırın. Görsel olarak yine bu işlemleri yapabilirsiniz. Daha sonra ayrıntılı kurulum işlemlerini de anlatacağım.

##postgresql içindeki bin dizinine gidin.
cd "Program Files\PostgreSQL\9.5\bin\"

##postgresql komutları ile veri tabanı oluşturun.
createdb.exe -U postgres veri_tabani_adi

##açtığınız veri tabanına projenin yedeğini geri yükleyin.
psql.exe -U postgres -f sql_script_dosyasini_gösterin -d yukarida_olusturdugunuz_veritabani(ths_erp2017)

Daha sonra Components klasörü içindeki thsComponentSet.dpk paketini kurun. Bu paketle thsEdit, thsMemo ve thsComboBox bileşenleri geliyor.

Bu işlemler bittikten sonra projeyi çalıştırın. Kullanıcı adı varsayılan olarak veri tabanında FERHAT ve şifresi 1 olacak şekilde ayarlandı. Görmek test etmek isteyenler için direkt çalışan uygulamayı da ekledim.


NDrbLk.png
DD4kOy.jpg
mo18X2.png
ED5EOD.jpg
X6LY3o.jpg
j6VYqg.png
2a8QOO.png
Y6r5dD.png


Masaüstü Database Uygulama Şablonu - SimaWB - 26-06-2018

Emeğinize sağlık.
Paylaşım için teşekkürler.
Github için ayrıca teşekkürler Smile


Cvp: Masaüstü Database Uygulama Şablonu - Fesih ARSLAN - 26-06-2018

Merhaba,
Değerli paylaşım için teşekkür ederim.

(26-06-2018, Saat: 16:56)SimaWB Adlı Kullanıcıdan Alıntı: Emeğinize sağlık.
Paylaşım için teşekkürler.
Github için ayrıca teşekkürler Smile

Bir gün gelecek, Microsoft 'tan şu maili alırsanız, sakın şaşırmayın.
"........ tarihinden sonra Github desteğimizdesteğimiz sona erecektir." Smile
Bugüne kadar yürütebildikleri tek ürün; Windows'tur. O da rakipsiz olduğu içindir.
Konuyla pek alakalı bir yorum olmadı. Kusura bakmayın.


Cvp: Masaüstü Database Uygulama Şablonu - Kuri_YJ - 27-06-2018

(26-06-2018, Saat: 17:15)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
Değerli paylaşım için teşekkür ederim.

(26-06-2018, Saat: 16:56)SimaWB Adlı Kullanıcıdan Alıntı: Emeğinize sağlık.
Paylaşım için teşekkürler.
Github için ayrıca teşekkürler Smile

Bir gün gelecek, Microsoft 'tan şu maili alırsanız, sakın şaşırmayın.
"........ tarihinden sonra Github desteğimizdesteğimiz sona erecektir." Smile
Bugüne kadar yürütebildikleri tek ürün; Windows'tur. O da rakipsiz olduğu içindir.
Konuyla pek alakalı bir yorum olmadı. Kusura bakmayın.


Bir de Ofis ürünler.... Smile


Masaüstü Database Uygulama Şablonu - Bay_Y - 06-11-2020

Elinize sağlık güzel bir çalışma olmuş Sql ile ilgili de bir çalışma yapacağınızı belirtmişsiniz zaman bulup yapabildiniz mi acaba ?
Tekrar teşekkürler.


Cvp: Masaüstü Database Uygulama Şablonu - 3ddark - 06-11-2020

(06-11-2020, Saat: 12:28)Bay_Y Adlı Kullanıcıdan Alıntı: Elinize sağlık güzel bir çalışma olmuş Sql ile ilgili de bir çalışma yapacağınızı belirtmişsiniz zaman bulup yapabildiniz mi acaba  ?
Tekrar teşekkürler.

Henüz SQL Server için bir çalışma yapacak vaktim olmadı. Projeye tamam dediğim zaman SQL için bakarım. Fakat şu anda SQL çok uzakta görünüyor. SQL ile PostgreSQL arasında herhangi bir fark yok.

Daha önce eklediğim şablon çok eskide kaldı. Üzerinde bir sürü düzeltmeler yeni özellikler getirdim. Geliştiriciyi daha az uğraştıracak düzenlemeler yaptım.

Az kod yazarak daha sade daha fakat daha fazla iş yapabilecek seviyeye getirmek için çalışmalar yaptım. GitHub sürümü ile çalışmaya devam ettiğim sürüm arasında oldukça fazla düzenleme değişiklik yaptım.


Cvp: Masaüstü Database Uygulama Şablonu - Bay_Y - 09-11-2020

(06-11-2020, Saat: 13:25)3ddark Adlı Kullanıcıdan Alıntı:
(06-11-2020, Saat: 12:28)Bay_Y Adlı Kullanıcıdan Alıntı: Elinize sağlık güzel bir çalışma olmuş Sql ile ilgili de bir çalışma yapacağınızı belirtmişsiniz zaman bulup yapabildiniz mi acaba  ?
Tekrar teşekkürler.

Henüz SQL Server için bir çalışma yapacak vaktim olmadı. Projeye tamam dediğim zaman SQL için bakarım. Fakat şu anda SQL çok uzakta görünüyor. SQL ile PostgreSQL arasında herhangi bir fark yok.

Daha önce eklediğim şablon çok eskide kaldı. Üzerinde bir sürü düzeltmeler yeni özellikler getirdim. Geliştiriciyi daha az uğraştıracak düzenlemeler yaptım.

Az kod yazarak daha sade daha fakat daha fazla iş yapabilecek seviyeye getirmek için çalışmalar yaptım. GitHub sürümü ile çalışmaya devam ettiğim sürüm arasında oldukça fazla düzenleme değişiklik yaptım.

Bilgilendirme için teşekkürler tekrar elinize sağlık , kolaylıklar diliyorum.