ジョブ情報の表示(CALL QUSRJOBI)
最終更新:
2025-12-01
from as400 import *
# データ構造の定義
JOBI0100 = DS("JOBI0100", [
("Bytes_Return", INT(4)),
("Bytes_Avail", INT(4)),
("Job_Name", CHAR(10)),
("User_Name", CHAR(10)),
("Job_Number", CHAR(6)),
("Int_Job_ID", HEX(16)),
("Job_Status", CHAR(10)),
("Job_Type", CHAR(1)),
("Job_Subtype", CHAR(1)),
("Reserved", HEX(2)),
("Run_Priority", INT(4)),
("Time_Slice", INT(4)),
("Default_Wait", INT(4)),
("Default_Wait", INT(4)),
("Purge", CHAR(10)),
])
# QUSRJOBI を呼び出す関数を作成
QUSRJOBI = PGM("QUSRJOBI", [JOBI0100, INT(4), CHAR(8), CHAR(26), CHAR(16)])
# QUSRJOBI を呼び出す。
# 先頭のパラメータの呼び出し後の内容が jobi0100 に返る。
jobi0100, *_ = QUSRJOBI({}, SIZE(JOBI0100), "JOBI0100", "*", "")
# 結果を表示。
print('Job_Number=', jobi0100['Job_Number'])
print('User_Name=', jobi0100['User_Name'])
print('Job_Name=', jobi0100['Job_Name'])
print('Job_Status=', jobi0100['Job_Status'])
print('Job_Type=', jobi0100['Job_Type'])
[解説]
このPython: QUSRJOBIはパラメータつきでAPI: QUSRJOBIを呼び出して実行するサンプルです。
次はデータ構造: JOBI0100 を定義しています。
# データ構造の定義
JOBI0100 = DS("JOBI0100", [
("Bytes_Return", INT(4)),
("Bytes_Avail", INT(4)),
("Job_Name", CHAR(10)),
("User_Name", CHAR(10)),
("Job_Number", CHAR(6)),
("Int_Job_ID", HEX(16)),
("Job_Status", CHAR(10)),
("Job_Type", CHAR(1)),
("Job_Subtype", CHAR(1)),
("Reserved", HEX(2)),
("Run_Priority", INT(4)),
("Time_Slice", INT(4)),
("Default_Wait", INT(4)),
("Default_Wait", INT(4)),
("Purge", CHAR(10)),
])
次にぱパラメータつきの関数の型を定義します。
# QUSRJOBI を呼び出す関数を作成
QUSRJOBI = PGM("QUSRJOBI", [JOBI0100, INT(4), CHAR(8), CHAR(26), CHAR(16)])
実際に関数: QUSRJOBIを呼び出します。
# QUSRJOBI を呼び出す。
# 先頭のパラメータの呼び出し後の内容が jobi0100 に返る。
jobi0100, *_ = QUSRJOBI({}, SIZE(JOBI0100), "JOBI0100", "*", "")
最後に結構を表示します。
# 結果を表示。
print('Job_Number=', jobi0100['Job_Number'])
print('User_Name=', jobi0100['User_Name'])
print('Job_Name=', jobi0100['Job_Name'])
print('Job_Status=', jobi0100['Job_Status'])
print('Job_Type=', jobi0100['Job_Type'])