CreateDocumentNoUI2 Fonksiyonu

Tanım


Yazılım içindeki herhangi bir uygulamayı (document), başka bir firma ve dönem bilgisi veritabanına bağlanarak ve ekranda gösterilmeden sadece bellekte yaratan fonksiyondur. Yaratma işlemi herhangi bir uygulama içinde yapılabilir. Genelde bir firma ve dönemde çalışırken, başka bir firma veya dönemin vertiabanını kullanarak bağlantılı işlemler yapmak gerektiğinde kullanılır. Uygulama kullanıcıya özgü yapılmış olan, ekran özelleştirmelerini dikkate alarak yaratılır.


Yaratılan uygulamaya, daha sonra kullanılmak üzere geçici bir ad verilebilir. Örneğin aynı uygulama bellekte birden fazla yaratılıp, birbilerinde veri kopyalamak için kullanılmak istenebilir. Bu durumda her yaratılan uygulamaya aynı olmamak üzere bir isim verilmelidir. Yazılım yaratılan uygulamaların farklığını atanan doküman adı ile ayırmaktadır. Yaratılan uygulamaların atandığı değişkenden adından ayırmaz. Bu fonksiyonla çağrılan uygulamalar, bellekten silinirkende yine ilgili doküman adı gereklidir.

Kullanım Şekli


Set DocumentNesnesi = Document.CreateDocumentNoUI2(UygulamaKodu, DökümanAdı, FirmaKodu)

Ana Nesne


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

Parametreler


Parametre

Açıklama

UygulamaKodu

Arka planda, sadece bellekte kullanılacak Dinamo ERP uygulama kodu. Uygulama kodlarını, uygulamanın çalıştığı pencere başlığında bulabilirsiniz. Örneğin Cari Hesap Kartı uygulamasını çalıştırdığınızda, pencere başlığında gerek uygulamanın adını,  gerekse de uygulama kodunu (CARI00) görebilirsiniz.

DökümanAdı

Yaratılan uygulamanın, bellekte hangi isim ile saklanacağını belirtir. Bellekte, aynı uygulamadan birden fazla yaratıldığında, doküman adı kullanmak zorunludur. Sadece bir tane yaratılacaksa, boş bile bırakılabilir.

FirmaKodu

Çalışılacak firmanın kodu ve dönemi. Firma kodu ve dönemi arasında alt çizgi olmalıdır. “TEST_2014” gibi.

Geri Dönen Değerler


Bellekte, UygulamaKodu parametresinde verilen uygulama, sadece bellekte yaratılır. Bir document nesnesine atanarak (set edilerek) kullanılmalıdır.

Hatırlatmalar


Sadece yazılımda tanımlı olan uygulama kodları kullanılabilir.

Fonksiyon adındaki NoUI harfleri No User Interface kelimelerinden gelmektedir.

Bellekten, DeleteDocumentNoUI2 fonksiyonu ile yok edilir.

Örnek


Sub Makro1()

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

       UygulamaKodu = "CARI00"

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

       Set DocC002016 = Doc.CreateDocumentNoUI2(UygulamaKodu,"TCARI002016","TEST_2016")

       RetCode = DocC002014.Load_Voucher(CariKod)

       Set CH002014 = DocC002014.GetTableObject("CARI00")

       Mesaj = "TEST 2014        firmasında " & CariKod & "cari hesap kodunun ilgili kişisi : " & CH002014.KONTAKTNAME_1

       RetCode = DocC002016.Load_Voucher(CariKod)

       Set CH002016 = DocC002016.GetTableObject("CARI00")

       Mesaj = Mesaj & Chr(13) & "TEST 2016        firmasında " & CariKod & "cari hesap kodunun ilgili kişisi : " & CH002016.KONTAKTNAME_1

         retcode = DocC002014.LoadEmpty_Voucher

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

         retcode = DocC002014.LoadEmpty_Voucher

       retcode = DocC002014.DeleteDocumentNoUI2(UygulamaKodu,"TCARI002016","TEST_2016")

       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 gerek çalışılan firma (TEST_2014) ve gerekse de başka bir firma (TEST_2016) veritabanına bağlanarak KONTAKTNAME_1 adlı alanın değeri sorgulanmıştır. Aşağıdaki ekran görüntülerinde, ilgili cari kartın her iki firmadaki durumlarını görebilirsiniz. Örnek makro, hatasız çalıştığında sonucu, aşağıdaki mesaj kutusunda verilmiştir.


Örnekte de gösterildiği gibi, aynı anda birden fazla firmanın uygulamalarını bellekte yaratarak; kopyalama, doğrulama gibi işlemleri yapabilirsiniz.







Ekran Görüntüsü - 1


Ekran Görüntüsü - 2


Paylaşım Makrosu