Salesforce Summer ’23 リリースノートから気になったリリースまとめ
こんにちは。遠藤です。
先日5月10日(水)に開催した「ゆるっとSalesforceトーク #17 」のテーマはSummer '23リリースノートから、co-meetingメンバーが気になったリリースについて取り上げました。
Summer '23の日本でのリリースは、6月11日(日)です。
Summer '23のSandboxプレビューはすでに利用可能となっていますので、現在、実際に新しい機能をある程度試すことができます。
参考: (2023年4月) Salesforceの運用に関する重要なお知らせ
では、以下イベントで紹介したリリースになります。
Salesforce全般
全般的な機能強化
Webアクセシビリティを考慮してアイコンの色などが変わるらしいです。
以下、プレビュー組織の取引先レコードページのスクリーンショットですが、赤系の色がだいぶ鮮明になってます。
開発視点では、古いSLDSでアイコン表示などしているアプリがある場合は入れ替えないと違和感出そうなので注意が必要です。
Einstein Search
ユーザー プロファイルごとに検索可能なオブジェクトを構成する (ベータ)
Einstein Searchでプロファイルごとに検索対象オブジェクトを設定できるようになるそうです。
カスタマイズ
Salesforce Connect
Salesforce から GraphQL を介して管理される外部データ ソースの接続 (正式リリース)
Salesforce ConnectでGraphQL APIを持つ外部サービスに接続する機能がGAとなりました。
権限
プロファイルではなく権限セットで項目の項目レベルセキュリティを設定 (正式リリース)
アクセス権限周りの設定がプロファイルから権限セットに移行される話が徐々に進行中です。
切り替えるには「ユーザ管理設定」の「項目作成時の権限セットの項目レベルセキュリティ」を有効化します。
項目追加ウィザードの「項目レベルセキュリティの設定」がプロファイルから権限セットに切り替わりました。
User Access and Permissions Assistant からのレポートで詳細情報を表示する
Salesforce LabsがUser Access and Permissions Assistant というAppExchangeアプリを公開しています。
ヘルプはこちら User Access and Permissions Assistant。
このアプリを使用すると、プロファイルを権限セットに変換したり、誰がどの権限セットを持っているか、どの権限がどの権限セットに付与されているか確認できるようです。
ユーザアクセスポリシーによるユーザアクセスの自動化と移行 (ベータ) 設定
権限セットなどを条件に従って自動的に付与できるようになるようです。
権限セット、権限セット グループ、権限セット ライセンス、管理パッケージ ライセンス、グループ、キューが対象です。
「ユーザアクセスポリシー(ベータ)」で有効化できます。
メニューに「ユーザアクセスポリシー」が出てきましたが、「新規」をクリックするとエラーが出たのでまだ試せないようです。
一般設定
関連リストの一括クイック アクションによる生産性の向上 (ベータ)
関連リストの一括クイックアクションが追加できるようになります。
開発
Lightningコンポーネント
Use Lightning Web Security for Lightning Web Components and Aura Components (Generally Available)
AuraもLightning Web Securityに対応しました。
しかし、カスタムコンポーネントが存在する組織では自動でロールアウトされないので注意が必要です。
Synchronize Component Data Without a Page Refresh Using RefreshView API (Generally Available)
LWCでもコンポーネント単位で再描画する機能がGAとなりました。
Create Scoped Slots in Light DOM
Light DOMでslotが使えるようになったらしいです。
Set Dynamic Values for the Slot Attribute in Lightning Web Components
slotの属性に動的な値を指定できるようになったとこのこ。
そもそもslot属性については、Pass Markup into Slots - Salesforce Lightning Component Libraryを参照。
Assign CSS Stylesheets to a Component
super.stylesheetsで親コンポーネントのスタイルを継承できるようになります。
Scan More Barcodes at Once, Save Time–Improved Bulk Scanning with BarcodeScanner
同時に複数バーコードをスキャンできるようになるらしいです。
LWC Offline Test HarnessというツールでオフラインベースのLWCモバイルアプリの開発・テスト・デバッグのサイクルがいい感じにできるようになるらしいです。
スプレッド構文がLWCの属性でサポートされるようになります。
社内ではちょっと悪手じゃないかという話も出ました。
Apex
Set型でもIterableインターフェースが使えるようになった
例えば、String.joinに直に渡せるようになります。
before
Set<String> letters = new Set<String>{'a','b','c','d'};
String.join(new List<String>(letters), '...')
after
Set<String> letters = new Set<String>{'a','b','c','d'};
String.join(letters, '...')
チェーンされたQueueableジョブのスタック深度の指定 (Beta)
ベータですが、Queueableのチェーン数を制限できるようになります。
これまでは開発組織では5まで、本番組織では無制限で、変更はできませんでした。
DataWeave in Apex を使用したさまざまな形式へのデータ変換の有効化 (ベータ)
例えば、CSVの解析に独自のクラスを作ったりが不要になります。残念ながらSpring '23と変わらずベータでした。
パッケージのインストール中に実行されるテストのコード カバレッジが変更されました
@IsTest(OnInstall=true)のテストのコードカバレッジが計算されなくなり、インストールのパフォーマンスが上がるらしいです。
そもそも私は、@IsTest(OnInstall=true)は使ったことがありませんでした。
参考: isTest アノテーション | Apex 開発者ガイド | Salesforce Developers
パッケージ化
Transfer Package Ownership to a Different Dev Hub (Generally Available)
2GPのパッケージの所属するDev Hub組織から他の組織に移行できるようになる機能がGAとなります。
例えば、PBOを取得する前に開発会社が自社のDev Hubで開発して、PBOの準備ができたら移管するということも可能になります。あとは会社の統合とかにも対応できそうですね。
しかし、ケース申請してSalesforceが実行するそうなので、そんなに気軽に利用できないかもしれないです。
「パッケージのインストールとアップグレードが高速になりました。」らしいです。転送アップグレードの時間が短縮されたらうれしい。
開発時にもパッケージインストールが速くなると効率が上がる場面もありそう。
プラットフォーム開発ツール
スケーラブルなアプリを展開し、Scale Center でシステム パフォーマンスを分析する
こちらの投稿からScale Centerは2021のDreamforceにて発表があったらしいですが、存在を知りませんでした。なにやら便利そうです。
情報もあまりないですね。以下のブログ記事あたりがわかりやすそうですが。
Experience Cloud
エクスペリエンスビルダーでのコンポーネント
LWRサイトにSite Logoコンポーネントは元々カスタマイズされたログインとサインナップページようだったらしいですが、Community LogoコンポーネントがSite Logoコンポーネントに置き換えられるようです。
開発者の生産性
Aura サイトでの Lightning Web セキュリティの使用 (正式リリース)
AuraサイトでもLWSがサポートされるようになります。
LWR サイトで Lightning Web コンポーネントのカスタムプロパティタイプとエディタを作成する (ベータ)
LWRサイトに埋め込むコンポーネントでも、カスタムプロパティエディタを作れるようになるらしいです。
セールス
Quotes
Create Quotes Without a Related Opportunity
見積を商談とは独立して作れるようになります。
有効化するとセールスに見積タブが追加されました。
Calendar
Maximize Your Productivity with Calendar Enhancements
一度に表示できる行動の上限が500になります。
Salesforce フロー
Flow Builder
Use Email Templates in the Send Email Action
「メール送信」アクションで、ついにテンプレートが使えるようになります。
Search and Display Data Table Results in Screen Flows
Data Tableに検索ボックスが追加できるようになったらしいです。
フロー管理
New Process Creation Is No Longer Available
プロセスビルダー廃止に向け、新規にプロセスを作れなくなります。
Delete Flows from Second-Generation Managed Packages
カテゴリー的にパッケージ化の話ですが、第二世代管理パッケージからフローを削除できるようになるようです。
Find Flow User Permissions More Easily
これまではバラバラにシステム権限に置かれていたフロー用のユーザ権限がまとめられて表示されるようになるようです。
セキュリティ、ID、プライバシー
ID とアクセス管理
Verify User Email Addresses(ユーザーの電子メール アドレスを確認する)
ユーザのメールアドレスが検証済みかどうかを画面で確認できるようになるようです。
これまでは検証済みかどうかは、ApexのUserManagement.sendAsyncEmailConfirmationで確認するしかなかったようです。
OAuth 2.0 Username-Password Flow Blocked by Default in New Orgs
ユーザー名パスワードフローがデフォルトでは制限されるようになります。
サーバー間連携はより安全な「OAuth 2.0 Client Credentials Flow」がサポートされるようになったためでしょうか。
Salesforceヘルプ: サーバ間インテグレーション用の OAuth 2.0 クライアントログイン情報フロー
おわりに
以上になります。今回はたくさんピックアップしていたので記事に起こすのが大変でした。
遠藤的には、見積書が商談なしに作れるのが結構大きいアップデートだなと思いました。
余談ですが、プレビュー組織の作成について。
前回のゆるっとSalesforce #16ではスクラッチ組織定義ファイルについて取りあげましたが 、その中でスクラッチ組織定義ファイルにrelease: "preview"を追加することで、次のバージョンのプレビュー組織を作成できると紹介させていただきました。今回実際に試してみましたが、ちゃんとSummer '23のプレビュー組織が作成できました。
次のバージョンの機能を確認したいときにさっとプレビュー組織を作れて便利ですので、SFDXの環境がある場合はぜひ利用してみてください。