tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:LEXのカスタマイズとLightningページのAPI名管理について

Lightning Experienceのカスタマイズを試していたのですがふと気づいたときに組織内に「FlexiPage1」や「FlexiPage2」といったLightningページが作成されている状態となっていました。

f:id:tyoshikawa1106:20170815050208p:plain


いつ作成されたのかなと確認したところ取引先や商談の画面をカスタマイズしたタイミングで作成されていました。
f:id:tyoshikawa1106:20170815050529p:plain


あまり意識していなかったのですがLightning Experienceのページをカスタマイズして保存するとき表示ラベル名と一緒にAPI名も登録できるようになっています。
f:id:tyoshikawa1106:20170815050738p:plain:w300


API名といってもカスタム項目やレコードタイプのようにApexから操作することはほとんどないと思いますので、それほどシビアに管理しなくても良さそうですが、変更セットをつかってオブジェクト情報をリリースするときに影響がありました。


リリースするときはページレイアウトやカスタム項目など細かく分類分けされてリリースできますが、オブジェクトの情報をリリースしようとしたとき、Lightningページが作成されていないものをリリースしようとすると「FlexiPage1」が存在しませんといったエラーメッセージが表示されます。


リンクなどでどのページのことが原因はすぐに見つけることができますがやはりAPI名はしっかりと指定した方が管理しやすい組織となりそうです。


LightningページのAPI名をメンテナンスしようとしたとき、レコードの編集ページ機能からひとつずつ変更していくのも良いのですがその場合変更前のものが残っていないか確認するのが大変です。


この問題はLightning アプリケーションビルダーの設定ページで解決できました。この設定ページではAPI名と一緒に表示ラベルと種別を確認できます。
f:id:tyoshikawa1106:20170815051435p:plain


編集リンクをクリックすればレコード編集ページに移動できるのでそこでAPI名を変更して元の設定画面に戻ってくることが出来ます。
f:id:tyoshikawa1106:20170815051826p:plain:w300

f:id:tyoshikawa1106:20170815051839p:plain


これでLightningページのAPIを効率よくメンテナンスできると思います。
f:id:tyoshikawa1106:20170815052116p:plain


API名をつけておくと変更セットやパッケージの作成作業もやりやすくなると思います。
f:id:tyoshikawa1106:20170815052227p:plain

SFDC:TrailheadのService Cloud Platform Efficiencyをやってみました

f:id:tyoshikawa1106:20170813100734p:plain

知らない単語が出てきたりしたのでメモ。


スナップインを使用すると、モバイルアプリに次のものを配信できます。

ナレッジ、ライブエージェントチャット、SOSビデオチャット、ケース管理

モバイルコミュニティにより、顧客は次のことが容易になります。

任意のデバイスからセルフサービス情報とデータにアクセスする

電話からフィールドまで、フィールドサービスライティングは、サービスチームがよりスマートに作業できるようにします。

ディスパッチャの完全なスケジュールビュー

サービスアナリティクスでは、チームは次のことを実行できます。

実行可能な指標を取得してクリック数でインサイトを見つける

サービスアナリティクスは、エージェントが次のことを実行できるようにすることで、顧客体験を向上させます。

顧客プロファイルとケース履歴を使用して洞察を得、十分な情報に基づいた意思決定を行う

Service Analyticsでは、KPIを設定できます。

単一のダッシュボードで

データの分析が完了したら、アインシュタインディスカバリーは以下を生成します。

顧客事例の取り扱いに関する予測と推奨事項

SFDC:Trailheadのワークフロールールの移行をやってみました

Trailheadのワークフロールールの移行をやってみました。基本的に難しい内容では無いのですがステップ3のチャレンジでハマったのでちょっとメモ。チャレンジをやるときはユーザの言語を英語にした方が良さそうです。またplaygroundでまっさらな環境で始めると間違いが無いと思います。

f:id:tyoshikawa1106:20170813094628p:plain

ステップ3のチャレンジ

ステップ3のチャレンジは商談登録時に特定の条件だった場合にToDoまたは契約を作成します。

プロセスアクションへのワークフローアクションの対応付け 単元 | Salesforce Trailhead


下記のような感じ。

商談のステータスがClosed Wonかつ商談に紐付く取引先の業種がBanking

f:id:tyoshikawa1106:20170813093752p:plain

f:id:tyoshikawa1106:20170813093807p:plain

商談のステータスがClosed Won

f:id:tyoshikawa1106:20170813094104p:plain

f:id:tyoshikawa1106:20170813094115p:plain

ステップ4のチャレンジ

こっちはプロセスの順番を変更するだけでした。ステップ3でつくったプロセスをコピーしてドラッグ&ドロップで変更します。


これでクリアできました。ステップ3がちょっとハマりましたがそれ以外はサッと終わらせることができるモジュールです。
f:id:tyoshikawa1106:20170813094601p:plain

SFDC:Apple Watchで使えるSalesforceアプリを試してみました

いつか使ってみたいと思っていたApple Watchを手に入れたのでSalesforceのWatchアプリを試してみました。
f:id:tyoshikawa1106:20170811153419j:plain

Apple Watchのセットアップ

箱から出すとこんな感じでした。本体と説明書、別サイズ用のバンドと充電器が入っていました。
f:id:tyoshikawa1106:20170811154132j:plain


充電方法はこんな感じで磁石で付くようになっています。
f:id:tyoshikawa1106:20170811154319j:plain


箱から出して充電池しておくと使えるようになります。
f:id:tyoshikawa1106:20170811201941j:plain


iPhoneのWatchアプリを起動してペアリングの設定を行います。
f:id:tyoshikawa1106:20170812192249p:plain:w300


f:id:tyoshikawa1106:20170812192317p:plain:w250


f:id:tyoshikawa1106:20170812192408p:plain:w250


ペアリング設定後にその他細かい設定を行えます。
f:id:tyoshikawa1106:20170812192642p:plain:w250

f:id:tyoshikawa1106:20170812192705p:plain:w250

f:id:tyoshikawa1106:20170812192857p:plain:w250

f:id:tyoshikawa1106:20170812192940p:plain:w250

f:id:tyoshikawa1106:20170812193015p:plain:w250


Apple Watchの初期設定は画面に従って操作していけば問題なく設定できました。またWatch OS3のアップデートできるので初期設定後にアップデートしておくと良さそうです。

Apple WatchにSalesforceアプリのインストール

WatchアプリとしてサポートされているSalesforceアプリは下記の2つです。


iTunesアプリページでWatch対応しているか確認できます。
f:id:tyoshikawa1106:20170812194037p:plain



iPhoneのWatchアプリを起動してメニューのマイウォッチを選択します。ページの上側は標準アプリですが、下の方にはiPhoneにインストールしていてWatch対応されているアプリが表示されます。選択するとApple Watchアプリ側にインストールされます。

f:id:tyoshikawa1106:20170812195554p:plain:w250

Salesforce Authenticatorの利用

Salesforce AuthenticatorはSalesforce側で2要素認証機能を有効化したときに利用するアプリです。iPhoneからだと端末のロックを解除する操作が必要でしたが、Apple Watchでは腕に付けていればパスコード無しで起動できるのでスムーズに承認することができました。

f:id:tyoshikawa1106:20170812195834j:plain


Salesforce Authenticatorアプリですが、Herokuの2要素認証を有効化したときの解除もこちらで対応可能です。
f:id:tyoshikawa1106:20170812195853j:plain

Salesforce Waveアプリの利用

こちらアプリを起動してみたのですが読み込み中から切り替わりませんでした。ちなみにEinstein Analyticsにバージョンアップしています。
f:id:tyoshikawa1106:20170812200800j:plain
※後日試したらちゃんと表示されましたネットワークなど一時的な原因だったようです。

Salesforce1アプリの通知を受け取る

Salesforce1アプリ自体はApple Watch対応していませんが、通知の受け取り機能は利用できます。マイウォッチ設定の中にiPhoneからの通知を受け取る設定があります。
f:id:tyoshikawa1106:20170812201544j:plain:w250


ここでSalesforce1の通知を有効化します。
f:id:tyoshikawa1106:20170812201555j:plain:w250


これでChatterのメンションなどでSalesforce1アプリに通知が来た際にApple Watch側で確認することができました。(Apple Watch側の通知有効化ができない場合はiPhone側で通知設定が無効になっていないか確認してみてください。通知設定でサウンドを有効化しないとApple Watch側のサウンドも有効化されないかもしれません。)
f:id:tyoshikawa1106:20170812201707j:plain


Apple Watchで使えるSalesforceアプリはこんな感じでした。Chatterの確認や投稿できるかなと思っていたのでSalesforce1アプリはWatch対応してないのか..と思ったのですが通知の受け取りができれば連絡があったときにすぐに気付けて便利だと思います。

Apple Watchのその他の便利機能

話にだけ聞いていた自動ロック解除機能も試してみました。PCを開いたタイミングで自動でロック解除が実行されて便利そうでした。

SFDC:Winter '18 Sandbox Previewのスケジュールが公開されました

Winter'18のSandbox Previewのスケジュールが公開されたみたいです。
f:id:tyoshikawa1106:20170810083711p:plain

Salesforce Winter '18 Sandbox Preview Instructions


日本でよく使うCS5はSeptember 8/9, 2017ということで9月の8日9日だと思われます。
f:id:tyoshikawa1106:20170810083833p:plain


ちなみにSandbox組織とは別にプレリリース環境が用意されています。
f:id:tyoshikawa1106:20170810084504p:plain

Spring '17 Prerelease - Salesforce.com


過去のバージョンのサイトはクローズされていたのとWinter'18のプレリリース環境のサイトはまだオープンしていないため、現時点での作成はできませんが、過去に作成したプレリリース環境にログインしたところ、Winter'18に切り替わっていました。

f:id:tyoshikawa1106:20170810084709p:plain


設定画面の背景が白から変更されることが検討されているっぽいです。
f:id:tyoshikawa1106:20170810084818p:plain


プレリリース環境は検証中の機能もありますので、実際どうなるかわかりませんがプレリリース環境を作成済みの場合はWinter'18をザックリ体験できると思います。

追記

設定画面以外も雰囲気変わりそうです。
f:id:tyoshikawa1106:20170810085455p:plain

f:id:tyoshikawa1106:20170810085506p:plain

f:id:tyoshikawa1106:20170810085521p:plain

SFDC:Salesforceがサポートするメールの形式について

こういった情報はあるのかのと思ったのですが、ヘルプに「Salesforce は、メールアドレスの認証において RFC 2822 に準拠しています。」と紹介がありました。

f:id:tyoshikawa1106:20170809085727p:plain

Salesforce はメールアドレスをどのように制限していますか?


また、メールアドレスが有効な形式であることを確認する方法も紹介されています。数式で使える正規表現も紹介されています。
f:id:tyoshikawa1106:20170809085851p:plain

メールアドレスが有効な形式であることを確認する方法

サンプル

REGEX ( UPPER ( EmailField__c ) ,"^[A-Z0-9._%+-/!#$%&'*=?^_`{|}~]+@[A-Z0-9.-]+\\.[A-Z]{2,4}$")