Saya akan menjelaskan cara menggunakan calculation atau perhitungan pada AS400. Operasi yang akan saya jelaskan kali ini adalah penambahan (+), pengurangan (-), perkalian (*) dan pembagian (/).
Karena saya menggunakan SNDPGMMSG untuk mendapatkan output tertulis di log, saya lakukan konversi decimal ke character.
PGM
DCL VAR(&DEC1) TYPE(*DEC) LEN(2) VALUE(6)
DCL VAR(&DEC2) TYPE(*DEC) LEN(2) VALUE(2)
DCL VAR(&CALC) TYPE(*DEC) LEN(2)
DCL VAR(&OUTPUT) TYPE(*CHAR) LEN(2)
/* PLUS '+' SIGN */
CHGVAR VAR(&CALC) VALUE(&DEC1 + &DEC2)
CHGVAR VAR(&OUTPUT) VALUE(&CALC)
SNDPGMMSG MSG(&OUTPUT)
/* MINUS '-' SIGN */
CHGVAR VAR(&CALC) VALUE(&DEC1 - &DEC2)
CHGVAR VAR(&OUTPUT) VALUE(&CALC)
SNDPGMMSG MSG(&OUTPUT)
/* MULTIPLY '*' SIGN */
CHGVAR VAR(&CALC) VALUE(&DEC1 * &DEC2)
CHGVAR VAR(&OUTPUT) VALUE(&CALC)
SNDPGMMSG MSG(&OUTPUT)
/* DIVIDED '*' SIGN */
CHGVAR VAR(&CALC) VALUE(&DEC1 / &DEC2)
CHGVAR VAR(&OUTPUT) VALUE(&CALC)
SNDPGMMSG MSG(&OUTPUT)
ENDPGM

Compile dan jalankan program.
