如何将一个记录与另一个进行中的4GL记录匹配?

时间:2019-03-16 13:31:21

标签: openedge progress-4gl

我在两个临时表中存储了两个字符值

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(tt_test1.Value_1的第4个字符)

7 =-(tt_test1.Value_1的第7个字符)

9 = S(tt_test1.Value_1的第9个字符)

14 = A(tt_test1.Value_1的第14个字符)

所以现在我的问题是如何比较 tt_test1.Value_1和tt_test1.Value_2 是否正确匹配?

如果匹配,那么我需要分配一个变量。请为这种情况提供帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用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 ...