AS400 / IBM i で「FTP転送できない」「CSVが取れない」「IFS(統合ファイルシステム)にファイルを置けない」「外部サーバーへ送れない」と言われた時は、通信、権限、IFSパス、ファイル名、文字コード、転送モードを分けて確認します。FTPは単純に見えますが、AS400側とPC側、ネットワーク側のどこでも止まります。
この記事では、AS400でFTP転送が失敗する時に見るポイントを、接続、ログイン、IFS、権限、CSV、文字コード、バッチ実行の順に整理します。データ抽出や外部連携を止めないための初動チェックです。
最初に接続方式を区別します。FTP、FTPをTLSで保護するFTPS、SSHを使うSFTPは同じ方式ではありません。接続先が要求する方式・ポート・認証と、利用ツールの対応を確認してください。FTP/FTPSは制御接続とデータ接続が分かれるため、ログインできても一覧取得や転送だけ失敗することがあります。暗号化を無効化して回避せず、管理者とパッシブ接続・通信許可・証明書を確認します。IBM公式のSFTPの説明も参照してください。
まず切り分けること
| 症状 | 見る場所 | 次に読む記事 |
|---|---|---|
| 接続できない | IP、ホスト名、VPN、ポート、TCP/IP | PING・NETSTAT確認手順 |
| ログインできない | ユーザー、パスワード、無効化、権限 | 権限確認チェックリスト |
| ファイルを置けない | IFSパス、ディレクトリ権限、所有者 | IFS入門 |
| CSVが文字化けする | CCSID、転送モード、Excel側の開き方 | データ抽出ガイド |
| バッチだけ失敗する | JOBD、ライブラリリスト、実行ユーザー、ジョブログ | ジョブログの読み方 |
接続できない時
FTPクライアントからAS400へ接続できない場合は、まずネットワーク到達性を確認します。PCからAS400のIPへ到達できるか、ホスト名指定で名前解決できるか、VPNや拠点間通信で遮断されていないかを見ます。AS400側のTCP/IPサービスや経路確認は、PING・NETSTAT確認手順と合わせて確認します。
- IP指定では接続できるがホスト名では失敗しないか
- 社内LANでは接続できるがVPNでは失敗しないか
- FTPのポートがネットワーク機器で止まっていないか
- AS400側のTCP/IPやFTPサービスが停止していないか
- 直近でFW、VPN、DNS、サーバー名を変更していないか
ログインできない時
接続はできるがログインできない場合は、ユーザープロファイルを確認します。パスワード期限、無効化、権限不足、利用目的に合わない共用ユーザーの使用が原因になることがあります。本番データを扱うFTPユーザーには、必要以上の権限を付けないことも重要です。
権限確認は、AS400の機密保護・権限確認チェックリストを起点にしてください。特にCSV出力や外部連携では、対象ライブラリ、IFSディレクトリ、出力ファイルの権限を分けて見ます。
IFSパスとファイル名を確認する
FTP転送先がIFSの場合、パスの大文字小文字、ディレクトリ有無、所有者、権限、ファイル名の扱いを確認します。Windows側では普通に見えるファイル名でも、バッチ処理や外部連携では空白、全角、記号、文字コードが原因で失敗することがあります。
- 転送先ディレクトリが存在するか
- 対象ユーザーに書き込み権限があるか
- 同名ファイルが既に存在して上書きできない状態ではないか
- ファイル名に空白、全角、記号を使っていないか
- バッチ実行時と手作業時でカレントディレクトリが違わないか
CSV転送と文字コード
CSVをFTPで受け渡す場合は、データは取れているのにExcelで文字化けする、桁ずれする、改行が崩れる、ゼロ埋めが消える、といった問題が起きます。転送モード、CCSID(文字コードを識別する番号)、区切り文字、囲み文字、Excelでの開き方を確認してください。
CSV出力の考え方は、AS400データ抽出ガイドにまとめています。コマンドから探す場合は、AS400コマンド逆引きのCPYTOIMPF、CPYFRMIMPF、WRKLNKも入口になります。
FTP転送で現場が最初に残す確認メモ
FTP転送の調査で時間がかかるのは、通信、ユーザー、IFS、文字コード、相手先受信を一緒に見てしまう時です。現場では、次のように事実を分けて残すと、保守会社や相手先との確認が早くなります。
| 確認すること | 残す内容 | 判断のポイント |
|---|---|---|
| 接続元と接続先 | PC名、サーバー名、IP、ポート、VPN有無 | 通信経路の問題か、AS400側の問題かを分ける |
| FTPユーザー | ユーザー名、無効化、権限、手作業とバッチの違い | ログイン不可と転送不可を混同しない |
| IFSパス | 転送先ディレクトリ、所有者、書込権限、同名ファイル | 手作業では成功するのにバッチで失敗する時に見る |
| 転送モード | ASCII/BINARY、改行、区切り文字、囲み文字 | CSVの桁ずれ、改行崩れ、ゼロ落ちを切り分ける |
| 文字コード | CCSID、Excelの開き方、相手先指定の文字コード | AS400上は正常でも受け側で文字化けすることがある |
| 相手先受信 | 送信時刻、ファイル名、件数、相手先の取込結果 | 送信成功と業務完了は別として確認する |
CSV文字化けはFTPだけで判断しない
CSVが文字化けした時は、FTPの失敗だけでなく、出力元ファイル、CPYTOIMPF、IFS上のCCSID、転送モード、Excelや相手先システムの読み込み条件を分けて確認します。詳しい確認観点は、AS400の文字化け・CCSID確認ポイントとCPYTOIMPFでCSV出力する前の確認ポイントにまとめています。