※この内容は2019/6時点のものです。
Learn About Daily Rate Limits
- 説明:英語
- Challenge:英語ハンズオン
【Challenge要約】
- 「標準ユーザ」プロファイルをコピーし、「Data Entry - No API Access」プロファイルを作成してください。
- 「システム管理者権限」セクションにある「API の有効化」のチェックを外し、保存してください。
- (まだ作成していない場合は)「Limits Trail Connected App」接続アプリケーションを作成してください。
- 接続アプリケーション名:Limits Trail Connected App
- API参照名:Limits_Trail_Connected_App
- 取引先責任者 メール:あなたのメールアドレス
- 「Web アプリケーション設定」セクションの「開始URL」:https://trailhead.salesforce.com
- 「Limits Trail Connected App」接続アプリケーションへのアクセス許可を割り当てた権限セット「Connected App Access」を作成してください。
Avoid Concurrency
- 説明:英語
- Challenge:英語ハンズオン
【Challenge要約】
- この未管理パッケージをインストールしてください。インストールに失敗する場合はこの記事(英語)の手順に従ってください。
- 設定画面より、Apexクラス「CalloutController」を探してください。
- Apexクラス「CalloutController」を以下の通り編集してください。
- 既存のコールアウト部分のコードを、新しくContinuationクラスの変数
con
を使用してコールバックハンドラ「processResponse」を呼び出すよう変更してください。 - サーバからのレスポンスを待つためのコールバックハンドラとして、「
processResponse()
」メソッドを追加してください。
- 既存のコールアウト部分のコードを、新しくContinuationクラスの変数
Tune Transactions
- 説明:英語
- Challenge:英語ハンズオン
【Challenge要約】
- まだインストールしていない場合は、この未管理パッケージをインストールしてください。インストールに失敗する場合はこの記事(英語)の手順に従ってください。
- 設定画面より、Apexクラス「TrailLoop」を探してください。
- 「
AllBadThings()
」メソッドを以下の通り編集し、保存してください。- if文をSOQLのWhere句で置き換えてください。
- update文をfor文の外に出してください。
- メソッド名を「
AllGoodThings()
」に変更してください。
※筆者注: 設定を正しく実施しても
System.QueryException: List has no rows for assignment to SObject
というエラーが発生する場合は、Challenge用組織のユーザ言語を[English]に変更し、再度Challengeの確認を実施してください。
これはChallengeチェック時に SELECT Id FROM Profile WHERE Name = 'System Administrator' LIMIT 1
というSOQLが実行されますが、ユーザ言語が日本語だとプロファイル名が「システム管理者」となるため、SOQL結果が0件になるのが原因と思われます。