Edytor kryteriumSkładnia wyrażeń kryterium Składnia wyrażenia kryterium to podzbiór składni pakietu Narzędzia w LN. Za pomocą poniższych podstawowych instrukcji można tworzyć wyrażenia kryterium. Operatory arytmetyczne:
Operatory logiczne:
Operatory relacji:
Wyrażenia domeny A to {a1,a2,a3-a4,..}, co oznacza: (A=a1 lub A=a2 lub A >= a3 i A <= a4, itd.). Składnia wyrażenia domeny to skrócona notacja wyrażeń logicznych odnoszących się do domeny danej zmiennej. Priorytet w wyrażeniach Operatory arytmetyczne mają wyższy priorytet niż operacje relacji. Operacje relacji mają wyższy priorytet niż operatory logiczne. Kolejność priorytetów dla operatorów arytmetycznych: * / \ + - Kolejność priorytetów dla operatorów logicznych: or (lub), and (i), not (nie) Nawiasy okrągłe ('()') mogą zmieniać kolejność priorytetu operatorów arytmetycznych i logicznych. Przykład 3 + 4 * 5 = 23 (3 + 4) * 5 = 35 Wyrażenia logiczne Wyrażenia logiczne mogą mieć wartość true lub false (1 lub 0). Może to mieć zastosowanie w kryteriach, zwłaszcza w wyrażeniach warunkowych. Przykład „If not e then '” („Jeżeli nie e, to '”) oznacza: „If e = false then'” („Jeżeli e = fałsz, to '”) lub „If e = 0 then'” („Jeżeli e = 0, to '”). Konstrukcje „If-then-else” („Jeżeli-to-w przeciwnym razie”) W kryteriach można wykorzystać złożone konstrukcje „if-then-else”. Wyrażenia można zagnieżdżać. Konstrukcję „if-then-else” zawsze zamyka się wyrażeniem endif („koniec”). Wyrażenie „else” („w przeciwnym razie”) nie jest wymagane. Wyrażenia „if” („jeżeli”), „else” („w przeciwnym razie”), oraz „endif” („koniec”) zawsze rozpoczynają się od nowej linii. Wyrażenia (warunkowe) można podzielić na kilka linii. Kryterium zatwierdzenia można zdefiniować bez wyrażeń „if-then-else” („jeżeli-to-w przeciwnym razie”); kryterium to musi rozpoczynać się od c:. Kryterium może zawierać komentarze wprowadzone przy użyciu znaku |. Podczas procesu konfiguracji można tworzyć komunikaty używając komunikatu zmiennej (do 80x25 linii tekstu). Przykład If wyrażenie1 then wyrażenie2 else wyrażenie3 endif Zmienne kryterium W wyrażeniach kryterium można używać zmiennych globalnych i lokalnych. Zmienne globalne to cechy produktu i zdefiniowane przez użytkownika zmienne kryterium, które są zdefiniowane jako globalne. Zmienne predefiniowane przez konfigurator produktu, takie jak dane wejściowe, wyświetlanie, długość, szerokość, itd., są lokalne. Zmienne globalne zachowują swoją wartość podczas procesu konfiguracji, chyba że ich wartości zostaną zmienione. Zmienna kryterium może mieć deklaracje typu takie jak:
Zdefiniowane przez użytkownika zmienne kryterium zawsze należy zdeklarować na początku kryterium. Wszystkie zmienne lokalne są inicjowane przed wykonaniem kryterium: zmiennie alfanumeryczne są usuwane, a zmienne numeryczne otrzymują wartość zero. Wprowadzanie i kontrola poprawności zmiennych globalnych jest inicjowane wartością true. Użycie zmiennych kryterium W wyrażeniach kryterium, cechy produktu muszą znajdować się w nawiasach kwadratowych ([......]). Pozostałych zmiennych można użyć bezpośrednio w wyrażeniach. Zmienne alfanumeryczne (tablice ciągów znaków) mogą być indeksowane zgodnie z notacją: (startposition[;length]) („pozycjawyjściowa[;długość]”). Przykład [color] = "red" ([kolor] = "czerwony") kontrola poprawności = true Wartości zmiennych mogą być alfanumeryczne lub numeryczne. Wartości alfanumeryczne muszą być zapisane w cudzysłowie ("...."). Wartości numeryczne mogą być wprowadzane bezpośrednio. Znak dziesiętny oddzielający część całkowitą od ułamkowej to kropka ('.'). Przykład machine(1;2) = "A5" (maszyna(1;2) = "A5") volume = 28.673 (objętość = 28,673) Kryteria true/false mogą być wykorzystywane w wyrażeniach logicznych. Funkcje arytmetyczne
Funkcje goniometryczne
Funkcje logarytmiczne
Funkcje ciągu znaków
Funkcje daty
Przykład date(1995,06,01) = 728445
| |||