[http://support.edokumenty.eu/trac/wiki/UserGuideV5 Podręcznik użytkownika] > [http://support.edokumenty.eu/trac/wiki/UserGuideV5/Reports 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'''. [[BR]] == 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 '''[http://support.edokumenty.eu/trac/wiki/UserGuideV5/Reports/Groups Grupa]'''. Opcjonalnie uzupełniamy pozostałe pola i klikamy '''Zapisz'''. [[BR]] [[Image(wiki:UserGuideV5/Attachments:nowy_raport_01.png, 600)]][[BR]] ''Okno dodawania nowego raportu'' [[BR]] __'''Uwaga'''__ [[BR]] 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'''. [[BR]] __'''Uwaga'''__ [[BR]] Zapytanie musi zwracać przynajmniej 1 rekord. Użyteczne konstrukcje i funkcje językowe SQL oraz przykładowe zapytania do bazy eDokumenty można znaleźć [http://support.edokumenty.eu/trac/wiki/DeployerGuide/Custumization/AdvancedReporting/SQLExamples tutaj]. [[BR]] [[Image(wiki:UserGuideV5/Attachments:nowy_raport_02.png, 600)]][[BR]] ''Definicja raportu'' [[BR]] 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'''. [[BR]] 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: {{{ #!sql 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 [[Image(wiki:NewBusinessAdmin/Attachments:raporty_import_przycisk_dodaj_z_dysku.png, 12)]] 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'''.[[BR]] [[Image(wiki:UserGuideV5/Attachments:nowy_raport_03.png, 300)]][[BR]] ''Kreator importu definicji raportu'' [[BR]] Po zaczytaniu definicji zostaje otwarte okno edycji raportu, a raport jest widoczny na liście. === Zobacz także === * [http://support.edokumenty.eu/trac/wiki/UserGuideV5/Reports/DrillDown Raporty z podraportami] * [http://support.edokumenty.eu/trac/wiki/UserGuideV5/Reports/OpenForm Rapoty z odnośnikami do kartotek]