Fatura Modülü

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
canset
Üye
Mesajlar: 151
Kayıt: 19 Haz 2005 12:38

Fatura Modülü

Mesaj gönderen canset »

Herkese Merhabalar;

Satış programının içerisine bir fatura modülü eklemek istiyorum...Fatura sayfasının herbirinde 24 satır olacak, eğer satılan ürün çeşitliliği 24'den fazla ise, 1. sayfada bir ara toplam alacak, kdv ve genel toplam kısımları boş kalacak, ayrıca bu ara toplamı da 2. sayfanın ilk satırına yazacak ve 25. satırı da fatura yaprağının 2.sayfasının 2. satırından başlatacak...Mesela faturada 50 kalem farklı ürün satışı olsun...Bu durumda 3 sayfa fatura yaprağı kullanılacaktır...İlk 24 kalem 1. sayfada, sonra ara toplam, 2.sayfanın başında ara toplam ile başlanacak ve burada 23 kalem ürün olacak, 2.sayfanın sonunda tekrar ara toplam alınacak, 3.sayfa yine ara toplamla başlayacak, burada da yer alacak 3 kalem ürün ile satış tamamlanmış olacak...Ve 3. sayfanın en alt kısmında da KDV toplamı ve Genel Toplam yer alacak...

Burada table ve Qrep ile işi görmeyi düşünüyorum...Table'da 24. üründen sonra Qrep 2.sayfaya atlayacak ve yukarıda tarif etmeye çalıştığım işlemleri yapacak, 2.sayfaya ilk başta aldığı ara toplam nedeni ile bu sefer 23 ürün yazdıracak ve bundan sonraki sayfalar 23 ürün ile devam edecek...En son ürün sayısı 23'e tamamlanmadığında da işlemi sonlandıracak...

İşte bunun için ne yapmam gerektiğini bilmiyorum, satırın 24 veya 23 olduğunu nasıl buldurabilirim?...2 ve daha sonraki sayfalar için 23 ürün alması gerektiğini nasıl komutlandırabilirim?...yardımcı olabileceklere şimdiden teşekkürler...

Saygılarımla...
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

Satır yüksekliğini değiştirebiliyorsun.
Bir kaç deneme yanılma yoluyla veya kısa bir hesapla bir sayfaya 23 satırı tam sığdırabilirsin.
Sayfa sonuna gelince zaten kendisi ikinci sayfaya geçiyor.
Aratoplam nasıl olur bilmiyorum :(
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

Bu şekilde bir standartlaştırma sözkonusu olmaz matbu evrak sisteminde.Sadece fatura 24 satırdan ibarettir, o şekilde rapor dizaynı yapılır.Quickreportun system bileşenleri ve function yazılabilen qrexpression bileşenini kullanarak sayfa toplamı, aratoplam ve diğer hesaplamaları detaylı olarak alabilirsin.Bir de Quickreportun OnNeedData eventini bir incele bunları yaparken..Diğer sayfada önceki sayfanın toplamını (nakli yekün olarak adlandırılır..) yazdırmak için standart yöntemleri kullanmak ancak günü kurtarmanı sağlar.Tampon tablo gibi bir yapı oluşturarak oradan yazdırman çözüm olacaktır sanırım.

Kolay gele..
Akin_Delphi
Üye
Mesajlar: 163
Kayıt: 06 Nis 2006 12:22

Mesaj gönderen Akin_Delphi »

Merhabalar,

Aslında eğer esnek bir uygulama geliştirmek (yani kullanıcının fatura tasarımını değiştirmesini sağlamak) istiyorsanız, QuickReport'u önermem. Bunun yerine kodla kendi arabiriminizi geliştirmeniz daha esnek olur gibi geliyor.

Bunun için TGrabHandle diye bir bileşen var. Bu TGrabhandle bileşeni form üzerinde istediğiniz bileşenlerin tasarım halinde (design time) görülmesini sağlıyor. Basitçe bu bileşen sayesinde kullanıcının oluşturduğunuz TLabel'lları taşımasını, boyutunu değiştirmesini vs.'yi sağlayabilirsiniz.

Böylece uygulama üzerinde kullanıcının daha fazla kontrolü olur.

Saygılar ve Başarılar
Kullanıcı avatarı
canset
Üye
Mesajlar: 151
Kayıt: 19 Haz 2005 12:38

Mesaj gönderen canset »

Sayın BlueAlone;

QrepExpression kullanarak kdv ayrımı, ara toplam vb. işlemleri yaptırabiliyorum ancak ara toplamın mesela ilk sayfa için 24. satırda, 2.sayfa ve sonrakiler için 23. satırda olması gerekliliğini sağlayamadım, açıkcası o kodun nasıl yazılabildiği hakkında bir fikrim yok...


Sayın AkınDelphi;

Qrep bildiğim en basit çözüm yolu gibi göründü, esnek bir çözüm olmayacağının farkındayım ancak kodla kendi arabirimimi oluşturacak kadar da profesyonel değilim açıkçası...TGrabHandle'ı da ilk defa duyuyorum, nerden temin edebilirim acaba?...
aLonE CoDeR
Kıdemli Üye
Mesajlar: 1223
Kayıt: 26 Nis 2005 04:08

Mesaj gönderen aLonE CoDeR »

ResetAfterPrint diye bi property'si olması lazım onu False yaparsan her yeni sayfada toplamı sıfırlar dolayısıyla sadece o sayfada listelenen kayıtların toplamını alır vs.vs.

Kolay gele..
Akin_Delphi
Üye
Mesajlar: 163
Kayıt: 06 Nis 2006 12:22

Mesaj gönderen Akin_Delphi »

canset yazdı: Qrep bildiğim en basit çözüm yolu gibi göründü, esnek bir çözüm olmayacağının farkındayım ancak kodla kendi arabirimimi oluşturacak kadar da profesyonel değilim açıkçası...TGrabHandle'ı da ilk defa duyuyorum, nerden temin edebilirim acaba?...
Google bizim en yakın arkadaşımızdır. :lol:
http://www.google.com.tr/search?q=%2BTG ... =&filter=0

Bu arada ben de hiç profesyonel değilim. İlgi duyduğumdan ve kendimi geliştirmeyi sevdiğimden Delphi ile ilgileniyorum.

Saygılar ve Başarılar
Cevapla