Příklad 9 - Rozúčtování

Tyto příklady jsou napsány v jazyku Visual Basic.

Rozúčtování záznamu do dvou záznamů

Dim Gx
Set Gx = CreateObject("AbraOLE.Application")

' Do konstanty je potřeba uvést ID nějaké existující účetní žádosti
Const cID = "7D20000101"
Dim mEntry, mBook, mEntry2 
Set mEntry = Gx.CreateValues("@BookEntry")
Set mBook = Gx.CreateObject("@BookEntry")
Set mEntry = mBook.GetValues(cID)
mAmount = mEntry.ValueByName("Amount")
mAmountInCurrency = mEntry.ValueByName("AmountInCurrency")

' Rozúčtování 30% na první text
' Je samozřejmě možné upravovat i jiné údaje - např. Creditdivision_ID, DebitDivision_ID apod.
mEntry.ValueByName("Amount") = mAmount * 0.3
mEntry.ValueByName("AmountInCurrency") = mAmountInCurrency * 0.3
mEntry.ValueByName("Text") = "první text"

' Rozúčtování zbytku na druhý text
Set mEntry2 = Gx.CreateValues("@BookEntry")
Set mEntry2 = mBook.GetValues(cID)
mEntry2.ValueByName("Amount") = mAmount - mEntry.ValueByName("Amount")
mEntry2.ValueByName("AmountInCurrency") = mAmountInCurrency - mEntry.ValueByName("AmountInCurrency")
mEntry2.ValueByName("Text") = "druhý text"

' Vyrobení a naplnění kolekce
Set mCol = Gx.CreateCollection()
mCol.Add mEntry
mCol.Add mEntry2

' Zaúčtování
mBook.DoBooking cID, mCol
Gx.Logout
Gx.Disconnect
Set Gx = Nothing