function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
mnntkkmnntkk 

apexで、カスタムオブジェクトの詳細情報表示画面の、URLを取得したい


お世話になっております。

以前「apexで、カスタムオブジェクトのタブを開いたときに初めに表示される、URLを取得したい」の質問をさせていただいた者です。
似た件で恐縮ですが、また質問させてください。

前回は、visualForceのページから、オブジェクトの一覧表示画面に遷移するため、その一覧表示画面のURLを取得するという質問でした。
今回は、オブジェクトの詳細画面に遷移したいです。

(たとえば「会社」オブジェクトのタブを開くと会社データの一覧が出ますが、その中から一件選んでクリックすると、

会社データの詳細が表示される画面に遷移します。この画面です。)


今、VisualForceでこの「会社一覧」画面を代用しようとしています。

それに当たって、通常の一覧画面の場合と同様、一覧から選んでクリックすると、詳細画面に遷移するようにしたいため、

ApexでそのURLを指定する必要があります。

URLは、「会社」オブジェクトのKeyPrefixが「a0U」だった場合、

Kaisha__cの「株式会社ああああ」というデータの詳細画面URLは、
(例)na9.salesforce.com/a0UE00000001yrD

などとなっています。

この「E00000001yrD」に当たる部分がApexで取得できれば、と思います。よろしくお願いいたします。

Best Answer chosen by Admin (Salesforce Developers) 
ikouikou

そのレコードのIDが「a0UE00000001yrD」です。

 

つまり Kaisha__c.Id です。

 

ちなみにna9.salesforce.comの部分はいりません。

httpからの絶対パスではなく、/a0UE00000001yrDからの相対パスにしておきましょう。

※Sandboxや別組織でna9部分が変わる可能性があるため

All Answers

ikouikou

そのレコードのIDが「a0UE00000001yrD」です。

 

つまり Kaisha__c.Id です。

 

ちなみにna9.salesforce.comの部分はいりません。

httpからの絶対パスではなく、/a0UE00000001yrDからの相対パスにしておきましょう。

※Sandboxや別組織でna9部分が変わる可能性があるため

This was selected as the best answer
mnntkkmnntkk

ご回答ありがとうございます。

 

IDで良いのですね!気づきませんでした。

基本的な質問でした。(恥ずかしい・・・)

はい、相対パスにしておきます。ページ遷移の場合は、na9.salesforce.comは不要ですね。

ありがとうございました。