AMT Help Files

EVALUATE

COBOL JAVA
EVALUATE switch

Syntax

switch (<switchValue>) {
    case <Value>: {
        <code>
    }
}

Parameter(s)

<switchValue>
The variable or expression to use the value of in the switch.

<value>
A single constant value to compare the switch value with.

<code>
The code to execute when the constant value equals the switch value.

Example(s)

COBOL Java
EVALUATE ALPHAVAR
    WHEN 'Zero' GO TO 0000-MAIN-EXIT
    WHEN 'One' GO TO 0001-MAIN-EXIT
    WHEN 'Two' GO TO 0002-MAIN-EXIT
    WHEN 'Three' GO TO 0003-MAIN-EXIT
    WHEN OTHER GO TO 0004-MAIN-EXIT
END-EVALUATE.
                
switch (locDef.alphavar.toString()) {
    case "Zero":
        jumpToLabel = Label_0000_Main_Exit;
        continue mainLoop;
    case "One":
        jumpToLabel = Label_0001_Main_Exit;
        continue mainLoop;
    case "Two":
        jumpToLabel = Label_0002_Main_Exit;
        continue mainLoop;
    case "Three":
        jumpToLabel = Label_0003_Main_Exit;
        continue mainLoop;
    default: {
        jumpToLabel = Label_0004_Main_Exit;
        continue mainLoop;
    }
}
                
EVALUATE NUMVAR
    WHEN 1 GO TO 0000-MAIN-EXIT
    WHEN 2 GO TO 0001-MAIN-EXIT
    WHEN 3 GO TO 0002-MAIN-EXIT
    WHEN 4 GO TO 0003-MAIN-EXIT
    WHEN OTHER GO TO 0004-MAIN-EXIT
END-EVALUATE.
                
switch ((int)locDef.numvar.getIntValue()) {
    case 1:
        jumpToLabel = Label_0000_Main_Exit;
        continue mainLoop;
    case 2:
        jumpToLabel = Label_0001_Main_Exit;
        continue mainLoop;
    case 3:
        jumpToLabel = Label_0002_Main_Exit;
        continue mainLoop;
    case 4:
        jumpToLabel = Label_0003_Main_Exit;
        continue mainLoop;
    default: {
        jumpToLabel = Label_0004_Main_Exit;
        continue mainLoop;
    }
}
                
EVALUATE ALPHAVAR
    WHEN 'Zero'
    WHEN 'One' GO TO 0000-MAIN-EXIT
    WHEN 'Two'
    WHEN 'Three' GO TO 0002-MAIN-EXIT
    WHEN OTHER GO TO 0004-MAIN-EXIT
END-EVALUATE.
                
switch (locDef.alphavar.toString()) {
    case "Zero":
    case "One":
        jumpToLabel = Label_0000_Main_Exit;
        continue mainLoop;
    case "Two":
    case "Three":
        jumpToLabel = Label_0002_Main_Exit;
        continue mainLoop;
    default: {
        jumpToLabel = Label_0004_Main_Exit;
        continue mainLoop;
    }
}
                

Complex Evaluate

COBOL JAVA
EVALUATE Java if statement

Example(s)

COBOL Java
EVALUATE ALPHAVAR ALSO NUMVAR
    WHEN 'Zero' GO TO 0000-MAIN-EXIT
    WHEN 'One' ALSO 1 GO TO 0001-MAIN-EXIT
    WHEN 'Two' ALSO 4 GO TO 0002-MAIN-EXIT
END-EVALUATE.
                
if (tempTestAlpha.equals("Zero")) {
    jumpToLabel = Label_0000_Main_Exit;
    continue mainLoop;
} else if ((tempTestAlpha.equals("One")) && (locDef.numvar.getIntValue() == 1)) {
    jumpToLabel = Label_0001_Main_Exit;
    continue mainLoop;
} else if ((tempTestAlpha.equals("Two")) && (locDef.numvar.getIntValue() == 4)) {
    jumpToLabel = Label_0002_Main_Exit;
    continue mainLoop;
}
                
EVALUATE TRUE
    WHEN NUMVAR <= 100 GO TO 0000-MAIN-EXIT
    WHEN NUMVAR > 100 GO TO 0001-MAIN-EXIT
END-EVALUATE.
                
if (locDef.numvar.lessOrEqual(100)) {
    jumpToLabel = Label_0000_Main_Exit;
    continue mainLoop;
} else if (locDef.numvar.greaterThan(100)) {
    jumpToLabel = Label_0001_Main_Exit;
    continue mainLoop;
}
                
EVALUATE NUMVAR
    WHEN 0 THRU 99 GO TO 0000-MAIN-EXIT
    WHEN 100 THRU 199 GO TO 0001-MAIN-EXIT
    WHEN OTHER GO TO 0004-MAIN-EXIT
END-EVALUATE.  
                
if (locDef.numvar.getIntValue() >= 0 && locDef.numvar.getIntValue() <= 99) {
    jumpToLabel = Label_0000_Main_Exit;
    continue mainLoop;
} else if (locDef.numvar.getIntValue() >= 100 && locDef.numvar.getIntValue() <= 199) {
    jumpToLabel = Label_0001_Main_Exit;
    continue mainLoop;
} else {
    jumpToLabel = Label_0004_Main_Exit;
    continue mainLoop;
}
                
EVALUATE ALPHAVAR ALSO NUMVAR ALSO ALPHAVAR2
    WHEN 'Zero' ALSO 1 ALSO 'A' GO TO 0000-MAIN-EXIT
    WHEN 'One' ALSO 2 ALSO 'B' THRU 'K'
        GO TO 0002-MAIN-EXIT
    WHEN OTHER GO TO 0004-MAIN-EXIT
END-EVALUATE.
                
if ((locDef.alphavar.equalTo("Zero")) && (locDef.numvar.getIntValue() == 1) && (locDef.alphavar2.equalTo('A'))) {
    jumpToLabel = Label_0000_Main_Exit;
    continue mainLoop;
} else if ((locDef.alphavar.equalTo("One")) && (locDef.numvar.getIntValue() == 2) && (locDef.alphavar2.greaterOrEqual('B') && locDef.alphavar2.lessOrEqual('K'))) {
    jumpToLabel = Label_0002_Main_Exit;
    continue mainLoop;
} else {
    jumpToLabel = Label_0004_Main_Exit;
    continue mainLoop;
}