Kreator zestawienia
Kreator uruchamiany jest za pomocą ikony Wizard. Po wybraniu przycisku pojawi się formularz wizarda zatytułowany Definicja kwoty. Udostępnia on narzędzia pozwalające na definiowanie wyrażenia.
Formularz Definicja kwoty wyposażono w nieedytowalne pole Kwota, wyświetlające zdefiniowane przez użytkownika wyrażenie arytmetyczne oraz sekcję zatytułowaną Działanie arytmetyczne kolejnych definicji, pozwalającą na budowanie wyrażenia. Sekcja zawiera:
Łącznik – sposób łączenia definicji w obrębie wyrażenia (do wyboru znaki „+”, lub „-„).
Współczynnik – przeliczenie wartości argumentu wg współczynnika liczbowego.
Kwota – na przycisku widoczne jest sześć pozycji – Wartość, Funkcje kont, Zestawienie, Funkcje systemowe, Zapytanie SQL oraz Maska.
- Przycisk Funkcje kont rozwija dodatkowe menu z następującymi symbolami kwot:
- Bilans otwarcia – symbol @BO( )
- Bilans otwarcia Wn – symbol @BOWn( )
- Bilans otwarcia Ma – symbol @BOMa( )
- Obroty Wn – symbol @ObrotyWn( )
- Obroty Ma – symbol @ObrotyMa( )
- Obroty Narastająco Wn – symbol @ObrNarWn( )
- Obroty Narastająco Ma – symbol @ObrNarMa( )
- Per Saldo – symbol @PerSaldo( )
- Saldo Wn – symbol @SaldoWn( )
- Saldo Ma – symbol @SaldoMa( )
- Przyrost salda – symbol @PrzyrostSalda( )
- Przyrost salda Wn — symbol @PrzyrostSaldaWn( )
- Przyrost salda Ma – symbol @PrzyrostSaldaMa( ).
Istnieje możliwość seryjnego dodania kont księgowych np.:
- Wybieramy Obroty Wn i zaznaczamy konta: 401, 402 oraz 403. Do definicji przenosi się: @ObrotyWn(401) + @ObrotyWn(402) + @ObrotyWn(403).
- Przycisk Funkcje systemowe daje możliwość skorzystania z pięciu funkcji:
- Jeżeli – wstawia wywołanie funkcji CHOOSE w postaci CHOOSE (warunek,jeżeli prawda,jeżeli fałsz). Działanie funkcji jest takie, że jeśli warunek jest spełniony, to pobierana jest pierwsza wartość, a jeśli nie, to druga np.:
- Jeśli Obroty Wn są większe niż obroty Ma, to bierze różnicę tych obrotów, w przeciwnym wypadku 0, czyli CHOOSE (@ObrotyWn(101)>@ObrotyMa(101), @ObrotyWn(101)‑@ObrotyMa(101), 0).
- Wartość bezwzględna – wstawia wywołanie funkcji ABS. Wyciąga wartość bezwzględną (moduł) liczby (czyli bez minus), np. ABS(@PerSaldo(101)).
- Zaokrąglenie – wstawia wywołanie funkcji ROUND w postaci ROUND(Liczba, Zaokrąglenie), np.:
- ROUND(@ObrotyWn(101),1) – zaokrąglenie do pełnych złotych lub
- ROUND( @ObrotyWn(400) * @ObrotyWn(701) / @ObrotyWn(702), 0.01) – zaokrąglenie wyniku działania do groszy.
- Część całkowita – wstawia wywołanie funkcji INT, wyciągającej część całkowitą z liczby.
- Różnica między INT a ROUND, np. INT(10.65) = 10 ROUND(10.65, 1) = = 11
- Numer kolumny – nie jest to funkcja systemowa Clariona, natomiast zwraca numer aktualnie przetwarzanej kolumny. To może być szczególnie przydatne przy zestawieniach międzyokresowych, gdy zmieni się Plan Kont. Np. W kolumnie pierwszej mamy zestawienie za okres poprzedni, a w drugiej za bieżący. Koszty, które przedtem były na koncie 401 teraz są na 402.Wykorzystamy do tego funkcję CHOOSE (warunek, jeżeli prawda, jeżeli fałsz) np.:
- CHOOSE(@Kolumna()=1, @ObrotyWn(401), @ObrotyWn(402)), czyli jeżeli kolumna ma numer 1 (czyli pochodzi z poprzedniego okresu obrachunkowego) to podaj obroty konta 401, jeżeli ma inny numer to podaj obroty konta 402 lub jeżeli mamy np. 3 kolumny, za trzy kolejne lata obrachunkowe: CHOOSE(liczba, wartość dla 1, wartość dla 2, wartość dla 3)) CHOOSE(@Kolumna(), @ObrotyWn(401), @ObrotyWn(402), @ObrotyWn(403)) czyli jeżeli kolumna 1 (oznaczająca np. rok 2002) to obroty 401, jeżeli kolumna 2 (oznaczająca rok 2003) to 402, jeżeli kolumna 3 (rok 2004) to 403. Gdyby pojawiła się w zestawieniu kolumna 4, dla której nie jest określona wartość, to zostanie pobrana ostatnia wartość czyli @ObrotyWn(403).
- Jeżeli – wstawia wywołanie funkcji CHOOSE w postaci CHOOSE (warunek,jeżeli prawda,jeżeli fałsz). Działanie funkcji jest takie, że jeśli warunek jest spełniony, to pobierana jest pierwsza wartość, a jeśli nie, to druga np.:
- Przycisk Zapytanie SQL daje możliwość pobrania wartości poprzez wykonanie zapytania bezpośrednio do bazy danych.
- Funkcja Maska daje możliwość zdefiniowania kwoty według kryteriów związanych z numeracją kont poprzez wykorzystanie następujących znaków lub ciągów znaków specjalnych:
* – zastępuje dowolny ciąg znaków. Przykładowo – wprowadzenie maski w definicji @ObrotyWn(4*) pozwoli na uzyskanie kwoty obrotów na wszystkich analitykach kont zespołu 4.
? – zastępuje dokładnie jeden znak w numerze konta. Przykładowo chcąc pobrać obroty Wn na kontach z grupy 4, których syntetyka ma 3 znaki, z których dwa ostatnie są dowolne, pierwsza analityka ma dwa dowolne znaki, a na drugim poziomie analityki mają segment 01 – można użyć następującego wyrażenia @ObrotyWn (4??‑??-01).
[nm] – znak należy do ciągu. Wprowadzenie na przykład maski 401-[137]-01 w definicji @ObrotyWn(401‑[137]-01) pozwala na uzyskanie obrotów Wn, ze wszystkich analityk konta 401, które w drugim członie mają cyfrę 1 lub 3 lub 7, a w ostatnim 01.
[x-z] – znak zawiera się w zakresie, Przykładowo – @ObrotyWn(40[1-4]-*) oznacza, że interesują nas Obroty Winien ze wszystkich „czwórek”, których ostatni znak w numerze konta syntetycznego, to cyfra z przedziału od 1 do 4.
[^nm] – znak nie zawiera się w ciągu. Wprowadzenie na przykład definicji @ObrotyWn(401-[^137]-01) będzie pozwalało na uzyskanie sumy Obrotów Winien wszystkich analityk konta 401, które w drugim członie mają cyfrę inną niż 1, 3 lub 7, z subanalityką 01. Definicja ObrotyWn(4[^9]*) pozwoli na uzyskanie sumy obrotów Winien na wszystkich kontach zespołu 4 poza tymi, które na drugim miejscu mają cyfrę 9, czyli np. 490.
[^x-z] – znak nie należy do przedziału. Przykładowo – 40[^1-4]-*, czyli program wyszuka wszystkie konta, których syntetyka rozpoczyna się znakami 40, a ostatni, w tym przypadku trzeci, jest różny niż cyfry z przydziału od 1 do 4.
Argumenty – argumentami dla funkcji księgowych są konta księgowe (syntetyczne, analityczne), dla zestawień: nazwa zestawienia oraz nr pozycji zestawienia.
Po wybraniu funkcji księgowej pojawia się lookup do listy kont. Po zatwierdzeniu argumentu wpisywana jest od razu pełna postać funkcji np. @ObrotyWn(201).
Po wybraniu pozycji Zestawienia pojawia się lookup umożliwiający wybór pozycji danego zestawienia. Po wybraniu gałęzi wprowadzany jest symboliczny zapis np. @Zestawienie(Bilans,1.1.1). Nie ma możliwości odwołania się do nieaktywnego zestawienia.