Описание:
Я пишу / редактирую механизм запросов LinqToProgress.До сих пор простые функции в рамках прогресса легко реплицируются, такие как "A" >= "B"
или Lookup(A, B) > 1
, простые однострочные вкладки, которые дают логические условия.Однако для реализации более продвинутых функций или пользовательских функций мне нужно будет иметь возможность писать многострочные операторы, которые можно подключать к условиям, а это означает, что встроенная функция должна давать логический результат, когда вы используете DISP ( myFunc )
в ABL ScratchPad (ИспользованиеEclipse) или аналогичные программы.
Проблема:
Мне нужно преобразовать код между //Start Here
и //End Here
во встроенный логический результат.
DEF VAR i AS INT NO-UNDO.
DEF VAR LIST AS CHAR NO-UNDO INIT "one,two,three,four".
DEF VAR LIST2 AS CHAR NO-UNDO INIT "one,three,five".
DISP(
// Start Here
DO i=1 TO NUM-ENTRIES(LIST):
IF LOOKUP(ENTRY(i, LIST),LIST2) > 0 THEN RETURN TRUE.
END.
RETURN FALSE.
// End Here
)
В настоящее время код выдает ошибку.White space after colon ends statement.
Я пытался найти решения для многострочных операторов / встроенных функций, но пока ничего не нашел.
Ограничения:
- Все написанное должно содержаться в функции Disp.
- Я не могу использовать ранее созданные функции.