Funkcjonalność „Zestawienia” służy do definiowania i generowania zestawień z różnego rodzaju zbiorów danych przechowywanych w bazie danych systemu. Możliwe jest generowanie zestawień dla następujących zbiorów danych:
Schemat powiązań pomiędzy zbiorami danych obrazuje poniższy diagram:
W jaki sposób interpretować powyższy diagram:
Dla każdego zbioru danych istnieje predefiniowany zakres danych możliwych do wyświetlenia w zestawieniu (np. imię, drugie imię, nazwisko, PESEL, itd. dla zbioru danych pacjentów albo termin wizyty, rodzaj wizyty, itd. dla zbioru danych wizyt). W zestawieniu danych z określonego zbioru mogą być zawarte dane także ze zbiorów z nim powiązanych nadrzędnych względem niego (np. zestawienie z danych usług wewnętrznych może zawierać także dane wizyt na których te usługi zostały zrealizowane i pacjentów na rzecz których te wizyty były umówione). W nazewnictwie danych słowo „termin” oznacza datę i godzinę, słowo „data” samą datę bez godziny a słowo „godzina” samą godzinę bez daty. Każdy element w każdym zbiorze danych posiada swój unikalny identyfikator w tym zbiorze – w mechanizmie definiowania i generowania zestawień jest on określany jako „Id” (np. „Pacjent - Id”).
W mechanizmie definiowania i generowania zestawień istnieją też zestawy danych powiązane ze zbiorami danych. Są to:
Dane z powyższych zestawów danych mogą być prezentowane w zestawieniach generowanych dla powiązanych z nimi zbiorów danych oraz dla zbiorów podrzędnych np. dane ze zbioru „Poradnia / Oddział” mogą być prezentowane w zestawieniu wizyt (jako komórka w której została zaplanowana wizyta), zestawieniu procedur (jako komórka w której została zaplanowana wizyta na której wykonano procedurę), zestawieniu zleceń szczepień (jako komórka w której została zaplanowana wizyta na której wystawiono zlecenie szczepień), itd. Podobnie jak w przypadku zbiorów danych każdy element w każdym zestawie danych posiada swój unikalny identyfikator w tym zestawie – w mechanizmie definiowania i generowania zestawień jest on określany jako „Id” (np. „Przychodnia – Id”).
Dla każdego zbioru danych istnieje predefiniowany zbiór filtrów możliwych do zastosowania przy generowaniu zestawień danych z określonego zbioru. W formularzu generowania zestawień danych z określonego zbioru mogą występować filtry także ze zbiorów z nim powiązanych nadrzędnych względem niego (np. w formularzu generowania zestawienia z usług NFZ-owych może znaleźć się filtr zakresu terminów wizyt, który będzie odnosił się do wizyt na których usługi NFZ-owe zostały zrealizowane).
Po wybraniu funkcjonalności „Zestawienia” z menu „Administracja” wyświetla się lista wszystkich zdefiniowanych zestawień a przy każdym z nich przyciski „Edytuj”, „Usuń” i „Wykonaj”. Pod listą zestawień widoczny jest przycisk „Dodaj”.
Aby dodać nowe zestawienie należy kliknąć przycisk „Dodaj” pod listą zestawień. Wyświetli się wówczas formularz dodawania zestawienia. Jako że wygląd formularza jest uzależniony od zbioru danych, w pierwszej kolejności należy wybrać właśnie zbiór danych, dla którego ma być utworzone zestawienie.
Po wybraniu zbioru danych formularz zmienia wygląd na właściwy dla danego zbioru danych. W formularzu określa się nazwę zestawienia, wskazuje jakie dane i w jakiej kolejności mają się znaleźć w zestawieniu, określa jakie filtry danych i w jakiej kolejności mają się znaleźć w formularzu generowania zestawienia oraz wskazuje jakie role muszą posiadać użytkownicy aby mieć możliwość wygenerowania danego zestawienia. Aby wskazać jakie dane mają się znaleźć w zestawieniu należy wpisać liczby w polach przy tych danych, które mają trafić do zestawienia. Jeżeli kolejność danych w zestawieniu nie jest istotna, wówczas przy danych które mają się znaleźć w zestawieniu można wpisać dowolne liczby. Jeżeli kolejność danych w zestawieniu ma być alfabetyczna, wówczas przy danych które mają się znaleźć w zestawieniu należy wpisać dowolną ale przy wszystkich tę samą liczbę. Jeżeli kolejność danych w zestawieniu ma być ściśle określona, wówczas przy danych które mają się znaleźć w zestawieniu należy wpisać kolejne liczby – kolejność danych w zestawieniu będzie odpowiadała kolejności wpisanych przy nich liczb. Dla ułatwienia ewentualnych przyszłych modyfikacji zestawienia z ustaloną kolejnością danych, warto zastosować numerowanie danych co 10 lub co 100 np. definiujemy zestawienie z danych pacjentów, danej „Pacjent – Imię” przypisujemy liczbę 10, danej „Pacjent – Nazwisko” przypisujemy liczbę 20, danej „Pacjent – PESEL” przypisujemy liczbę 30. Jeżeli teraz chcemy zmodyfikować zestawienie i dodać do niego drugie imię pacjenta ale w taki sposób aby w zestawieniu było ono umieszczane pomiędzy imieniem a nazwiskiem, wówczas danej „Pacjent – Drugie imię” przypisujemy liczbę z zakresu pomiędzy 10 a 20 czyli np. 15. Gdybyśmy nie zastosowali numerowania co 10 tylko co 1, to chcąc dodać do zestawienia drugie imię pomiędzy imieniem a nazwiskiem musielibyśmy danej „Pacjent – Drugie imię” przypisać liczbę 2, danej „Pacjent – Nazwisko” zmienić przypisaną liczbę na 3 i danej „Pacjent – PESEL” zmienić przypisaną liczbę na 4 (a gdyby zestawienie zawierało więcej danych przenumerować także wszystkie pozostałe dane co oznaczałoby większy nakład pracy). Ponieważ dla niektórych zbiorów danych zakres danych możliwych do umieszczenia w zestawieniu jest duży, wprowadzony został mechanizm wyszukiwania – wpisując w polu wyszukiwania (czyli polu napisem „Wyszukaj...”) fragment nazwy danej, system zawęzi zakres wyświetlanych danych do tych, które zawierają wyszukiwaną frazę. Z mechanizmu tego można skorzystać w następujący sposób np. jeśli chcemy mieć w zestawieniu imię, nazwisko i numer prawa wykonywania zawodu personelu, wówczas wpisujemy w polu wyszukiwania „imię” - wyświetli się tylko kilka danych zawierających w nazwie frazę „imię” i przy interesującej nas danej wpisujemy odpowiednią liczbę, następnie w polu wyszukiwania wpisujemy „nazwisko” - znów wyświetli się tylko kilka danych tym razem zawierających w nazwie frazę „nazwisko” i przy interesującej nas danej wpisujemy odpowiednią liczbę, dalej w polu wyszukiwania wpisujemy „numer prawa” i przy stosownej danej z zawężonego wykresu wpisujemy odpowiednią liczbę. Sposób określania jakie filtry mają się znaleźć w formularzu generowania zestawienia jest identyczny jak opisano w przypadku wskazywania jakie dane mają się znaleźć w zestawieniu. Dodatkowo można wskazać jakie role muszą posiadać użytkownicy aby mieć możliwość generowania danego zestawienia: wyświetlane są tylko role posiadające przywilej do zarządzania zestawieniami lub generowania zestawień przy czym rola administratora jest zaznaczona na stałe bez możliwości zmiany.
Po wypełnieniu formularza (zdefiniowaniu zestawienia) należy dane zapisać klikając przycisk „Dodaj”.
Aby zmodyfikować zdefiniowane wcześniej zestawienie należy kliknąć przycisk „Edytuj” przy danym zestawieniu na liście. Wyświetli się wówczas formularz identyczny jak w przypadku dodawania nowego zestawienia, z tym że wypełniony zapisanymi wcześniej danymi. Po wprowadzeniu odpowiednich modyfikacji dane należy zapisać klikając przycisk „Uaktualnij”.
Aby usunąć definicję zestawienia należy kliknąć przycisk „Usuń” przy danym zestawieniu na liście. Wyświetli się wówczas monit z prośbą o potwierdzenie zamiaru usunięcia, co należy uczynić klikając przycisk „OK” (chcąc zrezygnować z zamiaru usunięcia należy kliknąć przycisk „Anuluj” na monicie).
Aby wygenerować zestawienie należy kliknąć przycisk „Wykonaj” przy danym zestawieniu na liście. Wyświetli się wówczas formularz generowania zestawienia zawierający filtry wybrane przy definiowaniu zestawienia. Jeżeli dany filtr jest listą rozwijaną ze stosunkowo dużą liczbą opcji, wówczas dla takiego filtru działa mechanizm podpowiedzi – wpisując polu filtru fragment nazwy poszukiwanej opcji, system zawęzi zakres opcji do tych, które zawierają frazę wpisaną w polu filtru. W przypadku filtrów odnoszących się do procedur i rozpoznań istotna jest i wielkość liter i sposób wprowadzenia kodów ICD-9 / ICD-10 w polu filtra: mianowicie filtry te pozwalają na wyszukiwanie nie tylko według pojedynczego kodu ale także ich według grup i zakresów kodów – w polach filtrów można wpisać jeden lub więcej kodów lub zakresów kodów ICD-9 / ICD-10 oddzielonych przecinkami (np. zapis „A01,A01.0-A01.4” oznacza „wyszukaj rozpoznania o kodzie A01 i kodach z zakresu od A01.0 do A01.4”, przy czym należy mieć na uwadze, że przy ustalaniu czy kod należy do danego zakresu stosowany jest porządek leksykograficzny, czyli niejako rozszerzenie porządku alfabetycznego na znaki inne niż litery, stąd np. kod „A10” należy do zakresu „A1-A2”). Po wprowadzeniu kryteriów generowania zestawienia i kliknięciu przycisku „Generuj” nad formularzem pojawia się odnośnik umożliwiający pobranie wygenerowanego zestawienia w formie pliku XLS.
W pierwszym wierszu zestawienia wyświetlają się nazwy danych z zakresu i w kolejności według definicji zestawienia, kolejne wiersze zawierają właściwe dane zestawienia.