Příklad 8 - Práce s agendami

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

Vizuální vyvolání agendy s načtením všech záznamů

' Funkce vyvolá vizuální agendu ostatních příjmů. Do agendy se provede načtení všech dat.
Sub ShowAgenda()
  Dim mApplication As New AbraOLE.Application
  Dim mAgenda As Agenda
  Set mAgenda = mApplication.GetAgenda("{056102E0-1815-11D3-95DB-005004746B20}")
  mAgenda.Show ("QueryAll")
End Sub

Vizuální vyvolání agendy s omezením za vybrané doklady

' Funkce vyvolá vizuální agendu ostatních příjmů, která bude obsahovat pouze doklady které mají interní identifikátory z předané množiny.
Sub ShowSelectedFromAgenda()
  Dim mApplication As New AbraOLE.Application
  Dim mAgenda As Agenda
  Dim mSelected As NxStrings
  Set mAgenda = mApplication.GetAgenda("{056102E0-1815-11D3-95DB-005004746B20}")
  Set mSelected = mApplication.CreateStrings
  mSelected.Add ("3000000101")
  mSelected.Add ("2100000101")
  mAgenda.ShowSelected mSelected, "Omezení"
End Sub

Výběr jednoho záznamu z agendy, která je omezená podle existujícího omezení

' Funkce vyvolá vizuální agendu ostatních příjmů omezenou podle omezení "xxx".
' Od uživatele se očekává, že si vybere jeden záznam.
Sub SingleSelect()
  Dim mApplication As New AbraOLE.Application
  Dim mAgenda As Agenda
  Dim mID As String
  Dim mB As Boolean
  
  Set mAgenda = mApplication.GetAgenda("{056102E0-1815-11D3-95DB-005004746B20}")
  mB = mAgenda.SingleSelect("Querydefinition;xxx", mID)
  If mB Then
    MsgBox mID
  End If
End Sub

Výběr jednoho nebo více záznamu z agendy, která je omezená za vybrané doklady

' Funkce vyvolá vizuální agendu ostatních příjmů, která bude obsahovat pouze doklady které mají interní identifikátory z předané množiny.
' Od uživatele se očekává, že si vybere jeden nebo více záznamů.
Sub MultiSelectFormSelected()
  Dim mApplication As New AbraOLE.Application
  Dim mAgenda As Agenda
  Dim mID As String
  Dim mB As Boolean
  Dim mIDs As NxStrings
  Dim mSelected As NxStrings
  
  Set mAgenda = mApplication.GetAgenda("{056102E0-1815-11D3-95DB-005004746B20}")
  Set mSelected = mApplication.CreateStrings
  Set mIDs = mApplication.CreateStrings
  mSelected.Add ("3000000101")
  mSelected.Add ("2100000101")
  mB = mAgenda.MultiSelectFromSelected(mSelected, "Omezení", mIDs)
  If mB Then
    MsgBox mIDs.CommaText
  End If
End Sub