Как сопоставить запись с другой записью в процессе 4GL? - PullRequest
0 голосов
/ 16 марта 2019

Я храню значение двух символов в двух временных таблицах

CREATE tt_test1 NO-UNDO
FIELD Value_1 AS CHARACTER.

CREATE  tt_test1.
ASSIGN  tt_test1.Value_1 = "SBCL---DS----A3".

CREATE tt_test2 NO-UNDO
FIELD Value_2 AS CHARACTER.

CREATE tt_test2 NO-UNDO
ASSIGN tt_test2.Value_2 = "4+7+9+14,L-SA".

Если вы видите, что tt_test2.Value_2 основан на tt_test1.Value_1.

т.е.

4 = L (4-й символ tt_test1.Value_1)

7 = - (7-й символ tt_test1.Value_1)

9 = S (9-й символ tt_test1.Value_1)

14 = A (14-й символ tt_test1.Value_1)

Итак, теперь мой вопрос: как можно сравнить tt_test1.Value_1 и tt_test1.Value_2 , совпадающие правильно?

Если его соответствие, то мне нужно назначить в одной переменной. Пожалуйста, помогите этому делу.

1 Ответ

1 голос
/ 16 марта 2019

Вы можете использовать функцию SUBSTRING (), чтобы сравнить различные 4-й, 7-й, 9-й и 14-й символы.

Что-то вроде:

IF SUBSTRING( field1, 4, 1 ) = SUBSTRING( field2, 4, 1) and
   SUBSTRING( field1, 7, 1 ) = SUBSTRING( field2, 7, 1 ) and
   SUBSTRING( field1, 9, 1 ) = SUBSTRING( field2, 9, 1 ) and
   SUBSTRING( field1, 14, 1 ) = SUBSTRING( field2, 14, 1 ) THEN ...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...