Salesforce Spring'19 PickUp

![spring19.png](https://qiita-image-store.s3.amazonaws.com/0/42504/6bde68c0-3c6d-5638-64a9-95320df63e79.png)
自転車に乗っているおじいちゃんというと、株主優待の桐谷さんを思い浮かべてしまう讃岐です。
ということで、Salesforce Platform Advent Calendar2018 20日目ですよ。
今回は[公開されたばかりのSalesforce Spring'19 リリースノート（英語）](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/salesforce_release_notes.htm)をざっと読んで、私が気になった新機能をピックアップしていきます。
ただし、執筆時点でリリースノートには「プレビュー版」となっており、つまり本当にリリースされるかどうかは分からないぜということなのでその点はご理解の上お読みください。

なお、スペシャルサンクスはGoogle翻訳さんです。

## [カスタムヘルプセクション](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_general_lex_help_menu.htm)
ユーザの方はわからないことがあった場合まずヘルプを見ることが多いですが、Salesforceのオンラインヘルプには自社特有のカスタマイズ事項や運用については記載されておりません。
また、管理者の方が夜なべして作成したマニュアルも見てもらえなければ意味がありません。
そこでこの新機能です！
単純に言えば画面右上にあるヘルプボタンから表示されるセクションにリンクを追加できるだけの機能ではありますが、分からないことがあればとりあえず？マークをクリックする方たちには効果てきめん。社内Wikiや運用マニュアルへのリンクを置いておきましょう。
次の日からあら不思議、問い合わせ件数が減る（かもしれません）
![Custome Help Menu.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/e39be789-0fcd-35ce-09a5-e18069efe4f1.jpeg)

## [リストビューのデフォルト固定](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_lex_pinned_lists.htm)
皆さんはオブジェクトタブをクリックした時に最近参照したデータがなくて切ない思いをしたことはありませんか？いろんなDev組織を渡り歩く私は日常茶飯事です。
とりあえず適当な取引先レコードを見たいだけなのに、すべての取引先ビューに切り替えるのめんどい。。
しかし、これを使えば好きなビューに固定化できるようになります。グッバイ、最近参照したデータビュー
![view.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/c80c5093-32ca-5a4c-5a25-6e0eb6dd62e8.jpeg)


## [レコードの印刷ページ](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_printable_view.htm)
LEXでレコード詳細ページの印刷レイアウトが追加されます。
なんか見たことある画面？・・たぶん気のせいではないでしょうか。
![印刷画面.gif](https://qiita-image-store.s3.amazonaws.com/0/42504/22451828-7c17-d654-60e7-fd2d3ff325ba.gif)

## [データストレージの増加](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_storage.htm)
Salesforceを活用していると当然ながらレコード数が増えてくるので、データストレージの増加は無条件に嬉しいですね。
こちらのリリースはSpring'19から遅れて3月下旬ということなので、もうしばらく踏ん張りましょう。

## [項目履歴の保持期間を厳格化](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_pds_field_history_tracking_deletion.htm)
項目を誰がいつ何に変えた、といったデータを保持してくれる項目履歴管理ですが、この保持期間が厳格化されます。
もともと24ヶ月間保持するという仕様ではあったのですが、今まではわりとその制限が緩く（？）24ヶ月以降も保持されていたそうです。
ただし、Spring'19からこれを厳格化し、期間を過ぎたものは削除しますよ！というのがこの新機能です。新機能？
回避策はアドオンを追加購入し10年間まで保持できるようにしてもらうか、あるいは今のうちにExportしておけということです。

## [商品追加画面の改善](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_sales_other_changes_product_selector.htm)
商談から商品追加する画面で表示できる件数が増えました。
変更前後のキャプチャを撮った後にそれほど面白みがないことに気付きましたが悔しいので載せておきます。

Winter'19
![Old_AddProductView.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/749d64e2-22a6-27a7-e4e6-fdffeec8c8b3.jpeg)

Spring'19
![New_AddProductView.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/fd1f4a75-ce19-9837-be0b-2b1f374ace70.jpeg)

## [公開カレンダー表示](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_sales_productivity_calendar_public.htm)
LEXで公開カレンダーを表示できるようになりました。
もういちいちClassicに戻す必要はありません！
![公開カレンダー.gif](https://qiita-image-store.s3.amazonaws.com/0/42504/708af452-0860-e2bc-3026-7cc9f5cd2955.gif)

## [カスタマイザブル売上予測の廃止](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_sales_other_changes_customizable_forecasting_retirement.htm)
来る機能あれば去る機能もあります。グッバイ、カスタマイザブル売上予測。
ただ、日本で利用している組織は少ないような気がするので、観測範囲では困っている人は見かけておりません。
もし「うちはバリバリ使ってるぜ！」という方は、とりあえずTrailheadで"コラボレーション売上予測"と検索しましょう。

## [レポートのカラム横幅設定](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_rd_reports_resizecolumn.htm)
レポートの各項目の横幅はある程度自動で調整されますが、項目数が多かったりすると大事な項目が見えなくなってしまうことありますよね。
だったら自分で設定しろ！ということか分かりませんが、自分でリサイズできるようになりました。
ただ、この設定自体は保存されるわけではなく、次にレポートを表示した時には最初の状態に戻っていました。
![レポートリサイズ.gif](https://qiita-image-store.s3.amazonaws.com/0/42504/7660f2da-5281-824f-1674-08a8b47ce7a7.gif)

## [12列ダッシュボード](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_rd_dashboards_12_columns.htm)
ダッシュボードの編集画面でコンポーネントを配置できるマス目がより細かくなりました。
より見やすくなったダッシュボードを作ることで部長もハッピー！
なお、ダッシュボードのプロパティ設定から、以前の9列ダッシュボードに変更することも可能です。
![12列ダッシュボード   Salesforce.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/afa5620a-2eaf-e06d-1ffb-21328a9436e7.jpeg)

## [Chatter投稿にハイパーリンクを追加](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_chatter_hyperlinks.htm)
Chatterのリッチテキストエディタが変わって、文字列にハイパーリンクを設定できるようになりました。
社内のChatterで勉強会やコミュニティのイベントへのお知らせリンクをバンバン投稿しちゃいましょう！
![ChatterLink2.gif](https://qiita-image-store.s3.amazonaws.com/0/42504/0cb8de98-6794-098d-8706-759b609227a2.gif)

## [新しくなったフロービルダー](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_forcecom_flow_flow_builder.htm)
遅い遅いと話題に上がることの多かったフローデザイナーですが、新しくフロービルダーとして生まれ変わりました。
これについては既に[花外さんが記事を書かれている](http://piyohanasan.hatenablog.com/entry/2018/12/16/131400)ので、詳しくはそちらを御覧ください。グッバイ、Flash!

## [LEXの有効化？](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_cruc_lex_turned_on.htm)
「重要な更新」に分類されているこちらですが、イマイチ内容が分かりませんでした。
Winter'20で自動有効化される機能ということで、ざっくり言うと「みんな早くLEXにおいでよ！」（意訳）です。
もうちょっと具体的に見ると、LEX権限がある全ユーザにLEXへの切り替えリンクが表示され、さらには毎週自動でLEXに切り替わるといった機能のようです。
毎週切り替え機能は既にある機能なのですが、これが無効化できなくなるということでしょうか・・？
いずれにせよ「Classicでしか動かない個別開発機能があるから移行できない！」という方は、早めに移行計画を立てておきましょう。

## [権限セットの入れ子(Pilot)](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_forcecom_psg.htm)
これは複数の権限セットを束ねた権限セットを作成する機能です。既存機能でいうと公開グループのように入れ子にできるということです。
パッケージ化も可能とのことなので、ISVパートナーには嬉しい新機能ですね。

## [Lightning Object Creater](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_forcecom_general_create_objects_from_spreadsheets.htm)
スプレットシートからオブジェクトを作成することのできる機能です。わりと大々的に発表されていたのでご存知の方もおられるのではないでしょうか。
既存で使っているGoogleのシートやExcel,csv等からボタンぽちぽちですばやくオブジェクトと項目を作成することができます。
ただ、既存のシートをそのままオブジェクトにしてもいいかという話はありますので、ちゃんと画面やレポートなどを設定してから使わないと、あとで痛い目に合うかもしれません。
ご利用は計画的に。
設定箇所はオブジェクトマネージャではなくアプリケーションマネージャのようですが、残念ながら見つけることができませんでした。
20190206追記：リリースノートから削除されたようです

## [アプリケーションに基づいたホーム切り替え](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_home_assign_app.htm)
Lightningアプリケーション毎にホームタブの内容を変えることが可能になります。
例えばSales用のホーム、Service用のホームなど、様々なアプリ利用者に対して指定が可能です。
ただし、プロファイル固有のホームが割り当てられている場合、それが優先されるようなので使い分けましょう。
![ホーム   Salesforce.jpg](https://qiita-image-store.s3.amazonaws.com/0/42504/cc4cd043-d475-24bd-c025-2d65badfd589.jpeg)

## [項目の利用箇所を洗い出す(beta)](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_forcecom_fields_where.htm)
オブジェクトにカスタム項目を追加しまくって、いつの間にか上限に近づいていたりしませんか？
あるいはレポート作る時に項目が多すぎて嫌になっていませんか？
そんな時に重い腰を上げて必要ない項目を削除しようと考えるわけですが、どこで使われているのか分からず削除するのが怖くて結局放置していませんか？
そんな震える子山羊（Admin）の皆さん、おまたせしました。項目がどこで使われているかを調べてくれる機能の登場です！
削除する時にApexなどから参照されている項目はエラーになってくれますが、単にレイアウトに配置しているとかそういった項目の削除時にはエラーになってくれませんよね。そんな時はこの機能を使ってみてください。
ただし、調査可能な範囲（機能）は限られているので、その点はご注意を。
![FieldValid.gif](https://qiita-image-store.s3.amazonaws.com/0/42504/7fd6d01c-7887-4241-c6ca-a9ccb34a92ae.gif)

## [Lightning Web Components](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_lwc.htm)
こちらはLightning Componentの新しい開発モデルですが、多くは語りません。というかWeb Componentsの知識がないので語ることができません。。
大事なところなので、有識者の方々が記事にしてくれるのを正座して待ちましょう。
待ちきれない方は[Trailheadのクイックスタート](https://trailhead.salesforce.com/en/content/learn/projects/quick-start-lightning-web-components)または[Play Groud](https://developer.salesforce.com/docs/component-library/tools/playground)をいじってお待ち下さい。

## [項目レベルセキュリティを適用するSOQL(beta)](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_apex_select_with_security_enforced.htm)
単純なSOQLのクエリ文でFLS（項目レベルセキュリティ）が効かないのは開発者にはおなじみのことです。そのため、クエリを投げる前にコードの中でDescribeといった設定データをチェックし、実行ユーザが各項目にアクセスできるかを調べるといったことが行われています。
ただ、この拡張文を使うことによってFLSが効いて、必要な権限がない場合は例外がスローされるようになるということです。
リリースノートに載っていたサンプルはこちら。
`SELECT Id, Parent.Name, Parent.Website FROM Account WITH SECURITY_ENFORCED`
動的なApexで効くかどうかなど仕様を確認する必要はありますが、ApexからSOQLを実行する場合は便利になるかもしれませんね。

## [Sandboxを基にしたSandbox作成](https://releasenotes.docs.salesforce.com/en-us/spring19/release-notes/rn_sandboxes_cloning_ga.htm)
今までSandboxは本番組織をコピーして作成していましたが、これをSandboxから作成することができるようになります。
Scrach Orgを使わない設定ベースでSandboxを利用する方たちには、テスト環境や開発環境を作るのに役立ちそうですね。

#最後に
ということでSpring'19のリリースノートをつまみ食いしながら新機能をピックアップしてみました。
現在新機能が使えるのは[Pre Release組織](https://www.salesforce.com/form/signup/prerelease-spring19/)だけなので、いち早く試してみたい方はサインアップしてみてください。
[Sandboxプレビューについては1月から](https://help.salesforce.com/articleView?id=000247932&language=ja&type=1)ということなので、こちらはもうしばらく待ちましょう。

また、私が運営を担当している新機能照らす会でもバージョンアップに合せて勉強会を実施する予定なので、よろしければ[こちらをチェック](http://www.trailblazers.jp/group/newfeatureterra_ug)してください。1月くらいには申込みサイトがオープンする予定です。

Let's Enjoy Spring'19!