開発者用のツールを使ってデータの取得/更新ができるようにする
Salesforce に 開発者ツールを使ってデータの取得・更新を行う。
0.はじめに
Salesforce には アプリケーション開発者やサポート担当者のために、詳細なシステム情報やデータにアクセスするためのツールが用意されています。
それらの中で、特に強力なもののひとつに「Workbench」があります。
このツールによりデータの詳細に素早くアクセスできたりデータの更新を行ったりすることができます。
今回は、「Workbench」を使ってデータにアクセス・更新する方法について説明します。
1.Workbench とは?
Workbench は Salesforce とは別のアプリケーションで、システム間認証を使ってデータ・アクセスを行うツールです。Salesforce にかかわる開発者が集まったオープンソースプロジェクトで開発されています。オープンソースについては下記を参照してください。
Workbench の特徴として以下が挙げられます。
- Salesforce の 各種のAPIを使って、データの検索・更新・テストが行える
- WEB ブラウザ上でシンプルな画面構成になっており、SOQL を用いたデータ・アクセスが素早く実行できる
- データの結果を CSV ・XML 形式に出力可能
- データの出力結果から Salesforce 上のデータ情報に素早くアクセスできる
では、Workbench でできることを説明します。
2.Workbench のログイン
Workbench へのログインは下記の URL から実行できます。これは Salesforce の開発者向けサイト上に構築された Workbench です。
https://workbench.developerforce.com
ログイン画面では、Enviroment と API のバージョンを選択します。
通常は Enviroment は Product (本番)でも問題ありません。API のバージョンもそのままにしておきます。
[ I agree to the terms of service ] の下には、Workbench に関する利用規約が表示されています。ここでは、このツールがオープンソースであること、自由に利用してもいいが、Salesforce 社の正式な製品ではなく、関係する有志の開発者によって作成されたものであり、Salesforce 社のサポートは受けることができない旨が記載されています。
とはいえ、オープンソースプロジェクトにより日々改善が行われているツールのため、安易なトラブルを招くことはまずありません。
Workbench を利用する際は、かならずこの内容について理解したうえで[ I agree to the terms of service ] にチェックします。
[ Login with Salesforce ] をクリックすると、Salesforce にすでにログインしていなければ通常のログイン画面が表示されます。ログイン後、またはすでにログインしていた場合は次の画面が表示され、Salesforce にアクセスする権限を Workbench アプリケーションに渡してよいかが確認されます。
ブラウザのアドレスバーをみて、この画面が Salesforce のドメインで表示されたものであること、また、ログインユーザ名も正しいものであることを確認します。そのうえで、[ 許可 ] をクリックします。
Workbench にログインできると、下記の画面が表示されます。
Workbench へのログインは下記の URL から実行できます。これは Salesforce の開発者向けサイト上に構築された Workbench です。
https://workbench.developerforce.com
ログイン画面では、Enviroment と API のバージョンを選択します。
通常は Enviroment は Product (本番)でも問題ありません。API のバージョンもそのままにしておきます。
[ I agree to the terms of service ] の下には、Workbench に関する利用規約が表示されています。ここでは、このツールがオープンソースであること、自由に利用してもいいが、Salesforce 社の正式な製品ではなく、関係する有志の開発者によって作成されたものであり、Salesforce 社のサポートは受けることができない旨が記載されています。
とはいえ、オープンソースプロジェクトにより日々改善が行われているツールのため、安易なトラブルを招くことはまずありません。
Workbench を利用する際は、かならずこの内容について理解したうえで[ I agree to the terms of service ] にチェックします。
[ Login with Salesforce ] をクリックすると、Salesforce にすでにログインしていなければ通常のログイン画面が表示されます。ログイン後、またはすでにログインしていた場合は次の画面が表示され、Salesforce にアクセスする権限を Workbench アプリケーションに渡してよいかが確認されます。
ブラウザのアドレスバーをみて、この画面が Salesforce のドメインで表示されたものであること、また、ログインユーザ名も正しいものであることを確認します。そのうえで、[ 許可 ] をクリックします。
Workbench にログインできると、下記の画面が表示されます。
3.データの確認
Salesforce のデータについての情報を見ることができ、オブジェクトの種類、項目の情報、成約などを確認します。
[ Info ] | [ Standard & Custom Objects ] を開き、「Choose an object to describe: 」で情報を見たいオブジェクトを選択します。
たとえば、Account (取引先)を選び、[ Fileds ] のフォルダをクリックすると、項目情報を確認できます。
項目名をクリックすると、さらに項目ごとの情報が確認できます。
選択型の場合、[ Picklist Values ] で、選択肢の情報が確認できます。
こちらはレコードタイプを表示しています。
参照される子オブジェクトの情報です。
オブジェクト自体の情報です。アクセスするためのURLなどが確認できます。
このように、Workbenchでオブジェクト情報を比較的シンプルに素早く確認できることがわかりました。
4.データの検索
次にデータを検索する方法です。
[ queries ] | [ SOQL Query ] を開きます。
[ Object ] にて対象のオブジェクトを選択します。
抽出したい項目を「Fields」から選び、並び順を「Sort Results by」で設定します。「Filter Results by」を指定することで最大取得件数を制御できます。
選択した内容で自動的に SOQL が作成されるので、[ Query ] で検索を実行します。
データは表形式で表示されます。表示された結果の Id をクリックすると詳細ページにそのレコードのがもつ全ての情報を確認することができます。[ Update ] や [ Delete ] をクリックすることでデータの修正や削除が可能です。
[ View in Salesforce ] をクリックすると Salesforce で情報を確認することができます。
「Update」「Delete」「View In Salesforce」といった操作は検索結果一覧から、Id の上にカーソルを合わせて実行することもできます。
その他、CSV 形式での出力等も行えますが、現在、Matrix 形式での抽出はできません。
次にデータを検索する方法です。
[ queries ] | [ SOQL Query ] を開きます。
[ Object ] にて対象のオブジェクトを選択します。
抽出したい項目を「Fields」から選び、並び順を「Sort Results by」で設定します。「Filter Results by」を指定することで最大取得件数を制御できます。
選択した内容で自動的に SOQL が作成されるので、[ Query ] で検索を実行します。
データは表形式で表示されます。表示された結果の Id をクリックすると詳細ページにそのレコードのがもつ全ての情報を確認することができます。[ Update ] や [ Delete ] をクリックすることでデータの修正や削除が可能です。
[ View in Salesforce ] をクリックすると Salesforce で情報を確認することができます。
「Update」「Delete」「View In Salesforce」といった操作は検索結果一覧から、Id の上にカーソルを合わせて実行することもできます。
その他、CSV 形式での出力等も行えますが、現在、Matrix 形式での抽出はできません。
5.データの更新・削除する
データを更新・削除するには、レコードの詳細画面で [ Update ] [ Delete ] ボタンをクリックします。
それぞれ編集画面、削除画面が表示され、[ Confirm Update ] [ Confirm delete ] ボタンで更新・削除が実行されます。
すでに削除されたレコードの詳細画面では [ Purge ] でレコードの完全削除または、[ Undelete ] でゴミ箱からの復旧が可能です。
6.グローバルな検索
次に検索の時に利用した SOQL とは異なる種類の検索方法について説明します。
[ queries ] | [ SOSL Search ] をクリックします。
「Search for」に検索したいテキストを入力し、「in」のフィールドには検索したい項目の種類を選びます。ここでは、「AllFields」 を指定して 「佐藤」というデータを検索します。
「returning object: 」には検索したいオブジェクトと、検索結果として表示したい項目の API 名を入力します。なお、オブジェクトは複数設定可能です。
今回は、Lead と Contact の Id、 LastName、FirstName を指定したので、 Lead とContact で1件ずつの結果が出力されています。
SOSL はオブジェクトをまたがった広範囲の検索を行うことができます。SOSL は Salesforce の「グローバル検索」で利用されています。
7.データの一括メンテナンス
データローダで実施できる各種処理は、Workbench でも実行できます。
「data」メニュー以下には、次のメニューが選択でき、それぞれデータローダとおなじくファイルを指定して一括処理を行うことができます。
Insert | 新規登録 |
Update | 更新 |
Upsert | 登録・更新 |
Delete | 削除(ゴミ箱) |
Undelete | 削除からの復旧 |
Purge | 完全削除 |
Workbench では上記の処理について、画面上でデータを入力することで1件だけ実行することが可能です。Insert 以外は Id を指定して処理を実行します。
8.その他の機能
Workbench は今回紹介したもの以外に、次の機能を兼ね備えています。
Migration
Salesforce の オブジェクトやその他の各種設定を適用または設定を抽出してファイルに保存することができます。
Utility
開発・管理業務で使うツールをまとめたメニューです。以下のメニューを選ぶことができます。
- REST Explorer
REST API を実行します。REST API とは URL をベースに Salesforce に対して様々なコマンドを実行するものです。 - Apex Execute
Apex コードを実行します。 - Password Management
ユーザのパスワードの再設定またはリセットを実行します。 - Bulk API Job Status
現在実行中の Bulk API のジョブの状態を確認します。Bulk API とは、データローダやWorkbench から実行可能な大量データ処理のコマンドです。
Metadata API Process Status
「Migration」のメニューから実行された、オブジェクトやその他の各種設定の適用状況を確認できます。
9.Workbench の開発
Workbench は冒頭で説明したとおり、オープンソースのプロジェクトで開発されています。特定の企業の方針にこだわらず、Salesforce をより便利にするために日々改善がなされており、そのソースコード(プログラムの中身)は公開されています。
公開されたソースコードをもとに、独自の Workbench アプリケーションを構築できます。また、ブラウザからアクセスしやすいよう、Chrome や Firefox の Workbench プラグインも公開されています。
Salesforce をより身近に使いやすくできるツールとしてぜひ利用してみましょう。
10.演習
利用しているブラウザで Workbench にログインしましょう。
「SOQL Query」メニューでデータを CSV ファイルで出力し、ファイルを変更後「Data」メニューから一括更新を行いましょう。