如何将长字符串移动到变量 cobol
How to move a long string to a variable cobol
你好,我正在学习 Cobol Online (CICS),我想做的是在 trans 名称后获得 5 个数字,在前 5 个数字后获得 5 个数字,然后我必须做 add , sub , mul , div 并显示它
这是代码
*******************************************************
DATA DIVISION.
WORKING-STORAGE SECTION.
01 INBOUND-MESSAGE PIC X(06).
01 OUTBOUND-MESSAGE PIC X(80).
01 WS-VARIABLE.
05 WS-NUM1 PIC 9(5).
05 WS-NUM2 PIC 9(5).
05 WS-ADD PIC 9(10).
05 WS-SUB PIC 9(10).
05 WS-MUL PIC 9(15).
05 WS-DIV PIC 9(15).
*******************************************************
PROCEDURE DIVISION.
****TERIMA DATA DARI LUAR ****
EXEC CICS RECEIVE
INTO (INBOUND-MESSAGE)
END-EXEC.
EXEC CICS RECEIVE
INTO (INBOUND-MESSAGE)
END-EXEC.
MOVE INBOUND-MESSAGE(5:5) TO WS-NUM1.
MOVE INBOUND-MESSAGE(10:5) TO WS-NUM2.
ADD WS-NUM1 TO WS-NUM2 GIVING WS-ADD.
SUBTRACT WS-NUM1 FROM WS-NUM2 GIVING WS-SUB.
MULTIPLY WS-NUM1 BY WS-NUM2 GIVING WS-MUL.
DIVIDE WS-NUM1 BY WS-NUM2 GIVING WS-DIV.
MOVE 'HASIL JUMLAH: ' WS-ADD ' HASIL KURANG: ' WS-SUB
' HASIL KALI: ' WS-MUL ' HASIL BAGI: ' WS-DIV
TO OUTBOUND-MESSAGE.
EXEC CICS SEND
FROM (OUTBOUND-MESSAGE)
ERASE
END-EXEC.
EXEC CICS RETURN
END-EXEC.
问题是我想做的是显示
Hasil jumlah : ....
Hasil kurang : ....
Hasil kali : ....
hasil bagi : ....
我收到一个错误
The "MOVE" statement was invalid. Expected "TO", but found "WS-ADD". The statement was discarded.
我该如何解决?谢谢
你好,我正在学习 Cobol Online (CICS),我想做的是在 trans 名称后获得 5 个数字,在前 5 个数字后获得 5 个数字,然后我必须做 add , sub , mul , div 并显示它
这是代码
*******************************************************
DATA DIVISION.
WORKING-STORAGE SECTION.
01 INBOUND-MESSAGE PIC X(06).
01 OUTBOUND-MESSAGE PIC X(80).
01 WS-VARIABLE.
05 WS-NUM1 PIC 9(5).
05 WS-NUM2 PIC 9(5).
05 WS-ADD PIC 9(10).
05 WS-SUB PIC 9(10).
05 WS-MUL PIC 9(15).
05 WS-DIV PIC 9(15).
*******************************************************
PROCEDURE DIVISION.
****TERIMA DATA DARI LUAR ****
EXEC CICS RECEIVE
INTO (INBOUND-MESSAGE)
END-EXEC.
EXEC CICS RECEIVE
INTO (INBOUND-MESSAGE)
END-EXEC.
MOVE INBOUND-MESSAGE(5:5) TO WS-NUM1.
MOVE INBOUND-MESSAGE(10:5) TO WS-NUM2.
ADD WS-NUM1 TO WS-NUM2 GIVING WS-ADD.
SUBTRACT WS-NUM1 FROM WS-NUM2 GIVING WS-SUB.
MULTIPLY WS-NUM1 BY WS-NUM2 GIVING WS-MUL.
DIVIDE WS-NUM1 BY WS-NUM2 GIVING WS-DIV.
MOVE 'HASIL JUMLAH: ' WS-ADD ' HASIL KURANG: ' WS-SUB
' HASIL KALI: ' WS-MUL ' HASIL BAGI: ' WS-DIV
TO OUTBOUND-MESSAGE.
EXEC CICS SEND
FROM (OUTBOUND-MESSAGE)
ERASE
END-EXEC.
EXEC CICS RETURN
END-EXEC.
问题是我想做的是显示
Hasil jumlah : ....
Hasil kurang : ....
Hasil kali : ....
hasil bagi : ....
我收到一个错误
The "MOVE" statement was invalid. Expected "TO", but found "WS-ADD". The statement was discarded.
我该如何解决?谢谢