ジョブの CCSID
は DSPJOB で見ると、
のようにして
CCSID
)
DFTCCSID
)
の2つがあることがわかる。
多くは 「コード化文字セットID ( CCSID )」がジョブの CCSID と思われがちであるが
CCSID として重要であるのは 「省略時のコード化文字セットID ( DFTCCSID )」である。
これは多くの実行時の属性が DFTCCSID に依存するように作成されているからである。
例えば 物理ファイル作成 ( CRTPF
) コマンドでは パラメータ(CCSID)は *JOB
であり
これは DFTCCSID によって決定されることを意味している。
プログラムでも CCSID が *JOBRUN
になっていれば、それは DFTCCSID になることを
意味している。
System i は導入時のシステム値 : QCCSID
は 65535
であり、65535
とは空、すわなち
ホワイトであり CCSID がブランクの状態であることを示している。
これに対して国コード(QCNTRYCD
) が JP
(=日本) であれば実行時の CCSID は
としてセットされて実行されるようになっている。
この CCSID = 65535, DFTCCSID = 5026 の組み合わせが、いわゆる 5026 環境であり
半角カナが英小文字より優先されて表示される、いわゆる日本語環境である。
ところでジョブの CCSID を変更したいとする。
CHGJOB CCSID(5035)
としただけでは
と、どちらも 5035 になってしまう。
もう一度、
CHGJOB CCSID(65535)
を実行してみると今度は
となって、これが求める CCSID = 5035 の環境である。
CCSID = 5026 に戻すときも
CHGJOB CCSID(5026) CHGJOB CCSID(65535)
のように 2回の CHGJOB
コマンドの実行が必要である。
これは CHGJOB に DFTCCSID パラメータが用意されていないからでもある。