Definicje formularzy
Definicje formularzy to najbardziej rozbudowany słownik w module Ustawienia — buduje się w nim treść kontroli HACCP: z jakich sekcji i pól się składa, jakie pomiary zawiera, jakie ma tolerancje. Każdy rodzaj kontroli (katalogowany w module HACCP → Katalog rodzajów kontroli) może mieć przypisany jeden lub więcej wersjonowanych formularzy — tylko jedna wersja jest w danym momencie opublikowana i obowiązująca.
Ekran działa na dwóch poziomach:
- Lista formularzy (nagłówki: nazwa, wersja, status, okres obowiązywania).
- Struktura formularza (ekran „Sekcje”): sekcje i pola wewnątrz jednej, konkretnej wersji formularza.
1. Lista formularzy

Tabela zawiera kolumny:
| Kolumna | Opis |
|---|---|
| Kategoria | Kategoria rodzaju kontroli, do której należy formularz (np. „Pozostałe”). |
| Rodzaj kontroli | Nazwa rodzaju kontroli HACCP, do którego przypisany jest formularz. |
| Formularz | Nazwa formularza oraz — pod spodem — jego opis. |
| Wersja | Numer wersji dla formularzy opublikowanych; dla wersji roboczej (jeszcze niepublikowanej) wyświetlane jest słowo „robocza”. |
| Obowiązuje | Zakres dat obowiązywania, np. „01.01.2026 - bez terminu”. |
| Status | W edycji / Opublikowany / Anulowany. |
| Akcje | Zestaw ikon opisany w tabeli poniżej — dostępność każdej z nich zależy od statusu wiersza. |
Nad tabelą: pole „Szukaj” (filtruje po nazwie formularza lub rodzaju kontroli), filtr „Status”, przycisk „NOWY”.
Akcje na liście i ich dostępność
| Akcja | Ikona | Kiedy dostępna | Efekt |
|---|---|---|---|
| Sekcje | 📄 | zawsze | Otwiera ekran struktury formularza (sekcje i pola) — patrz rozdział 2. Dla wersji nieaktywnych (Opublikowany/Anulowany) ekran działa jako podgląd — bez możliwości edycji struktury. |
| Edytuj | ✏️ | tylko W edycji | Pozwala poprawić nazwę, daty obowiązywania i opis nagłówka formularza. |
| Klonuj | ⧉ | zawsze | Tworzy nową wersję roboczą formularza — kopiuje całą strukturę (sekcje i pola) z klonowanej wersji jako punkt wyjścia do dalszych zmian. |
| Publikuj | ✅ | tylko W edycji | Po potwierdzeniu nadaje formularzowi kolejny numer wersji i zmienia status na Opublikowany. Od tego momentu struktura jest zablokowana do edycji. |
| Anuluj | ⛔ | tylko dla najnowszej opublikowanej wersji | Wycofuje formularz z użycia (status Anulowany) — bez usuwania historii wyników już zarejestrowanych na jego podstawie. |
| Usuń | 🗑️ | tylko W edycji | Trwale usuwa wersję roboczą wraz z jej sekcjami i polami. |
Dodawanie nowego formularza
Kliknięcie „NOWY” otwiera dialog nagłówka formularza:

| Pole | Typ | Opis |
|---|---|---|
| Rodzaj kontroli | autouzupełnianie, wymagane | Wybór z katalogu rodzajów kontroli HACCP — po wyborze pole Nazwa podpowiada się automatycznie na podstawie nazwy rodzaju kontroli. |
| Nazwa | tekst, wymagana | Nazwa formularza — domyślnie taka sama jak rodzaj kontroli, można ją zmienić. |
| Obowiązuje od | data, wymagana | Data, od której formularz (po opublikowaniu) będzie obowiązujący. |
| Obowiązuje do | data, opcjonalna | Data końca obowiązywania — puste pole oznacza „bez terminu”. |
| Opis | tekst, opcjonalny | Krótki opis przeznaczenia formularza. |
Zapis tworzy formularz w statusie W edycji, bez żadnych sekcji ani pól — kolejnym krokiem jest przejście do ekranu Sekcje, ponieważ bez co najmniej jednej sekcji i jednego pola formularza nie da się sensownie opublikować.
Przykład z systemu
| Kategoria | Rodzaj kontroli | Formularz | Wersja | Obowiązuje | Status |
|---|---|---|---|---|---|
| Pozostałe | Kontrola parametrów MAP | Kontrola parametrów MAP — „Przykładowa definicja formularza z polami pomiarowymi.” | 1 | 01.01.2026 – bez terminu | Opublikowany |
2. Struktura formularza (ekran „Sekcje”)
Otwierany ikoną Sekcje z listy. Nagłówek ekranu pokazuje nazwę, wersję i status edytowanego formularza (np. „Kontrola parametrów MAP, wersja robocza, status: W edycji”) oraz przycisk „Podgląd formularza” (symulacja ekranu telefonu z realnym renderowaniem pól — przydatna do sprawdzenia, jak formularz zobaczy operator, zanim zostanie opublikowany).
⚠️ Edycja struktury (dodawanie/zmiana/usuwanie sekcji i pól) jest możliwa wyłącznie dla formularza w statusie W edycji. Dla pozostałych statusów ekran wyświetla komunikat ostrzegawczy i działa wyłącznie jako podgląd „w skostniałym stanie” — co jest celowe: nie da się modyfikować struktury formularza, który jest już opublikowany i mógł zostać wykorzystany do rejestrowania rzeczywistych wyników.

Sekcje
Przycisk „Dodaj sekcję” (przy nagłówku „Struktura”) otwiera dialog:
| Pole | Typ | Opis |
|---|---|---|
| Nazwa sekcji | tekst, wymagana | Nazwa grupy pól (np. „Parametry opakowania MAP”). |
| Opis | tekst, opcjonalny | Dodatkowy opis sekcji. |
| Sekcja powtarzalna | przełącznik | Włączenie pozwala operatorowi wypełnić sekcję wielokrotnie w ramach jednego wykonania kontroli (np. dla kilku pobranych próbek). |
| Tryb powtarzania (widoczny gdy „Sekcja powtarzalna” włączona) | lista rozwijana | Stała liczba — sekcja powtarza się zawsze dokładnie tyle samo razy (pole „Liczba powtórzeń”). Operator dodaje — operator sam decyduje, ile razy wypełnić sekcję, w granicach pól „Minimum”/„Maksimum”. |
| Minimum / Maksimum (tryb „Operator dodaje”) | liczba całkowita | Dopuszczalny zakres liczby powtórzeń sekcji wypełnianych przez operatora. |
Sekcje i pola wewnątrz nich można przesuwać strzałkami góra/dół (ikony „Przesuń sekcję/pole w górę/w dół”) oraz usuwać (ikona kosza „Usuń sekcję”/„Usuń pole”).
Przykład z systemu — sekcja „Parametry opakowania MAP”: powtarzalność Operator dodaje, Minimum 1, Maksimum 3, opis „Sekcja dla kolejnych próbek opakowań.” — czyli operator rejestruje od 1 do 3 próbek opakowania w ramach jednego wykonania kontroli.
Pola formularza
Wewnątrz rozwiniętej sekcji przycisk „DODAJ POLE” otwiera dialog „Nowe pole”:
| Pole | Typ | Opis |
|---|---|---|
| Metryka | lookup, opcjonalny | Wybór metryki ze słownika Metryk. Wybranie metryki automatycznie uzupełnia poniższe pola Kod, Nazwa, Typ wartości i Jednostka wartościami z metryki (można je potem ręcznie doprecyzować). Pole formularza nie musi być powiązane z metryką — wtedy nie pojawi się na wykresach trendu, ale wciąż działa jako zwykłe pole formularza. |
| Kod | tekst, wymagany | Techniczny identyfikator pola w ramach formularza. |
| Nazwa | tekst, wymagana | Etykieta pola widoczna dla operatora wypełniającego kontrolę. |
| Typ pola | lista rozwijana, domyślnie Pomiar | Pomiar — pole z wartością mierzalną/oceniającą. Pytanie — pole typu tak/nie lub wyboru bez charakteru pomiarowego. Informacja — pole czysto opisowe, nieprzeznaczone do analizy. |
| Typ wartości | lista rozwijana, domyślnie Liczba | Liczba / Tekst / Tak/Nie / Wybór jednej / Wybór wiele / Data — analogicznie jak w metrykach. |
| Jednostka | tekst | Jednostka miary wyświetlana przy polu (np. °C, %). |
| Wymagane | przełącznik | Czy operator musi wypełnić to pole, aby zapisać wykonanie kontroli. |
| Miejsca po przecinku (typ Liczba) | liczba całkowita | Wyłącznie formatowanie renderowanej wartości liczbowej (np. 2 → wyświetlanie z dokładnością do setnych). |
| Opis | tekst, opcjonalny | Dodatkowy opis/instrukcja dla operatora. |
⚠️ Ważna różnica względem Metryk: dialog pola formularza nie zawiera pól „Wartość nominalna”, „Tolerancja -/+” ani „Minimum/Maksimum” — te ustawienia należą wyłącznie do metryki powiązanej z polem. Jeśli chcesz, aby pole miało zdefiniowaną tolerancję widoczną potem na wykresie trendu, ustaw ją raz na poziomie metryki, a nie na poziomie pola. Pole formularza kontroluje jedynie sposób wyświetlania wartości („Miejsca po przecinku”) oraz to, czy wypełnienie jest wymagane.
Przykład z systemu — formularz „Kontrola parametrów MAP” zawiera w sekcji „Parametry opakowania MAP” sześć pól, każde powiązane z metryką o tym samym przeznaczeniu:
| Pole (nazwa) | Powiązana metryka | Typ wartości |
|---|---|---|
| Bieg pracy maszyny | BIEG_MASZYNY | Wybór jednej |
| Temperatura z miernika | TEMP_MASZYNY | Liczba |
| Zawartość O2 | MAP_O2 | Liczba |
| Zawartość CO2 | MAP_CO2 | Liczba |
| Opakowanie prawidłowe | OPAKOWANIE_OK | Tak/Nie |
| Uwagi operatora | UWAGI_OPERATORA | Tekst |
Podgląd formularza
Przycisk „Podgląd formularza” (dostępny niezależnie od statusu) otwiera symulację ekranu telefonu z realnym renderowaniem wszystkich sekcji i pól — pozwala sprawdzić układ i kolejność pól z perspektywy operatora, zanim (lub już po tym, jak) formularz zostanie opublikowany.
Typowy scenariusz konfiguracji
- Upewnij się, że rodzaj kontroli (katalog HACCP), metryki i punkty kontrolne, których dotyczy formularz, już istnieją.
- Utwórz nowy formularz, wskazując rodzaj kontroli — nazwa podpowie się automatycznie.
- Przejdź do ekranu „Sekcje” i dodaj co najmniej jedną sekcję.
- W sekcji dodaj pola, w miarę możliwości powiązane z metrykami ze słownika — to one nadadzą polom tolerancję i umożliwią raportowanie trendu.
- Jeśli kontrola wymaga wielokrotnego pobrania próbek (np. kilka opakowań, kilka punktów pomiaru), oznacz sekcję jako powtarzalną i wybierz odpowiedni tryb.
- Sprawdź układ formularza przyciskiem „Podgląd formularza”.
- Wróć do listy i kliknij „Publikuj” — po potwierdzeniu formularz otrzymuje numer wersji i staje się dostępny do rejestrowania rzeczywistych wyników; jego struktura przestaje być edytowalna.
- Jeśli po czasie trzeba zmienić strukturę formularza, użyj „Klonuj” na opublikowanej wersji — powstanie nowa wersja robocza gotowa do modyfikacji, bez wpływu na wersję już w użyciu.
