UiPath Blog
前回は連携ソリューションを活用するための基礎知識 第1弾として、Salesforceのオブジェクトについてご紹介しました。もし見逃したという方は「ソリューションを活用するための基礎知識1」も併せてご覧ください。
今回は引き続き基礎知識 第2弾をお届します。
オブジェクトの概念について理解が深まったところで、1つ想像してみてください。
Web画面では、表示されたリストの中から、もしくは検索により、データを特定しマウスで選択すれば目的の画面にたどり着けましたが、オブジェクトの世界ではどのようにレコードにたどり着きデータを取得するのでしょうか?
言われてみればわからないな・・と思われた方もいらっしゃるのではないでしょうか。オブジェクトからレコードを取得する方法は画面とは異なるため、これを知る前の状態では自然な疑問だと思います。
今回はオブジェクトの世界におけるレコード取得方法を中心に、次の内容でお届けします。
SOQL
適用可能なSalesforceサービスの範囲
LightningとClassic
APIの制限事項
読み終わった後、きっとオブジェクトの世界のレコード問合せ方法がわかるようになっていると思います。
タイトルを見て何のことだろう・・と思われた方もいらっしゃるのではないでしょうか。実はこちらがオブジェクトからレコードを取得する際の中心的な役割を果たすものになります。
SOQLはSalesforce Object Query Languageの頭文字をとったものです。簡単にいうと「①どの項目を」「②どのオブジェクトから」「③どの条件に合うレコードを」を指定する方法になります。具体的には次のようなものです。
”中心的な役割”や”指定する方法”という表現に違和感を覚えた方もいらっしゃると思います。ここでその解を示すため、レコード取得までの全体像を示します。
SOQLはオブジェクトからレコードを取得する条件を定め、ActivityはSalesforceへの条件伝達とデータ授受を行います。 Salesforceは条件を元にデータを抽出します。条件がSOQLという決まった書式であるため、条件を出す側も受ける側も正確かつ柔軟に処理できる仕組みとなっています。
SOQLについてもう少し詳しく見ていきます。
先程の3つの指定内容に加えて、「④どの並び順で」「⑤何件」といった指定方法も併せて知っていただくと、グッと幅が広がります。
Excelで一覧表を眺める際、ご自身の求める観点でデータを並び替えたことがあると思いますが、④はこれにあたります。⑤はトップ10など見たい件数を絞りたいときに使用するものです。
ここまでくれば①~⑤のベールを外してもよい頃合いかと思います。例を示します。
こちらは、①「ID」「商談名(Name)」「取引先名(Account.Name)」「期待収益(ExpectedRevenue)」を、②商談オブジェクト(Opportunity)から、③商談フェーズが'Proposal'のレコードを、④期待収益の大きい順(降順)で、⑤トップ10件取得している例です。
以下に①から⑤を個別に解説します。
①~⑤に共通している事柄として、項目名は英名で指定する必要があります。英名はオブジェクトマネージャから情報が得られます。※オブジェクトマネージャについては、前回の「オブジェクト名や項目の調べ方」をご参照ください。
①は取得したい項目名を,(カンマ)区切りで指定しています。
注目は「取引先名(Account.Name)」です。他と違う書式になっています。この項目は関連する取引先オブジェクトのレコードから、取引先名を取得するよう指定しています。“オブジェクト間の関連”が設定されている場合は、「(参照元の項目名).(参照先の項目名)」で関連先のレコードの項目も取得できます。
※"オブジェクト間の関連"については、前回の「基礎知識1」をご参照ください。
この例で(参照元の項目名)は商談オブジェクトの「AccountId」に該当しますが、例では「Account」となっています。つまり、(参照元の項目名)として使用する場合、末尾の"Id"は取り除く必要があるので注意してください。
②は①の項目をどのオブジェクトから取得するのかを指定しています。
③は「商談フェーズが‘Proposal’のレコード」とレコードの抽出条件を指定しています。例の「=」は演算子と呼ばれています。この演算子の組み合わせで様々なレコードを取り出すことができます。例以外の演算子の頻出パターンは、次の通りです。
式の構造:(左辺) (演算子) (右辺)
④は項目名とセットで並び順を指定します。DESC(降順)の他にASC(昇順)があります。
⑤は先頭からの件数を指定します。
ここまでSalesforceとひと括りにしてきましたが、皆様がご契約されているサービスには ~ Cloudという名称があるのではないでしょうか。これらに対して、今回お届けしているソリューションは使用できるのか?という、ご質問をいただくことがありますので、ここでご紹介させていただきます。
結論から申し上げますと、Sales Cloudと同じPlatform上に展開されるサービスであれば、利用可能です。
例えば「Service Cloud」「Community Cloud」「Health Cloud」「Financial Service Cloud」などです。
次に、LightningとClassicについてです。
こちらも、”今うちの会社ではLightningとClassicを併用しているがソリューションは使えるか?”や”Classicしか使っていないがソリューションは使えるか?”といった、声が寄せられております。
本連載でご紹介しているSalesforce連携ソリューションは、LightningもClassicも使用可能となっておりますので、ご安心ください。ここまでお届けしてきた「オブジェクト」は両者のベースとなっている仕組みです。部品はここに対してアクセスしているため、両方使用可能となっています。
最後にActivityの利用にあたっての制限事項についてです。
SOQLを使用してオブジェクトのレコードを取得する場合など、 ActivityがSalesforceにアクセスする際は、Salesforce社が公開しているAPI (Application Program Interface)を呼び出しています。このAPIの呼び出し回数には一定の上限値が設けられています。
通常の利用方法では支障をきたす制限ではありませんが、一度確認されることをお勧めします。
回数はご契約内容によって異なりますので、こちらではお示しできませんが、Salesforceの設定画面で確認することが可能です。[設定] > [クイック検索で”組織情報”を検索] > [組織情報を選択] > [API 要求数]で確認できます。
今回はオブジェクトのレコードを取得する方法を中心に、Salesforce連携ソリューションを使用できるサービスの範囲や、制限事項についてお届しました。
皆様が取り組まれる自動化案件の準備材料として、お役に立れば幸いです。
最後に今回の記事の中で取り上げた部品のリンク先などをお知らせします。
Activityの公開先 (UiPath マーケットプレイス):
https://marketplace.uipath.com/ja/listings/salesforce-activity-pack
Connectorの公開先 (AppExchange日本):
https://appexchangejp.salesforce.com/appxListingDetail?listingId=a0N4V00000FZh4JUAT
Salesforce連携ソリューションご案内:
その他連携ソリューションご案内:
https://www.uipath.com/ja/solutions/application-cooperation-solutions
今回で基礎編はおしまいです。次回はいよいよActivity編に突入です。
「UiPath StudioへのActivity導入と使い方の基礎」をお届けしますので、お楽しみに。
※SalesforceはSalesforce.com,Incの商標であり、許可のもとで使用しています。
また、UiPathでは、本記事で解説した内容に加えて、CRM/SFAの定着化のためのRPA活用について、実際の事例や、UiPathの連携ソリューションについてご紹介するeBookを無料で公開しています。eBookは下記よりダウンロードください。
詳しくはこちら
Topics:
SalesforceSenior Sales Engineer, UiPath
Sign up today and we'll email you the newest articles every week.
Thank you for subscribing! Each week, we'll send the best automation blog posts straight to your inbox.