Mark Hammer's Blog

SalesforceやTrailheadに関する情報を投稿しているブログです。

Trailhead モジュール:Insurance Agent Console for Sales and Service

※この内容は2019/11時点のものです。

Get Started with Insurance Agent Console

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/get-started-with-insurance-agent-console

  • 説明:英語
  • Challenge:英語選択問題

Give Sales Agents a 360-Degree View of Policyholders

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/give-sales-agents-a-360-view-of-policyholders

  • 説明:英語
  • Challenge:英語選択問題

Create a New Life Event

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/create-a-new-life-event

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

※筆者注:このChallengeの前に、Financial Services Cloud Developer Edition のサインアップをしてください。

以下内容でRachel Adamsの新規ライフイベントを作成してください。

  • イベント名:Purchase a new car
  • イベント種別:Car
  • イベント日付:好きな日付を設定してください(この項目はチェックしません)
  • 主要な人物:(Sample) Rachel Adams

※筆者注: 設定を正しく実施しても

We can’t find a life event named ‘Purchase a new car’ for Rachel Adams.

というエラーが発生する場合は、Challenge用組織のユーザ地域を[英語(アメリカ合衆国)]に変更し、再度Challengeの確認を実施してください。

Review the Policies Tab

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/review-the-policies-tab

  • 説明:英語
  • Challenge:英語選択問題

Give Service Reps a 360-Degree View of Policyholders

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/give-service-reps-a-360-view-of-policyholders

  • 説明:英語
  • Challenge:英語選択問題

Automate Repetitive Business Processes with Lightning Flows

https://trailhead.salesforce.com/ja/content/learn/modules/insurance-agent-console-for-sales-and-service/automate-repetitive-business-processes-with-lightning-flows

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

Rachel Adams の auto policy に以下の通りドライバーを追加してください。

  • First Name: Madeline
  • Last Name: Reddy
  • Email Address: mreddy@mail.com
  • Phone: 415-901-7040
  • Driver's License Number: D2345897
  • License Issue Date: 好きな日付を設定してください(この項目はチェックしません)
  • License Expiration Date: 好きな日付を設定してください(この項目はチェックしません)
  • driver's license: ファイルアップロードは不要です(「次へ」→「完了」の順にクリックしてください)

Lightning Experience で表示される 参照カウント について調べてみた

Lightning Experience では Salesforce Classic と違い、Chatter投稿に「〇人が参照」、「再生回数〇回」といったChatter参照カウントが表示されます。
「〇人が参照」の場合は、リンクをクリックするとその投稿にいいね! と言ったり、コメント、編集、共有をした、または投稿の詳細ビューに移動したユーザ名が表示されますが、「再生回数〇回」の場合はリンクがなく、どのユーザが何回アクションを行ったのかは分かりません。

f:id:mark-hammer:20191112021945p:plain
「〇人が参照」画面

f:id:mark-hammer:20191112021948p:plain
「再生回数〇回」画面

今回はこの参照カウントの表示について調べてみました。
※この内容は 2019/11(Winter'20) のものです。

参照カウントの表示ルール

ページによって、参照カウント表示ルールが決められています。

非公開Chatterグループ

  • グループに参加しているユーザであれば、「〇人が参照」が表示されます。
  • ただし、プロファイルや権限セットで「[表示先] リストを非表示」にチェックがあるユーザには「再生回数〇回」が表示されます。
    • これは「すべてのデータの編集」または「すべてのデータの参照」権限を持つユーザであっても同様です。

リストに記載しないChatterグループ

  • グループに参加しているユーザであれば、「〇人が参照」が表示されます。
  • ただし、プロファイルや権限セットで「[表示先] リストを非表示」にチェックがあるユーザには「〇人が参照」、「再生回数〇回」どちらも表示されません。
    • これは「すべてのデータの編集」または「すべてのデータの参照」権限を持つユーザであっても同様です。

上記以外

公開Chatterグループ、レコード画面、ユーザ画面等に表示されるChatter投稿が該当します。

  • 以下両方を満たすユーザには「〇人が参照」が表示されます。
    • 「すべてのデータの編集」または「すべてのデータの参照」権限を持つユーザである。
    • プロファイルや権限セットで「[表示先] リストを非表示」にチェックがないユーザである。
  • それ以外のユーザには「再生回数〇回」が表示されます。

特殊ケース

「〇人が参照」が表示されるケースなのに、「再生回数〇回」が表示される

これは、「〇人が参照」は投稿者本人のアクセスを含まないのに対し、「再生回数〇回」は投稿者本人のアクセスを含むために起こります。
つまり、「その投稿に『いいね!』をクリックしたり、コメントまたは共有したり、投稿の詳細ビューに移動したのが投稿者本人だけ」の場合、「再生回数〇回」の表示になります。
その後投稿者本人以外が投稿に対しアクションを行った場合は、「〇人が参照」に表示が切り替わり、以後「再生回数〇回」は表示されません。

レコード画面で非公開Chatterグループをメンションした場合の表示

メンションした非公開Chatterグループに参加しているユーザはレコード画面、ユーザ画面、非公開ChatterグループでChatter投稿を見ることができますが、参照カウントの表示はそれぞれの画面のルールに従います。
つまり、「すべてのデータの編集」または「すべてのデータの参照」権限がない、かつ「[表示先] リストを非表示」のチェックがないユーザの場合、以下の動作になります。

  • 非公開Chatterグループ画面
    • 「〇人が参照」が表示される。
  • 上記以外の画面
    • 「再生回数〇回」が表示される。

参考URL

Chatter 投稿の構造 - Salesforce Help
Chatter カウントの特性 - Salesforce Help

Trailhead モジュール:Permission Sets for Unlocked Packages

※この内容は2019/10時点のものです。

Learn About Profiles and Permission Sets

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/learn-about-profiles-and-permission-sets

  • 説明:英語
  • Challenge:英語選択問題

Develop a Profile and Permission Set Packaging Strategy

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/develop-a-profile-and-permission-set-packaging-strategy

  • 説明:英語
  • Challenge:英語選択問題

Create an Unlocked Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/create-an-unlocked-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • Trailhead Playground組織でDev Hubを有効化してください。
  • sfdx force:auth:web:login -d -a DevHub コマンドを使って、Salesforce CLIからDev Hubを有効化したTrailhead Playground組織に接続してください。

Create a Permission Set and Add it to Your Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/create-a-permission-set-and-add-it-to-your-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • スクラッチ組織を作成してください。
  • sfdx-package-profiles-to-permsets プロジェクトから、メタデータをスクラッチ組織にPushしてください。
  • スクラッチ組織で、以下の権限セットを作成してください。
    • 表示ラベル:Sales Manager
    • API参照名:Sales_Manager
    • Servicesオブジェクトの「参照」、「すべて表示」権限を付与
    • SKUsオブジェクトの「参照」、「すべて表示」権限を付与
  • Sales Manager権限セットをPullしてください。

Release Your Updated Package

https://trailhead.salesforce.com/ja/content/learn/modules/permission-sets-for-unlocked-packages/release-your-updated-package

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 前のユニットでDev Hubを有効化したTrailhead Playground組織にsalesAppsパッケージをインストールしてください。

Trailhead モジュール:Salesforce CPQ Order Generation

※この内容は2019/10時点のものです。

Get Started with Salesforce CPQ Order Generation

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/get-started-with-salesforce-cpq-order-generation

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

「Sign Up for a Developer Edition Org with Salesforce CPQ」節の手順に従って、CPQが有効化されたDeveloper Edition組織をTrailheadに接続してください。

Generate Your First Order

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/generate-your-first-order

  • 説明:英語
  • Challenge:英語選択問題

Generate Multiple Orders from a Single Quote

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/generate-multiple-orders-from-a-single-quote

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 以下内容で、既存の見積レコードから新しく注文レコードを作成してください。
    • 取引先名:Kevco Inc.
    • 注文開始日:2019/1/1 (年は任意)
    • 見積:Q-00023
  • 作成した注文レコードで、「注文商品を編集」から以下注文商品を追加してください。
    • WiFi Installation
    • Warranty
  • 残りの見積品目を使って、同じ見積レコードから2つ目の注文レコードを作成してください。
    • 取引先名:Kevco Inc.
    • 注文開始日:任意
    • 見積:Q-00023
    • ヒント:「注文」項目のチェックボックスを使って、この注文レコードを生成できます。

Automatically Split a Quote into Multiple Orders

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce-cpq-order-generation/automatically-split-a-quote-into-multiple-orders

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • 見積オブジェクトの「注文単位」項目(API参照名:SBQQ__OrderBy__c )の選択リスト値に、「 SBQQ__EffectiveStartDate__c 」を追加してください。
  • 見積レコード Q-00026 を以下内容で編集して、各見積品目レコードの「開始日」に基づいた複数の注文を生成してください。
    • 注文単位: SBQQ__EffectiveStartDate__c
    • 注文:チェックを入れる

Salesforce Authenticator のアカウント紐付けを削除してしまった場合の対応策

Salesforceにログインする際に、セキュリティを高めるために2段階認証を有効にしているユーザの方もいらっしゃるかと思います。
Salesforceにて2段階認証を有効にする際、一般的には Salesforce Authenticator にアカウントの紐付けを行うと思いますが、もし Salesforce Authenticator の紐付けを誤って削除してしまうとどうなるでしょう。

Salesforce Authenticator のアカウント紐付けを削除すると起こること

Salesforce Authenticator の紐付けを行ったアカウントを用意し、 Salesforce Authenticator 側でアカウントの削除を行った後にSalesforceにログインすると、以下画面が表示されます。

Salesforce Authenticator から紐付けを削除した場合のログイン後画面

画面には「モバイルデバイスでアカウントをアプリケーションから削除した場合、個人設定でアカウントを再接続できます。」とありますが、ログインが成功しないため個人設定画面に遷移することはできません。
また、「別の検証方法を使用してください」というリンクもありますが、 Google Authenticator など他のワンタイムパスワードジェネレータを登録していない場合、使用できる別の検証方法がありません。

つまり、「パスワードも、パスワードリセットに使う秘密の質問の回答も忘れた」のと同じく、Salesforceにログインできないアカウントとなってしまいます。

誤って紐付けを削除した場合の回避策

このような状況を避けるため、 Salesforce Authenticator にはバックアップ作成機能がありますが、バックアップをとっていない場合は「諦めて別のアカウントを作成するしかないのか」と思うかもしれません。
しかし、状況によっては Salesforce Authenticator の紐付けを削除したアカウントを、再度ログイン可能にすることができます。

具体的にフローチャートにしたものが以下になります。

f:id:mark-hammer:20190925225742p:plain
紐付け削除時の対応フローチャート

パターン1: 同じ組織に他のシステム管理者がいる場合

これは自分が一般ユーザ、または複数のシステム管理者が同じ組織にいる状況となります。

この場合は、以下手順を他のシステム管理者に実行してもらうことで Salesforce Authenticator のアカウント紐付けをリセットすることができます。

  1. システム管理者にSalesforceにログインしてもらい、設定画面の「ユーザ」画面を表示する。
  2. アカウント紐付けを削除してしまったアカウントの詳細画面を表示する。
  3. 「アプリケーション登録: Salesforce Authenticator」の「切断」リンク(下図)をクリックする。
  4. アカウント紐付けを削除してしまったアカウントで再度ログインすると2段階認証登録画面に遷移するので、ここで新たに Salesforce Authenticator の紐付けを行う。

手順3. の「切断」リンク

パターン2: 同じ組織に他のシステム管理者がおらず、Salesforceサポートに問い合わせができる場合

これはSalesforceの有償組織(Enterprise Edition, Professional Edition等)を使用しており、かつ自分以外にシステム管理者がいない組織が該当します。

この場合は、自分の組織内でアカウント紐付けを解除することができないため、Salesforceサポートに問い合わせて対応を依頼することになります。
なお、ログインできないためヘルプ&トレーニングからのケース登録ができないので、Salesforceサポートに電話でお問い合わせが必要になります。

パターン3: 同じ組織に他のシステム管理者がおらず、Salesforceサポートに問い合わせができない場合

これはDeveloper Edition組織、かつシステム管理者用ユーザを他に用意していない組織が該当します。

この場合は対応策がないですが、Developer Edition組織は無償、かつ無制限に作成可能なため、「新しくDeveloper Edition組織を作成してください」が回答となります。

ただし、Trailheadが紐付いているアカウントの場合、TrailheadサポートにLogin Issueとして問い合わせをすると解消してもらえるかもしれません。

なお、Trailheadは無償であり、サポートもSLAがないと思われるためいつ返事がもらえるかは分かりません。
運がよければ解消してもらえる程度に考えた方がいいかもしれません。*1

おわりに

ちなみに、今回の手順は2段階認証に Google Authenticator 等、別のワンタイムパスワードジェネレーターを使用しているユーザにも適用できます。*2

この投稿が困ったときの一助になれば幸いです。

*1:Login Issueはユーザにとって重大なため、対応はしてもらえると思うのですが、「Trailheadサポートに対応してもらえました」というコメントを今まで見たことがないのです。

*2:前節パターン1の手順3で、「アプリケーション登録: ワンタイムパスワードジェネレータ」の右にある「切断」リンクをクリックすれば対応できます。

Trailhead モジュール:AppExchange Solutions

※この内容は2019/9時点のものです。

Discover AppExchange Solutions

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/discover-appexchange-solutions

  • 説明:英語
  • Challenge:英語選択問題

Find Your Way Around AppExchange

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/find-your-way-around-appexchange

  • 説明:英語
  • Challenge:英語選択問題

Tour Solutions by Type

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/tour-solutions-by-type

  • 説明:英語
  • Challenge:英語選択問題

Install an AppExchange Solution

https://trailhead.salesforce.com/ja/content/learn/modules/appexchange-solutions/install-appexchange-solution

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

  • AppExchangeより「Flow Video Player & File Viewer」フローソリューションをインストールしてください。
  • Flow Builderにて以下作業を実施してください。
    • 画面フローを新規作成してください。
    • 以下の通り画面コンポーネントをフローに追加してください。
      • 表示ラベル:Welcome Video
      • API参照名:Welcome_Video
    • インストールしたYoutube Playerコンポーネントを画面コンポーネントに追加してください。
      • API参照名:VideoViewer
      • Youtube Video ID:n6lsAsgCnH8
    • フローの各要素を接続してください。
    • 画面フローを保存してください。
      • フローの表示ラベル:Welcome Video Flow
      • フローのAPI参照名:Welcome_Video_Flow
  • 画面フローを実行して、Youtube Videoを参照してください。

Trailhead モジュール:認定 Platform デベロッパー資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 の Platform デベロッパー向けの新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/platform-developer1-maintenance-summer19/learn-whats-new-for-platform-developers-summer19

  • 説明:日本語
  • Challenge:日本語選択問題

Apex 一括処理クラスからのプラットフォームイベントの使用のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/platform-developer1-maintenance-summer19/get-hands-on-using-platform-events-from-batch-apex-classes-summer19

  • 説明:英語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

※筆者注:Challengeの前に「ハンズオン Challenge への準備」節の手順に従って未管理パッケージをインストールしてください。

  • Database.RaisesPlatformEventsインターフェースを実装するよう、BatchLeadConvertクラスを更新してください。
  • BatchApexErrorEventオブジェクトタイプに対するApexトリガ「BatchApexErrorTrigger」を作成してください。また、各イベントレコードについて、以下の通りBatchLeadConvertErrors__cレコードの対応する項目に、イベントレコードからキャプチャしたデータを保存するようロジックを実装してください。
    • AsyncApexJobId: AsyncApexJobId__c
    • JobScope: Records__c
    • StackTrace: StackTrace__c
  • トリガが安全に一括処理されるように、1つのDML文で新規レコードのリストを全部挿入するようにしてください。

Trailhead モジュール:認定 Platform アプリケーションビルダー資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 のアプリケーションビルダー向けの新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/platform-app-builder-maintenance-summer19/learn-whats-new-for-app-builders-in-summer19

  • 説明:日本語
  • Challenge:日本語選択問題

セールスマイルストンの紙吹雪のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/platform-app-builder-maintenance-summer19/get-hands-on-with-sales-milestones-confetti

  • 説明:日本語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

  • 以下内容でパス設定を行ってください。
    • パス名:Milestones
    • API参照名:Milestones
    • オブジェクト:商談
    • レコードタイプ: -- マスタ --
    • 選択リスト:フェーズ
    • 「ステップ 2: 項目を選択してパスの各ステップのガイダンスを入力」では「次へ」をクリックしてください。「成功へのガイダンス」を設定する必要はありません。
  • 「ステップ 3: 状況を設定して保存」を以下の通り設定してください。
    • 「A. ユーザがパスの特定のステップに到達したら、画面に紙吹雪を表示して成功をお祝いします。」を有効にしてください。
    • 選択リスト値:「Closed Won」を「Selected for Celebration」に設定してください。
    • お祝いの頻度:常に
    • 「B. パスを有効化してください。現時点でこのパスを使用する準備が整っていない場合、保存して後で有効化できます。」を有効にし、「完了」をクリックしてください。
  • 以下の通り商談を作成してください。
    • 商談名:Big Deal
    • 完了予定日:今日の日付(Challengeチェック対象外)
    • フェーズ:Prospecting
  • パスを使用し、作成した商談のフェーズを「Closed Won」に設定してください。

Trailhead モジュール:認定アドミニストレーター資格の更新 (Summer '19)

※この内容は2019/9時点のものです。

Summer '19 の新機能の学習

https://trailhead.salesforce.com/ja/content/learn/modules/administrator-certification-maintenance-summer19/learn-whats-new-in-summer-19

  • 説明:日本語
  • Challenge:日本語選択問題

メールテンプレートへの画像の挿入のハンズオン

https://trailhead.salesforce.com/ja/content/learn/modules/administrator-certification-maintenance-summer19/get-hands-on-with-inserting-images-into-your-email-templates

  • 説明:日本語
  • Challenge:英語ハンズオン

【Challenge要約】

※本Challengeには公式が作成した解説があります。

  • Lightning メールテンプレートの「フォルダおよび拡張共有」をオンにしてください。
  • 以下内容でメールテンプレートフォルダを作成してください。
    • フォルダの表示ラベル:Sales
    • フォルダの一意の名前:Sales
  • 以下内容でメールテンプレートを作成してください。
    • メールテンプレート名:General
    • フォルダ:Sales
    • 件名:General
    • メールテンプレートに画像を追加してください。

Trailhead モジュール:Salesforce モバイルアプリケーションのカスタマイズ

※この内容は2019/9時点のものです。

Salesforce モバイルアプリケーションの使用開始

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_intro

  • 説明:日本語
  • Challenge:日本語選択問題

グローバルクイックアクションの作成

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_actions_global

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 以下内容で新規グローバルアクションを作成してください。
    • アクション種別:レコードを作成
    • 対象オブジェクト:商談
    • 表示ラベル:New Offer
    • 名前:New_Offer
  • 作成したグローバルアクションのページレイアウトに、以下項目のみ設定してください。
    • 商談名
    • 完了予定日
    • フェーズ
    • 金額
  • 定義済み項目値にて、「フェーズ」項目の値を「Qualification」にするよう設定してください。

※筆者注:
設定を正しく実施しても The 'Opportunity Name', 'Close Date', 'Stage' and 'Amount' fields do not appear to be on the new action page layout. というエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

オブジェクト固有のクイックアクションの作成

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_actions_objectspecific

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 取引先オブジェクトの「Account Layout」ページレイアウトに対し、「Salesforce モバイルおよび Lightning Experience のアクション」の先頭に「モバイルスマートアクション」を配置してください。

※筆者注:
設定を正しく実施してもFound Quick Actionというエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

コンパクトレイアウトのカスタマイズ

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_compact_layouts

  • 説明:日本語
  • Challenge:英語ハンズオン

Challenge要約

  • 以下内容で取引先オブジェクトにコンパクトレイアウトを作成してください。
    • 表示ラベル:Mobile Account Layout
    • 名前:Mobile_Account_Layout
    • コンパクトレイアウト項目:取引先名、年間売上、電話、種別を選択
  • 主コンパクトレイアウトをMobile Account Layoutに変更してください。

※筆者注:
設定を正しく実施しても The 'Mobile Account Layout' compact layout does not appear to have the following fields in this order: Account Name, Annual Revenue, Phone, Type. というエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。

ナビゲーションのカスタマイズ

https://trailhead.salesforce.com/ja/content/learn/modules/salesforce1_mobile_app/salesforce1_mobile_app_navigation

  • 説明:日本語
  • Challenge:日本語選択問題