Sub SuDokumentyKolekcja() -- nie wiem co to oznacza więc to pominąłem
On Error GoTo ErrHandler
Dim oSubGT As InsERT.Subiekt -- to wiadomo, mam tak w każdym skrypcie, że tworze obiekt tylko ja go nazywam $oSubiekt
Dim oDok As InsERT.SuDokument -- to przypuszczam mozemy zostawic na pozniej (dla towarow mozna utworzyc $oTowar = $oSubiekt.Towary.Wczytaj($towar_symbol)
Dim oDokK As InsERT.SuDokumentyKolekcja -- to jest chyba najwazniejsze czyli utworzyc obiekt z kolekcja i tutaj sie zawiesilem
Dim oDokL As InsERT.SuDokumentyLista
Dim filtr As String
Dim kolejnosc As String
Dim i As Variant
Set oSubGT = UruchomSubiekta()
oSubGT.Okno.Widoczne = True
filtr = "dok_Typ =2 and (dok_Id in (Select flw_IdObiektu from fl_Wartosc where flw_IdFlagi =1002))"
kolejnosc = ""
Set oDokK = oSubGT.SuDokumentyManager.OtworzKolekcje(filtr, kolejnosc)
Set oDokL = oDokK.Wybierz()
oDokL.FiltrTypOpcje = InsERT.FiltrSuDokumentOpcjeEnum.gtaFiltrSuDokumentOpcjeFS
oDokL.MultiSelekcja = True
oDokL.Wyswietl
For Each i In oDokL.ZaznaczoneId
Set oDok = oSubGT.SuDokumentyManager.WczytajDokument(i)
oDok.Wyswietl False
oDok.Zamknij
Next
Exit Sub
ErrHandler:
MsgBox Err.Number & " - " & Err.Descriptiot
End Sub
To jest przykład z pliku pomocy dotyczący obiektu SuDokumentyKolekcja wraz z moimi komentarzami. Nie wiem jak się do tego odwołać. Nigdy nie pracowałem na "kolekcjach". Z przykładu wywnioskowałem, że najpierw trzeba utworzyć kolekcję ale wywala mi od razu błąd.
$oInsertGT = ObjCreate("Insert.GT")
$oInsertGT.Produkt = 1
$oInsertGT.Wczytaj("C:\ProgramData\InsERT\InsERT GT\Subiekt.xml")
$oSubiekt = $oInsertGT.Uruchom(Int(0x0), Int(0x0))
$oKolekcja = $oSubiekt.TowaryKolekcja()
Dodam, że nie programuje w języku VBA więc kod może się trochę różnić i już pisałem inne skrypty i wszystko działa np. dla operacji na towarach czy dokumentach.