RABBITAIRJAPAN 空気清浄機用フィルターセット ペットフィルター A2JFKP。
本記事では15桁IDと18桁IDの違いや、15桁IDと18桁IDのコンバート方法について解説します。
【年間ランキング6年連続受賞】 9月誕生石 フクリン K18イエローゴールド ペアシェイプカット 1カラットUP パパラチアサファイアリング 京セラ クレサンベール プレゼント 指輪 リングサイズ:12号
SalesforceにはすべてのレコードにIDが付与されています。
実はこのレコードIDには15桁のものと18桁のものが存在します。
【年間ランキング6年連続受賞】 9月誕生石 フクリン K18イエローゴールド ペアシェイプカット 1カラットUP パパラチアサファイアリング 京セラ クレサンベール プレゼント 指輪 リングサイズ:12号
レコードIDの15桁と18桁の違いは下記のとおりです。
■15桁ID:大文字・小文字の区別あり
(例:0017F00000okECd)
■18桁ID:大文字・小文字の区別なし
(例:0017F00000okECdQAM)
ニット 【L】【ウォッシャブル】タイガーインターシャニット
マキタ(makita) MR008GZ 充電式LEDランタン付ラジオ 青【本体のみ】40V
レコードには、15桁と18桁両方のIDが利用できる状態ならではの問題があります。Salesforceの機能によっては15桁IDではうまく動作せず、18桁IDでしか正常動作しないケースもありました。
たとえば、Lightningコンポーネントの「lightning:input」における場合です。
- 主従関係や参照関係のinputのvalueにIDをセット
- 自動的にルックアップが起動して値が反映
- 結果:15桁ID動作なし・18桁ID正常動作
「lightning:input」の場合はこのようにトリッキーな結果を出す可能性のある仕様になっています。Salesforceの仕様は変わるため修正される可能性もあります。現状の15桁IDと18桁IDのどちらも常に使える状態だと開発や検証に役立ちます。
数式のカスタム項目では、15桁ID表示と18桁IDの2パターン表示を実現します。
カスタム項目による2パターンの表示は、ノンコーディングで簡単に実現可能です。利用するのは数式項目の関数のみとなります。
ヨコタ ディスクグラインダ 1台 G4SA ※配送毎送料要
VAL6 KBS 静岡製機 バルシックスケービーエス 赤外線オイルヒーター AC100V 50Hz/60Hz兼用 (沖縄・離島 配送不可)
はじめに、15桁IDを表示するカスタム項目を作成します。「項目とリレーション」から「新規」で、新たな項目の作成です。
データ型にて「数式」を選択して「次へ」をクリックします。
「項目の表示ラベル」と「項目名」を入力します。(今回は『Id15』に設定)「データ型」の『テキスト』を選択して「次へ」をクリックします。
RKXA04543JMU (1.8馬力 単相200V ワイヤード・省エネneo) 東芝 業務用エアコン 壁掛形 ウルトラパワーエコ シングル 45形 取付工事費別途
取引先を手打ちで作成
カスタム項目による表示は、手打ちでも可能です。あえて「項目の挿入」を使う場合は、次の手順になります。
- 「取引先」画面の取引先 IDから「挿入」を選択
- 【代引不可】【個人宅配送不可】河村(カワムラ) 盤用キャビネット BX BX 4040-25K[KWD07803]
- 「次へ」を選択
ページレイアウトへの追加を適切に設定して「保存」で作成完了です。
※あえて表示しなくてもよいケースがほとんどだと思います。今回はテスト表示のためのページレイアウトとして追加しました。
次に18桁IDを表示するカスタム項目を作成します。数式までは15桁IDと同じなのです。数式には、[CASESAFEID(Id)]と入力します。関数の「CASESAFEID(id)」は、15IDを18IDに変換します。
その後も同じ手順で保存まで進みます。すると、15桁ID表示用のカスタム項目と18桁ID表示用のカスタム項目の完成です。
取引先のレコードでテスト
できあがったカスタム項目を取引先の適当なレコードで表示してみると、問題なく15桁IDと18桁IDが表示されています。
SalesforceのレコードIDの15桁と18桁は、末尾3桁のみが違うだけです。15桁と18桁の違いを比較してみましょう。
15桁:大文字小文字で区別
18桁:大文字小文字で区別しない
上記の違いを利用して次のような変換が可能です。
18桁から15桁への変換:末尾3文字の削除のみで可能
15桁から18桁への変換:増えた3文字に関して桁内の大文字判定を表示
15桁のレコードIDから次のように算出されます。
- XLGB1677CQ1 LEDフラットランプ対応 ペンダントライト 光色切替(温白色/電球色) 拡散 ダクトタイプ 白熱電球60形1灯器具相当 非調光 Panasonic 電気工事不要
- 1ブロックごとに何行目が大文字か、表示される1文字を算出
- 算出したブロックごとの1文字を16桁目、17桁目、18桁目に分配
上記の流れでSalesforceのレコードIDの15桁と18桁を相互に変換できます。
ブラインド アルミ カーテン 木目調 木目柄 遮光 幅160 ホワイト アッシュ ツヤ消 マット おしゃれ 一人暮らし テレワーク 受注生産商品 ロウヤ LOWYA
思ったように動作しないで困った場合は、ID関係を疑ってみるのも解決法のひとつとなるでしょう。
ApexやVisualforce、Lightningコンポーネントのコーディングの際は、必要に応じてID変換のコードを書いても問題ありません。
毎回書くのが面倒であれば、数式項目で用意することで使い回しも効いて利用も簡単です。
顧客管理(SFA/CRM)のコンサルティングについて
【年間ランキング6年連続受賞】 9月誕生石 フクリン K18イエローゴールド ペアシェイプカット 1カラットUP パパラチアサファイアリング 京セラ クレサンベール プレゼント 指輪 リングサイズ:12号
この記事を読んだ方の多くは以下の記事も読まれています。