CRTPF コマンドのCCSIDパラメータの省略時の値は *JOB, つまりジョブの属性となっています。コマンド入力画面において DSPJOB + [実行]してから「2.ジョブ定義属性表示」を選択して PageDownキーを 3回押してください。コード化文字セット= 65535 と省略時のコード化文字セットが 1399 になっているのではないかと思います。これは御社の System i のシステム値 QCCSID を 1399 にセットされていることに起因しています。CCSIDを変更したいときは CRTPF + [F4キー]を押して、さらに「F10=追加のパラメータ」を押して PageDownキーを押したところにコード化文字セットを指定するパラメータがありますのでご希望のCCSIDに変更することができます。ただし先のこ質問での ODBC の接続エラーの原因が CCSID であると特定されたわけではないので、これで解決できるわけではありません。■ ODBC の問題 ODBC でどのようなエラー・メッセージが発生しているのでしょうか ? エラーが発生する原因はただひとつではありません。 エラー原因を想像するのではなくエラー・メッセージ等に基づいて 論理的にエラー原因を突き止めていく必要があります。
こちらの状況をお知らせします。 @まず WRKSYSVAL にて ccsid を変更しています ADSPJOBの結果は どちらも 1399です BCRTPF で CCSIDを指定しようとすると 『CCSID パラメーターには RCDLEN 値が必要である 』 と表示されます。 CCHGPF で CCSID を指定する箇所がありますが 変更できません →入力してもエラーが表示されず、値も変わらないという状況です。
このファイルのCCSID の設定のためにWRKSYSVAL で QCCSID を変更してはいけません。QCCSID を変更すると他のジョブもすべてこの QCCSID に変更されてしまい文字化け等の予測できない結果を生じてしまいます。他のユーザーが入力した半角カナはすべて文字化けになってしまうでしょう。このファイルのCCSID を変更したいのであればCHGJOB によってご自分のジョブだけのCCSID を変更してから CRTPF してください。QCCSID の導入時の値は 65535 です。システム値 QCNTRYID = JP であれば各ジョブの省略時のCCSID は 5026 にセットされます。QCCID と直ちに元の値に戻してください。