パッケージの登録者側のエクスペリエンスを知る
学習の目的
この単元を完了すると、次のことができるようになります。
- 登録者によるパッケージのインストールと設定について説明する。
- パッチバージョンの用途を説明する。
パッケージの登録者側のエクスペリエンス
パッケージを公開した後はどうなるのでしょうか? 詳しく見てみましょう。
D'Angelo は DreamHouse Realty の Salesforce システム管理者です。彼は従業員による経費報告書の提出を簡便化する経費管理アプリケーションを探しています。理想的には、アプリケーションを Salesforce 組織のデータと連携させたいと考えています。
D'Angelo は AppExchange で条件を満たすアプリケーションを検索します。Get Cloudy が作成した Expense Manager アプリケーションを見つけました。
D'Angelo は AppExchange リスティングで、このアプリケーションを使用するには組織でマルチ通貨が有効になっている必要があることを確認します。AppExchange リスティングには、インストール準備ガイドのリンクが掲載されています。D'Angelo はガイドを入手し、Expense Manager アプリケーションをインストールする前に、インストール準備の手順に従ってマルチ通貨を有効にします。
アプリケーションのインストール準備を完了し、AppExchange リスティングにある [今すぐ入手] ボタンをクリックします。パッケージインストーラーを実行すると、アプリケーションを本番環境と Sandbox 環境のどちらにインストールするかと、インストール後すぐにアプリケーションにアクセスできるユーザー種別を選択することを求められます。次の設定から選択する必要があります。
- 管理者のみのインストール
- すべてのユーザーのインストール
- 特定のプロファイルのインストール
各ユーザーがアプリケーションを使用するときに適切なレベルのアクセス権と権限が付与されているように、権限セットを使用するつもりでいるため、D'Angelo は管理者のみにパッケージをインストールすることを選択します。すべての従業員にロールアウトする前に自分自身と募集したパイロット参加者がアプリケーションを試せるように、パッケージを Sandbox 組織にインストールします。
パッケージをインストールした後、組織で [設定] を開き、パッケージのライセンスと権限セットをユーザーに割り当てます。
D'Angelo はアプリケーションを一通り実行してみて内容に満足しましたが、組織の標準に適合するようにページレイアウトなど一部を微調整したいと考えます。そこで、変更を加えてからアプリケーションをユーザーにリリースします。
登録者はアプリケーションをどの程度カスタマイズできるか?
管理 2GP パッケージに組み込まれた各メタデータコンポーネントには、登録者組織での動作を決定する特定のルールがあります。このルールによって、パッケージバージョンが登録者の組織にインストールされた後にユーザーまたは登録者がコンポーネントを変更したり削除したりできるかどうかが決まります。
こうしたルールを使用すると、登録者のカスタマイズを上書きせずにパッケージを拡張することができます。たとえば、登録者がページレイアウトをカスタマイズした場合、その変更内容はパッケージのアップグレード後も保持されます。ただし、多くのコンポーネントはあなた (開発者) しか編集できません。これは、1GP と 2GP の両方の管理パッケージの主な利点です。
パッケージバージョンのアップグレード
D'Angelo をはじめとしたお客様があなたのパッケージをインストールしました。喜んでいたところ、アプリケーションに予期しない動作があることがわかりました。これを修正してお客様に転送する必要があります。どうにすればよいでしょうか?
また、新しい機能を追加した場合はどうしますか? お客様に新しいバージョンに移行するかどうかのオプションを提供します。どうにすればよいでしょうか?
パッケージのアップグレードを使用します。
新しいパッケージバージョンをリリースする準備ができたら、既存の登録者にアップグレードを転送するか、次のバージョンにアップグレードするタイミングを登録者に決めてもらうことができます。
また、パッチバージョンを使用してパッケージをアップグレードする場合もあります。パッチバージョンでは、大幅な機能変更を行わずに、パッケージで見つかった小さな問題を修正します。パッチバージョンを使用することで、パッケージの古いバージョンを使用している登録者は、新しいメジャーパッケージバージョンへのアップグレードを強制されることなくパッチバージョンをインストールしてバグを修正できます。たとえば、最新のリリース済みパッケージバージョンが 1.4.0.0 だとします。パッチバージョン 1.2.1.0 を作成すれば、バージョン 1.2.0.0 をまだ使用しているお客様は重要なバグ修正を受け取ることができます。
シームレスなアップグレードを保証するために、パッチバージョンで導入できる変更には制限があります。たとえば、パッチバージョンに新しいメタデータを追加することはできません。
前述したように、パッケージバージョンは major.minor.patch.build number という形式に従います。パッケージバージョン番号のパッチ番号が 0 でないもの (1.1.2.5 など) は、パッチバージョンです。
管理 2GP ではパッケージのアップグレードがサポートされていますが、パッケージのダウングレードはサポートされていません。お客様はバージョン 1.3.0 から 1.3.2 にアップグレードできますが、新しいバージョン (1.3.2) の上に古いバージョン (1.3.0) をインストールすることはできません。
お疲れさまでした。これで「第二世代管理パッケージモジュール」の修了となります。次のステップに進み、管理 2GP の開発に取り組んでください。他の Salesforce パートナーに質問したり、コラボレーションしたりするには、パートナーコミュニティに参加してください。
リソース
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Push a Package Upgrade (パッケージアップグレードの転送)
- Second-Generation Managed Packaging Developer Guide (第二世代管理パッケージ開発者ガイド): Create a Patch Version (パッチバージョンの作成)
- Salesforce パートナーコミュニティ: Managed Packages グループ (サインインが必要)