GetKartValue Fonksiyonu

Tanım


Veritabanında kart tipinde tutulan tablolardan, istenilen alanların değerlerini okumak için kullanılır. Kart tipi tablolardan kasıt; cari hesap kartı, stok kartı, muhasebe hesap kartı gibi ana tablolardır.


Kullanım Şekli


Değişken = Document.GetKartValue(TabloAdı, AlanAdı, KartKodu, HesaplamaSeçeneği)

Ana Nesne


Document (Doc) nesnesinin elemanıdır. Bir doküman nesnesi ile kullanılmak zorundadır.

Parametreler


Parametre

Açıklama

TabloAdı

Okunacak verinin saklandığı kart tipindeki tablo adı. Aşağıdaki kart tipi tablolar kriter olarak kullanılabilir. Diğer tablolarda fonksiyon hata mesajı verir.

CARI00 : Cari hesap kartları,

MUHA00 : Muhasebe hesap kartları,

MUHA01 : Masraf merkezi kartları,

IFRS01 : Uluslararası finansal raporlama kartları 1,

IFRS02 : Uluslararası finansal raporlama kartları 2,

IFRS03 : Uluslararası finansal raporlama kartları 3,

IFRS04 : Uluslararası finansal raporlama kartları 4,

IFRS05 : Uluslararası finansal raporlama kartları 5,

IFRS06 : Uluslararası finansal raporlama kartları 6,

IFRS07 : Uluslararası finansal raporlama kartları 7,

IFRS08 : Uluslararası finansal raporlama kartları 8,

STOK00 : Stok kartları,

IMLT00 : Tezgah kartları,

IMLT01 : Operasyon kartları,

UKAT00 : Ürün kategori kartları,

SRVSKH : Servis fişleri hata nedeni tanımları,

SRVSKM : Servis fişleri müşteri şikayetleri tanımları,

SRVSKS : Servis fişleri servis inceleme kodları,

SRVSKT : Servis fişleri tami metodu kodları.

AlanAdı

Tablodan okunacak alanın adı. Veritabanındaki isim kullanılmalıdır. Veritabanında olmayan alan adı kullanımlarında fonksiyon hata mesajı verir.

KartKodu

Okunacak bilginin, hangi karttan okunacağının söylendiği parametredir. Veritabanındaki “KOD” alanıdır. Kayıtlı olmayan kart kodu kullanımlarında fonksiyon hata mesajı verir.

HesaplamaSeçeneği

Okunacak verinin, okunma şeklinin söylendiği parametredir. Aşağıdaki seçenekler geçerlidir. Birden fazla seçenek, aralarında artı (+) işareti olacak şekilde de kullanılabilir.

d7c_ERRMSG_YES : Fonksiyonun geçersiz değerlerde hata mesajı vermesini sağlar.

d7c_ERRMSG_NO : Fonksiyonun geçersiz değerlerde hata mesajı vermemesini sağlar.

d7c_ROUND_YES : Okunan veri nümerik alan ise, ondalık kısmı 6 haneye yuvarlar.

d7c_ROUND_NO : Okunan veri nümerik alan ise, ondalık kısımda yuvarlama yapılmadan veritabanında kayıtlıu hali okunur.

d7c_GKV_DETAY : Eğer okunan kart detay ise çalışır. Aksi halde hata verir.

d7c_GKV_ANA : Eğer okunan kart ana ise çalışır. Aksi halde hata verir.

d7c_GKV_ANY : Ana veya detay kontrolü yapmadan çalışır.

d7c_GKV_TUPPER : Eğer sorgulanan kart bilgisi küçük harflerle verilmiş ve ilgili kart kodu bulunamaz ise büyük harfe çevirererek de okumayı dene.

-1 : Varsayılan seçenekler = d7c_ERRMSG_YES+d7c_GKV_DETAY+d7c_GKV_TUPPER. Genelde bu seçenek kullanılmaktadır.

Geri Dönen Değerler


Okunmak istenen alanın değeri, değişken tipte geri dönülür. Yani nümerik, karakter dizisi vs. herhangi bir tipten geri bilgi dönülebilir.

Hatırlatmalar


Hatalı parametre değerlerinde hata mesajı üretir. Fonksiyon, boş değer geri döner.

Cache’li çalışan bir fonksiyondur. Aynı parametrelerle tekrar çalıştırıldığında, cache süresi boyunca bellekte eski bilgiler kalır. Bu sırada veritaban ından tekrar bilgi okumaz.


Örnek


Sub Makro1()

       ChKodu = "SI-XYZ001"        

       Mesaj = Doc.GetKartValue("CARI00","AD",ChKodu,-1)

       Mesaj = Mesaj & chr(13) & Doc.GetKartValue("CARI00","ADRES_1",ChKodu,-1)

       Mesaj = Mesaj & chr(13) & Doc.GetKartValue("CARI00","ADRES_2",ChKodu,d7c_ERRMSG_YES + d7c_GKV_ANA)

       Doc.MsgBox Mesaj

       Mesaj = Mesaj & chr(13) & Doc.GetKartValue("CARI00","ADRES_2",ChKodu,-1)

       Doc.MsgBox Mesaj

End Sub




Yukarıdaki örnekte, bir cari hesabın unvan ve adres bilgilerine ulaşılmak istenmiştir ve bu amaçla GetKartValue fonksiyonu kullanılmıştır. Fonksiyonun üçüncü kullanımıda HesaplamaSeçeneği olarak, d7c_GKV_ANA parametre değeri kullanılmıştır. Seçeneğe göre fonksiyon sadece ana kartlardan bilgi okumaya zorlanmıştır. İlgili cari hesap kartı ise detaydır. Bu durumda uygulama öncelikle, birinci mesaj kutusundaki gibi bir hata mesajı gösterecektir. Ve fonksiyonun sonucu boş değer olarak dönecektir. İkinci mesaj kutusunda adres_2 alanının boş değer dönmüş hali vardır. Daha sonra adres_2 alanı detay oalrak çağrılmış ve hatasız bilgi geri dönüşü olmuştur. Üçüncü mesaj kutusunda boş değer dönülen bilgi de dahil olmak üzere tüm durum gösterilmiştir.






Paylaşım Makrosu