9.4.1 Wstawki

 

W treści filtra można też użyć wstawek pozwalających uwzględnić aktualne wartości zmiennych procesowych oraz dynamicznie ograniczyć zakres czasu.

 Wstawkę do filtru ujmuje się w nawiasy klamrowe.

 Wstawka rozszerzająca pozwalająca zastosować wartość zmiennej procesowej ma postać:

{V:nazwa_zmiennej}

Wartość zmiennej wstawiana jest w miejsce wstawki.

Wstawka definiująca elementy filtru czasowego ma postać:

{T:kod[:identyfikator_pola]}

Kod określa zakres czasu. Możliwe kody to:

t              -              dzisiaj

y             -              wczoraj

sy           -              od wczoraj

tw          -              ten tydzień

lw           -              poprzedni tydzień

slw         -              od poprzedniego tygodnia

tm          -              ten miesiąc

lm           -              poprzedni miesiąc

slm         -              od poprzedniego miesiąca

ty            -              ten rok

ly            -              poprzedni rok

sly          -              od poprzedniego roku

 

Opcjonalny identyfikator_pola określa pole tabeli, do którego ma być zastosowany filtr czasowy. Jeśli ten element jest pominięty, to przyjmuje się, że filtr dotyczy czasu zapisu rekordu w tabeli. Jeśli identyfikator pola jest podany, to pole powinno być typu Data. Użycie tej wstawki powoduje, że cały tekst wstawki zostanie zastąpiony wyrażeniem (zgodnym ze składnią języka SQL) ograniczającym zbiór zapisów tabeli do takich, których wartość(czas) jest zawarty w przedziale czasowym określonym przez parametr kod.

Filtr zawierający wstawki nie jest modyfikowany w czasie trwania połączenia. Na przykład, jeśli podano filtr czasowy typu "dzisiaj” i połączenie jest otwarte drugą dobę, to pokazywane będą rekordy z poprzedniego dnia. Dopiero ponowne otwarcie połączenia lub ponowne zastosowanie tego samego filtru w akcji operatorskiej spowoduje aktualizację danych.

Wstawki nie mogą występować wewnątrz elementów filtra zawartych w nawiasach prostokątnych [ i ] oraz ujętych w cudzysłowy ' i ". Aby treść wstawki mogła być zawarta pomiędzy tymi ogranicznikami, to te ograniczniki muszą być zawarte w nawiasach klamrowych.

{'}{V:nazwa_zmiennej}{'}

 Powyższy fragment filtru zostanie zastąpiony wartością zmiennej ujętą w cudzysłowy pojedyncze.

Mechanizm wstawek dotyczy tylko treści akcji operatorskich przy pracy w trybie kompatybilności Asix6. Jeżeli tryb kompatybilności nie jest używany, to filtry dynamicznie zmienne należy tworzyć przy pomocy wyrażeń. Metoda wyrażeń jest bardziej uniwersalna - można stosować ją w każdym trybie. W miejscu wstawek {V:} należy używać funkcję Variable, a zamiast wstawek czasowych funkcję OPCTime.

”V_Akt={V:Z1}”

”V_Akt=”+Variable(Z1)

Przykład pokazuje identycznie działający filtr w wersji ze wstawkami oraz budowany przy pomocy wyrażenia. Wybrane będą te rekordy, dla których wartość pola Akt będzie równa wartości zmiennej Z1 (w chwili wykonania akcji).