Przejdź do głównej zawartości

Funkcje finansowe

Funkcje finansowe towarzyszą nam w codziennym życiu, choć wielu z nas nie zdaje sobie z tego sprawy. Zaciągamy kredyty, leasingujemy, inwestujemy i często mamy problem z obliczeniem podstawowych wskaźników.

Funkcje finansowe umożliwiają na przykład obliczanie wartości inwestycji lub amortyzacji, które są bardzo istotne dla funkcjonowania przedsiębiorstwa lub budżetu domowego.

Funkcje finansowe mogą być wam znane z Microsoft Excel. Okazuje się, że Crystal Reports również zawiera identyczną listą funkcji i można je z powodzeniem zastosować w raportach. Dzięki temu, że nazwy funkcji są identyczne jak w Excelu, można skorzystać z opisów pod tym linkiem.

W przypadku niektórych funkcji nie jest łatwe zadanie, gdyż używa się ich inaczej niż zwykłych funkcji agregujących takich jak suma lub średnia. Problem wynika z tego, że jako argument funkcji trzeba przekazać zmienną tablicową, a nie wprost wartość pola z tabeli. 

Pokażę to na przykładzie funkcji NPV, która umożliwia obliczanie aktualnej wartości netto inwestycji na podstawie danej stopy dyskontowej oraz serii przyszłych płatności (wartości ujemne) i dochodów (wartości dodatnie). Dokładny opis funkcji NPV znajduje się tutaj

Składnia Crystal Reports:
NPV (rate, values)

gdzie rate - to stopa procentowa, a values - to lista wartości

Przykład:
NPV (0.05, [1000, 2000, 1500, 1200])


Niby proste wywołanie, ale w jaki sposób zamienić wartości poszczególnych rekordów na listę wartości?

Musimy to zrobić w 3 krokach:
  • deklarujemy tablicę
  • przepisujemy bieżące wartości rekordów do tablicy
  • podstawiamy tablicę wartości do funkcji
1. Tworzymy formułę Init w nagłówku raportu (report header): 2. Tworzymy formułę Calculate i umieszczamy ją w sekcji szczegółów (details): 3. Tworzymy formułę Display w stopce raportu (report footer) 

Gotowe.

Mam nadzieję, że teraz poradzicie sobie również z innymi funkcji finansowymi w Crystal Reports i zagoszczą one w waszych raportach. Powodzenia!



Komentarze

Popularne posty z tego bloga

Konwersja daty w CDN Optima

Crystal Reports jest bardzo często zintegrowany z popularnymi aplikacjami. Przykładem jest system CDN Optima . Początkujących użytkownikom sprawiają kolumny z datą, bo data nie jest zapisana jako datetime lecz jako liczba. Otóż data w CDN Optima zapisana jest w formacie Clarion, czyli liczba dni, które upłynęły od daty 1800-12-28 . (Czy ktoś wie co to za data w historii?) Dlatego jeśli chcemy użyć takiego pola na raporcie, pierwsze co powinniśmy zrobić to dokonać konwersji liczby na datę. W innym przypadku Crystal Reports nie będzie wiedział, że jest to data i żadne formatowanie dat, grupowanie po okresach nie będzie działać. Formuła do konwersji formatu Clarion na datę : Jeśli mamy wiele takich pól to najlepiej utworzyć własną funkcję:

Słownie złotych

Czasami na raportach, na przykład na fakturach, zachodzi potrzeba zamiany liczby na słownie złotych. Crystal to umożliwia ale tylko na język ang. Dlatego napisałem funkcję UFL do CR, która to realizuje. Jest to funkcja typu Crystal Reports UFL (User Function Libraries) i korzysta sie z niej tak samo jak z wbudowanych funkcji Crystal Reports. Obecny zakres liczb od 0 do biliona. Opis instalacji 0. Pobierz 1. Rozpakować archiwum i skopiować plik CRUFLslw.dll do np. katalogu C:\WINDOWS\system32 2. Uruchomić linię poleceń: CMD 3. Przejść do katalogu z plikiem: CD C:\WINDOWS\system32 3. Uruchomić polecenie rejestracji biblioteki: regsvr32 CRUFLslw.dll Powinno wyświetlić się okno z informacją "DllRegisterServer in CRUFLslw.dll succeeded." 4. Uruchomić Crystal Reports 5. Utworzyć nową formułę i wpisać np. slownie(123.45) Przetestowałem również z Crystal Reports 2008 i działa.

Kody kreskowe w Crystal Reports 2008

Crystal Reports 2008 posiada wbudowaną obsługę kodów kreskowych. Niestety w standardzie otrzymujemy tylko Code 39. Jeśli chcemy skorzystać z innych kodów, np. Code 128 narzędzie kieruje nas na stronę firmy Azalea, gdzie możemy dokupić pakiet innych kodów. Czy to jedyne rozwiązanie? Na szczęście nie. Znalazłem stronę francuską poświęconą kodom kreskowych: http://grandzebu.net/index.php?page=/informatique/codbar-en/ean13.htm Strasznie stary wygląd strony, ale zawiera wiele cennych linków: Code 128 w postaci darmowej czcionki TTF: http://grandzebu.net/informatique/codbar/code128.ttf Code 128 w postaci darmowej funkcji UFL do Crystal Reports: http://grandzebu.net/informatique/codbar/code128_Crystal%20reports.zip Co więcej, tych rozwiązań można również użyć w starszych wersjach Crystal Reports.