Crystal Report ile Yarının tarihini yazdırmak -2

Şu yazımda patronum Crystal Report ile hazırladığım raporda rapor yazdırılma tarihinin günün tarihi değilde bir gün sonrasının tarihini yazmasını istediğinden bahsetmiştim.  İyi güzelde kimse sormuyor acaba ?

Yapmak istediğimizden kısaca tekrar bahsedeyim. Raporu hangi gün alırsanız o günün tarihini PrintDate komutu ile Crystal Reports da yazdırmaktaydım. Fakat biz hep bir sonraki günün programını yaptığımız için ertesi gün imalattaki arkadaşlar programı çıktı olarak ellerine aldıklarında dünün tarihini görmüş olacaklardı. Sıkıntı çıkmaktaydı.  Patronum sağolsun dedi ki :

Rapor’un çıktısını aldığımız tarih değilde bir sonraki günün yani yarının tarihini program atamaz mı ?

Olur dedim attırırız …  Bir önceki yazımda nasıl yaptığımdan bahsetmiştim sizlere… Fakat bir sorunla karşılaştım.  Pazartesi salı gününün programını yaptığımız için çıktısını alınca tamam salı gününün tarihini atıyor böyle Cumartesiye kadar sorun yok ama …. Cumartesi günü yine program yapıp çıktı alırsak PAZAR gününün tarihini atmış olacak program…!  Fakat şirket pazar günü çalışmıyor… Pazartesinin programını Cumartesi günün yapıp üzerine Pazartesinin tarihini nasıl atacağız ? Al sana boru dediler 🙂

Heyecana gerek yok boruya hiç gerek yok dedim 🙂 Onuda yaptım gerçi biraz kastım ama oldu sonunda çalışıyor…

Önceki yazımdaki prensibimiz neydi ?

Raporun yazdırılma tarihine 1 eklemekti. Bunu (printdate)+1 diye formül girdiğim @tarih değişkeni ile tanımlamıştım.  Şimdi ise Cumartesi gününe 2 eklemem ve diğer günlere 1 eklemem lazım ki … İstediğimiz olsun… Peki nasıl olacak ?

Öncelikle Önceki yazımda @tarih olarak belirlediğim değişkenimin içerisine

(PrintDate)+1

olarak formül girmiştim. Bu formüldeki +1 i siliyorum ve @tarih değişkenimiz için sadece

(printdate)

olarak kalmasını sağlıyorum. Sonra menüde sağ tıklayıp NEW seçeneğini seçerek ayrı bir değişken tanımlıyorum bu değişkenimizin ismide tarihekleme olsun…

@tarihekleme değişkenimize şu formülü girdim.

if DayOfWeek ({@tarih}) = crSaturday then {@tarih}+2 else {@tarih}+1
// Nasıl bir çözüm ama 🙂 Yarının tarihini attırıyorum eğer …
// Günlerden Cumartesi ise o zaman pazartesinin tarihini atıyor …
// By TEAkolik  12.07.08   http://www.teakolik.com …

Böylelikle Cumartesi günü tarihe 2 ilave edecek ve pazartesinin tarihini ekrana yazacaktır. Diğer günlerde ise sadece 1 ekleyecek ve ertesi günün tarihini vermiş olacak… Sorunu şükür ki çözebildim..Yukarıdaki resimde de görebilmektesiniz.

NOT: Beni Cyrstal Report ile tanıştıran ve bana çok çok yardımcı olan Uğur Çullukçu abimede buradan teşekkür edip acaba iyi bir öğrenci olabilmiş miyim sormak istedim…

“Crystal Report ile Yarının tarihini yazdırmak -2” üzerine 2 yorum

  1. Tek değişkenle şu şekilde de çözebilirdiniz:

    if DayOfWeek (CurrentDate) = crSaturday then PrintDate+2 else PrintDate+1

    Yanıtla

Yorum yapın