ForceUnlock_Voucher Fonksiyonu

Tanım


Direkt girilmiş veya yaratılmış olan herhangi bir uygulamada, evrak numarası bilinen ve salt okunur (read only) olarak yüklenmiş bir dökümanı serbest bırakmak için kullanılır. Genellikle toplu değişiklik (batch) işlemlerinde, olası kilitli kayıtları serbest bırakmak için kullanılır.

Kullanım Şekli


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

Ana Nesne

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

Parametreler


Parametre

Açıklama

EvrakNumarası

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

Geri Dönen Değerler


Serbest bırakma işleminin durumuna göre bir tam sayı değeri dönülür. İşlem 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.

Bu işlem için kullanıcının; ya yazılım yöneticisi hakkı, ya da kullanıcı tanımlarındaki ADM_L1_BKS özel uygulama hakkı olması gereklidir.


Örnek


Sub Makro1()

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

       UygulamaKodu = "CARI00"

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

       RetCode = DocC00.Load_Voucher(CariKod)

       if DocC00.IsLastLoadReadOnly() then

               retcode = DocC00.ForceUnlock_Voucher(CariKod)

               Mesaj = CariKod & " kodlu cari hesabın kiliti çözüldü."

       end if

       Set CH00 = DocC00.GetrOWSETObject("CARI00")

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

         retcode = DocC00.LoadEmpty_Voucher

       retcode = Doc.DeleteTableObject("CARI00")

       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, ekrana bir uyarı mesajı gelir. Kartın kilidinin çözülmesi için fonksiyon kullanılımıştır. Yazılım kullanıcının yetkisine göre kullanıcıyı karttan atar ve kart serbest kalır. Örnek makro sonucu, aşağıdaki birinci ve ikinci mesaj kutularında verilmiştir.  Kartı kilitli tutan kullanıcı, kartta bir işlem yapmaya kalktığında ise bir uyarı mesajı alacaktır. İlgili mesaj ise üçüncü mesaj kutusunda verilmiştir.





       



Paylaşım Makrosu