XMLファイルへのレコードデータの書き出し

レコードデータをXMLファイルに書き出します。
この操作は、すべてのカスタムアプリのユーザーが利用できます。
注意
  • XMLファイルには、DTDファイルの格納先URLが記録されています。そのため、XMLファイルを書き出したあとに、サーバー移行などで参照先が変更されると、タグを正しく解釈できなくなります。
  • レコードの閲覧が許可されていない状態で、XMLファイルを書き出すURLに直接アクセスすると、レコードが参照できないエラーをXMLファイルの形式で書き出します。
  1. データを書き出すアプリを表示します。
  2. 必要に応じて次の操作をし、目的のレコード一覧画面を表示します。
    画面に表示するレコードと、表示項目が、XMLファイルに書き出されます。
    項目の書き出し順は、レコードの詳細画面に表示される項目の順序と同じです。
    ビューを切り替える場合は、ビューの切替の一覧画面のビューを参照してください。
    表示するレコードを絞り込む場合は、次のページを参照してください。
    レコードを絞り込む
    レコードの検索
  3. 次のどちらかの方法でファイルを書き出します。
    • その他の操作XMLファイルに書き出すをクリックします。
    • XMLファイルに書き出すをクリックします。
  4. Webブラウザーのファイル保存機能を使って、ファイルを保存します。
    書き出す順番は、レコード番号が小さい順です。

XMLファイルの書式

書き出されるXMLファイルの書式は、次のとおりです。
タグ 説明
<office>~</office> アプリの情報です。
<library>~</library> アプリの基本情報です。
詳細は、アプリの基本情報についてを参照してください。
<field-list>~</field-list> アプリの項目情報です。
詳細は、項目情報についてを参照してください。
<field>~</field> 項目の情報です。
<field>から</field>は、閲覧アクセス権のある項目数分繰り返します。
<record-list>~<record-list> レコード情報です。
詳細は、レコード情報についてを参照してください。
<record>~</record> レコード値です。
<record>から</record>は、XML書き出し時に閲覧できるレコード数分繰り返します。
詳細は、レコード値についてを参照してください。

XMLファイルに書き出される内容

XMLファイルには、次の内容が書き出されます。
  • ファイルの仕様
  • サイボウズ Officeのバージョン
  • アプリの基本情報
  • 項目情報
  • レコード情報
  • レコード値

ファイルの仕様について

ファイルの仕様は、最初の2行に記載されます。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE office SYSTEM" DTDファイルのURL">
XMLのバージョンは1.0で、使用している文字コードはUTF-8です。
2行目に記載されているURL は、DTDファイルが格納されているURLを表します。
  • DTDファイルのURL例:
    https://static.cybozu.com/o/10.3.0.xxx-xxxxxxxx/html/office103-20150130.dtd

サイボウズ Officeのバージョンついて

サイボウズOffice のバージョン番号は、マイナーバージョンまで表示されます。
たとえば、(10.1.2) の場合は、「10.1」という表記になります。
<office version="バージョン番号">
 ・・・(この間に、アプリ・項目・レコードの情報が入ります。)
</office>

アプリの基本情報について

次のように記載されます。
<library id="アプリのID" name="アプリの名前">
 ・・・(この間に、項目・レコードの情報が入ります。)
</library>

項目情報について

次のように記載されます。
<field id="項目のID" type="入力タイプ">項目の名前</field>
 ・・・(項目数分表示されます。)
</field-list>
XMLファイルでの入力タイプの表記

各入力タイプは、次のように表記されます。

入力タイプ XMLファイルでの表記
文字列(1行) String
文字列(複数行) Text
URL URL
メニュー(文字列) Select
メニュー(ユーザー) User
ラジオボタン Radio
カウントボタン CountButton
チェックボックス Boolean
チェックボックスリスト CheckBoxList
数値 Number
自動計算 Calc
日付 Date
時刻 Time
日付時刻 DateTime
時間量 TimeSpan
時間計算 TimeCalc
期間計算(現在日時) CurTimeCalc
ファイル File
イメージURL Image
自動採番 Numbering
自動ルックアップ Relation
データ参照(ファイル管理) AppFile
データ参照(アドレス帳) AppAddress

レコード情報について

<record-list>から</record-list>までの間に、次のレコード情報が表示されます。
  • レコード番号
  • レコードの登録日時
  • レコードの登録者
  • レコードの更新日時
  • レコードの更新者
<record-list>
  <record id="レコード番号">
    <create-time>レコード登録日時</create-time>
<creator id="レコード登録者のユーザーID">レコード登録者のユーザー名</creator>
  <modify-time>レコード更新日時</modify-time>
  <modifier id="レコード更新者のユーザーID">レコード更新者のユーザー名</modifier>
  ・・・(書き出したレコードの項目数分のレコード値の情報が書き出されます。)
  </record>
 ・・・(レコード数分表示されます。)
  </record>
 ・・・(レコード数分表示されます。) 
</record-list>
<record> ~ </record>の内容は、書き出されたレコード数分、表示されます。
レコード登録者やレコード更新者の情報を持たないレコードの場合は、レコード登録者(<creator> タグ)やレコード更新者情報(<modifier> タグ)は書き出されません。
また、各レコード値の情報の書式は、<value>から</value>の間に表示されます。

レコード値について

次のように記載されます。
<value type="入力タイプ" id="項目のID">レコード値</value>
・・・書き出されたレコードが持つ項目数個分表示されます。
書き出されるレコードの項目数は、閲覧できる項目数と同じです。
ただし、レコード値が空の場合やエラーの場合は、レコード値(<value>から</value>の間に表記される値)が書き出されません。
入力タイプ別のレコード値の例
入力タイプによって、レコード値(<value>から</value>の間に表記される値)は異なります。
入力タイプ <value>から</value>の間に表記される値
URL <value type="URL" id="項目のID">
<url>レコード値</url>
</value>
カウントボタン <value type="CountButton" id="項目のID">
意思表示した人数
</value>
日付 <value type="Date" id="項目のID">
<date>YYYY-MM-DD</date>
</value>
時刻 <value type="Time" id="項目のID">
<time>HH:MN:SS</time>
</value>
日付時刻 <value type="Datetime" id="項目のID">
<datetime>YYYY-MM-DDT HH:MN:SS</datetime>
</value>
時間量(日時間分秒) <value type="TimeSpan" id="項目のID">
<timespan>P 設定した値:日 DT 設定した値:時間 H 設定した値:分 M 設定した値:秒 S</timespan>
</value>
時間量(日時間分) <value type="TimeSpan" id="項目のID">
<timespan>P 設定した値:日 DT 設定した値:時間 H 設定した値:分 M</timespan>
</value>
時間量(日時間) <value type="TimeSpan" id="項目のID">
<timespan>P 設定した値:日 DT 設定した値:時間 H</timespan>
</value>
時間量(日) <value type="TimeSpan" id="項目のID">
<timespan>P 設定した値:日 D</timespan>
</value>
時間量(時間分秒) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:時間 H 設定した値:分 M 設定した値:秒 S</timespan>
</value>
時間量(時間分) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:時間 H 設定した値:分 M</timespan>
</value>
時間量(時間) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:時間 H</timespan>
</value>
時間量(分秒) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:分 M 設定した値:秒 S</timespan>
</value>
時間量(分) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:分 M</timespan>
</value>
時間量(秒) <value type="TimeSpan" id="項目のID">
<timespan>PT 設定した値:秒 S</timespan>
</value>
時間計算(日付) <value type="TimeCalc" id="項目のID">
<date>YYYY-MM-DD</date>
</value>
時間計算(時刻) <value type="TimeCalc" id="項目のID">
<time>HH:MN:SS</time>
</value>
時間計算(日付時刻) <value type="TimeCalc" id="項目のID">
<datetime>YYYY-MM-DDT HH:MN:SS</datetime>
</value>
時間計算(時間量) <value type="TimeCalc" id="項目のID">
<timespan>P 計算結果:日 DT 計算結果:時間 H 計算結果:分 M 計算結果:秒 S</timespan>
</value>
期間計算(現在日時)(年) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:年 Y</timespan>
</value>
期間計算(現在日時)(年月) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:年 Y 計算結果:月 M</timespan>
</value>
期間計算(現在日時)(日時間分秒) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:日 DT 計算結果:時間 H 計算結果:分 M 計算結果:秒 S</timespan>
</value>
期間計算(現在日時)(日時間分) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:日 DT計算結果:時間 H 計算結果:分 M</timespan>
</value>
期間計算(現在日時)(日時間) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:日 DT 計算結果:時間 H</timespan>
</value>
期間計算(現在日時)(日) <value type="CurTimeCalc" id="項目のID">
<timespan>P 計算結果:日 D</timespan>
</value>
期間計算(現在日時)(時間分秒) <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:時間 H 計算結果:分 M 計算結果:秒 S</timespan>
</value>
期間計算(現在日時)(時間分) <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:時間 H 計算結果:分 M</timespan>
</value>
期間計算(現在日時)(時間) <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:時間 H</timespan>
</value>
期間計算(現在日時)(分秒) <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:分 M 計算結果:秒 S</timespan>
</value>
期間計算(現在日時)(分) <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:分 M</timespan>
</value>
期間計算(現在日時)(秒)  <value type="CurTimeCalc" id="項目のID">
<timespan>PT 計算結果:秒 S</timespan>
</value>
ファイル <value type="File" id="項目のID">
<file mime="ファイルのMIMEタイプ" size="ファイルサイズ" >ファイル名</file>
<url>ファイルへのアクセスURL</url>
</value>
イメージURL <value type="Image" id="項目のID">
<url>レコード値</url>
</value>
自動ルックアップ <value type="Relation" id="項目のID">
<reference library-id="参照元のアプリID" record-id="参照元のレコード番号">
<value type="参照元の項目のタイプ" id="参照元の項目のID">参照元のレコード値</value>
</reference>
</value>
データ参照(ファイル管理) <value type="AppFile" id="項目のID">参照先の項目のID</value>
データ参照(アドレス帳) <value type="AppAddress" id="項目のID">参照先の項目のID</value>