FTPUpload - FTPでファイル・フォルダーをアップロード

ファイルをFTPサーバーにアップロードします。
フォルダーを指定してフォルダーの中のファイルをまとめてアップロードすることもできます。
アップロードするファイルと同じ名前のファイルがすでに存在していた場合は上書きされます。
転送モードはバイナリモードで転送されます。
ファイルを直接アップロードしますので、FTPPutコンポーネントよりもメモリの使用量が少なくなります。

■ストリーム情報

入力フォーマットすべて
接続数1
説明 入力ストリームは使用せず、すべて無視します。
出力フォーマットすべて
説明入力をそのまま出力プロパティが「はい」である場合は入力ストリームをそのまま出力します。 「いいえ」である場合は、アップロードしたローカルファイルの情報を次のようなフィールド定義のレコードとして出力します。
フィールド名データ型説明
FileNameStringファイル名
FilePathStringファイルのフルパス
FileDateDateTimeファイルの更新日時
FileSizeIntegerファイルサイズ

■コンポーネントプロパティ

名前プロパティ型マッピング説明
コネクションを使用boolean- 接続先にコネクション名 に指定されたコネクションを使用するかどうか選択します。
はい [true] - コネクション名 で指定されたFTP接続名の接続設定を使ってFTPまたはSFTPによる接続を行います。
いいえ [false] - コネクション情報 以下の値を使ってFTPまたはSFTPによる接続を行います。
コネクション名connection-コネクションを使用 が「はい」の場合に接続先のFTPサーバーを指定します。 コネクションペインまたは管理コンソールにて作成したFTP接続名を選択します。
コネクション情報group-コネクションを使用 が「いいえ」の場合に使用されるプロパティ群です。
プロトコルchoice入力&出力 接続先がFTPサーバーであるかSFTPサーバーであるかを指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
ftp - 接続先がFTPサーバーの場合
sftp - 接続先がSFTPサーバーの場合
サーバー名string入力&出力 接続先のFTPまたはSFTPサーバー名を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
ポート番号int入力&出力 接続先のFTPまたはSFTPサーバーのポート番号を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
パッシブモードboolean入力&出力 FTP接続のモードでパッシブモードを使うかどうかを指定します。
接続先がSFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
はい [true] - パッシブモードを使用します。
いいえ [false] - パッシブモードを使用しません。
ファイル名のエンコーディングchoice入力&出力 転送されるファイルのファイル名のエンコーディングを指定します。 日本語のファイル名を使わない場合(US-ASCII文字のみの場合)にはどれを指定しても構いません。
接続先がSFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
タイムアウト(秒)int入力&出力 FTPまたはSFTPクライアントとして、接続がタイムアウトするまでの時間を指定します。 最後に通信が行われてから指定時間経過するとタイムアウトとなります。
コネクションを使用 が「いいえ」の場合、この設定を参照します。 FTPPutコンポーネントFTPScriptコンポーネントFTPUploadコンポーネントではタイムアウトが有効にならないことがあります。
ユーザー名string入力&出力 FTPまたはSFTPサーバーへのログイン名を指定します。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
パスワードpassword入力&出力 上記ログイン名に対応するパスワードを指定します。
接続先がSFTPサーバーで、公開鍵認証のキーファイル が指定されている場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
公開鍵認証のキーファイルstring入力&出力 SFTPサーバーが公開鍵認証である場合に、認証で使用する秘密鍵のファイル名を絶対パスで指定します。
接続先がFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
キーファイルのパスフレーズpassword入力&出力公開鍵認証のキーファイル で指定した秘密鍵がパスフレーズで保護されている場合には、そのパスフレーズを指定します。
接続先がFTPサーバーの場合、この設定は参照されません。
コネクションを使用 が「いいえ」の場合、この設定を参照します。
アップロードファイルパスremoteFile入力&出力 アップロードするファイルのフォルダーパスまたはファイルパスを指定します。
区切り文字「\」と「/」は区別されません。
「**」と「*」と「?」の3つのワイルドカードが使用できます。「**」は0個以上の任意のパスセグメントに、「*」は0個以上の任意の文字に、「?」は任意の1文字にマッチします。
例:
directory/file.txt
C:\directory\file.txt
\\server\share\file.txt
**/*.txt - 相対パスの起点 以下のすべての「*.txt」ファイル
C:\directory\*.txt - C:\directory直下の「*.txt」ファイル

フォルダーが指定された場合は、そのフォルダーの中のすべてのファイル、フォルダーをアップロードします。
ファイルパスの詳細設定group- ファイルパスの詳細設定を行うプロパティ群です。
相対パスの起点pathResolver- 相対パス指定の場合にベースフォルダーを指定します。
プロジェクトフォルダ [Relative]
プロジェクトファイルと同じフォルダを起点にします。
ホームフォルダー [ProjectOwner]
ユーザーのホームフォルダーを起点にします。
実行ユーザーのホームフォルダー [ExecuteUser]
実行ユーザーのホームフォルダーを起点にします。
絶対パスを許可boolean- 絶対パスを許可するかどうか選択します。
「..」を許可boolean- 上のフォルダへ移動する記述に「..」を許可するかどうか選択します。
保存先ファイルパスstring入力&出力 アップロードするファイルの送り先のサーバーでのフォルダーパスおよびファイルパスを相対パスで指定します。絶対パスでの指定はできません。
コミット時の処理choice- コミット時に、アップロードしたローカルファイルを削除するかどうかを指定します。
ファイルを削除 [true] - 削除します。
何もしない [false] - 削除しません。
入力をそのまま出力streamPassThrough- コンポーネントの入力ストリームをそのまま出力ストリームにするかどうかを指定します。
はい」を選択すると、そのまま出力することを示すアイコンに切り替わります。
はい [true] - 入力ストリームがそのまま出力ストリームになります。
いいえ [false] - FTPサーバーへアップロードしたファイルの情報をレコード形式で出力します。

■ループ処理

なし。

■トランザクション処理

コミットコミット時の処理が「ファイルを削除」の場合、アップロードしたローカルファイルを削除します。
ロールバック何もしません。

■エラー処理

タイプパラメーターエラー処理フロー
へのストリーム
エラー
コード
説明
ファイルが存在しない なし コンポーネントの入力ストリーム1アップロードファイルパスまたは保存先ファイルパスで指定したファイルが見つからなかった場合
2保存先ファイルパスで指定したフォルダーが見つからなかった場合
汎用 なし コンポーネントの入力ストリーム3アップロードファイルパスで指定したパスにワイルドカードが含まれていた場合に、アップロードするファイルの一覧が取得できなかった場合
4コミット時の処理が「ファイルを削除」の場合に、ファイルが削除できなかった場合
10コネクション名 に指定したコネクションが見つからない場合
11FTPサーバーに接続できない場合
12FTPサーバーがエラーを返した場合

■フローの強制終了

フローを強制終了すると、通常は実行中のコンポーネントの処理が終了してから次のコンポーネントに制御が遷移する時点でフローがアボートしますが、本コンポーネントでは実行中の処理を強制的に終了してフローがアボートします。強制終了された場合、トランザクションをロールバックします。

■制限事項

LISTコマンドの結果が、Windows, Unixスタイルのファイルリストのみ対応しています。それ以外の場合にはエラーとなることがあります。

■アップロード元、アップロード先の状況と動作の詳細

アップロードファイルパスでワイルドカードが使用されていない場合の動作は、実行時の状況により異なります。
アップロードファイルパス保存先ファイルパスで指定したパスに対して、以下の3つのパターンが想定されます。

  1. パスに該当するファイルが存在する
  2. パスに該当するフォルダーが存在する
  3. パスに該当するファイル、フォルダーが存在しない
それぞれのパターンの組み合わせと、このコンポーネントの動作の関係は以下の表のようになります。
アップロードファイルパス保存先ファイルパス動作
ファイルファイル保存先ファイルパスで指定されたファイルを上書きしてアップロードします。
ファイルフォルダー保存先ファイルパスで指定されたフォルダーの中にアップロードファイルパスで指定されたファイルをアップロードします。
保存先ファイルパスで指定されたフォルダーの中にアップロードファイルパスで指定されたファイルと同名のファイルが既に存在する場合は、上書きされます。
保存先ファイルパスで指定されたフォルダーの中にアップロードファイルパスで指定されたファイルと同名のフォルダーが既に存在する場合は、"エラーコード=12"のエラーが発生します。
ファイル存在しない保存先ファイルパスで指定されたパスをファイル名として解釈し、アップロードファイルパスで指定されたファイルのファイル名を保存先ファイルパスで指定されたファイルのファイル名に変更してアップロードします。
保存先ファイルパスで指定されたパスに含まれる上位フォルダーが存在しない場合は、そのフォルダーを作成します。
フォルダーファイル"エラーコード=12"のエラーが発生します。
フォルダーフォルダー保存先ファイルパスで指定されたフォルダーの中に、アップロードファイルパスで指定されたフォルダーをアップロードします。
フォルダー存在しない保存先ファイルパスで指定されたパスをフォルダー名として解釈し、フォルダーを作成します。この時、上位フォルダーが存在しない場合は、上位フォルダーも作成します。そして、作成したフォルダーの中に保存先ファイルパスで指定されたフォルダーをアップロードします。
存在しないファイル"エラーコード=1"または"エラーコード=2"のファイルが存在しないが発生します。
フォルダー
存在しない


アップロードファイルパスでワイルドカードが使用された場合は、アップロード対象のファイル、フォルダーが複数であるかどうかにかかわらず、保存先ファイルパスの指定はフォルダー名として解釈され、以下のように動作します。