V Mervis IDE je plně podporované definovat funkci ve Structured Text (ST), která nevyžaduje žádné vstupní parametry (tj. nemá sekci VAR_INPUT).
To je užitečné pro funkce, které vracejí konstantní hodnoty, systémové stavy nebo provádějí akce na základě globálních proměnných / interní logiky místo předávaných argumentů.
Pokud sekci VAR_INPUT vynecháte, ujistěte se, že VAR_OUTPUT nebo lokální proměnné bezprostředně následují za deklarací funkce.
FUNCTION MyFunction : REAL
VAR_OUTPUT
outVal : REAL;
END_VAR
// Logic
outVal := 5.0;
END_FUNCTION
Uživatelé často narazí na chybu: In function declaration no viable alternative at input „VAR_OUTPUT“.
To se obvykle stává, pokud je struktura bloku deklarace proměnných neplatná. Zkontrolujte, že máte návratový typ funkce (např. : REAL) správně uvedený hned v deklaraci funkce, ještě před blokem VAR_OUTPUT.
Deklarace:
FUNCTION GetPi : REAL
VAR_OUTPUT
val : REAL;
END_VAR
val := 3.14159;
END_FUNCTION
Volání funkce: Protože funkce nemá vstupy, můžete ji volat s prázdnými závorkami nebo (podle kontextu) pouze názvem:
PROGRAM Main
VAR
piValue : REAL;
END_VAR
piValue := GetPi();
END_PROGRAM