Load_Voucher_ForUpdate Fonksiyonu

Tanım


Direkt girilmiş veya yaratılmış olan herhangi bir uygulamada, evrak numarası bilinen bir dökümanı değişiklik yapmak için çağırmaya yarayan bir fonksiyondur. Eğer ilgili doküman başka bir kullanıcı tarafından kullanılıyor ise, yazılım bir uyarı mesajı verir ve dökümanı yüklemez. Evrak numarası uygulamaya göre bir numara, bir kod vs. olabilir. Eğer çağrılmak istenen evrak numarası daha önce sistemde kayıtlı değilse, talep edilen numara ile yeni bir doküman yaratılır. Bir doküman çağrıldığında, dökümanın  tüm veritabanı bağlantıları, tüm rowsetleri ve tüm fonksiyonları da yüklenir. Bu bilgilerin hepsi ulaşılabilir olmaktadır.

Kullanım Şekli


Değişken = Document.Load_Voucher_ForUpdate( EvrakNumarası)

Ana Nesne

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

Parametreler


Parametre

Açıklama

EvrakNumarası

Çağrılmak istenen dökümanın (uygulama) evrak numarası. Uygulmasına göre numara, kod vs. olabilir. Örneğin fatura numarası, cari hesap kartı kodu gibi.

Geri Dönen Değerler


Yüklenmek istenen evrağın, yüklenme durumuna göre bir tam sayı değeri dönülür. Yükleme başarılı ise 0 (sıfır) değeri, hatalı ise hatanın oluşma şekline göre başka bir tamsayı değeri geri dönülür. Bir değişkene atanarak kullanılabilir.

Hatırlatmalar


Bir uygulamaya özel yazılmış makrolarda, standart Doc değişkeni ile kullanılır. Kod içinde yaratılmış uygulamalarda ise, yaratılan uygulamanın atandığı document nesnesi ile kullanılmalıdır.

Yüklenmek istenen evrak numarası başka bir kullanıcı tarafından kilitli tutuluyorsa uyarı verilir ve belge yüklenmez.

Eğer yüklenmek istenen evrak numarası kayıtlı değil ise, yenisi yaratılır.

Örnek


Sub Makro1()

       CariKod = Trim(CARI20T.KOD(CARI20T.GetCurrentRow()))

       UygulamaKodu = "CARI00"

       Set DocC00 = Doc.CreateDocumentNoUI(UygulamaKodu,"TCARI002014")

       RetCode = DocC00.Load_Voucher_ForUpdate(CariKod)

       Set CH00 = DocC00.GetTableObject("CARI00")

       Mesaj = CariKod & " kodlu cari hesabın ünvanı : " & CH00.AD

         retcode = DocC00.LoadEmpty_Voucher

       retcode = Doc.DeleteDocumentNoUI(UygulamaKodu, "TCARI002014")

       Doc.Msgbox(Mesaj)

End Sub




Yukarıdaki örnek makro, cari hesap fişinde çalışacak şekilde tanımlanmıştır. Kullanıcı üzerinde bulunduğu satırda makroyu çalıştırdığında, satırdaki cari hesabın kartınının, bir cari hesap uygulaması yaratılarak, ünvanı sorgulanmıştır. Yaratılan DocC00 cari hesap kartı uygulaması kullanılarak ilgili cari hesap kartı değişiklik modu ile yüklenmeye çalışılmıştır. Fakat ilgili cari hesap kartı daha önce başka bir kullanıcı tarafından kullanıldığından, önce bir uyarı mesajı verilmiştir. Kart kilitli olduğundan dolayı, yükleme işlemi yapılmamıştır. Dolayısı ile kartın unvan bilgisine ulaşılamamıştır. Örnek makro sonucu, aşağıdaki mesaj kutularında verilmiştir.



       



Paylaşım Makrosu