Kolumna obliczana pozwala pokazywać wynik działania na wartościach innych kolumn w tym samym wierszu zestawienia. Można jej użyć do wyświetlenia wartości pozycji, kwoty po rabacie lub różnicy pomiędzy planem i wykonaniem.
Wynik jest elementem prezentacji zestawienia. Samo skonfigurowanie kolumny obliczanej nie zapisuje wyniku do pola obiektu.
1. Przygotowanie kolumn źródłowych #
Najpierw przygotuj kolumny zawierające potrzebne wartości. Dla przykładu „Ilość × cena” będą to dwie kolumny liczbowe: ilość i cena jednostkowa.
Każda kolumna ma identyfikator. We wzorze odwołanie do kolumny zapisuje się jako {zxID}, gdzie zamiast ID wpisuje się jej rzeczywisty numer. Nie jest to ID pola klasy ani pozycja kolumny na ekranie.
2. Dodawanie kolumny obliczanej #
- Otwórz zestawienie w trybie konstruktor.
- Przejdź do Konfiguruj stronę → kolumny i dodaj nową definicję kolumny.
- W polu Rodzaj wybierz Kolumna obliczana.
- Uzupełnij Nazwa oraz właściwą Klasa.
- Ustaw Format: Liczba.
- Wpisz działanie w polu Wzór obliczeń/szablon kolumny.
- Ustaw Zaokrąglaj do miejsc, na przykład 2 dla kwot.
- Zapisz definicję i przypisz ją do zestawienia.
Możesz również rozpocząć od zakładki kolumny w konfiguracji klasy. Szczegóły tworzenia i przypisywania kolumn opisuje podstawowa instrukcja kolumn.
3. Przykład: wartość pozycji po rabacie #
Załóżmy, że przygotowano kolumny o następujących przykładowych identyfikatorach:
- 101 — ilość;
- 102 — cena jednostkowa netto;
- 103 — rabat procentowy, wpisywany jako 10 dla rabatu 10%.
W polu Wzór obliczeń/szablon kolumny wpisz:
{zx101} * {zx102} * (1 - {zx103} / 100)
Numery 101, 102 i 103 są wyłącznie przykładem. Zastąp je identyfikatorami swoich kolumn. Dla ilości 3, ceny 200 i rabatu 10 wynik powinien wynosić 540.
Nawiasy określają kolejność obliczeń. Dla prostych działań stosuj zapis arytmetyczny z operatorami +, -, * i /. pole wzoru nie jest miejscem na kod PHP ani zapytanie SQL.
4. Podsumowanie i zaokrąglanie #
Parametr Podsumowanie kolumny ma warianty brak oraz suma. Jeżeli zestawienie ma pokazywać łączną wartość, wybierz sumę i sprawdź ją na kilku znanych wierszach.
Zaokrąglanie widocznych kwot może powodować różnicę pomiędzy sumą zaokrąglonych pozycji a kwotą policzoną jednym działaniem z pełną precyzją. Dobierz sposób prezentacji do zasad przyjętych dla danego zestawienia i zweryfikuj wynik na przykładzie.
5. Czego kolumna nie robi automatycznie #
Kolumna obliczana nie zastępuje mechanizmu utrwalania wyliczeń w obiekcie. Jeżeli wynik ma być zapisany do pola i wykorzystywany poza zestawieniem, przygotuj odpowiednią automatyzację.
Nie zakładaj również, że wynik będzie można sortować tak samo jak zwykłe pole bazy. Parametr Czy możliwe sortowanie i rzeczywiste zachowanie należy sprawdzić dla danego rodzaju kolumny i strony.
6. Sprawdzenie wzoru #
Porównaj wyniki dla zwykłych wartości, zera i brakujących danych. Przy dzieleniu uwzględnij możliwość zerowego mianownika. Jeżeli wynik jest nieprawidłowy, najpierw wyświetl kolumny źródłowe i sprawdź ich rzeczywiste wartości oraz identyfikatory użyte we wzorze. Unikaj wzajemnych, cyklicznych zależności pomiędzy kolumnami obliczanymi.