Loading
Salesforce から送信されるメールは、承認済ドメインからのみとなります続きを読む

カスタム数式項目を利用して 18 文字のレコード ID を作成する

公開日: Dec 27, 2024
説明
次の制限事項があるため、カスタム数式項目を使用して 18 文字のレコード ID を作成します。
 
  1. ユーザーオブジェクトではワークフロー -> 項目自動更新を作成できない。
  2. 各カスタム数式項目には、数式の最大文字数がある。

システム管理者は、レポートを作成するために Salesforce でユーザー ID (18 桁) を作成することはできませんでした。

単一数式をカスタム数式項目で直接使用すると、次のエラーが返されます。
 
CPQ での新規レコード作成時の「エラー:コンパイルされた数式が大きすぎて実行できません (7,771 文字)。5,000 文字以下にしてください」

注意: 逆に 18 文字の Salesforce.com レコード ID を 15 文字に変更するには、文字列の右端の 3 文字を削除してください。
解決策

戻りデータタイプがテキストの数式項目と、その数式を次のように作成します。この項目は「レコード ID 18 文字」または任意の名前で呼ぶことができます。


Id &

MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",(
IF(FIND(MID(Id,1,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0)
+IF(FIND(MID(Id,2,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0)
+IF(FIND(MID(Id,3,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0)
+IF(FIND(MID(Id,4,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0)
+IF(FIND(MID(Id,5,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0)
)+1,1)

&

MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",(
IF(FIND(MID(Id,6,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0)
+IF(FIND(MID(Id,7,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0)
+IF(FIND(MID(Id,8,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0)
+IF(FIND(MID(Id,9,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0)
+IF(FIND(MID(Id,10,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0)
)+1,1)

&

MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ012345",(
IF(FIND(MID(Id,11,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,1,0)
+IF(FIND(MID(Id,12,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,2,0)
+IF(FIND(MID(Id,13,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,4,0)
+IF(FIND(MID(Id,14,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,8,0)
+IF(FIND(MID(Id,15,1), "ABCDEFGHIJKLMNOPQRSTUVWXYZ")>0,16,0)
)+1,1)



関連情報:
数式項目の作成
レコード ID についての詳細は、https://help.salesforce.com/articleView?id=000324394&language=en_US&type=1&mode=1 を参照してください。
ナレッジ記事番号

000385585

 
読み込み中
Salesforce Help | Article