変更セットの上手な使いまわし術

はじめに

こんにちは!株式会社オプトプランニングです。

先日リリースについて書きましたが、その際書けなかったクローズ後の変更セットの私なりの使い方を忘備録も兼ねて書いていきたいと思います。

クローズした変更セットの利用方法その1

同じ変更セットを使いまわす

まずは、変更セットの再利用です。

  • 同じ変更セットを複数の組織にリリースする必要がある
  • 本番組織をベースに作成したSandbox環境でリリースの評価・テストを行い、問題なかったので同じ内容の変更セットを本番環境にリリースしたい

など、同一内容の変更セットを別組織にリリースしたい場面はあると思います。

クローズした変更セットは編集はできなくなりますが「アップロード」ボタンは残っています。
これを利用し、クローズした変更セットを別環境にアップロード・リリースすること(再利用)ができます。
(※クローズした変更セットに含まれるコンポーネントは、変更セット作成後に削除や修正をしていない場合に限ります。詳しくは後ほど説明します。)

アップロードする際、対象組織に対してリリース接続の設定を行うことが必要ですので、そこは忘れずに行いましょう。

1つの変更セットを再利用する良い点は、「変更セットアップロード履歴」が残ることです。
アップロードする度に残るので、後からどの組織にアップロードしたかの確認ができます。

図1 2つの組織にアップロードした後の変更セットアップロード履歴
図1 2つの組織にアップロードした後の変更セットアップロード履歴

Trailheadでは

送信変更セットを別の組織にアップロードした後で、異なる組織にアップロードすることはできません。

インテグレーション環境でのテストと変更のリリースhttps://trailhead.salesforce.com/ja/content/learn/modules/declarative-change-set-development/test-in-the-integration-environment-and-deploy-changes

とありますが、Developer SandboxからDeveloper Sandboxまたは本番組織に向けてのアップロードはできることを確認しています。

Sandboxの種類が違う場合などは検証しておりませんので、うまくいかない場合はTrailheadにあるように変更セットのコピーを行ってください。

クローズ後の変更セットのアップロード方法

変更セットのアップロードボタンは、送信変更セットの一覧や変更セットの詳細にあります。

図2 送信変更セット一覧画面
図3 送信変更セットの詳細画面
図3 送信変更セットの詳細画面

クローズ後の変更セットをアップロードしようとすると図5のような画面になります。
変更セットをどの環境にもアップロードしていない図4の時と比べてみると、

この変更セットをアップロードすると、編集できなくなり、対象組織から取り消すこともできません。

というメッセージがクローズした変更セットに表示されていないことがわかります。

既にクローズしている変更セットはそもそも編集することができないため、注意書きが現れないようです。

図4 オープンの変更セットアップロード時のアップロード詳細
図4 オープンの変更セットアップロード時のアップロード詳細
図5 クローズの変更セットアップロード時のアップロード詳細

使いまわす時の注意点その1

1つ目に注意したいのは、すでにアップロードした組織も選択できる点です。

同じ変更セットを複数回にわたって同一環境にアップロードしても特に問題は起きません。
逆を言えば、エラーも出ないということです。

アップロードは成功したのにアップロードしたはずの環境(対象組織)に受信変更セットがみつからない…?という時はアップロード先に間違いがないか確認しましょう。

アップロード先は、変更セットアップロード履歴やアップロード完了の通知メールで確認できます。
アップロード完了の通知メールには、送信変更セットのソース組織と対象組織が明記されています。

参考までに、「リリースしてみた<アップロード編>」で載せなかったアップロード完了の通知メールはこんな感じです。
システムメールとしてSalesforceから送られてきます。

図6 アップロード完了のシステムメール
図6 アップロード完了のシステムメール

使いまわす時の注意点その2

2つ目の注意点としては、1度にアップロードできる対象組織は1つだけという点です。
アップロード先を選択する画面はラジオボタンで構成されており、複数の組織を選択することは不可能となっています。

図7 アップロード時の対象組織の選択画面
図7 アップロード時の対象組織の選択画面

複数の組織に同じ変更セットをアップロードしたい場合はそれぞれアップロード手順を行う必要があります。

使いまわす時の注意点その3

3つ目の注意点としては、クローズした変更セットに含まれるコンポーネントは更新されないという点です。

例えば、前回のリリースしてみた<変更セット作成編>で追加した権限セット「MFA」について、変更セットアップロード後に修正を加えたとします。
アップロード後の変更セット(クローズした変更セット)はコンポーネントの更新が行われないので、権限セット「MFA」に行ったは反映されません。

変更セットに変更はないが、変更セットのコンポーネントの内容に変更がある場合は、「変更セットのコピー」を作成しないと修正内容を反映することはできません。

コンポーネントの更新という考え方が少し難しく感じますね…

図8 送信変更セット詳細に書かれている内容
図8 送信変更セット詳細に書かれている内容

クローズした変更セットの利用方法その2

変更セットのコピーを作成し編集する

クローズした変更セットは編集することはできませんが、コピーを作成することは可能です。
また、作成したコピーに対しては変更セットの編集ができます!!

このことを利用し、クローズした変更セットを編集したい時はコピーを作成するといいと思います。

  • リリースでコンポーネント不備によるエラーが出た
  • リリースでエラーも無く一安心した後に、リリース環境の確認を行っていて入れそびれたコンポーネントがあることに気づいてしまった

などなど、変更セットの作り直しが発生してしまうのはよくあることだと思います。(きっと私だけじゃない…はず 笑)

リリースしそびれたコンポーネントだけの変更セットを新しく作成してもいいのですが、

  • エラーやコンポーネント不足の度に変更セットを作成すると、沢山の変更セットが作られてしまう
    →どんな内容の変更セットをアップロード(リリース)したか履歴を確認する可能性があるため、リリース内容をなるべく1つの変更セットにまとめておきたかった
  • 「連動関係を参照/追加」を使用することで、変更セットに含めたい関連するコンポーネントが探し出しやすい

といった理由から、変更セットのコピーを作成しコンポーネントを追加(削除)する、ということを行いました。

変更セットのコピーの作り方

変更セットのコピーはとても簡単に作成できます。
対象の変更セットの「コピー」をクリックするだけです。

アップロードと同様、「コピー」は、送信変更セットの一覧や変更セットの詳細にあります。

図9 送信変更セット一覧画面
図10 送信変更セットの詳細画面
図10 送信変更セットの詳細画面

コピーをクリックすると、「変更セットのコピー」に遷移し、ここで変更セットの名前や説明を変えることができます。

ベースの変更セットと混同しないためにも、名前や説明はコピーであることが分かりやすいものに変更しておいた方がいいと思います。

図11ではすでに名前や説明を変更してありますが、「変更セットのコピー」の名前と説明にはデフォルトでベースの変更セットと同じ内容がそれぞれ入力されています。

図11 変更セットのコピー作成時の入力画面
図11 変更セットのコピー作成時の入力画面

変更セットのコピーを保存すると、ベースの変更セットのコンポーネントを引き継いだ「状況」がオープンの変更セットが出来上がります。

あとは、新規作成の時と同様にコンポーネントの追加を行ったり、不要なコンポーネントの削除を行いましょう。

あとがき

変更セットのコンポーネントの種類は、作成したことがある方ならわかると思いますがとても沢山あります。
以前どのぐらいあるか調べた時は約120種類ありました。(2021年12月ぐらいに調べました)

中には見たことのないコンポーネント種類名もあったりしたので、変更セットの作成は本当に大変な作業だと思います。

今回は、クローズ後の変更セットに焦点を当てて使い道について書いてみました。
クローズ後に限らず、良い使い道を思いついたら第二弾としてまとめられればと思います。

それでは、またお会いしましょう!!

関連記事
リリースしてみた<変更セット作成編>
リリースしてみた<アップロード編>