[Talend]tSalesforceOutputを利用してSalesforceのデータを削除する

今回はTalendのコンポーネント「tSalesforceOutput」によるデータの削除を紹介したいと思います。
2018.11.13

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

こんにちは。DI部の大高です。

今回はTalendのコンポーネント「tSalesforceOutput」によるデータの削除を紹介したいと思います。

前提条件

Talendのバージョンは「Talend Open Studio for Big Data」の「Version 7.1.1」、Salesforceのバージョンは「Winter '19」で検証しています。

なお、Salesforceのアカウントが無い場合には、以下から開発者環境を無料で新規作成することができます。

Salesforce Developers

また、Salesforceについての細かい説明については記述しません。

tSalesforceOutputについて

「tSalesforceOutput」を利用するとSalesforceのデータを「INSERT」、「UPDATE」、「UPSERT」、「DELETE」することができます。今回はこの「DELETE」についてです。

「tSalesforceOutput」コンポーネントのTalend Helpページはこちらです。

tSalesforceOutput

では、具体的に以下で解説していきます。

ジョブの説明

「tSalesforceConnection」でSalesforceに接続し、「tSalesforceInput」で削除対象データを取得して「tSalesforceOutput」でデータを削除します。

「tSalesforceInput」でのデータ取得、および、「tSalesforceOutput」でのデータ更新については以下の記事をご参照ください。今回はこちらと同じ処理を流用してデータを取得します。

[Talend]tSalesforceInputを利用してSalesforceからデータを取得する | DevelopersIO

[Talend]tSalesforceOutputを利用してSalesforceのデータを更新する | DevelopersIO

Salesforceのデータについて

まず最初にSalesforceのデータを確認しておきます。

今回はサンプルとして「取引先」を扱いますので、「取引先」のデータを確認しておきます。

「取引先」が13件あります。今回は「取引先名」が「Kuji-Goji-Do」の取引先を削除したいと思います。

「tSalesforceInput」コンポーネントの設定

「tSalesforceInput」コンポーネントでは削除対象データとして「Name」が「Kuji-Goji-Do」のデータを取得します。「条件」の設定で「Name = 'Kuji-Goji-Do'」と指定して対象データを取得します。

また、今回は削除を行いますので必要となるカラムは「Id」のみとなります。他のカラムは不要なのでスキーマ定義から削除しておきます。

「tSalesforceOutput」コンポーネントの設定

コンポーネントにはSalesforceのデータ削除に関する設定をします。

ここはほとんどUPDATEの際の設定と変わりません。

異なる点としては、「出力のアクション」を「DELETE」にするということと、スキーマ定義は「Id」カラムのみ(固定スキーマ)になっているということです。

Salesforceでは、「Id」項目によりレコードの特定ができますので「Id」項目だけあれば削除が可能です。

実行結果

設定は以上です。実際にこのジョブを実行すると、Salesforce側の画面では以下のようになります。

設定したとおり、「取引先」から「Kuji-Goji-Do」が削除されました!

まとめ

以上、「tSalesforceOutput」コンポーネントによるデータの削除の紹介でした。どなたかの参考になれば幸いです。

それでは。