enhancement
Die folgende TL-Script Funktion wird von Top-Logic zu einer Datenbankabfrage optimiert, die sehr schnell ein Ergebnis liefert:
all(`myModule:myType`).filter(x -> $x.get(`myModule:myType#id`) == "4711")
Wenn man genau das gleiche jedoch in eine Methode auslagert und diese aufruft, findete keine Optimierung statt und die Ergebnisberechnung dauert um ein Vielfaches länger:
calcValue = id -> {
all(`myModule:myType`).filter(x -> $x.get(`myModule:myType#id`) == $id)
};
$calcValue("4711")
Dieses Problem tritt beispielsweise auf, wenn man im REST Server einen Endpunkt mit dem Parameter "searchedID" hat und in diesem Endpunkt dann einen Aufruf wie:
all(`myModule:myType`).filter(x -> $x.get(`myModule:myType#id`) == "searchedID")