Miary wyliczane

Udostępnianie zmiennych pomiędzy podszablonami

Aby udostępnić wartość zmiennej z podszablonu A na podszablon B należy udostępnić ją z podszablonu A na szablon główny, a następnie za pomocą parametru przekazać do podszablonu B. (ta funkcjonalność zastępuje zmienne shared w Crystal Reports) Wykorzystamy standardowy szablon faktury aby przedstawić działanie tej funkcjonalności. Udostępnimy wartość zmiennej wyliczanej z podszablonu FA_Szczegóły na podszablon TabelaVat Przechodzimy do podszablonu FA_Szczegóły i tworzymy miarę wyliczaną SumaAkcyza. Koniecznie zaznaczamy check Udostępnij miarę aby móc udostępnić miarę na szablon główny.
sum([WartoscAkcyzy])
Przechodzimy do szablonu głównego, na lewym panelu w sekcji Udostępnione miary wyliczane dodajemy miarę z podszablonu. Przechodzimy teraz do podszablonu TabelaVat gdzie dodamy parametr za pomocą, którego będziemy przekazywać wartość utworzonej miary. Przechodzimy ponownie na szablon główny gdzie zbindujemy parametr podszablonu z udostępnioną miarą wyliczaną.
Uwaga
Bindowanie jest możliwe wyłącznie wtedy, gdy parametr podszablonu jest tego samego typu danych (np. int, double itp.) co bindowane pole.

Miary wyliczane a białe znaki

Przy tworzeniu miar wyliczanych, zwłaszcza kiedy używamy funkcji porównujących,  warto zwrócić uwagę czy wartości zwracane przez pola z bazy mogą mieć białe znaki, np. „Brutto” nie jest równe „Brutto „

Numeracja pozycji

Do numerowania pozycji można wykorzystać funkcję CurrentVisibleRowIndex().

Miary wyliczane a warunki

Przy tworzeniu warunków w mierze wyliczanej może zdarzyć się sytuacja, że dana kolumna mająca np. typ int czyli liczby całkowitej nie będzie odczytywana jako liczba całkowita. W takim przypadku należy przekonwertować taką wartość na typ liczbowy. Formuła miary bez zastosowanego konwertowania: Formuła miary z zastosowanym konwertowaniem: Podgląd na wydruku:

Suma agregująca po danym elemencie

Składnia [].Sum() nie umożliwia osiągnięcia sumy agregującej. W celu uzyskania sumy należy wykorzystać składnię:
[][[kolumna_po_której_grupujemy]==[^.kolumna_po_której_grupujemy]].Sum([pole_do_podsumowania])

Jak poprawnie umieścić miarę wyliczaną na szablonie?

Jeśli miara wyliczana nie jest udostępniona z podszablonu, może być umieszczona w dowolnym miejscu na szablonie, ponieważ będzie pobierała wartości bezpośrednio z szablonu głównego. Udostępniana miara wyliczana z podszablonu musi znajdować się poniżej kontrolki tego podszablonu, z którego jest udostępniana. W przeciwnym razie będzie ona zwracała pustą lub niepoprawną wartość, ponieważ zawiera dane w kontekście, który jeszcze nie został jeszcze wczytany. Szablony w aplikacji sPrint są docelowo wydrukami zatem zaczytują się po kolei od góry do dołu. Co więcej wartość udostępnionej miary wyliczanej jest wyliczana tylko raz. Oznacza to, że jeśli udostępniona z podszablonu miara wyliczana zostanie umieszczona jednocześnie powyżej i poniżej tego podszablonu wartość miary będzie pusta lub niepoprawna, przypisywana jest wartość pierwsza od góry i tylko raz. W każdym przypadku należy pamiętać, że udostępniona miara musi znajdować się poniżej szablonu, z którego jest udostępniana.

Czy miarę wyliczaną dodaną na szablonie trzeba dodać również w zapytaniu?

Do utworzenia miary wyliczanej nie ma potrzeby zmiany zapytania SQL. Miary wyliczane dodajemy z poziomu Edytora z lewego panelu lub w zapytaniu SQL.

Miara składająca się ze złączenia tekstu oraz wartości z pól

Za pomocą miary wyliczanej możemy łączyć ciągi znaków z wartościami z pól pobranych przez zapytanie szablonu. Żeby to zrobić należy wykonać poniższe kroki. Dodać miarę wyliczaną za pomocą plusa w zakładce połączenie w lewym panelu. W oknie edycji miary wyliczanej należy uzupełnić jej nazwę oraz składnie. Należy pamiętać aby tekst wpisywać w pojedynczym cudzysłowie np. 'tekst', a każde elementy łączyć za pomocą plusa między nimi. Dla podanego wyżej przykładu składnia wyglądałaby następująco:
'Zamówienie nr' + [ZaN_DokumentObcy] + 'dla klienta' + [Knt_Nazwa1] + 'musi być dostarczone w terminie do' + [DataRealizacji]
Nowa miara wyliczana pojawi się na samym dole, w rozwijanej liście dostępnych danych.