代码之家  ›  专栏  ›  技术社区  ›  sander

单个if中的多个或运算符

  •  1
  • sander  · 技术社区  · 7 年前

    如何在单个if语句中使用多个或运算符?我试过这种方法,但有一个错误:

    表达式或赋值中的数据类型不兼容。

    我看过长度函数的文档,它是 LENGTH ( {string | raw-expression | blob-field } [ , type ] ) ?

    代码如下:

    DEFINE VARIABLE cMonth AS CHARACTER.
    DEFINE VARIABLE cDay AS CHARACTER.
    DEFINE VARIABLE cYear AS CHARACTER.
    
    UPDATE cDateFromUser.
    
    cDay = (SUBSTRING(cDateFromUser,1,2)).
    cMonth = (SUBSTRING(cDateFromUser,3,2)).
    cYear = (SUBSTRING(cDateFromUser,5,4)).
    
    IF (LENGTH(cDay <> 2)) OR (LENGTH(cMonth <> 2)) OR (LENGTH(cYear <> 4)) THEN DO:
        /*Code*/
    END.
    ELSE DO:
        /*Code*/
    END.
    
    1 回复  |  直到 7 年前
        1
  •  5
  •   Austin    7 年前

    语法不在这里。如果:

    IF (LENGTH(cDay) <> 2) OR (LENGTH(cMonth) <> 2) OR (LENGTH(cYear) <> 4) THEN DO: