ApeX-Ray
English | 日本語
ApeX-Ray (English)
A VS Code extension for Apex developers that displays Salesforce SObject field metadata (Label, Data Type, Help Text, etc.) as a tooltip when hovering over field names.
Features
Hover over field names in variables or SOQL to see:
- Label: Field display label
- API Name: Field API name
- Type: Data type (String, Picklist, Lookup, etc.)
- Help Text: Field help text (if configured)
- Picklist Values: Active picklist values (for picklist types)
📝 Supported Patterns
// 1. Field access via variables
Account acc = [SELECT Industry FROM Account LIMIT 1];
System.debug(acc.Industry); // ← Hover over Industry
// 2. Fields within SOQL queries
List<Contact> contacts = [SELECT FirstName, LastName, Email FROM Contact];
// ^^^^^^^^^ ← Hover over FirstName
// 3. Schema references
Schema.DescribeFieldResult dfr = Account.Fields.Industry.getDescribe();
// ^^^^^^^^ ← Hover over Industry
⚙️ Commands
- ApeX-Ray: Refresh Metadata Cache - Refreshes metadata for a specific object.
- ApeX-Ray: Clear Metadata Cache - Clears all cached metadata.
Prerequisites
- Salesforce CLI (
sf or sfdx) must be installed.
- A Default Org must be set for the project.
- The folder must be a Salesforce DX project (containing
sfdx-project.json).
API Usage
This extension uses the Salesforce REST API to retrieve field metadata.
Each SObject's metadata is fetched once and cached locally.
The cache is also persisted to disk, so it remains available across VS Code restarts.
Configuration
| Setting |
Type |
Default |
Description |
apray.cacheTimeout |
number |
3600 |
Metadata cache timeout in seconds. |
apray.enableAutoFetch |
boolean |
true |
Whether to automatically fetch metadata for unknown objects. |
Tech Stack
- TypeScript
- VS Code Extension API
- jsforce
License
MIT
ApeX-Ray (日本語)
Apexコード内のSalesforce SObject項目(標準/カスタム)にホバーした際、その項目の表示ラベル、データ型、ヘルプテキストなどをツールチップで表示するVS Code拡張機能です。
機能
🔍 フィールドメタデータ表示
変数やSOQL内のフィールド名にホバーすると、以下の情報が表示されます:
- Label: 項目の表示ラベル
- API Name: API参照名
- Type: データ型(String, Picklist, Lookup, etc.)
- Help Text: 項目のヘルプテキスト(設定されている場合)
- Picklist Values: 選択リスト値(Picklist型の場合)
📝 対応パターン
// 1. 変数を通じたフィールドアクセス
Account acc = [SELECT Industry FROM Account LIMIT 1];
System.debug(acc.Industry); // ← Industryにホバー
// 2. SOQLクエリ内のフィールド
List<Contact> contacts = [SELECT FirstName, LastName, Email FROM Contact];
// ^^^^^^^^^ ← FirstNameにホバー
// 3. スキーマ参照
Schema.DescribeFieldResult dfr = Account.Fields.Industry.getDescribe();
// ^^^^^^^^ ← Industryにホバー
⚙️ コマンド
- ApeX-Ray: Refresh Metadata Cache - 特定オブジェクトのメタデータを再取得
- ApeX-Ray: Clear Metadata Cache - すべてのキャッシュをクリア
前提条件
- Salesforce CLI (
sf or sfdx) がインストールされていること
- プロジェクトにデフォルト組織が設定されていること (
sf org login 等で認証済み)
- sfdx-project.json が存在するSalesforce DXプロジェクトであること
API使用量について
この拡張機能は、フィールドメタデータを取得するためにSalesforce REST APIを使用します。
各SObjectのメタデータは初回取得時にローカルにキャッシュされ、ディスクにも永続化されるため、VS Code再起動後もキャッシュが有効です。
設定
| 設定項目 |
型 |
デフォルト |
説明 |
apray.cacheTimeout |
number |
3600 |
メタデータキャッシュのタイムアウト(秒) |
apray.enableAutoFetch |
boolean |
true |
未知のオブジェクトを自動取得するか |
技術スタック
- TypeScript
- VS Code Extension API
- jsforce
ライセンス
MIT