e0d4492013
Created by Github action Co-authored-by: github-actions <github-actions@twenty.com>
271 lines
12 KiB
Plaintext
271 lines
12 KiB
Plaintext
---
|
||
title: CSV ファイルを準備する
|
||
description: Twenty へのインポート用にデータをフォーマットするための、完全なステップバイステップガイド。
|
||
---
|
||
|
||
## 概要
|
||
|
||
このガイドは、インポートを成功させるための CSV ファイルの準備方法を順を追って説明します。 エラーを避けるために、次の手順に従ってください。
|
||
|
||
## ステップ 1: ファイル要件を確認する
|
||
|
||
開始する前に、ファイルが次の要件を満たしていることを確認してください。
|
||
|
||
| 要件 | 詳細 |
|
||
| ------------ | --------------------- |
|
||
| **形式** | CSV、XLSX、または XLS |
|
||
| **サイズ上限** | 1 ファイルあたり 10,000 レコード |
|
||
| **エンコーディング** | UTF-8 推奨 |
|
||
| **構造** | ファイルごとに 1 つのオブジェクトタイプ |
|
||
|
||
<Note>10,000 レコードを超えるデータセットは、複数のファイルに分割するか、[API インポート](/l/ja/user-guide/data-migration/how-tos/import-data-via-api)を使用してください。</Note>
|
||
|
||
## ステップ 2: サンプルファイルをダウンロードする
|
||
|
||
**これは最も重要なステップです。** サンプルファイルには、Twenty が想定する正確な列名と形式が示されています。
|
||
|
||
1. オブジェクトビュー(People、Companies など)に移動します。
|
||
2. 「**⋮**」→「**Import records**」をクリックします。
|
||
3. 「**Download sample file**」をクリックします。
|
||
4. このファイルをテンプレートとして使用してください。
|
||
|
||
<Note>**プロのヒント:** 代わりに、既存のレコードを少数エクスポートします。 これにより、データのあるべきフォーマットの実例が得られ、インポート時に列名が自動的にマッピングされます。</Note>
|
||
|
||
## ステップ 3: 重複値を削除する
|
||
|
||
Twenty は一部のフィールドに一意性を強制します。 重複はインポートエラーの原因になります。
|
||
|
||
| オブジェクト | 一意のフィールド |
|
||
| -------------- | ------------------------ |
|
||
| **People** | `id`, `email` |
|
||
| **会社** | `id`, `domain` |
|
||
| **カスタムオブジェクト** | `id` に加え、一意に設定した任意のフィールド |
|
||
|
||
**インポート前に:**
|
||
|
||
1. スプレッドシートを一意フィールド(email または domain)で並べ替えます。
|
||
2. 重複行を削除または統合します。
|
||
3. Twenty に既に存在する重複がないか確認します。
|
||
|
||
<Warning>**ソフト削除されたレコードも一意性の判定に含まれます。** Command Menu → See deleted records にあるレコードは重複エラーの原因になります。 それらを完全に削除するか、復元して更新してください。</Warning>
|
||
|
||
## ステップ 4: 各フィールドタイプを正しくフォーマットする
|
||
|
||
フィールドタイプごとに必要な形式が異なります。 完全なリファレンスは次のとおりです。
|
||
|
||
### テキストフィールド
|
||
|
||
* 特別なフォーマットは不要です
|
||
* 先頭/末尾の空白は自動的にトリムされます
|
||
|
||
### メールフィールド
|
||
|
||
* 有効なメール形式である必要があります: `name@domain.com`
|
||
* 一意である必要があります(ファイル内および Twenty 内に重複がないこと)
|
||
* 追加のメールについては、**Emails / Additional Emails** 列で次の形式を使用します:
|
||
|
||
```
|
||
["jane@twenty.com","jane.doe@twenty.com"]
|
||
```
|
||
|
||
### ドメインフィールド
|
||
|
||
* **推奨形式**: `https://domain.com`
|
||
* これはメールボックス/カレンダーの同期で使用される形式と一致します(重複を防止)
|
||
* 両方の列を入力してください。
|
||
* **Domain / Domain Label**: `domain.com`
|
||
* **Domain / Domain URL**: `https://domain.com`
|
||
* ファイル内および Twenty 内で一意である必要があります
|
||
|
||
### 電話番号フィールド
|
||
|
||
電話番号は、複数の列を必要とする**ネストされたフィールド**です:
|
||
|
||
| 列 | 例 |
|
||
| --------------------------------------- | ------------ |
|
||
| **Phones / Primary Phone Number** | `4159095555` |
|
||
| **Phones / Primary Phone Country Code** | `US` |
|
||
| **Phones / Primary Phone Calling Code** | `+1` |
|
||
|
||
### 住所フィールド
|
||
|
||
住所は複数列からなる **入れ子のフィールド** です(空欄のままでよい列もあります):
|
||
|
||
* **Address / Address 1**: 住所の 1 行目(番地など)
|
||
* **Address / Address 2**: 住所の 2 行目(任意)
|
||
* **Address / City**: 市区町村名
|
||
* **Address / State**: 州または都道府県
|
||
* **Address / Country**: 国名
|
||
* **Address / Post Code**: 郵便番号(ZIP コード)
|
||
|
||
### 日付フィールド
|
||
|
||
ファイル全体で形式を統一してください:
|
||
|
||
* `YYYY-MM-DD`(推奨): `2024-03-15`
|
||
* `MM/DD/YYYY`: `03/15/2024`
|
||
* `DD/MM/YYYY`: `15/03/2024`
|
||
* ISO 8601: `2024-03-15T10:30:00Z`
|
||
|
||
### 数値フィールド
|
||
|
||
* 数値のみ(テキスト不可)
|
||
* 小数点はピリオドを使用: `1234.56`
|
||
* 桁区切りを使用しない(`1,234.56` は不可)
|
||
|
||
### 通貨フィールド
|
||
|
||
通貨は **2 列を要する入れ子のフィールド** で、**両方に入力が必要** です:
|
||
|
||
| 列 | 例 |
|
||
| --------------------- | --------- |
|
||
| **Amount / Amount** | `1234.56` |
|
||
| **Amount / Currency** | `USD` |
|
||
|
||
### ブール値フィールド
|
||
|
||
大文字を使用: `TRUE` または `FALSE`
|
||
|
||
<Warning>小文字の `true` や `false` は動作しません。</Warning>
|
||
|
||
### 選択フィールド
|
||
|
||
表示ラベルではなく、オプションの **API 名** を使用してください。
|
||
|
||
**API 名の見つけ方:**
|
||
|
||
1. **設定 → データモデル** に移動する
|
||
2. オブジェクトとフィールドを選択
|
||
3. **高度なモード** を有効化(右下のトグル)
|
||
4. API 名をコピー(例: `OPTION_1`。"Option 1" ではありません)
|
||
|
||
<Note>新しい選択肢は自動的に作成されません。 インポート前に **設定 → データモデル** で追加してください。</Note>
|
||
|
||
### 複数選択フィールド
|
||
|
||
API 名を配列形式で記述します:
|
||
|
||
```
|
||
["VALUE1","VALUE2"]
|
||
```
|
||
|
||
### 配列フィールド
|
||
|
||
JSON 配列形式を使用します:
|
||
|
||
```
|
||
["value1","value2"]
|
||
```
|
||
|
||
### 評価フィールド
|
||
|
||
次の形式を使用: `RATING_1`、`RATING_2`、`RATING_3`、`RATING_4`、または `RATING_5`
|
||
|
||
### リンク/URL フィールド
|
||
|
||
両方の列を入力:
|
||
|
||
* **Links / Link Label**: `Twenty`
|
||
* **Links / Link URL**: `https://twenty.com`
|
||
|
||
二次リンクは **Links / Secondary Links** 列を使用します:
|
||
|
||
```
|
||
[{"url":"https://twenty.com","label":"Twenty"}]
|
||
```
|
||
|
||
### JSON フィールド
|
||
|
||
有効な JSON 形式を使用します:
|
||
|
||
```
|
||
{"key":"value","key2":"value2"}
|
||
```
|
||
|
||
### ID フィールド
|
||
|
||
* **任意**: 指定がない場合、Twenty が ID を自動生成します
|
||
* **形式**: UUID(例: `c776ee49-f608-4a77-8cc8-6fe96ae1e43f`)
|
||
* **用途**: 新規作成ではなく既存レコードを更新する場合は ID を含めます
|
||
|
||
## 手順5: リレーション列を追加(レコードをリンクする場合)
|
||
|
||
レコードを他のオブジェクトにリンクするには(例: People を Companies にリンク)、関連レコードの一意の識別子を含む列を追加します。
|
||
|
||
**例**: People を Companies にリンク
|
||
|
||
People の CSV に列を追加:
|
||
|
||
```
|
||
firstName,lastName,email,companyDomain
|
||
John,Smith,john@acme.com,https://acme.com
|
||
Jane,Doe,jane@widgets.co,https://widgets.co
|
||
```
|
||
|
||
**リレーションに関する重要なルール:**
|
||
|
||
* 親レコードは事前に Twenty に存在している必要があります
|
||
* ラベルではなく **ドメイン URL** 形式(`https://domain.com`)を使用してください
|
||
* 一意の識別子は 1 つだけマッピングしてください(`companyId` と `companyDomain` を両方含めない)
|
||
* ワークスペースメンバーには **メールアドレス**(氏名ではなく)を使用してください
|
||
|
||
<Warning>
|
||
**インポート順序は重要です!**
|
||
|
||
「1」側を「多」側より先にインポートしてください:
|
||
|
||
1. **会社** を先に
|
||
2. **People** を 2 番目(会社参照付き)
|
||
3. **商談** を 3 番目に
|
||
|
||
参照する前に親レコードが存在している必要があります。
|
||
</Warning>
|
||
|
||
詳細な手順については、[リレーションをインポートする方法](/l/ja/user-guide/data-migration/how-tos/import-relations-between-objects-via-csv)を参照してください。
|
||
|
||
## 手順6: Twenty にフィールドが存在することを確認
|
||
|
||
インポートで作成されるのはフィールドではなくレコードです。 インポートしたいフィールドはすべて、あらかじめデータモデルに存在している必要があります。
|
||
|
||
**インポート前に:**
|
||
|
||
1. **設定 → データモデル** に移動する
|
||
2. 対象オブジェクトを選択する
|
||
3. 必要なカスタムフィールドを作成する
|
||
4. フィールド名の正確な表記を控える(列ヘッダーと一致している必要があります)
|
||
|
||
## 手順7: 最終チェックリスト
|
||
|
||
ファイルをアップロードする前に、次を確認してください:
|
||
|
||
<Check>ファイル形式が CSV、XLSX、または XLS である</Check>
|
||
<Check>ファイルのレコード数が 10,000 未満である</Check>
|
||
<Check>エンコーディングが UTF-8 である</Check>
|
||
<Check>(People)では重複するメールがなく、(Companies)では重複するドメインがない</Check>
|
||
<Check>日付の形式が全体で統一されている</Check>
|
||
<Check>ドメインが `https://domain.com` 形式である</Check>
|
||
<Check>ブール値フィールドは `TRUE` または `FALSE`(大文字)を使用している</Check>
|
||
<Check>選択フィールドは表示ラベルではなく API 名を使用している</Check>
|
||
<Check>すべてのカスタムフィールドが 設定 → データモデル に存在する</Check>
|
||
<Check>子レコードより先に親レコードをインポートしている</Check>
|
||
<Check>リレーション列が既存レコードを参照している</Check>
|
||
|
||
## 避けるべき一般的なミス
|
||
|
||
| 誤り | 解決策 |
|
||
| -------------------------------- | --------------------------------------- |
|
||
| `TRUE` の代わりに `true` を使用している | ブール値は大文字である必要があります |
|
||
| 選択フィールドで表示ラベルを使用している | 設定で API 名を確認して使用する |
|
||
| Companies より先に People をインポートしている | 常に親オブジェクトから先にインポートする |
|
||
| 通貨フィールドで通貨コードが欠けている | Amount と Currency の両方の列を入力する |
|
||
| ドメインの形式が誤っている | `https://domain.com` を一貫して使用する |
|
||
| リレーションで複数の一意フィールドをマッピングしている | 1 つだけをマッピングする(domain か id のどちらかで、両方は不可) |
|
||
|
||
## 次のステップ
|
||
|
||
ファイルの準備ができました! 次へ:
|
||
|
||
* [会社をインポート](/l/ja/user-guide/data-migration/how-tos/import-companies-via-csv)(これを先にインポート)
|
||
* [コンタクトをインポート](/l/ja/user-guide/data-migration/how-tos/import-contacts-via-csv)
|
||
* [インポートエラーを修正](/l/ja/user-guide/data-migration/how-tos/fix-import-errors)
|