プロトタイプの検証フェーズなどでは、オブジェクトにレコードタイプを設定する際に、以下のように意識せず不要な標準プロファイルに対してもチェックを外さず有効化して登録してしまうことが多いと思います。
この場合、あとで不要になったレコードタイプを削除するとなったときには、以下のエラーが出てしまい削除できなくなってしまいます。
エラーメッセージ「[プロファイル名]の有効チェックを外すことはできません。デフォルトのレコードタイプとして以下のプロファイルが現在使用中です。」
エラー内容は、メッセージの通りでプロファイルに対して、レコードタイプを有効化しているとレコードタイプを削除できないというシンプルなものです。カスタムプロファイルなどは比較的簡単に修正して対応することができますが、以下のプロファイルなどは簡単には修正することができません。
※(2022年6月17日時点)今後もう少し簡単に削除できる方法が公開されるかもしれませんが...
標準プロファイル
・Chatter Only
・Chatter External User
・Chatter Free User
・Chatter Moderator User
・Customer Community User
・Identity User
今回は、これらのプロファイルの修正方法についてご説明していきます。
レコードタイプの削除方法
【プロファイルの編集画面からレコードタイプ変更が可能なプロファイルの場合】
カスタムプロファイルなどプロファイルの編集画面からレコードタイプの変更が可能な場合は、プロファイルの編集画面で利用しているレコードタイプが表示されているため、そちらから変更することが可能です。手順は以下の通り。
手順①システム管理者にて、設定->プロファイル->対象のプロファイルをクリックしてプロファイルの参照画面を表示します。
例では、[カスタム標準ユーザ]というカスタムプロファイルで説明します。
手順②プロファイルの参照画面からレコードタイプの設定欄を確認して、変更対象のレコードタイプの編集リンクをクリックします。
以下の例では、取引先に設定されたWEB会員(デフォルト)の編集を実行します。
手順③レコードタイプの設定の編集画面が表示されるため、選択済のレコードタイプからWEB会員を未選択とし、代わりにマスタを選択済に設定しいます。※レコードタイプは必須のため、必ず1つは設定する必要があります。
保存すると取引先のWEB会員レコードタイプからカスタム標準ユーザのプロファイルは除外されます。
【プロファイルの編集画面にレコードタイプが表示されない(編集不可)のプロファイルの場合】
ChatterExternal Userなどの特殊な標準プロファイルを利用している場合は、プロファイルの編集を行っても、プロファイルの中にオブジェクトのレコードタイプ設定が表示されません。
そのため、以下の手順に沿って削除を行う必要があります。
手順①まず編集対象のプロファイルのIDを取得します。
システム管理者にて、設定->ユーザ->プロファイルの順に実行し、プロファイルの一覧を表示します。
手順②続いて、編集対象のプロファイル名をクリックします。※以下の例では、[Chatter External User]を使って説明
手順③プロファイルを開いたあとのブラウザのURLからプロフィアるのIDを取得します。※[00e]から始まる15桁のID
上記の例では、最後の00eからの15桁がプロファイルのIDとなります。※2Fは不要なので気を付けてください。
/lightning/setup/Profiles/page?address=%2F00e5h0000032ZSW
※プロファイルIDと合わせてプロファイル名もコピーしてテキストへ保存しておいてください(あとで利用します)
プロファイル名:Chatter External Userなどの名称
手順④レコードタイプを設定しているオブジェクトのID(標準オブジェクトの場合はオブジェクト名でもよい)を取得します。
オブジェクトマネージャを実行してレコードタイプが設定されているオブジェクトを表示しURLからIDを取得します。
以下の例の場合、赤文字のところがオブジェクトのIDとなります。
【カスタムオブジェクトの場合】
/lightning/setup/ObjectManager/01Ip0000000NXGz/Details/view
【標準オブジェクトの場合(以下は取引先)】
/lightning/setup/ObjectManager/Account/Details/view
※オブジェクトIDをコピーしてテキストへ保存しておいてください。※今回の例では取引先となるためAccountをコピー
手順⑤自Salesforce組織のインスタンスURLをコピーしてテキストへ保存
※以下の赤文字URLのように、自のSalesforce組織からhttps://xxx....force.comまでをコピーします。後ろの部分は不要
https://cclt-dev-ed.lightning.force.com/lightning/lightning/xxx
手順⑥レコードタイプの設定画面を表示するためのURLを作成
まずは、手順⑤で取得したインスタンスURLを用意して、その後ろに以下を追加します。※一旦以下の文字列をそのままコピーしてください。
/setup/ui/profilerecordtypeedit.jsp?id=[手順①プロファイルID]&tid=[手順②のオブジェクトID]&pn=[手順①プロファイルID]
作成したURLは以下のようになります。
https://cclt-dev-ed.lightning.force.com/lightning/setup/ui/profilerecordtypeedit.jsp?id=00e5h0000032ZSW&tid=Account&pn=Chatter+External+User
※/setup/の前に/lightning/をつけるとエラーになるので注意!(Classicの機能での編集となるため)
※Chatter Free Userの半角スペース部分は、以下のように+(半角のプラス)でつないでください
・Chatter+Only
・Chatter+External+User
・Chatter+Free+User
・Chatter+Moderator+User
・Customer+Community+User
・Identity+User
手順⑦レコードタイプ設定の編集画面を表示
さきほどの手順⑥で作成したURLをブラウザに張り付けて実行すると、指定されたプロファイルのレコードタイプ設定画面が表示されます。
以下の例では、Chatter External Userのレコードタイプ設定の編集画面となります。
手順⑧レコードタイプの設定変更
削除したいレコードタイプを未選択にして、代わりにのレコードタイプを選択して保存します。
※レコードタイプは必ず1つセットする必要があるためマスタ以外に選択するものがなければ[--マスタ--]を選択してください。
保存してレコードタイプの設定変更を確定します。
手順⑨レコードタイプの無効化
レコードタイプを削除するためには、無効化する必要があります。レコードタイプの編集を行い、有効のチェックを外します。
手順⑩レコードタイプの削除
レコードタイプ一覧から削除対象のレコードタイプの削除を実行します。
削除した場合に、以下のメッセージが表示されることがありますが、ここで削除のリンクを再度クリックしてください。
手順⑫レコードの値の置き換え
最後に、選択リストのレコード値の置き換えを実施します。対象がなければ、[--なし--]を選択して完了をクリックします。
削除が成功するとレコードタイプ一覧から非表示となります。
まとめ
今回は、レコードタイプの削除方法をご説明いたしました。