GetKur
GetKur Fonksiyonu
Tanım
Belirli bir tarihteki, bir döviz cinsinin, başka bir döviz cinsinden kur değerini veren fonksiyondur. Kur değerini, ondalık kısımda 6 (altı) haneye yuvarlayarak getirir. Yuvarlama yapılması istenmiyorsa fonksiyona belirtilmelidir. İstenen bilgilere göre bir kur değeri bulamadığı durumlarda, hata mesajı verebilir. GetKurN fonksiyonundan tek farkı budur.
İşlemleri günlük döviz kurları girişindeki verilere göre yapar. Çapraz kurları hesaplama yeteneği vardır. Örneğin eğer sisteme USD döviz kodunun, EURO döviz kodu cinsinden kur değeri girilmemişse, ilgili döviz kodlarının lokal para birimi cinsinden kur değerlerine bakar. Eğer her iki döviz kodunun da lokal para birimi cinsinden değeri var ise bunları kullanıp çapraz kur olarak bilgi geri döner.
Kullanım Şekli
Değişken = Document.GetKur(DövizKodu, ÇevrilecekDövizKodu, Tarih, KurTipi, HesaplamaSeçeneği)
Ana Nesne
Document (Doc) nesnesinin elemanıdır. Bir doküman nesnesi ile kullanılmak zorundadır.
Parametreler
Parametre
|
Açıklama
|
DövizKodu
|
Kur değeri bulunacak olan döviz kodu. Sistemde tanımlı olan para birimleri cinsinden girilmelidir.
|
ÇevrilecekDövizKodu
|
Kur değerinin hangi para biriminden bulunacağını gösteren döviz kodu. Sistemde tanımlı olan para birimleri cinsinden girilmelidir.
|
Tarih
|
Kur değerinin bulunacağı tarih. Tarih cinsinden girilmelidir.
|
KurTipi
|
Sistemde bir döviz koduna, bir tarihte 10 (on) farklı kur tipinde değer atanabilir. Bu kur tiplerinden, hangisinin değerinin getirileceğinin bu KurTipi parametresi belirtir. Karakter dizisi formatında girilmelidir. Boş değer girilirse “1” sistem döviz kuru seçeneği ile işlem görecektir. Hatalı değerlerde, özellikle hatalı kullanılmasın diye “45345” kodlu hata verilerek uygulamanın çalışması sonlandırılır.
Seçenekleri:
“1” : Sistem döviz kuru
“2” : Tahmini döviz kuru
“3” : TCMB döviz alış kuru
“4” : TCMB döviz satış kuru
“5” : TCMB efektif alış kuru
“6” : TCMB efektif satış kuru
Bundan sonraki seçenekler, şirket amaçlarına uygun olarak kullanılması için şirket kullanıcılarına bırakılmıştır. Genelde aşağıdaki şekilde kullanılırlar:
“7” : Banka döviz alış
“8” : Banka döviz satış
“9” : Banka efektif alış
“A” : Banka efektif satış
|
HesaplamaSeçeneği
|
Kur değerinin nasıl hesaplanacağı ile ilgili seçenek.
“-1” ve “0” : Belirtilen gün ve kur tipindeki kur değeri, hata mesajı verilmeden ve yuvarlama yapılarak geri dönülür. İlgili Kur değeri Girilmemişse 0 (sıfır) geri dönülür
“1” : Eğer belirtilen gün ve kur tipindeki kur değeri girilmemişse; ilgili kur tipinde değere bulana kadar önceki günlere bakar. Dikkatli kullanılmalıdır. Bu durumda GetKurN fonksiyonun işlevine sahip olur.
“4096” : Verilen bilgilere göre bir kur değeri bulunamazsa ekrana bir hata mesajı getirir.
“8192” : Kur değerini yuvarlama yapmadan getirir.
|
Geri Dönen Değerler
Verilen parametrelere göre, ondalıklı sayı cinsinden bir kur değeri geri dönülür. Bir değişkene atanarak kullanılmalıdır.
Hatırlatmalar
•Eğer fonksiyona anlamlı ama geçersiz bir parametre kodu girilirse, geri dönüş değeri 0 (sıfır) olacaktır.
•Eğer fonksiyona anlamsız ve geçersiz bir KurTipi değeri girilirse uygulamanın çalışmasını sonlandırır.
•Para birimlerinin kodları tamamen “*PUNIT” grup kodunda girilmiş olan bilgilere bağlıdır.
•Eğer HesaplamaSeçeneği paramatresi “1” seçilirse, GetKurN fonksiyonu ile aynı işlevi görür.
Örnek
Sub Makro1()
Tarih = Doc.Bugun()
USDTLKuru = Doc.GetKur("USD","TL",Tarih,"1",-1)
Mesaj = Tarih & " tarihindeki USD dövizinin TL döviz cinsinden kuru : " & USDTLKuru
EUROTLKuru = Doc.GetKur("EURO","TL",Tarih,"1",-1)
Mesaj = Mesaj & chr(13) & Tarih & " tarihindeki EURO dövizinin TL döviz cinsinden kuru : " & EUROTLKuru
USDEUROKuru = Doc.GetKur("USD","EURO",Tarih,"1",-1)
Mesaj = Mesaj & chr(13) & Tarih & " tarihindeki USD dövizinin EURO döviz cinsinden kuru : " & USDEUROKuru
Doc.MsgBox Mesaj
End Sub
|
Yukarıdaki örnekte, istenilen kur değerleri aşağıdaki mesaj kutusunda gösterilmiştir. Üçüncü satırda USD döviz kodunun, EURO döviz kuru değeri görülmektedir. Bu bilgiyi ilk iki satırdaki bilgilerden kendimiz de üretebilirdik. Ama bu da üç (3) işlem demektir. Halbuki fonksiyon tek işlemde ilgili bilgiyi verebilmektedir.
USDTLKuru = Doc.GetKur("USD","TL",Tarih,"1",4096)
Eğer yukarıdaki satırda gösterildiği gibi fonksiyondan, kur değeri olmayan bir günün kur değerini HesaplamaSeçeneği = 4096 olacak şekilde istemiş olsaydık, ilk olarak aşağıdaki gibi bir hata mesajı ekranı gelecekti.
Paylaşım Makrosu
Copyright © <2017> by <Birleşik Yazılım>. All Rights Reserved.