Podręcznik użytkownika > Raporty > Definiowanie i import raportów

Definiowanie i import raportów

Raporty w systemie eDokumenty możemy tworzyć korzystając z graficznego formularza lub poprzez import definicji z pliku .report.

Tworzenie nowego raportu

Dodawanie nowego raportu w module Raporty rozpoczynamy po kliknięciu ikony Nowy w Pasku narzędzi. Wypełniamy pola Tytuł oraz wybieramy wartość z listy Grupa. Opcjonalnie uzupełniamy pozostałe pola i klikamy Zapisz.


Okno dodawania nowego raportu

Uwaga
Zaznaczenie checkboxa systemowy sprawi, że raport nie będzie będzie widoczny w module Raporty. Dostęp do raportów systemowych ma miejsce z poziomu Rejestrów, jeśli konfiuguracja systemu eDokumenty zakłada obecność tego modułu.

Zakładka Definicja

Po zapisaniu podstawowych informacji, formularz raportu zostaje poszerzony o kolejne zakładki, z których najważniejszą jest Definicja. W polu Kwerenda w tej karcie wpisujemy kwerendę SQL definiującą raport, np. SELECT * FROM events, po czym klikamy Zapisz.

Uwaga
Zapytanie musi zwracać przynajmniej 1 rekord. Użyteczne konstrukcje i funkcje językowe SQL oraz przykładowe zapytania do bazy eDokumenty można znaleźć tutaj.


Definicja raportu po zapisie

W kwerendach możemy stosować parametry:

Parametr Opis
{DATE_FROM} (string) np. adddat::date >= '{DATE_FROM}'
{DATE_TO} (string) np. adddat:: <= '{DATE_TO}'
{USR_ID} (string) przecinkami rozdzielona lista użytkowników, do których ma dostęp zalogowany użytkownik
{LOGGED_USR_ID} (int) id zalogowanego pracownika
{ENT_ID} (int) id jednostki, na której jest wykonywany raport
{SYMBOL} (string) symbol kontrahenta z systemu zewnętrznego
{EXTEID:OPTIMA}(int) symbol kontrahenta z systemu Optima
{ACORID} (int) id jednostki rozliczeniowej
{TOVCID} (int) id rodzaju kosztów
{CONTID} (int) id kontrahenta (przy raportach wykonywanych w kartoteki)
{CONTIDS} (int[]) id kontrahentów zaznaczonych na liście w module Klienci
{DOC_ID} (int) id dokumentu (przy raportach wykonywanych z kartoteki)
{DOC_IDS} (int[]) id dokumentów zaznaczonych na liście (równoważny zapis: {DOCIDS}
{PRC_ID} (int) id sprawy (przy raportach wykonywanych w kartoteki)
{PRC_IDS} (int[]) id spraw zaznaczonych na liście (równoważny zapis: {PRCIDS}
{EVNTID} (int) id zdarzenia (przy raportach wykonywanych w kartoteki)
{EVNTIDS} (int[]) id zdarzeń zaznaczonych na liście
{CAMPID} (int) id kampanii
{DEVCID} (int) id urządzenia (przy raportach wykonywanych w kartoteki)
{DEVCIDS} (int[]) id urządzeń zaznaczonych na liście
{DEPOID} (int) id produktu
{DEPOIDS} (int[]) id produktów zaznaczonych z listy produktów
{FILTER_STRING} (string) wartość zwrócona przez filtr
{ORUNID} lista stanowisk, do których ma prawo zalogowany użytkownik (lista orunid)

Będą one mapowane na liście Dostępne parametry dostępnym po kliknięciu przycisku Pokaż paramety.

Cała definicja raportu jest dodatkowo przepuszczana przez silnik parsujący (np. w workflow). Daje to dodatkowe możliwości (np. dynamiczne parametry w raportach wykonywanych na zewnętrznych źródłach danych). Przykładowe zapytanie z raportu dla dokumentu:

SELECT * FROM mssql_external_documents WHERE symbol = '{SQL::SELECT ex_sym FROM documents WHERE doc_id = {DOC_ID}}'

Pod polem Kwerenda znajdują się dodatkowe opcje.

Zakładka Kolumny

W zakładce Kolumny wybieramy, jakie kolumny mają być wyświetlane. Zaznaczone na liście elementy przenosimy między oknami Dostępne a Aktywne na raporcie używając strzałek pomiędzy nimi.

Funkcje formatujące dane

Aby móc sformatować drukowane dane np. jako odnośnik do formularza ale nie mechanizm otwierający formularz poprzez dwuklik tylko po kliknięciu odnośnika w kolumnie należy użyć funkcji formatującej:

Funkcja Jak działa Przykład danych
Formatuj datę Przyjmuje kolumnę z datą np. TIMESTAMP a w wyniku zwraca datę w formacie YYYY-MM-DD 2015-01-01 10:00 => 2015-01-01
Formatuj czas Przyjmuje wartość typu INTEGER np 61 a w wyniku zwraca czas w formie słownej czyli 1m 1s 61 => 1m 1s
Formatuj kwotę Przyjmuje wartość typu NUMERIC np 12.89 a w wyniku zwraca 12.89 zł. Funkcja szuka w kolumnach kolumny nazwanej cursmb i na jej podstawie drukuje nazwę (symbol) waluty 12.89 => 12.89 zł
Formatuj link do kontaktu Przyjmuje wartość pola symbol z kartoteki klienta następnie wyszukuje w tabeli contacts klienta o tym symbolu i drukuje odnośnik do kartoteki TTT78 => html jako odnośnik do kartoteki
Formatuj link do ... Przyjmuje wartość w postaci ciągu np CONTACT|1|Firma a w wyniku zwraca odnośnik do kartoteki klienta o identyfikatorze 1 i jako opis odnośnika stosuje frazę Firma CONTACT|1|Firma => html jako odnośnik do kartoteki klienta

Import definicji raportu

Utworzoną w zewnętrznym narzędziu definicję raportu SQL w postaci pliku .report możemy zaczytać do modułu, gdzie może być ona modyfikowana (przykładowy plik można znaleźć w załączniku). Aby tego dokonać, klikamy ikonę Import raportu w Pasku narzędzi. Następnie klikamy przycisk w oknie Import raportu i wybieramy plik z dysku. Po prawidłowym wczytaniu definicji raportu, jego nazwa wyświetli się w polu Definicja raportu. Klikamy przycisk Importuj.


Kreator importu definicji raportu

Po zaczytaniu definicji zostaje otwarte okno edycji raportu, a raport jest widoczny na liście.

Zobacz także

Załączniki