サポート > リポジトリ > CSV・Excel入出力 > アップロード更新(繰り返し項目と繰り返しコンテナ)

ja | en

アップロード更新で繰り返し項目と繰り返しコンテナを扱うためのポイントを説明します。

ダウンロード機能によって取得したファイル内における「繰り返し項目」のデータを変更し、アップロード更新を行うことができます。図1のようなファイルになります。

図1 繰り返し項目(一つのファイルに含まれる場合)

追加

添え字(インデックス)部分を増やしたカラム(列)を追加します。
添え字にマイナス値を指定することで、"前" を表現することができます。(例: "電話番号[-1]")

削除

削除したいカラム(列)の値を空白とし、アップロード更新を行います。同データは削除されます。

主キーに対応する値を記述した行を追加し、<Count>列の数値を指定します。図2の例を使って説明します。

図2 繰り返し項目(独立したファイル)

先頭への挿入

繰り返し項目の先頭に挿入する場合、<Count>列に-1を指定します。

顧客ID <Count> 電話番号
1000 -1 03-0000-0009

最後尾への追加

繰り返し項目の最後尾に追加する場合、<Count>列に3を指定することで、3番目の繰り返し項目が追加されます。

顧客ID <Count> 電話番号
1000 3 03-0000-0010

削除

主キーに対応する値を空白とします。
この例では、電話番号列に空白を指定しています。

顧客ID <Count> 電話番号
1000 1

複数行を先頭に挿入する

<Count>列に "-1" を指定したデータを複数個、用意します。記載順に登録されます。

複数行を後尾に追加する

<Count>列に空文字を指定したデータを複数個、用意します。記載順に登録されます。

Count列を除外したファイルの扱い

<Count>列を含まないファイルをアップロードした場合、繰り返し項目の後尾にデータを追加します。

ダウンロード機能によって取得したファイル内における「繰り返しコンテナ項目」のデータを変更し、アップロード更新を行うことができます。図3のようなファイルになります。

図3 繰り返しコンテナ項目(一つのファイルに含まれる場合)

以下、ダウンロード機能によって下表のファイルを得られたところから説明します。

"id" 列は主キー項目とします。

表. ダウンロードされた CSV ファイル

id
1000

新規登録

列を追加したファイルをアップロードすることで、繰り返しコンテナを新規に登録することができます。

表. 2つの繰り返しコンテナを新規に登録する

id 履歴[1]/履歴ID 履歴[1]/内容 履歴[2]/履歴ID 履歴[2]/内容
1000 1 aaa 2 bbb

繰り返しコンテナの並びは列の添え字(上記例の "[1]","[2]")で指定します。

追加

列を追加したファイルをアップロードすることで、3番目の繰り返しコンテナが追加されます。

表. 3番目の繰り返しコンテナを追加する

id 履歴[1]/履歴ID 履歴[1]/内容 履歴[2]/履歴ID 履歴[2]/内容 履歴[3]/履歴ID 履歴[3]/内容
1000 1 aaa 2 bbb 2 (*) ccc
追加した繰り返しコンテナのコンテナIDの値(上記例では (*) の "2")は、アップロード更新後に(順序よく)再設定されます。すなわち、この値は(整数であれば)どのような値でもかまいません。

繰り返しコンテナの並びは列の添え字(上記例の "[1]","[2]","[3]")で指定します。

コンテナIDが空白の場合

コンテナIDが空白の場合は、追加処理は行われません

表. 誤った指定方法(繰り返しコンテナは追加されない)

id 履歴[1]/履歴ID 履歴[1]/内容 履歴[2]/履歴ID 履歴[2]/内容 履歴[3]/履歴ID 履歴[3]/内容
1000 1 aaa 2 bbb ccc

挿入

添字に "-1" を指定した列を追加することで、1番目の繰り返しコンテナが挿入されます。 既存の繰り返しコンテナのデータは、1つずつ、ずれることになります。

ファイルでは右側の列に位置していますが、アップロード更新後のデータベースでは、添字 "-1" のコンテナは「先頭に挿入」されます。

表. 1番目の繰り返しコンテナを挿入する

id 履歴[1]/履歴ID 履歴[1]/内容 履歴[2]/履歴ID 履歴[2]/内容 履歴[-1]/履歴ID 履歴[-1]/内容
1000 1 aaa 2 bbb 2 ccc

削除

コンテナID の値を空白にすることで、繰り返しコンテナの削除を行うことができます。
下表に示すデータをアップロードすることで、1番目の繰り返しコンテナが削除されます。

表. 1番目の繰り返しコンテナを削除する

id 履歴[1]/履歴ID 履歴[1]/内容 履歴[2]/履歴ID 履歴[2]/内容
1000 aaa 2 bbb

更新

コンテナIDを除いたファイルをアップロードすることで、指定された値で更新を行います。

表. 既存データを更新する

id 履歴[1]/内容 履歴[2]/内容 履歴[3]/内容 !誤記
1000 ddd eee fff

この例では 1 番目の繰り返しコンテナ 内容 の値が ddd へ、2 番目の繰り返しコンテナ 内容 の値が eee へと更新されます。

3 番目の繰り返しコンテナは追加されず、無視されます。これはコンテナIDが指定されていないためです。

繰り返しコンテナを独立したファイルとして扱うことができます。図4のようなファイルとなります。

図4 繰り返しコンテナ項目(独立したファイル)

挿入

主キーおよびコンテナIDを含む行を追加することで対応します。コンテナIDを適切に指定することで、データの挿入も行えます。

繰り返しコンテナの先頭に挿入する場合、商談履歴/履歴ID(コンテナID)列に "-1" を指定します。

顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
1000 -1 2014/06/01 機能拡張について。

コンテナIDが "-1" のデータを複数個、指定することもできます。記載順に登録されます。

顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
1000 -1 2014/05/01 機能拡張について。
1000 -1 2014/05/10 機能拡張詳細について。

追加

繰り返しコンテナの最後尾に追加する場合、商談履歴/履歴ID(コンテナID)列に3を指定することで、3番目の繰り返しコンテナが追加されます。

顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
1000 3 2014/06/01 機能拡張詳細について。

複数行を先頭に挿入する

コンテナID列に "-1" を指定したデータを複数個、用意します。記載順に登録されます。

複数行を後尾に追加する

コンテナID列に空文字を指定したデータを複数個、用意します。記載順に登録されます。

コンテナID列を含まないファイル

コンテナID列を含まないファイルをアップロードした場合、コンテナの後尾にデータを追加します。

繰り返しコンテナの削除

本方式では、繰り返しコンテナの削除を行うことはできません。

項目の型

参照連動型項目の参照先が繰り返し、およびチェックボックスの場合には本機能は動作しません。

詳細情報の出力について

繰り返し項目、繰り返しコンテナの独立したファイルを扱う場合、「処理結果ファイル」「エラー結果ファイル」にはその主キーが最後に出現した行に処理情報が出力されます。これ以前の行では処理状態がNONEとなり、エラーメッセージは出力されません。

この詳細を説明します。
下記の例で、1番目のデータの商談履歴/商談日項目に日付として認識できない文字を指定します。これはエラーになります。

顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
1000 1 あああ 担当者あいさつ
1000 2 2014/06/01 機能拡張詳細について。

このときの処理結果ファイルは次のとおりです。 最後に1000番の主キーが指定されている行にエラーメッセージが表示されます。

<Success> <Process> <Message> 顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
Success None 1000 1 あああ 担当者あいさつ
Error Update 商談日 の項目に日付として認識できない文字が含まれています。 1000 2 2014/06/01 機能拡張詳細について。

Status列の扱い

繰り返し項目、繰り返しコンテナの独立したファイルを扱う場合、<Status>列を指定した場合、その主キーが最後に出現した行の指定が有効となります。

この詳細を説明します。
下記の例では、1000番の主キーに対して二行、用意されています。このとき、2行目の "u" (主キー1000番のデータの更新)が優先されます。1行目の "d" (主キー1000番のデータの削除)は無視されます

<Status> 顧客ID 商談履歴/履歴ID 商談履歴/商談日 商談履歴/商談内容
d !無視される 1000 1 2014/04/01 担当者あいさつ
u 有効 1000 2 2014/06/01 機能拡張詳細について。
ja | en