Podręcznik użytkownika > Raporty > Definiowanie i import raportów
Raporty w systemie eDokumenty możemy tworzyć korzystając z graficznego formularza lub poprzez import definicji z pliku .report.
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.
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.
nowy_raport_wszystkie zakładki.png
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}}'
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.
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.