18-02-2011, 17:47
Merhaba;
Şöyle bir problemim var,
Bir raporum var. Verilen hizmetleri listeleyen
maksimum 8 adete kadar hizmet verilebiliyor.)
Rapor Örneği:
----------------------------------------------
kisi_adı soyadı
1- hizmet_1, işlem_1
2-hizmet_2, işlem_2
.
.
.
--------------------------------------------
Benim yapmak istediğim ise şu:
hizmetlerin başındaki numaraların otomatik atması.
Daha önce ilgili tablomda 8 adet alan (hizmt_numarası_1, hizmet_numarası_2,....8) oluşturarak formda verilen hizmetlerin karşısına numarayı yazıyor ve raporda da bunu görüntülüyordum.
Ancak anladığınız üzere kisi sayısı arttıkca tablo gereksiz byte larla doluyor.
bundan vazgecerek aşağıdaki fonksiyonu tanımladım ve raporda her hizmetin başındaki rakam alanında ilgili rakam için ilgili fonksiyonu çağırıyordum,(yani 8 ayrı fonksiyon tanımladım), 1 rakamı için : =hizmet_sayisi1( [hizmet_alanı_1]) şeklinde değer vererek rakamı yazdırma yoluna gittim.
------------------------------
-------------------------------------
Şimdi sadede geleceğim.
bana öyle bir fonksiyon lazımki
tek bir fonksiyon ile hizmet_alanı_1 dolu ise başına "1", hizmet_alanı_2 dolu ise başına "2"........8 şeklinde otomatik sıralasın.
yukarıdaki 8 ayrı fonksiyon ile işimi görüyorum ancak bana sanki kulağımı tersten tutuyorum gibime geliyor.
umarım anlatabilmişimdir.
saygılarımla
Şöyle bir problemim var,
Bir raporum var. Verilen hizmetleri listeleyen
maksimum 8 adete kadar hizmet verilebiliyor.)Rapor Örneği:
----------------------------------------------
kisi_adı soyadı
1- hizmet_1, işlem_1
2-hizmet_2, işlem_2
.
.
.
--------------------------------------------
Benim yapmak istediğim ise şu:
hizmetlerin başındaki numaraların otomatik atması.
Daha önce ilgili tablomda 8 adet alan (hizmt_numarası_1, hizmet_numarası_2,....8) oluşturarak formda verilen hizmetlerin karşısına numarayı yazıyor ve raporda da bunu görüntülüyordum.
Ancak anladığınız üzere kisi sayısı arttıkca tablo gereksiz byte larla doluyor.
bundan vazgecerek aşağıdaki fonksiyonu tanımladım ve raporda her hizmetin başındaki rakam alanında ilgili rakam için ilgili fonksiyonu çağırıyordum,(yani 8 ayrı fonksiyon tanımladım), 1 rakamı için : =hizmet_sayisi1( [hizmet_alanı_1]) şeklinde değer vererek rakamı yazdırma yoluna gittim.
------------------------------
Visual Basic
- Public Function hizmet_sayisi1(i_sayi)
-
- If IsNull(i_sayi) Then GoTo i_sayiDegil
-
- hizmet_sayisi1 = "I)-"
-
- Exit Function
- i_sayiDegil:
- hizmet_sayisi1 = ""
- End Function
-
- Public Function hizmet_sayisi2(i_sayi)
-
- If IsNull(i_sayi) Then GoTo i_sayiDegil
-
- hizmet_sayisi2 = "II)-"
-
- Exit Function
- i_sayiDegil:
- hizmet_sayisi2 = ""
- End Function
- .
- .şeklinde 8 ayrı fonksiyon.
-------------------------------------
Şimdi sadede geleceğim.
bana öyle bir fonksiyon lazımki
tek bir fonksiyon ile hizmet_alanı_1 dolu ise başına "1", hizmet_alanı_2 dolu ise başına "2"........8 şeklinde otomatik sıralasın.
yukarıdaki 8 ayrı fonksiyon ile işimi görüyorum ancak bana sanki kulağımı tersten tutuyorum gibime geliyor.
umarım anlatabilmişimdir.
saygılarımla

