超便利!Salesforceのレコードクローンを使ってみた

2021.02.24

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

Hola〜こんにちは!Salesforceの管理者をやっています清水です。

今日は、あまり知られていないSalesforceのコンポーネントで、とても便利な物がありますのでご紹介したいと思います。

管理者をやっていると、日々「ここXXになったら効率上がるのになぁ」といったお問い合わせをユーザーから受けることが多々あると思います。

弊社でも皆さんと同じように、こういった問い合わせが上がってきます。管理者としては、Salesforceの使い方を理解しようとしてくれ、業務の作業効率のために問い合わせてくれるのはわかるので、有り難いと思う反面

  • 本当に業務上必要な機能追加なのか
  • 機能を追加したことにより、現状とどれだけ作業効率が変わるのか
  • 標準機能でできるのか、開発が必要なのか
  • 全体への影響はあるのか(他のプロセスとバッティングしないかなど)

といったことを常に考えています。そして今回はその中でも弊社内で困っていたコピー機能についてお話したいと思います。

標準アクションでのコピーの限界

Salesforceの標準アクションの「コピー」ボタンでは、アクションを実行したオブジェクトのみがコピーされます。これはどういったことかといいますと、このようになります。

※Salesforce社資料より抜粋

この図を見てもお分かりですよね?例えば商談ページを開いていて、「コピー」ボタンを押しても、商談の主従関係にある「商談商品」が一緒に紐づいてこないんです。

そうすると営業担当や事務の方で、商談だけコピーできても商談商品がいくつも紐づいていた場合に、それらをまた手入力しないといけないということです。

そして、商談商品と一緒にコピーするボタンは、Classicには存在していたのですが、Lightningでは当初標準機能では存在していなかったので、弊社ではApex,Visualforceで開発して利用していました。

※Salesforce社資料より抜粋

これは困った企業様も多かったと思います。そのため、Spring'20でやっと「関連情報と共にコピー」という名前のボタンでもコピーできるようになったのですが

※Salesforce社資料より抜粋

上記の図のように、コピーできるものはやっぱり限りがある状況で、あくまで「商品と共にコピー」のLightning版といったところでしょうか。

見積もコピーしたい

はい、そうなんです。

このボタンを最初、弊社営業担当に説明したところ、Salesforceの標準オブジェクトの1つである「見積」は商談、商談商品と一緒にコピーできないのか?と聞かれたのです。

これまで商談と商談商品だけはコピーできていたけど、結局は見積を作成する必要があって商談の作成をしていたので、見積だけ手作業で追加していて大変だったようです。

そしてこの問題を解決できる方法は、自分たちで開発するしかないと思っていたのですが、このレコードクローンを利用したらできることが判明しました。

※Salesforce社資料より抜粋

これすごいですよね?この図は一例ですが、例えば商談と主従・参照関係になっているカスタムオブジェクトであってもレコードを一緒にコピーできる優れものです!

レコードクローンとは?

レコードクローンは、標準機能のコピーでは不可能な、取引先や商談といったオブジェクトに紐づいている参照や主従関係にあるレコードを一緒にコピーしてくれるものです。例えば取引先と参照関係にある、カスタムオブジェクトのレコードなどでも一緒にコピーができてしまうと言うわけです。

「商品と共にコピー」に比べるとだいぶ自由度が広がるということはわかるかと思います。これが利用できれば、今までは開発かFlowでないと実現できなかったコピーが可能になり、現場から要望はあったけれど、見送られていた要件も実現できるかと思います。開発もゼロのためコストもかかりません。

※Salesforce社資料より抜粋

※Salesforce社資料より抜粋

ただしこんな素敵なレコードクローンですが、もちろん注意点と制約事項があります。自社内の環境に導入する前には、Sandboxでよく検証してから導入するようにしてください。

※Salesforce社資料より抜粋

またSalesforceの標準機能ではないためサポートは一切ありません何かトラブルが発生しても問い合わせ先がないので、自己解決できるスキルは必要だと思います。実際にサポートに問い合わせをしてもこのレコードクローン自体知らない可能性があります。またこのコンポーネントをインストールする際にも、Salesforce社の営業担当者に連絡をして、インストール用の資料をいただきインストールするため、App Exchangeなどに掲載されておらず、利用した方のレビューなど情報が公開されておりません。

Salesforce Labsが提供しているようです。

RecordClone - Salesforce Labs AppExchange

個人的には、複数の企業間でレコードクローンを利用してこういった活用しているなど情報があれば、良い使い方を模索できるのにと思ったのでそこが残念です。非公式だからだとは思いますが。

どうやって使う?

このコンポーネントはSalesforce社の営業担当より、コンポーネントをインストールするための資料をもらえるので、そちらにパッケージインストール用のURLが記載してあります。

なので実際パッケージのURLを貼るのは控えさせていただきますが、設定自体は以下のような感じで開発も不要でとても簡単です。

※Salesforce社資料より抜粋

先に事前準備を行った後に、パッケージをインストールします。他のパッケージと同様に、

  • 「管理者のみインストール」
  • 「一部のユーザーへインストール」
  • 「全員へインストール」

するのかを選びインストールします。

インストールされるとインストール済みパッケージ上にバージョンが記載されます。

ちなみに、Developer editionでもインストールすることができたので、検証のためにレコードの作成は必要ですが、まずはどのように動くのか試してみたい場合、Developer Editionで利用してみるのがいいと思います。

インストールされると、Lightning アプリケーションビルダー上にカスタムコンポーネントとして、配置できるようになります。こちらでコピーしたい子オブジェクトの設定を行います。

 

また一緒にコピーしたい子オブジェクトの設定ですが、こちらにも書いている通り「子リレーション名」です。私は最初間違ってオブジェクト名を入れてしまいました。

このRecord Clone Debugコンポートネントを画面に配置すると、設定必要な「子リレーション名」が表示されているので、それをそのままコピーして利用すると楽かと思います。

また当初のリリース時にはなかった記憶があるのですが、新機能でコピーしたレコードの名前に「Cloned」といった名前を入れられるようになりました。

元のレコードと同じレコード名だと、どっちがオリジナルか分からなくなってしまいますからね!

最後に

この機能は本当にすごく便利なので、利用したいユーザー企業も多いのではないかと思います。

このパッケージと、先日進地の方で公開したプロセスビルダー、フローを組み合わせて作業効率を図りたいと思っています。

[Salesforce] フローとプロセスビルダーを組み合わせて商談コピー時に(孫である)見積品目名も作成する

早く公式でこれと同じようなツールが公開されないかなと願うばかりです。