Tarihhe göre hafta

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
haydarxxx
Üye
Mesajlar: 668
Kayıt: 09 May 2005 11:31
Konum: izmir

Re: Tarihhe göre hafta

Mesaj gönderen haydarxxx »

Hocam kodu denedim
Undeclared identifier: '3'
[Error] Mazeretgiris.pas(10747): ';' expected but '.' found
[Error] Mazeretgiris.pas(10749): Declaration expected but end of file found

Hatası alıyorum.

case blokunun şöyle çalışmasını istiyorum

Kod: Tümünü seç

case HaftaNo(Tarih) of
1: // HaftaNo su 1 olan
begin
                       case DayOfWeek( Tarih ) of //günü
                       2://1.haftanın ilk günü pazartesi ile başlamış ise
                      ...........................................
                      ..................................//başka işlem yapma alt satıra geçme 

                      3://1.haftanın ilk günü salı ile başlamış ise
                      ...........................................
                      ..................................//başka işlem yapma alt satıra geçme  

                      4://1.haftanın ilk günü Çarşamba ile başlamış ise
                       ...........................................
                      ...........................................//başka işlem yapma 
                        gün sorgusunu bittir
                     
2: // HaftaNo su 2 olan
    begin
case DayOfWeek( Tarih ) of //günü
                       2://2.haftanın ilk günü pazartesi ile başlamış ise
                      ...........................................
                      ..................................//başka işlem yapma alt satıra geçme 

                      3://2.haftanın ilk günü salı ile başlamış ise
                      ...........................................
                      ..................................//başka işlem yapma alt satıra geçme 

                      4://2.haftanın ilk günü Çarşmaile başlamış ise
                       ...........................................
                      ..................................//başka işlem yapma alt satıra geçme 
                      gün sorgusunu bittir
                     
3: // HaftaNo su 3 olan
    begin
case DayOfWeek( Tarih ) of //günü
........................ 
.......  


şeklinde.Hocam sizin yazdığınızda bu mantıkta ama hata aldım.end; leri düzenledim yine istediğim şekilde yapamadım :( .Umarım anlatabildim hocam
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: Tarihhe göre hafta

Mesaj gönderen aslangeri »

caselerinde end i var biliyorsun değilmi.
anladığım kadarıyala case lerden birinin endini unutmuşsun.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
haydarxxx
Üye
Mesajlar: 668
Kayıt: 09 May 2005 11:31
Konum: izmir

Re: Tarihhe göre hafta

Mesaj gönderen haydarxxx »

Hocam onu düzeltim.Yanlız şöyle bir sıkıntım var.case blokları işlem yaparken en sondaki veriye göre işlem yapıyor.case nin başındaki tarih işlemini yapıyor sonra bir sonrakine bir sonrakine geçiyor ve en son yapmış olduğu işlemi aktarmış oluyor

1.haftanın ilk günü pazar ise

Kod: Tümünü seç

 case HaftaNo(Tarih) of
    // HaftaNo(1) //
    1: // HaftaNo(1) olan zaman yapılacaklar..
    begin
      case DayOfWeek( Tarih )  of
          1: // Pazar
          begin //ilkgün pazar ise 1.tablodan veri alışı
            IBDataSet7.edit;
            IBDataSet7.FieldByName('1').AsString:=IBDataSet1.FieldByName('PAZ').AsString;
            IBDataSet7.FieldByName('2').AsString:=IBDataSet1.FieldByName('PZT').AsString;
            IBDataSet7.FieldByName('3').AsString:=IBDataSet1.FieldByName('SAL').AsString;
             IBDataSet7.FieldByName('4').AsString:=IBDataSet1.FieldByName('CRB').AsString;
            IBDataSet7.post  ;
            end; // 1-Pazar
bu kod çalışacak

1.haftanın 1. günü pazartesi ise

Kod: Tümünü seç

 case HaftaNo(Tarih) of
    // HaftaNo(1) //
    1: // HaftaNo(1) olan zaman yapılacaklar..
    begin
      case DayOfWeek( Tarih )  of
          2: // Pazartesi
          begin //ilkgün pazartesi ise 1.tablodan veri alışı
            IBDataSet7.edit;
              IBDataSet7.FieldByName('1').AsString:=IBDataSet1.FieldByName('PZT').AsString;
            IBDataSet7.FieldByName('2').AsString:=IBDataSet1.FieldByName('SAL').AsString;
             IBDataSet7.FieldByName('3').AsString:=IBDataSet1.FieldByName('CRB').AsString;
            IBDataSet7.post  ;
            end; // 2-Pazartesi
bu kod çalışacak

yani burada haftanın ilk gününe göre işlem yaptırmak istiyorum.her tarihi sorgularken program şunu yapsın
1.hafta 1.gün pazar ise tablo1 pazar verisi al başka işlem yapma
1.hafta 1.gün pazartesi ise tablo1 pazartesi verisi al başka işlem yapma
1.hafta 1.gün salı ise tablo1 salı verisi al başka işlem yapma
1.hafta 1.gün çarşamba ise tablo1 çarşamba verisi al başka işlem yapma
........
........
burada 1.haftanın ilk gününün 7 olasılığı var her olasılığa göre işlem yaptırmak istiyorum.Diğer haftalar zaten hep pazartesi ile başlayacak onlarda sorun yok.Yanlız son hafta 5. hafta ise

5.hafta 1.gün pazartesi ise tablo1 pazartesi verisi al başka işlem yapma
5.hafta 2.gün salı ise tablo1 salo verisi al başka işlem yapma
5.hafta 3.gün çarşamba ise tablo1 çarşamba verisi al başka işlem yapma
5.hafta ...bitimişse dur.Şeklinde çalıssın istiyorum.Valla ne varsa denedim bildiğim kadarıyla.sağolsun mrmarman hocamın hafta dökümleri süper ama bir türlü bu haftalara göre yukarıda anlattığım dökümü yazamıyorum :N(
anlatmakta bile zorlanıyorum :oops:
Cevapla