3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

CSVインポートによりチェックボックスフィールドが更新されてしまうケース

Last updated at Posted at 2025-02-09

NetSuiteを運用する際に、CSVインポート機能によりデータを一括更新するケースがあると思います。本記事ではCSVインポートを実行後、チェックボックスのフィールドが更新されてしまうケースを説明していきます。

前提として既存の顧客レコードが存在しています。
システム・ノートには、単純に顧客作成時のログが記録されています。
image.png

その後、何らかよう改修要件が発生し、その要件のためにチェックボックス形のカスタムフィールドを追加します。例えば、顧客に以下「チェックボックスフィールド」というカスタム・エンティティ・フィールドを追加します。
 ・種類:チェックボックス
 ・チェック済をデフォルトに設定:いいえ
image.png

CSVインポート機能で、上記の顧客を更新します。
更新する対象フィールドは「コメント」のみにします。
つまり、上記「チェックボックスフィールド」は更新対象外フィールドです。
image.png

CSVインポート処理が完了したら、「チェックボックスフィールド」が「NULL」から「F(いいえ)」に更新され、更新ログも記録されます。
 ・変更前:NULL
 ・変更後:F(いいえ)
image.png

影響としては、以下2つのパターンがあります。
【サンプルデータ】
 顧客A:チェックボックスフィールド=NULL
 顧客B:チェックボックスフィールド=F(いいえ)

【パターン①】
保存検索やN/seachモジュールにて「チェックボックスフィールド=いいえ」の条件で顧客を検索する場合、顧客Aと顧客Bともに、検索結果として表示される。

【パターン②】
N/queryモジュールにて、SQLで顧客を検索する場合
 ・where [チェックボックスフィールド] = 'F' の条件で検索する場合、顧客Bのみ検索結果に表示。
 ・where [チェックボックスフィールド] IS NULL の条件で検索する場合、顧客Aのみ検索結果に表示。

それらにならないような有効な対策としては、以下があげられます。
①チェックボックス形のフィールドを追加した後、何らかの方法(例えば、CSVインポート)でそのフィールドを一括にF(いいえ)へ更新します。
②データを取得する際に、上記影響①と②(他に影響があるかもしれません)を意識する必要があります。

以上のことを注意しつつ対策してカスタムフィールドを追加した後のCSVインポートを実行していきましょう。


URL:https://www.maruweb.co.jp/
Magento詳細ページ:https://www.maruweb.co.jp/ja/solution/magento/
Oracle NetSuite詳細ページ:https://www.maruweb.co.jp/ja/solution/oracle-netsuite/
中国Webマーケティングソリューション詳細ページ:https://www.maruweb.co.jp/ja/solution/china-webmarketing/

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?