レスポンスファイルの形式

レスポンスファイルの全体構成

レスポンスファイルには、fusion_place サーバで行った処理の結果が含められます。リクエストファイルと同様、レスポンスファイルも XML 形式のファイルです。レスポンスファイルの内容は以下のような形式です。

<xml version="1.0" encoding="UTF-8"?> (1)
  <responses> (2)
    <response type="IMPORT_VALUES" desc="実績インポート(1)"> (3)
      <!-- ... -->
    </response> (3)
    <response type="IMPORT_VALUES" desc="実績インポート(2)"> (3)
      <!-- ... -->
    </response> (3)
  </responses> (2)
1 XML 宣言
2 「レスポンスの並び」開始、終了
3 「レスポンス」開始、終了

XML 宣言

「XML 宣言」(上記 1)はファイルの先頭に 1 行だけあり、このファイルが XML 仕様 1.0 に準拠していることを示します。encoding="…​" の部分に、このファイルに適用されているエンコーディングが示されています。これは実行時のコマンドラインにて -encoding オプションで指定したエンコーディングです(指定が無ければ UTF-8 となります)。

「レスポンスの並び」の開始タグ・終了タグ

XML 宣言を除くと、ファイルの内容は、一連の「レスポンスの並び」(responses)です。その並び全体の開始位置と終了位置にそれぞれ <responses> タグと </responses> タグが置かれます(上記 2)。

「レスポンス」の開始タグ・終了タグ

「レスポンスの並び」(responses)の中には、リクエストファイル中の「リクエスト」(request)と同数の「レスポンス」(response)が置かれます。リクエストとレスポンスは並び順に従って対応づけられます。レスポンスの開始位置と終了位置にそれぞれ <response> タグと </response> タグが置かれます(上記 3)。

<request> タグのタイプ(type)と説明(desc)は、<response> タグにそのままコピーされます。

レスポンスの記述形式

レスポンスの開始と終了を示す 2 つのタグ <response …​></response> の間にレスポンス情報が置かれます。

<response type="IMPORT_VALUES" desc="実績インポート(1)"> (1)
  <returned-contents> (2)
    #LINE_NO, #BEFORE_AFTER, #FY, #PERIOD, TENPO, SHOHIN, #ACCOUNT, ...​ <!--(返却内容)-->
      3, "1.BEFORE", "FY2009", "M1", "S01", "M01", "PL1100", ...​
      3, "2.AFTER", "FY2009", "M1", "S01", "M01", "PL1100", ...​
            <!-- ... -->
  </returned-contents> (2)
  <result> (3)
    <code>SUCCESSFUL</code> (4)
    <started-at time-zone="Asia/Tokyo">2010/02/28 09:50:04.227</started-at> (5)
    <ended-at time-zone="Asia/Tokyo">2010/02/28 09:50:07.827</ended-at> (6)
    <messages> (7)
      総件数          : 693 件 <!--(メッセージ)-->
      スキップ件数    : 0 件
      警告件数        : 0 件
      エラー件数      : 0 件
    </messages> (7)
  </result> (3)
</response> (1)
1 「レスポンス」開始、終了
2 「返却内容」開始、終了
3 「処理結果」開始、終了
4 処理結果コード
5 処理開始時刻
6 処理終了時刻
7 「メッセージ」開始、終了

「レスポンス」の開始タグ・終了タグ

レスポンスの開始タグには、リクエストの開始タグで指定した 2 つの属性(typedesc)がコピーされます。

返却内容

リクエストの開始タグの直後に、「返却内容」(returned-contents)が置かれます。返却内容は開始タグ <returned-contents> と、終了タグ </returned-contents> で囲まれます。返却内容として何が置かれるかは、リクエストタイプによって異なります。

リクエストタイプが IMPORT_VALUES(フォームを用いたデータインポート)の場合、 インポート処理ログが置かれます。

特殊文字 <, >, & は、それぞれ、&lt;, &gt;, &amp; で置き換えられています。禁止文字をこのように置換する処理を エスケープ と呼びます。エスケープされた文字を元の文字に変換する手間を省きたい場合は、 エクスターナルモード の利用をご検討下さい。

処理結果

「返却内容」の後に、<result></result> で囲んで、「処理結果」(result)が含まれます。処理結果には以下の項目がそれぞれタグで囲んで置かれます。

  • 処理結果コード

  • 処理開始時刻

  • 処理終了時刻

  • メッセージ

処理結果コード

タグ <code></code> で囲まれて「処理結果コード」が返されます。同コードは以下のいずれかの値をとります。

処理結果コード 意味

SUCCESSFUL

リクエストされた処理が、問題なく成功しました。

WARNED

処理は成功しましたが、警告が発せられました。警告内容は「返却内容」または、「メッセージ」に記載されます。

ERROR

リクエストの内容に一部実行不可能な箇所がありました。その箇所は飛ばして実行可能な部分のみを実行しました。

FAILED

リクエストのパラメタ・内容に致命的な誤りがあり、処理を実行できなかったか、途中でキャンセルされました。fusion_place データベースの内容は変更されませんでした。

処理開始時刻と処理終了時刻

「処理結果コード」に続いて、サーバ側での「処理開始時刻」と「処理終了時刻」が表示されます。タグはそれぞれ、以下の通りです。

処理開始時刻

<started-at…​></started-at>

処理終了時刻

<ended-at…​></ended-at>

時刻はいずれもサーバ側のコンピュータで使用されているタイムゾーンにて記録されます。タイムゾーンは属性 time-zone に示されます。

メッセージ

処理結果を補足する何らかのメッセージが表示されます。メッセージの表示には、リクエスタの -lang オプションで指定された言語が適用されます(-lang オプションが指定されなかったときは、リクエストしたコンピュータで用いている言語となります)。