Fonksiyon ve alan adı problemi
#1
Merhaba;
Şöyle bir problemim var,
Bir raporum var. Verilen hizmetleri listeleyenNahmaksimum 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
  1. Public Function hizmet_sayisi1(i_sayi)
  2.  
  3. If IsNull(i_sayi) Then GoTo i_sayiDegil
  4.  
  5. hizmet_sayisi1 = "I)-"
  6.  
  7. Exit Function
  8. i_sayiDegil:
  9. hizmet_sayisi1 = ""
  10. End Function
  11.  
  12. Public Function hizmet_sayisi2(i_sayi)
  13.  
  14. If IsNull(i_sayi) Then GoTo i_sayiDegil
  15.  
  16. hizmet_sayisi2 = "II)-"
  17.  
  18. Exit Function
  19. i_sayiDegil:
  20. hizmet_sayisi2 = ""
  21. End Function
  22. .
  23. .ş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






  Alıntı
Bu mesajı beğenenler:
#2
Merhaba..

İlgili raporu ve kaynağını eklerseniz fonksiyonu kısaltalım.. Wink



  Alıntı
Bu mesajı beğenenler:
#3
Sn. Taruz;
İlginize teşekkür ederim.
aşağıya bu konuya örnek teşkil edecek dosyayı ilave ediyorum.
Sorun rapor bolumundeki ardışık numaralamada.
cevabınız için şimdiden teşekkürler.


Eklenti Dosyaları
.rar   test.rar (Boyut: 23,69 KB / İndirilme: 75)



  Alıntı
Bu mesajı beğenenler:
#4
Müsait olduğum ilk fırsatta inceleyeceğim..



  Alıntı
Bu mesajı beğenenler:
#5
Sn.Taruz merak ve teşekkürle bekliyorum.



  Alıntı
Bu mesajı beğenenler:
#6
Tekrar merhaba... Wink

İstediğiniz işlem için bu şekilde bir fonksiyon hazırladım..:

Visual Basic
  1. Public Function hsayi(rpr As Report)
  2.  
  3. For i = 1 To 8 'item sayısı yazılacak..
  4. sira = Choose(i, "I)-", "II)-", "III)-", "IV)-", _
  5. "V)-", "VI)-", "VII)-", "VIII)-")
  6. If Not IsNull(rpr.Controls("hizmet_" & i)) Then rpr.Controls("m" & i) = sira
  7.  
  8. Next i
  9. End Function



Ciddi anlamda kod tasarrufu elde etmiş olduk.. Wink Bu fonksiyonu raporlarınızın ayrıntı kısmının biçimlendirildiğinde (format) olayında kullanabilirsiniz.. Önreğinize uyguladım ektedir..


Eklenti Dosyaları
.rar   test1.rar (Boyut: 32,52 KB / İndirilme: 81)



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [SORGU] Dsum Yavaslik Problemi Serdarcann 1 211 10-10-2025, 01:08
Son Mesaj: dsezgin
  [SORGU] Sorgu Ifadesi Içindeki Fonksiyon Ifade Içinde Kullanılamaz Hatası Mecnun24 7 664 27-08-2024, 16:53
Son Mesaj: Mecnun24
  Sorgu Içerisinde Boş Alan Varsa 0 (sıfır) Ile Doldurmak denizfatihi 3 517 15-08-2024, 14:38
Son Mesaj: beab05
  [SORGU] çarpraz Sorguda Sütun Değeri Olarak Birden çok Alan Seçebilir Miyiz? abkbek 2 411 13-08-2024, 21:18
Son Mesaj: abkbek
  [VBA] Bir Tabloda Alan Türü Uzun Metin Olan Iki Ayrı Alanı Karşılaştırmak abkbek 13 1.189 10-11-2023, 22:26
Son Mesaj: abkbek
  [SORGU] Farklı Tablolarda Yer Alan Satış Bilgilerini Toplama Sorgusu Lidervet 1 481 09-11-2023, 00:54
Son Mesaj: dsezgin
  Boş Alan Kontrolü (taruz) : Rapor Butonu prtkl 5 677 31-05-2023, 22:48
Son Mesaj: hnakis
  [VBA] Alan Kontrollü Kaydetme Işlemi Ahmet51 2 491 25-05-2023, 14:07
Son Mesaj: Ahmet51

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 4 Ziyaretçi