Quickbase - CSVファイルからレコードを一括作成および更新するアクション
このアクションを使用して、CSVファイルからレコードを一括作成および更新します。
仕組み
このアクションはCSVファイルデータを取得し、Quickbaseテーブル内のレコードを一括作成または更新します。 CSVファイルの最大サイズは20MBです。 このアクションは、選択したマージ項目に基づいてレコードを作成または更新します。
このアクションは、Quickbaseに送信するためにCSVファイルを小さな行チャンクに分割します。 チャンク内の1行が失敗すると、そのチャンク全体が失敗しますが、他のチャンクには影響しません。 一部のCSV行がQuickbaseレコードとして正常に作成または更新されない場合でも、CSVファイルがQuickbaseに正常に送信されると、このアクションは"完了"とみなされます。
失敗したCSV行の処理方法
レシピでは、失敗したCSV行を必ず処理することが重要です。 出力データピル「失敗したレコードのCSVコンテンツ」を使用して、失敗したすべてのCSV行を取得します。 失敗の詳細については、ジョブレポートを確認します。 失敗したCSV行を修正し、このアクションを使用して行を再送信します。
Quickbaseテーブルでデフォルトのキー項目(Record ID)を使用する場合
Quickbaseのデフォルトレコード
デフォルトのキー項目Record IDはQuickbaseによって自動生成されます。 この場合、次のいずれかを選択できます。
- 新しいレコードのみを作成
- デフォルトのキー項目を使用してレコードを作成および更新
- カスタムマージ項目を使用してレコードを作成および更新
新しいレコードのみを作成
WorkatoのQuickbaseテーブル設定に移動し、キー項目としてデフォルトのRecord IDを選択します。
列マッピングセクションで、Record ID#というラベルの最初の項目を空白のままにします。 デフォルトのRecord IDは自動生成されるため、新しいレコードを作成するときにこのIDを指定する必要はありません。
デフォルトのキー項目を使用してレコードを作成および更新
デフォルトのキー項目Record ID#を使用して、Quickbaseレコードを同時に作成および更新できます。
CSVファイルにQuickbaseレコードIDを含む列を含めます。
WorkatoのQuickbaseテーブル設定に移動し、キー項目としてデフォルトのRecord IDを選択します。
列マッピングセクションを見つけ、テーブルのRecord ID列をCSVファイル内のレコードID列にマッピングします。
Quickbaseは、CSVファイルから指定されたレコードIDを使用して、レコードを作成するか更新するかを判断します。 Quickbaseは、次のルールを使用して各CSV行を処理します。
- レコードIDが空であるかQuickbaseに存在しない場合、アクションは新しいQuickbaseレコードを作成します。
- レコードIDが存在し、Quickbase内にも存在する場合、アクションはそのレコードを更新します。
- レコードIDが存在する場合、Quickbaseで一致するレコードIDを検索して、そのレコードを
updateします。 一致するレコードIDがQuickbaseで見つからない場合、そのCSV行は失敗します。
カスタムマージ項目を使用してレコードを作成および更新
デフォルトのキー項目Record IDの代わりに、Order IDのような一意のカスタムマージ項目を使用して、レコードを作成および更新できます。 この場合、Order IDはCSVレコードがQuickbaseにすでに存在するかどうかを判断するために使用されます。
CSVファイルにOrder ID列があることを確認します。
CSVファイル内のカスタムID列
WorkatoのQuickbaseテーブル設定に移動し、カスタムマージ項目を使用を選択してから、QuickbaseテーブルのOrder ID列を選択します。
列マッピングセクションを見つけ、テーブルのOrder ID列をCSVファイルのOrder ID列にマッピングします。
Quickbaseは、CSVファイルから指定されたレコードIDを使用して、レコードを作成するか更新するかを判断します。 Quickbaseは、次のルールを使用して各CSV行を処理します。
- IDが空であるかQuickbaseに存在しない場合、Workatoは新しいQuickbaseレコードを作成します。
- IDが存在し、Quickbase内にも存在する場合、Workatoはそのレコードを更新します。
Quickbaseテーブルでカスタムキー項目を使用する場合
前の例では、このQuickbaseテーブルはデフォルトのRecord IDの代わりに、カスタムキー項目としてOrder IDを使用しています。 この場合、次のいずれかを選択できます。
- カスタムキー項目を使用してレコードを作成および更新
- カスタムマージ項目を使用してレコードを更新
カスタムキー項目を使用してレコードを作成および更新
カスタムキー項目はQuickbaseによって自動生成されないため、CSVファイル内の列として必ず指定する必要があります。 この場合は、Order IDです。
CSVファイル内のカスタムID列
WorkatoのQuickbaseテーブル設定で、キー項目としてOrder IDを選択します。
列マッピングセクションの最初の項目を、CSVファイル内の適切なキー項目にマッピングします。
カスタムレコードID
Quickbaseは、指定されたレコードIDを使用して、レコードを作成するか更新するかを判断します。 Quickbaseは、次のルールを使用して各CSV行を処理します。
- IDが存在する場合、Quickbaseで一致するレコードIDを検索して、そのレコードを
updateします。 一致するIDがQuickbaseで見つからない場合、そのIDを持つ新しいQuickbaseレコードを作成します。 - IDが空の場合、そのCSV行は失敗します。
カスタムマージ項目を使用してレコードを更新
キー項目Order IDを使用する代わりに、Item Typeのような一意のカスタムマージ項目を使用してレコードを更新できます。 この場合、Item TypeはCSVレコードがQuickbaseにすでに存在するかどうかを判断するために使用されます。
WorkatoのQuickbaseテーブル設定に移動し、カスタムマージ項目を使用を選択してから、Item Typeを選択します。
列マッピングセクションの最初の項目を、CSVファイル内の適切な項目にマッピングします。
Quickbaseは、CSVファイルから指定されたレコードIDを使用してレコードを更新します。 Quickbaseは、次のルールを使用して各CSV行を処理します。
- IDが存在する場合、WorkatoはQuickbaseで一致するレコードIDを検索して、そのレコードを更新します。 一致するIDがQuickbaseで見つからない場合、そのCSV行は失敗します。
- IDが空の場合、そのCSV行は失敗します。
失敗したCSV行の処理
このアクションはバッチ処理を使用します。 データをQuickbaseに送信する前に、CSVファイルを小さな行チャンク(またはバッチ)に分割します。 チャンク内の1行がQuickbaseレコードとして正常に作成または更新されない場合、Quickbaseはチャンク全体を拒否しますが、他のチャンクには影響しません。
ただし、一部の行が失敗しても、アクションが完了とみなされる場合があります。 これは、QuickbaseがCSVファイルを正常に受け付けたためです。 Quickbase APIは、成功したレコードと失敗したレコードのリストを含む成功応答を返します。 すべてのチャンクが正常に処理されたかどうかを評価するために、アクション出力を確認することをお勧めします。
レシピでは、失敗したCSV行を必ず処理してください。 出力データピル失敗したレコードのCSVコンテンツには、失敗したすべてのCSV行が含まれます。 これを使用して、失敗した行をCSVファイルに保存できます。 これにより、ジョブレポートでエラーの原因を確認し、失敗した行を修正して、後でこのアクションを使用して行を再インポートできます。
このサンプルレシピは、失敗した行をBoxのCSVファイルに保存します。 Amazon S3、SFTP、オンブレミスファイルなどのコネクターを使用して、CSVファイルを他のファイルストレージシステムに保存できます。
入力
| フィールド | 説明 |
|---|---|
| アプリケーション | Quickbaseアカウント内のアプリケーションを選択します。 |
| アプリケーショントークン | このアプリケーションでデータアクセスにトークンが必要と設定されている場合、このフィールドは必須です。 トークンは、アプリケーションのSettings > App properties > Manage Application Tokenから取得できます。 |
| テーブル | レコードを作成するテーブルを選択します。 ドロップダウンからテーブルを選択するか、テーブルIDを指定できます。 |
| キー項目 | Quickbaseテーブルのキー項目を選択します。 この設定により、各CSV行がQuickbaseレコードを作成するか更新するかが決まります。 |
| ファイルの内容 | インポートするCSVファイルのファイルコンテンツ。 ファイルはカンマ区切りで、有効なUTF-8形式である必要があります。 最大ファイルサイズは20MBです。 |
| ヘッダー行を含むか? | CSVファイルコンテンツにヘッダー行がある場合ははいを選択し、それ以外の場合はいいえを選択します。 |
| 列名 | CSVファイルの列名を指定します。 |
| CSVファイルからQuickbase Documentsテーブル への列マッピング | CSV列をQuickbaseテーブルの列にマッピングします。 |
| Quickbaseテーブル列リスト | Quickbaseテーブル内のどの列にマッピングするかを選択します。 Workatoは、Quickbaseテーブルから最大150個のフィールドをサポートできます。 テーブルに150を超える列がある場合は、使用する予定の項目を選択します。 これらの項目は動的であり、選択したテーブルに基づいて変わります。 |
| ドキュメント名 | この項目は、各CSV行がQuickbaseレコードを作成するか更新するかを制御します。 Quickbaseテーブルのキー項目を含むCSV列にこれをマッピングします。 この項目にはマッピングが必要です。 |
| チャンクサイズ(KB) | CSVファイルは、Quickbase APIの制限を超えないように、このサイズ(キロバイト単位)のチャンクに自動的に分割されます。 最大サイズは5120 KBです。 |
このアクションを設定するには、次のセクションを設定します。
Quickbaseテーブル
データをインポートするQuickbaseテーブルを設定します。
キー項目項目に注意してください。 テーブル内のQuickbaseキー項目を表す正しい列を選択することが重要です。 このIDは各レコードで一意である必要があります。 Workatoはこの項目を使用して、正しいレコードを検索および更新します。 カスタムマージ項目を使用に切り替えることもできます。
QuickbaseはデフォルトでRecord IDという名前の項目を使用します。 ただし、レコードIDの代わりに、たとえばSales Order IDやCustomer IDのようなカスタム列を使用します。
CSVファイル入力
CSVファイルのコンテンツを指定し、列構造を説明します。
ファイルコンテンツデータピルは、他のコネクターのアクションまたはトリガーから取得できます。 例として、Box、Amazon S3、オンブレミスファイルなどのファイルコネクターのフォルダ内の新しいCSVファイルトリガーや、WorkatoツールのCSVを作成アクションがあります。ファイルコンテンツはカンマ区切りで、UTF-8形式である必要があることに注意してください。
列マッピング
このセクションには、Quickbaseテーブル内のすべての列が一覧表示されます。 これらの列をCSVファイル内の対応する列にマッピングする必要があります。
最初の入力項目であるRecord IDに注意してください。 Workatoがそれを使用してQuickbase内のレコードを検索および更新できるように、CSVファイル内の正しいレコードID列にマッピングしてください。 次のサンプルCSVファイルでは、Quickbase Record ID列を使用しています。
CSVファイル内のRecord ID
詳細設定
このアクションはバッチ処理を使用して、データをQuickbaseに送信する前にCSVファイルを小さな行チャンクに分割します。 これにより、Quickbase APIの制限を超えずに大きなCSVファイルを送信できます。
チャンクサイズ(KB)を使用すると、要件に合わせてチャンクサイズ(キロバイト単位)をカスタマイズできます。 一般に、チャンクサイズが大きいほど、大きなファイルの転送時間が短くなります。
出力
| フィールド | 説明 |
|---|---|
| 作成されたレコード数 | Quickbaseで正常に作成されたレコード数。 |
| 更新されたレコード数 | Quickbaseで正常に更新されたレコード数。 |
| 処理失敗レコード数 | Quickbaseレコードとして作成または更新できなかったCSV行数。 |
| 変更されなかったレコード数 | このアクション後に変更されなかったレコード数。 |
| 作成または更新されたレコードのリスト | これはリストデータピルです。 このリストには、正常に作成および更新されたすべてのレコードのQuickbase Record IDが含まれます。 |
| 失敗したレコードのCSVコンテンツ | このデータピルには、Quickbaseレコードとして作成または更新できなかったすべてのCSV行のコンテンツが含まれます。 このデータピルを使用して、失敗したすべての行を含むCSVファイルを作成し、後で修正して再送信できます。 |
| チャンクのリスト | これはリストピルです。 アクションはCSVを小さな行チャンクに分割するため、このリストにはそれらすべてのチャンクと次の属性が含まれます。 |
| チャンク番号 | このチャンクのID。 |
| Quickbaseへのインポート成功 | TrueまたはFalse。 |
| 開始行 | このチャンク内の最初のCSV行 |
| 終了行 | このチャンク内の最後のCSV行 |
| エラーコード | このチャンクのインポートで問題が発生したときにQuickbaseが返すエラーコード。 |
| エラーテキスト | このチャンクのインポートで問題が発生したときにQuickbaseが返すエラーメッセージ。 これは、CSVファイルの問題点を特定する必要がある場合に役立ちます。 |
Last updated: