VBA > Opis obiektów VBA > BRWInfo > Przykłady | | Drukuj |
Jak używać?
Obiekt należy zainicjować odpowiednimi danymi. Ustawiamy properties: NazwaUkladu, TypUkladu, flagi oraz ew. rok. Ustawione dane muszą być zgodne z zapamiętanymi w bazie układami.
Przed ponownym użyciem (zawołaniem metody Oblicz) należy pamiętać o ponownym ustawieniu flag, nazwy i typu. Wygodnie jest wcześniej użyć polecenia Zeruj().
Obliczanie Bilansu
Dim bilans As BRWInfo
Dim flagi As BRWFlagi
Set bilans = WybranaFirma.WybranyRok.GetBRWInfo
flagi = BRW_Oblicz_Bilans_z_RZS Or BRW_Oblicz_z_Buforem
bilans.NazwaUkladu = "Bilans"
bilans.TypUkladu = BRW_Bilans
bilans.flagi = flagi
bilans.Oblicz
Należy zwrócić uwagę na typ BRWFlagi (jest to typ wyliczeniowy), który jest o wiele wygodniejszy w użyciu niż liczby.
Obliczanie Rachunku Wyników (RZiS )
Dim RZS As BRWInfo
Dim flagi As BRWFlagi
Set RZS = WybranaFirma.WybranyRok.GetBRWInfo
flagi = BRW_Oblicz_RZS_na_PoczRoku + BRW_Oblicz_RZS_z_860 + BRW_Oblicz_z_Buforem
RZS.NazwaUkladu = "Rachunek Zysków i Strat"
RZS.TypUkladu = BRW_RZS
RZS.flagi = flagi
RZS.Oblicz
Odczytywanie wyników obliczeń
Wszystkich:
Tuż po zawołaniu metody Oblicz() możemy odczytać wyniki.
Deklarujemy zmienne:
Dim bResult As Boolean 'sukces/niepowodzenie wykonania metody
Dim result As Variant 'albo Dim result() As Double – bo zwracana jest tablica wartości typu double
Dim strona As BRWStrona ' Ponownie zwracam uwage na wygodne typy wyliczeniowe
strona = BRW_Aktywa
bilans.strona = strona
bResult = bilans.Pierwsza
While bResult
'pobieramy wynik to tablicy:
For counter = 0 To WybranaFirma.WybranyRok.DlugoscRoku
result (counter) = bilans.Wynik (counter)
Next
'a tutaj sobie przetwarzamy dane dla kolejnych pozycji
' robimy z nimi różne, fajne rzeczy
' ...
'A kiedy skończymy przechodzimy do kolejnej pozycji:
bResult = bilans.Kolejna
Wend
Wybranych:
Możemy też wybrać konkretną pozycję używając metody Pozycja() zawołanej po metodzie Oblicz.
Spróbujmy zatem pobrać sumę aktywów bilansu z pozycji A (suma wszystkich podpozycji):
bResult = bilans.Pozycja ( BRW_Aktywa, 1, 0, 0)
' jest to rownoznaczne z: bilans.Pozycja ( BRW_Aktywa, 1)
If bResult Then 'Była taka pozycja – pobieramy wynik
MsgBox "Obroty rozpoczęcia wynoszą: " & bilans.poczRoku
MsgBox "Obroty w pierwszym miesiącu roku o indeksie " bilans.Rok & "wynoszą: " & bilans.Wynik(1)
MsgBox "Obroty w szóstym miesiącu roku o indeksie " bilans.Rok & "wynoszą: " & bilans.Wynik(6)
End If