90 | | Aby filtrowanie było możliwe wymagane jest dodanie specjalnego tokenu '''{FILTER_STRING}''', który w momencie akceptacji filtrów zostanie zamieniony na warunki SQL zgodne z definicją filtrów. Jeśli w definicji raportu zabraknie tego tokenu to pomimo definicji filtrów nie będą one dostępne na panelu parametrów. |
91 | | |
92 | | Istotną kwestią jest również miejsce w którym jest dodany token {FILTER_STRING} oraz operator jaki go poprzedza (AND/OR zalecany AND). |
93 | | Być może przykład będzie dość abstrakcyjny jednak proszę zwrócić uwagę na zapytanie zagnieżdżone: |
| 84 | Aby filtrowanie było możliwe, wymagane jest dodanie specjalnego tokenu '''{FILTER_STRING}''', który w momencie akceptacji filtrów zostanie zamieniony na warunki SQL zgodne z definicją filtrów. Jeśli w definicji raportu zabraknie tego tokenu, to pomimo definicji filtrów nie będą one dostępne na panelu parametrów. [[BR]] |
| 85 | |
| 86 | Istotną kwestią jest również miejsce, w którym jest dodany token {FILTER_STRING} oraz operator, jaki go poprzedza (AND/OR - zalecany AND). |
| 87 | |
| 88 | __'''Przykład'''__ |
125 | | Klikając przycisk "Nowy" otrzymujemy formularz dzięki, której możemy zdefiniować nowy filtr lub grupę (zależne od wyboru pola Rodzaj - poniższy zrzut ekranu). |
126 | | |
127 | | [[BR]][[Image(filtr_raportu.png)]][[BR]] (''Definicja filtra'')[[BR]] |
128 | | |
129 | | Opis pól: |
130 | | || Nazwa pola || Opis || |
131 | | || Nazwa || nazwa filtra lub grupy filtrów w zależności co zostanie wybrane w polu rodzaj || |
132 | | || Opis || dodatkowa informacja wyświetlania po najechaniu na nazwę filtra w panelu filtrów raportu (dostępny na wygenerowanym raporcie) || |
133 | | || Nadrzędny || w przypadku jeśli dany filtr lub grupa ma należeć do grupy należy wybrać z dostępnej listy || |
134 | | || Rodzaj || '''Grupa''' - grupuje kilka filtrów lub innych grup[[BR]] '''Filtr''' - konkretny filtr - filtry mogą być definiowane bez elementu nadrzędnego lub mogą należeć do grupy. Filtr nie może należeć do innego filtra || |
135 | | || Typ opcji || rodzaj wygenerowanego pola na panelu filtrów w wygenerowanym raporcie. Szczegóły poniżej || |
136 | | || Filtr || wyrażenie filtrujące. W zależności od typ opcji może wymagać podanie tokenu {value} - szczegóły poniżej || |
137 | | || Wartości dla listy || tylko dla typu: Lista jednokrotnego wyboru, Lista wielokrotnego wyboru, Pola radiowe - kwerenda SQL, gdzie pierwsza wartość to klucz, który '''musi być typu INTEGER''' natomiast druga to opis wartości. Można stosować następujące tokeny: [[BR]] {LOGGED_USER} - identyfikator zalogowanego pracownika (users.usr_id) [[BR]] {LOGGED_ORUNID} - identyfikator jednostki zalogowanego pracownika (organization_units.orunid) [[BR]] {ENT_ID} - identyfikator podmiotu (podmioty.id_pod) [[BR]] {CURRENT_DATE} - bieżąca data w formacie YYYY-MM-DD [[BR]] {CURRENT_TIME} - bieżący czas w formacie HH:MM || |
| 122 | Nowy filtr lub grupę filtrów definiujemy w formularzu '''Typ raportu'''. |
| 123 | |
| 124 | [[BR]][[Image(wiki:NewBusinessAdmin/Attachments:raport_filtry_nowy_filtr.png, 400)]][[BR]] |
| 125 | |
| 126 | Wypełniane pola: |
| 127 | * '''Nazwa''' - nazwa filtra lub grupy filtrów, w zależności od wartości polu '''Rodzaj''' |
| 128 | * '''Opis''' - dodatkowa informacja wyświetlania po najechaniu na nazwę filtra w panelu filtrów raportu (dostępny na wygenerowanym raporcie) |
| 129 | * '''Nadrzędny''' - w przypadku, jeśli dany filtr lub grupa ma należeć do grupy, wybieramy ją z listy |
| 130 | * '''Rodzaj'''. Wartość '''Grupa''' grupuje kilka filtrów lub innych grup, wartość '''Filtr''' oznacza konkretny filtr - filtry mogą być definiowane bez elementu nadrzędnego lub mogą należeć do grupy. Filtr nie może należeć do innego filtra. |
| 131 | * '''Typ opcji''' - rodzaj wygenerowanego pola w panelu filtrów w wygenerowanym raporcie. Szczegóły poniżej. |
| 132 | * '''Filtr''' - wyrażenie filtrujące. W zależności od typu opcji może wymagać podania tokena {value} - szczegóły poniżej. |
| 133 | * '''Wartości dla listy''' - tylko dla typu: '''Lista jednokrotnego wyboru''', '''Lista wielokrotnego wyboru''', '''Pola radiowe - kwerenda SQL''', gdzie pierwsza wartość to klucz, który '''musi być typu INTEGER''', natomiast druga to opis wartości. Można stosować następujące tokeny: '''{LOGGED_USER}''' - identyfikator zalogowanego pracownika (users.usr_id), '''{LOGGED_ORUNID}''' - identyfikator jednostki zalogowanego pracownika (organization_units.orunid), '''{ENT_ID}''' - identyfikator podmiotu (podmioty.id_pod), '''{CURRENT_DATE}''' - bieżąca data w formacie YYYY-MM-DD, '''{CURRENT_TIME}''' - bieżący czas w formacie HH:MM |
160 | | |
161 | | W moim przypadku chcę filtrować listę klientów według parametru opiekun dlatego: |
162 | | - Typ opcji : Lista pracowników |
163 | | - Filtr: macrtk IN ({value}) - pole macrtk przechowuje id opiekuna (users.usr_id) |
164 | | |
165 | | Po zapisaniu filtr jest dostępny z poziomu listy filtrów danego raportu: |
166 | | |
167 | | [[BR]][[Image(nowy_filtr_na_liscie.png)]][[BR]] (''Nowy filtr na liście filtrów w raporcie'')[[BR]] |
168 | | |
169 | | Oraz dodatkowo po wygenerowaniu raportu klikając przycisk Określ parametry otrzymujemy formularz jak na zrzucie poniżej: |
170 | | |
171 | | [[BR]][[Image(filtr_na_raporcie.png)]][[BR]] (''Filtr na wygenerowanym raporcie'')[[BR]] |
172 | | |
173 | | Po zatwierdzeniu (przycisk Zapisz na formularzu Określ parametru raportu) raport zostanie ponownie wygenerowany uwzględniając nasz wybór. |
| 156 | __'''Przykład'''__ [[BR]] |
| 157 | Chcę filtrować listę klientów według parametru '''Opiekun'''. Wtedy: |
| 158 | * wybieram '''Typ opcji''': '''Lista pracowników''' |
| 159 | * definiuję '''Filtr''': '''macrtk IN ({value})''' - pole macrtk przechowuje id opiekuna (users.usr_id) |
| 160 | |
| 161 | Po zapisaniu filtr zostaje dodany do listy w zakładce '''Filtry''', a po [http://support.edokumenty.eu/trac/wiki/NewBusinessAdmin/Reports/PrintCharts wygenerowaniu raportu] wyświetla się w oknie po kliknięciu odnośnika '''Określ parametry'''. |
176 | | Nowa wersja 4.7.7 umożliwia publikację filtrów w wielu raportach. Dodatkowo został dodany słownik definicji filtrów dostępny z poziomu modułu Raporty -> Akcje -> Edycja definicji filtrów lub z poziomu zakładki Filtry w raporcie na pasku zadań. |
177 | | |
178 | | Przy dodawaniu filtru bezpośrednio z raportu system tworzy definicję filtru oraz publikuje go w danym raporcie w kontekście, którego aktualnie pracujemy. Zachowanie to możemy zmienić poprzez dodawanie już istniejącej definicji filtru do danego raportu. Można to zrobić poprzez opcję w menu Nowy na zakładce Filtry "Dodaj istniejący (powiązanie)". Z otwartego słownika wybieramy filtry lub grupę i klikamy Dodaj lub Dodaj i zamknij. Ważne jest, że jeśli publikujemy (dodajemy) element, który ma elementy podrzędne nastąpi automatyczne dodanie również tych elementów podrzędnych. |
179 | | |
180 | | Publikować (dodawać powiązania) można również poprzez metodę drag & drop danego elementu drzewka definicji filtrów na panel drzewka filtrów w raporcie. |
181 | | |
| 164 | Raz zdefiniowane filtry mogą być publikowane (dodawane zostają powiązania) w wielu raportach. Słownik definicji filtrów dostępny jest z menu '''Akcje''' po wybraniu pozycji '''Edycja definicji filtrów''' lub z poziomu zakładki '''Filtry''' kartoteki raportu - po kliknięciu ikony '''Edytuj definicje filtrów raportów''' w '''Pasku narzędzi'''. |
| 165 | |
| 166 | Przy dodawaniu filtra bezpośrednio z kartoteki raportu system tworzy definicję filtra i publikuje go w edytowanym raporcie. Zachowanie to możemy zmienić poprzez dodawanie już istniejącej definicji filtra do raportu. Można to zrobić poprzez opcję w menu '''Nowy''' na zakładce Filtry '''Dodaj istniejący (powiązanie)'''. Z otwartego słownika wybieramy filtry lub grupę i klikamy '''Dodaj''' lub '''Dodaj i zamknij'''. Ważne jest, że jeśli publikujemy (dodajemy) element, który ma elementy podrzędne, nastąpi automatyczne dodanie również tych elementów podrzędnych. [[BR]] |
| 167 | |
| 168 | Publikować filtry można również poprzez metodę '''drag&drop''' danego elementu drzewka definicji filtrów w oknie '''Definicje filtrów''' na drzewko filtrów w kartotece raportu. |