GetAvgKurN Fonksiyonu

Tanım


Belirli bir tarih aralığındaki, bir döviz cinsinin, başka bir döviz cinsinden ortalama kur değerini hesaplayan fonksiyondur. Hesaplamayı ise; verilen tarih aralığındaki her güne tek tek bakarak, sadece kur değerinin bulunduğu günler için ortalama hesaplar. Kur değeri olmayan günler ortalamaya dahil edilmez.


Ortalama kur değerini, ondalık kısımda 6 (altı) haneye yuvarlayarak getirir. Yuvarlama yapılması istenmiyorsa fonksiyona belirtilmelidir. Ayrıca istenen bilgilere göre bir kur değeri bulumadığı durumlarda, hata mesajı vermez. GetAvgKur fonksiyonundan tek farkı budur.


Fonksiyon, hesaplama işlemlerini 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.GetAvgKurN(DövizKodu, ÇevrilecekDövizKodu, BaşlangıçTarihi, BitişTarihi, 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

Ortalama kur değeri bulunacak olan döviz kodu. Sistemde tanımlı olan para birimleri cinsinden girilmelidir.

ÇevrilecekDövizKodu

Ortalama kur değerinin hangi para biriminden bulunacağını gösteren döviz kodu. Sistemde tanımlı olan para birimleri cinsinden girilmelidir.

BaşlangıçTarihi

Ortalama kur değerinin hesaplanmaya başlanılacağı tarih. Tarih cinsinden girilmelidir.

BitişTarihi

Ortalama kur değeri hesaplanmasının bitirileceği 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

Bu fonksiyonda bir anlamı olan seçenekler :

“-1” : Kur değeri yuvarlama yapılarak dönülür.

“8192” : Kur değeri yuvarlama yapılmadan geri dönülür.


Geri Dönen Değerler


Verilen parametrelere göre, ondalıklı sayı cinsinden bir ortalama 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.


Örnek


Sub Makro1()

       Mesaj = "2017/03/01 - 2017/03/07 Tarihleri arasındaki USD -> TL Ortalama Kur Değerleri"

       OrtalamaUSDTLKuru = Doc. GetAvgKur("USD","TL","2017/03/01","2017/03/07","1",-1)        

       Mesaj = Mesaj & chr(13) & "Yuvarlanmış Ortalama    : " & OrtalamaUSDTLKuru

       OrtalamaUSDTLKuru = Doc.GetAvgKur("USD","TL","2017/03/01","2017/03/07","1",8192)        

       Mesaj = Mesaj & chr(13) & "Yuvarlanmamış Ortalama : " & OrtalamaUSDTLKuru

       Doc.MsgBox Mesaj

End Sub




Yukarıdaki örnekte, istenilen ortalama kur değerleri aşağıdaki veriye göre hesaplanmıştır. Sistemde tanımlı olan USD’nin TL karşısındaki kur değerleri :


Tarih

Kur değeri

2017/03/07

3,71145846

2017/03/03

3,6816

2017/03/02

3,6313

2017/03/01

3,6078



Bu verilere göre, hesaplanan ortalama kur değerleri aşağıdaki mesaj kutusunda gösterilmiştir. İlk ortalama kur değerinde hesaplama seçeneği yuvarlama yapılsındır. Buna göre sistem ondalık kısımları 6 (altı) haneye yuvarlamıştır. İkincisinde ise yuvarlama yapılmasındır.




Paylaşım Makrosu