Salesforce変数のトラブルシューティング
Last Updated 10月 12, 2021
背景
WalkMeは7つの事前定義されたSalesforce変数を識別できます(Salesforce Classicでは、これらを利用するのにWalkMe for Salesforce(Salesforce向けWalkMe)パッケージは必要ありません)。
- walkme_sf_vars.organizationId
- walkme_sf_vars.organizationName
- walkme_sf_vars.profileId
- walkme_sf_vars.roleId
- walkme_sf_vars.userId
- walkme_sf_vars.userLanguage
- walkme_sf_vars.userName
制限
Salesforce Lightningでは次のものは使用できません。
- walkme_sf_vars.organizationId
- walkme_sf_vars.organizationName
Salesforce Lightning CommunitiesではsfVarsはサポートされていません。
背景と導入
- WalkMe for Salesforce(WM4SF)パッケージ:WalkMeによる設定に加えて、WalkMe for Salesforce(Salesforce向けWalkMe)パッケージの導入を推奨します。 Salesforce Lightningでは必須です。 Salesforce Classicの場合は、これによりビルダーがカスタムのSalesforce変数を含めることができるようになります。
sfVarsのトラブルシューティング
「walkme_sf_vars」が未定義として表示される場合は・・・
すべてのプラットフォームについて以下を確認します。
- 更新または変更をテストする際にはキャッシュおよびクッキーを必ずクリアにします。
- 次を実施することで、形式が不正なカスタム変数を確認します。
- Editor>[Settings(設定)]>[General(全般)]>[Salesforce Variable(Salesforce変数)]のセクションに移動します。
- ここで、このナレッジベースに従い、カスタム変数の形式が正しく設定されているかを確認します。
- 変数に適切なシンタックスが使用されていることを確認します。例えば、WalkMe_Sf_Vars.ProfileIDではなく、正しくはwalkme_sf_vars.profileIdです。
Salesforce Classic
-
- 環境のコンソールからwindow.__sfdcSessionIdを呼び出し可能なことを確認します。
- 「未定義」が返される場合は、ユーザーがAPIの権限を持っていないということです。 Salesforceの管理者に依頼して、関連ユーザーがsfVarsを使えるようAPIの権限を付与してもらいます。
- この設定を見つけるには、Salesforceで[Setup(設定)]>[Security Controls(セキュリティのコントロール)]>[Session Settings(セッションの設定)]>[Require HttpOnly(HttpOnly 属性が必要)]を確認します。
Salesforce Lightning
-
- まず、WM4SFパッケージが導入されていることを確認します。Lightningの実装ではこれは必須なためです。
- このナレッジベースに従い、不正な形式のカスタム変数を確認します。
- 下のようなコンソールエラーが表示される場合は、ユーザーがsfVars VisualForceページへのアクセス権を持っていない可能性があります。
- ユーザーにWM sfVars Visual Forceページへのアクセス権があることを確認します。 アクセス権は、WalkMeおよび変数へのアクセスが必要なプロファイルすべてで必要です。 これには次を実施します。
-
-
- [Setup(設定)]に移動します。
- [Quick Find(クイック検索)]で「Visualforce ページ」を検索し、ページに移動します。
- [V]>[vf_WalkMeSfVars]に移動し、[Security(セキュリティ)]をクリックします。
- 右側の[Enabled Profiles(有効なプロファイル)]にすべてのプロファイルを追加して、ユーザープロファイルでsfVarsを有効化します。
-
-
- また、ローカルストレージで「walkme-sf-vars-last-fail」キーがあることを確認することもできます。
- window.__sfdcSessionIdが 環境のコンソールから呼び出し可能なことを確認します。 「未定義」が返される場合は、ユーザーがAPIの権限を持っていないということです。 Salesforceの管理者に依頼して、関連ユーザーがsfVarsを使えるようAPIの権限を付与してもらいます。
- document.cookieの呼び出しに「sid=####」が含まれることを確認します。含まれない場合は、お客様がそのセッションでHTTPOnlyを有効化している可能性があります。 HTTPOnlyは、コードからsidクッキーを見られないようにするため、sfVarsはHTTPOnlyでは動作しません。
- この設定を見つけるには、Salesforceで[Setup(設定)]>[Security Controls(セキュリティのコントロール)]>[Session Settings(セッションの設定)]>[Require HttpOnly(HttpOnly 属性が必要)]を確認します。
コミュニティー:
-
- WM4SFパッケージが導入され、最新のバージョンであることを確認します。
- コミュニティーでVisualForceページが存在することを確認します。
- SalesforceでユーザーのAPIが有効化されていることを確認します。
この記事は役に立ちましたか?
はい
いいえ
ご意見ありがとうございます!