アップロード更新(繰り返し項目と繰り返しコンテナ)

最終更新日: 2020年3月14日
R8 | R9

繰り返し項目(モデル全体)

ダウンロード機能によって取得したファイル内における「繰り返し項目」のデータを変更し、アップロード更新を行うことができます。図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 機能拡張詳細について。