Analizator składni wyrażeń

Ten produkt obsługuje definiowanie wyrażeń matematycznych lub logicznych. Wyrażenie może zawierać zmienne lub funkcje.

Parametr kolumny eksploratora danych jest przykładem ich użycia. Ten parametr obsługuje definicję formuły. Aplikacje brzegowe mogą także zawierać wsparcie dla formuły lub wyrażenia dzięki temu analizatorowi składni. Kilka aplikacji może na przykład zawierać typ obiektu "reguła" (reguła obliczania, reguła formularza, reguła zużycia), który jest używany do walidowania lub obliczania w celu zastosowania formuły.

Poniższe tabele pokazują opcje obsługiwane przez wyrażenia używane w analizatorze składni.

Kategoria Obsługiwane wyrażenie Opis
Typy danych Liczba
Ciąg znaków
Wartość logiczna
Lista
Literały Liczby
Ciągi znaków otoczone cudzysłowami pojedynczymi lub podwójnymi.
Uwaga: Stosowanie znaków sterujących względem znaków specjalnych nie jest aktualnie obsługiwane.
Wartości logiczne: prawda i fałsz.
Operacje + Plus
Minus
/ Dzielenie
* Mnożenie
^ lub ** Potęga
% Modulo
Operacje logiczne = Równe
> Większe
>= Większe lub równe
< Mniejsze
<= Mniejsze lub równe
!= lub <> Nie jest równe

W tej tabeli wskazano obsługiwane funkcje. Uwaga: Niektóre funkcje mają zastosowanie do listy wartości. Chociaż wszystkie funkcje zostały zapisane z małej litery, składnia parametru kolumny w eksploratorze danych wskazuje na odwołania do funkcji z samych wielkich liter. System konwertuje formułę kolumny eksploratora danych na małe litery przed dokonaniem oceny.

Funkcja Parametr Wyniki Komentarze
size( ) Element listy Liczba elementów na liście.
isEmpty( ) Element listy Zwraca wartość "prawda", jeśli lista jest pusta.
sum( ) Element listy o typie "liczba" Zwraca sumę liczb na liście.
avg( ) Element listy o typie "liczba" Zwraca wartość średnią liczba na liście.
Jedna liczba lub więcej liczb rozdzielanych przecinkami Zwraca średnią wartość argumentów liczbowych.
max( ) Element listy Zwraca największą wartość na liście.
Jeden lub więcej porównywalnych elementów. Zwraca największą wartość argumentów liczbowych.
min( ) Element listy Zwraca najmniejszą wartość na liście.
Jeden lub więcej porównywalnych elementów. Zwraca najmniejszą wartość argumentów liczbowych.
abs( ) Liczba Zwraca wartość bezwzględną.
ceiling( ) Liczba Zaokrągla wartość w górę.
exp10( ) Liczba Podnosi 10 do liczby będącej wartością potęgi.
acos( ) Liczba Zwraca wartość arcus cosinus liczby w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
asin( ) Liczba Zwraca wartość arcus sinus liczby w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
atan( ) Liczba Zwraca wartość arcus tangens liczby w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
cos( ) Radian Zwraca wartość cosinus wprowadzonego kąta w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
exp( ) Liczba Podnosi e do liczby będącej wartością potęgi. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
log10( ) Liczba Znajduje logarytm, o podstawie 10, dla liczby. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
log( ) Liczba Znajduje naturalny logarytm (o podstawie e) dla liczby. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
sin( ) Radian Zwraca wartość sinus wprowadzonego kąta w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
sqrt( ) Liczba Zwraca pierwiastek liczby. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
tan( ) Radian Zwraca wartość tangens wprowadzonego kąta w radianach. Wynik będzie miał mniejszą dokładność, ponieważ wykorzystuje funkcje systemu oparte na liczbach zmiennoprzecinkowych typu "double".
floor( ) Liczba Zaokrągla wartość w dół.
round( ) Liczba Zakłada skalę o wartości 0. Stosowany jest domyślny tryb zaokrąglania "zaokrąglanie w górę".
Liczba, skala Stosowany jest domyślny tryb zaokrąglania "zaokrąglanie w górę".
Liczba, skala, tryb Tryb należy ustawić na jedną z poniższych wartości:
  • “ROUND_​CEILING”

  • “ROUND_​DOWN”

  • “ROUND_​FLOOR”

  • “ROUND_​HALF_​DOWN”

  • “ROUND_​HALF_​UP”

  • “ROUND_​HALF_​EVEN”

  • “ROUND_​UP”

  • “ROUND_​UNNECESSARY”

negate( ) Liczba Zwraca wartość ujemną liczby. Dostępne tylko w eksploratorze danych.

Poniżej dostępne są specjalne funkcje obsługiwane w aplikacji dla listy wartości. W każdym przypadku składnią jest funkcja [ indexVariable w listName | wyrażenie używające indexVariable ], gdzie indexVariable jest wybierane przez twórcę formuły w celu odzwierciedlenia każdego zapisu na liście, a wyrażenie używane do ewaluacji każdego zapisu musi odwoływać się do danej zmiennej.

Uwaga: Składnia obsługiwana w danym użyciu formuły w obszarze funkcjonalnym jest oparta na danym obszarze funkcjonalnym. Na przykład w aplikacji Oracle Public Sector Revenue Management formuła jest obsługiwana przez regułę formuły "walidacja elementu warunkowego". W tej regule formularza wszystkie zmienne, włącznie z listami, są deklarowane w regule formularza za pomocą liter, a formuły z kolei wykorzystują te litery. W tym scenariuszu funkcje przedstawione poniżej odwoływałyby się do liter zadeklarowanej zmiennej jako "listName". Inny konkretny obszar funkcjonalny, który wykorzystuje ten analizator składni wyrażeń może obsługiwać inną składnię do odwoływania się do elementów lub list.
Funkcja Opis Przykłady
any [ ] Ta funkcja zwraca wartość prawda, jeśli dowolny zapis na liście spełnia warunki wyrażenia. Zwraca wartość prawda, jeśli dowolny zapis na liście "Saldo" ma wartość większą od 0.
any [ i in list/Balance | i > 0 ]
all [ ] Ta funkcja zwraca wartość prawda, jeśli wszystkie zapisy na liście spełniają warunki wyrażenia. Zwraca wartość prawda, jeśli wypełniono wartość wszystkich numerów telefonu.
all [ i in list/phoneNumber | i != ' ' ]
collect [ ] Ta funkcja zwraca nową listę elementów z listy odwołania, gdzie wartość każdego zapisu nowej listy jest wynikiem wyrażenia zastosowanego do każdej pierwotnej wartości. Zwraca nową listę ze stawką podatku zastosowaną wobec każdej kwoty.
collect [ i in list/amount | i * taxRate ]
select [ ] Ta funkcja zwraca listę wszystkich wartości pierwotnej listy w celu spełnienia warunków wyrażenia logicznego. Zwraca nową listę, która zawiera tylko kwoty będące liczbami ujemnymi.
select [ i in list/amount | i < 0 ]
reject [ ] Ta funkcja zwraca listę wszystkich wartości pierwotnej listy, które nie spełniają warunków wyrażenia logicznego. Zwraca nową listę, która zawiera tylko kwoty nie będące liczbami ujemnymi.
reject [ i in list/amount | i < 0 ]