Tworzenie raportu
Utworzenie raportu
Definiowanie głównej kwerendy
Gdy już mamy utworzony raport czas dodać jego definicję SQL w zakładce Definicja. Wypełniamy pola Kwerenda, Grupowanie, Typ z pola i ID z pola
WITH fk_demand_elements AS (SELECT fke.fkelid,
fke.state_,
fke.depnam,
fke.commnt as fke_commnt,
fke.mname_,
fke.quantm,
fke.unitsm,
fke.depoid,
dem.symbol,
dem.adddat as utwrz,
dem.accdat as wplyw,
dem.dlvdat as dem_termn,
doc.procid,
doc.dscrpt as doc_dscrpt,
doc.doc_id as doc_doc_id
FROM fk_elements_view fke
INNER JOIN documents doc ON doc.doc_id = fke.doc_id
INNER JOIN demand dem ON fke.doc_id = dem.doc_id
WHERE NOT fke.is_del
AND fke.prn_id IS NULL)
SELECT 'FKDEMANDELEMENT' as clsnam,
fkelid as keyval,
'DOCUMENT|' || doc_doc_id || '|' || doc_dscrpt || '|eic-document' as naglowek,
*
FROM (SELECT *,
COALESCE(xy.depnam, xy.mname_, (SELECT name__
FROM depository
WHERE depoid = xy.depoid)) as pozycja
FROM fk_demand_elements xy) as foo
WHERE {FILTER_STRING}
{LIMIT}
Dodawanie kolumn do widoku
Po zdefiniowaniu kwerendy, która dostarcza nam dane możemy przystąpić do definiowania kolumn, które na liście mają zostać wyświetlone.
Dodawanie kolumn do raportu zostało opisane tutaj.
Definiowanie filtrów
Opis pól z formularza
Nazwa pola | Opis |
---|---|
Nazwa | Nazwa filtra lub grupy filtrów w zależności co zostanie wybrane w polu rodzaj |
Opis | Dodatkowa informacja wyświetlania po najechaniu na nazwę filtra w panelu filtrów raportu (dostępny na wygenerowanym raporcie) |
Nadrzędny | W przypadku jeśli dany filtr lub grupa ma należeć do grupy należy wybrać z dostępnej listy |
Rodzaj | Grupa - grupuje kilka filtrów lub innych grup, 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 |
Typ opcji | odzaj wygenerowanego pola na panelu filtrów w wygenerowanym raporcie. Szczegóły tutaj |
Filtr | Wyrażenie filtrujące. W zależności od typ opcji może wymagać podanie tokenu {value} - Szczegóły tutaj |
Źródło danych | |
Piorytet | Wartość liczbowa, która wpłynie wa kolejnośc wyświetlania danego filtru. |
Ustaw jako filtr | Wartość w formie tekstu. Wprowadzony token, możemy później wykorzystać w definicji raportu. |
Warunek wyświetlenia pola jako SQL | Warunek, który pozwoli wyświetlić nam użyć filtru |
W zakładce Filtry możemy zdefiniować filtry oraz grupować wiele filtrów w 1 grupę filtrów.
W grupach możemy zgrupować filtry, które później używany w definicji raportu poprzez użycie tokenu {FILTER_STRING}
.
Dzieje się to za pomocą wprowadzonego klucza w pole Ustaw jako filtr
oraz użyciu go w definicji raportu.
Typ opcji
Typ opcji | Opis | Przykład filtru | Wymaga tokenu |
---|---|---|---|
Wartość BOOLEAN | Zastosowanie dla kolumn typu boolean gdzie wartość to TRUE lub FALSE | is_del IS | Tak |
Wartość TEXT | Dowolne pole tekstowe do którego chcemy zastosować wyszukiwanie | name_1 ~* E'{value}' | Tak |
Pole zaznaczane | Jedna opcja zaznaczenia filtruje tylko wtedy gdy jest zaznaczony. Jeśli podamy w filtrze token {value} zostanie zamieniony na TRUE | is_del IS TRUE to samo da nam is_del IS {value} ale is_del IS FALSE nie jest tym samym co is_del IS {value} - {value} jest zawsze zamieniane na TRUE | Nie ale może być patrz przykład |
Lista jednokrotnego wyboru | Pole typu Select gdzie można wybrać tylko jedną wartość. Wymagane jest zadeklarowanie SQL dla listy opcji | adduid = | Tak |
Lista wielokrotnego wyboru | Lista z opcjami do wyboru | adduid | Nie tylko należy zadeklarować kolumnę której filtr dotyczy |
Pola radiowe | Lista z opcjami do wyboru | adduid | Nie tylko należy zadeklarować kolumnę której filtr dotyczy |
Pole daty z godziną | Wizualizacja tego filtru posiada dodatkowe pole do określania godziny jeśli jest wymagana taka do dokładność | adddat >= '{value}' lub można adddat >= '2012-01-01 12:00' | Raczej tak niepodanie tokenu {value} jest niecelowe |
Pole daty bez godziny | Brak pola godzina | adddat >= '{value}' lub można adddat >= '2012-01-01' | Raczej tak niepodanie tokenu {value} jest niecelowe |
Wybór miesiąca oraz roku | Umożliwia wybranie roku oraz miesiąca. Zwracana wartość to rok plus miesiąc oraz 1 dzień czyli np. 2012-02-01. Umożliwia to budowanie zakresów miesięcy jeśli zdefiniujemy drugi filtr tego typu w grupie | adddat >= '{value}' | Tak |
Kontakt z książki adresowej | Zwraca identyfikator (contacts.contid) klienta | contid = | Tak |
Lista spraw | Zwraca identyfikator sprawy (processes.prc_id) | prc_id = | Tak |
Osoba kontaktowa | Zwraca identyfikator osoby kontaktowej (contact_persons.copeid) | copeid = | Tak |
Urządzenie | Zwraca identyfikator urządzenia (devices.devcid) | devcid = | Tak |
Projekt | Zwraca identyfikator projektu (projects.projid) | projid = | Tak |
Lista pracowników | Zwraca identyfikator wybranych pracowników (users.usr_id). WAŻNE - wymagane jest aby był operator IN w wyrażeniu filtrującym gdyż wartości są zwracane w postaci 1,2,3,4 | adduid IN ({value}) | Tak |
Drzewko | Zwraca identyfikator wybranego elementu drzewka. Napełniane kwerendą podaną poniżej w przykładach | category = | Tak |
Grupa filtrów
Dzięki możliwości grupowania filtrów może zgrupować kilka filtrów razem, aby móc je razem wykorzystać.
Filtr
Zacznijmy od nadania nazwy i wybraniu rodzaju jako filtr. Następnie uzupełnijmy wszystkie wymagane pola. Pomocna będzie tutaj pomoc, która wyświetli się po najechaniu na etykietę danego pola.
Jeden filtr wiele raportów
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.
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.