クイックリファレンス
日常業務で頻繁に参照するコマンド・制限値・オブジェクト情報をまとめたチートシートです。
ブックマークしていつでもすぐにアクセスできるようにしておきましょう。
チートシート
毎日参照
Salesforce CLI
ガバナ制限
重要制限値
2026年版
8
セクション
30+
コマンド
8
ガバナ制限
このページはブックマーク推奨です
開発中に何度も参照するコマンドや制限値をまとめています。困ったときはまずこのページを確認してください。
コマンド実行前に対象Orgを必ず確認してください
--target-org を省略するとデフォルトOrgに対して実行されます。本番環境への意図しないデプロイを防ぐため、必ずエイリアスを明示してください。
☁️ 1. よく使うコマンド - Salesforce CLI (sf)
Salesforce開発で日常的に使用するCLIコマンドの一覧です。
| コマンド | 用途 |
|---|---|
sf org login web --alias myorg |
Salesforce環境に認証 |
sf org open --target-org myorg |
ブラウザでOrgを開く |
sf project deploy start --target-org myorg |
ソースをOrgにデプロイ |
sf project retrieve start --target-org myorg |
Orgからソースを取得 |
sf org create scratch --definition-file config/project-scratch-def.json --alias scratch |
Scratch Org作成 |
sf apex run --target-org myorg -f scripts/apex/hello.apex |
Anonymous Apex実行 |
sf data query --query "SELECT Id, Name FROM Account LIMIT 5" --target-org myorg |
SOQL実行 |
Salesforce CLI の使い方ヒント
--target-orgは-oと省略できますsf org listで認証済みOrgの一覧を確認できますsf config set target-org=myorgでデフォルトOrgを設定できますsf commandsで利用可能なコマンド一覧を表示できます
よく使うパターン: デプロイ確認フロー
# テスト環境にデプロイ
sf project deploy start --target-org test
# デプロイ結果を確認
sf project deploy report --target-org test
# ブラウザで確認
sf org open --target-org test
💻 2. よく使うコマンド - npm / Git
npm scripts
| コマンド | 用途 |
|---|---|
npm run lint |
ESLintチェック |
npm run prettier |
Prettierフォーマット |
npm run prettier:verify |
フォーマット確認 |
npm test |
全テスト実行 |
npm run test:unit |
ユニットテスト |
npm run test:unit:watch |
ウォッチモードでテスト |
Git
| コマンド | 用途 |
|---|---|
git checkout -b YYYYMMDD-タスク名 |
作業ブランチ作成 |
git add [ファイル名] |
ステージング |
git commit -m "feat: 説明" |
コミット |
git push -u origin HEAD |
リモートにプッシュ |
gh pr create --title "タイトル" --body "説明" |
PR作成 |
典型的なGitワークフロー
# 1. ブランチ作成
git checkout -b 20260210-入居トリガー修正
# 2. 変更をステージング
git add force-app/main/default/classes/MoveInTriggerHandler.cls
# 3. コミット
git commit -m "fix: 入居トリガーのNull参照エラーを修正"
# 4. プッシュ & PR作成
git push -u origin HEAD
gh pr create --title "fix: 入居トリガーのNull参照エラーを修正" --body "説明"
PR作成前のチェックリスト
npm run lintがエラーなく通ることnpm run prettier:verifyがエラーなく通ることnpm testがエラーなく通ること- コミットメッセージが規約に従っていること
- 不要なファイルがコミットに含まれていないこと
🤖 3. よく使うコマンド - Claude Code
AI駆動の開発フローで使用するスラッシュコマンドの一覧です。
| コマンド | 用途 | フェーズ |
|---|---|---|
/requirement [タスク名] |
要件定義書の生成 | 要件定義 |
/design [タスク名] |
設計書群の生成 | 設計 |
/approve-design |
設計書の承認 | 設計 |
/build [タスク名] |
実装の実行 | 実装 |
/impact-check |
干渉チェック | 検証 |
/lint-rules |
コーディングルールチェック | 検証 |
/investigate |
Salesforce仕様調査 | 調査 |
Claude Code 開発フロー例
# 1. 要件定義
/requirement 入居ステータス自動更新
# 2. 設計書生成
/design 入居ステータス自動更新
# 3. 設計書承認
/approve-design
# 4. 実装
/build 入居ステータス自動更新
# 5. 品質チェック
/impact-check
/lint-rules
📁 4. プロジェクトディレクトリ構造
メインリポジトリ cl-crm-salesforce のディレクトリ構成です。
cl-crm-salesforce/
cl-crm-salesforce/
├── .ai/ (AI設定)
│ ├── instructions/
│ ├── templates/
│ ├── prompts/
│ └── rules/
├── CLAUDE.md
├── force-app/main/default/
│ ├── classes/ (Apexクラス)
│ ├── triggers/ (Apexトリガー)
│ ├── lwc/ (Lightning Web Components)
│ ├── flows/ (フロー定義)
│ └── objects/ (オブジェクト定義)
├── doc/ (承認済みドキュメント)
│ ├── domains/
│ ├── detailed-design/
│ │ ├── apex/
│ │ ├── trigger/
│ │ ├── lwc/
│ │ ├── flow/
│ │ └── objects/
│ └── manual/
├── doc_draft/ (ドラフト)
│ ├── domains/
│ ├── detailed-design/
│ └── requirement/
├── epics/
├── _task-list/
├── _memory-bank/
├── scripts/
└── config/
✅ ポイント
force-app/がSalesforceのソースコード本体doc/は承認済み、doc_draft/はドラフト段階.ai/にAI開発の設定・テンプレートが格納
⚡ 5. Salesforce 実行順序
レコード保存時にSalesforceが処理を実行する順番です。トリガーやバリデーションの設計時に必ず参照してください。
1
System Validation
2
Before Triggers
3
Custom Validation Rules
4
After Triggers
5
Flows
Step 1: System Validation
必須項目チェック、データ型チェック、レイアウトルールなどシステム標準のバリデーションが実行されます。
Step 2: Before Triggers
レコードがDBに保存される前に実行されるトリガー。値の加工や自動入力に使用します。
Step 3: Custom Validation Rules
設定画面で定義したカスタムバリデーションルールが評価されます。
Step 4: After Triggers
レコードがDBに保存された後に実行されるトリガー。関連レコードの更新やコールアウトに使用します。
Step 5: Flows
レコードトリガーフローが実行されます(Before/Afterの両方が含まれます)。
⚠️ 注意
Before TriggerでaddError()を呼ぶと、Custom Validation Rulesは評価されません。実行順序を意識した設計が重要です。
📈 6. ガバナ制限(主要)
Salesforceのガバナ制限は1トランザクションあたりの上限値です。バルク処理を書く際は常に意識してください。
| 制限項目 | 同期 | 非同期 | 重要度 |
|---|---|---|---|
| SOQLクエリ数 | 100 | 200 | 最重要 |
| SOQL取得レコード数 | 50,000 | 50,000 | 最重要 |
| DMLステートメント数 | 150 | 150 | 最重要 |
| DMLレコード数 | 10,000 | 10,000 | 重要 |
| CPU時間 | 10秒 | 60秒 | 重要 |
| ヒープサイズ | 6MB | 12MB | 注意 |
| コールアウト数 | 100 | 100 | 注意 |
| sendEmail数 | 10 | 10 | 注意 |
ループ内でSOQL/DMLを実行しないでください
ガバナ制限に到達する最も一般的な原因です。必ずコレクションにまとめてバルク処理を行ってください。
ガバナ制限を回避するベストプラクティス
- SOQLはループの外で実行:
Map<Id, SObject>を活用してループ内の検索を避ける - DMLはリストでまとめて実行:
insert accountList;のようにバルク操作を使用 - SOQL結果はMapに変換:
new Map<Id, Account>([SELECT ...])でO(1)アクセスを実現 - 大量データはBatchで処理:
Database.Batchableを使って分割実行
🗃️ 7. 主要オブジェクト早見表
ClassLab CRMで使用する主要なSalesforceオブジェクトの一覧です。
| 略称 | オブジェクト | API名 | 用途 |
|---|---|---|---|
| - | 取引先 | Account |
不動産会社 |
| MI | 入居 | MoveIn__c |
入居者情報(中核) |
| SG | サービス案内 | ServiceGuide__c |
サービスの案内・申込状況 |
| - | サービス | Service__c |
サービスマスタ |
| - | 個人取引先 | Contact |
入居者連絡先 |
MoveIn__c が中核オブジェクトです
入居(MoveIn__c)を中心に取引先(Account)、サービス案内(ServiceGuide__c)が紐づく構造です。開発時は常にMoveIn__cとの関連を意識してください。
👥 8. コミット・カレンダー・連絡先
コミットメッセージ チートシート
コミットメッセージのプレフィックスは以下を使用してください。
コミットメッセージの例
feat: 入居ステータス自動更新トリガーを追加
fix: サービス案内のNull参照エラーを修正
refactor: MoveInTriggerHandlerのバルク処理を最適化
test: ServiceGuideクラスのユニットテストを追加
docs: 入居ドメインの設計書を更新
chore: ESLint設定を更新
Googleカレンダー分類タグ
| タグ | 用途 | 予実管理 |
|---|---|---|
【MTG】 |
ミーティング | - |
【見積もり】 |
見積もり | - |
【Slack / Asana】 |
返信対応 | - |
【休憩】 |
休憩 | - |
【Asanaタスク:URL】 |
開発タスク | 対象 |
【エラー対応:URL】 |
バグ修正 | 対象 |
【業務改善:URL】 |
効率化 | 対象 |
【相談 / レクチャー:URL】 |
技術相談 | 対象 |
主要メンバー
平
平井
GitHub: thirai-classlab
Slack: U07B6BQ8Y8Z
古
古谷 圭吾
GitHub: classlab-ltd-fk
Slack: U086CTXGF2R
棟
棟安 拓未
GitHub: t-muneyasu-classlab
Slack: U07FNRT78HW
よく使うURL
Salesforce本番
Salesforceテスト
GitHub
Asana依頼フォーム
ドメイン知識サイト
ClassLabナレッジ
ログイン情報管理表
シフト管理表
社内ルール一覧
仮想付加価値計算
スプリント改善点