Delphi ile ERP tavsiyeleri
20 yıldan fazla süredir sektörde bulunan tecrübelere göre Delphi ile yeni bir masa üstü veri tabanı uygulaması(ERP,MRP,CRM,Scada…..) geliştirecek yazılımcılar için bir yol haritası oluşturmak için bu makaleyi hazırladık.
Tamel olarak windows masa üstü uygulaması için gereken ihtiyaçlerı sıralamak gerekirse
1-Kütüphaneler
Öncelikli ihtiyaç duyulan lisanslar
Delphi Professional
İhtiyaçlara göre görsel bileşen seti belirlenmeli. Bileşen seçiminde önemli olan 3 konu vardır.
1-) ihtiyaçlara cevap vermesi
2-) Desteğin ve Geliştirilmesinin uzun süredir devam ediyor ve devam edecek olması
3-) Fiyat
Develepor Expres Pro yada InfoPower VCL , .rosinsky.cz bileşenleri seçilebilir.
Db bağlantısı için Firedac yada UniDac
Raporlama için Fast Report Pro
Bu bileşenler çok yetenekli ve denememiş bileşenlerdir.
Mutlaka bileşen kullanımı için projeye başlamadan önce en az 10 gün zaman ayrılmalıdır.
- olarak ise alt yapının kurulması kısmıdır.
Alt yapı tamamen dinamik olmalıdır.
Yani projeye yeni bir form ekleneceği zaman sıfırdan Delphi açılıp form eklenmemelidir. Aynı WordPress de sayfa ekler gibi bir alt yapı olmalıdır. Bu size başlangıçta zaman kaybettirsede ilerleyen süreçlerde önemli ölçüde zaman kazandıracaktır.
Bir diğer konu inherit işlevi mutlaka ama mutlaka kullanılmaldır.
Projede ara ara ana ve torun yapıları oluşturulmalıdır.
Sql de yapılacak değişiklikler ile formlar raporlar otomatik olarak oluşmalıdır.
Bunla ilgili örnek uygulamayı buradan indirebilirsiniz
https://github.com/AhmetNuri/Delphi_Cms_Framework
- konu ise db tasarımı
Bu konuda ORM ve benzeri alt yapılar kullanılabilir.
Eğer uyulama masa üstü olacak ise db drekt olarak da oluşturulabilir.
Db seçimi tamamen size kalmıştır.
Eğer Json temelli bir web servis üzerine kurulacaksa
RadServery yada
https://github.com/synopse/mORMot2
gibi bir alt yapı kullanılabilir.
db tasarlanırken
- TABLO VE ALAN ADLARI BÜYÜK HARF İLE YAZILMALDIRI
- HER ALANDA TABLO ADI ÖN EK OLARAK EKLENEBİLİR
- EN AZINDAN ID ALANLARINDA MUTLAKA TABLO ADI OLMALIDIR
- TÜM TABLOLARDA UNİC BİR OTOMATIK ARTAN SAYI İNDEXİ OLMALIDIR.
- konu iç script dildir.
Buda kullanıcıların programa ek yapmasını sağlar. Mesela bir hesapta sürekli formül değişiyorsa bu scriptle yazılmalıdır. Diyelim ki bu ay maliyet hesabına yemek dahil edilecek fakat önümüzdeki ay yemek dahil edilmeyecek gibi konular...
Örneğin Python dili Delphi içerisine aktarılabilir. PascalScript yada Pyton3Delphi ile bir alt yapı kurulabilir
Son olarak eğer front end ile backend i ayırmak isterseniz. backend kodları helper class olarak yazın. form ve frame untlerinden sadece helperdaki fonksiyonları çağırın.
Ekip için uyumu oldukça artırır.