- リンクを取得
- ×
- メール
- 他のアプリ
- リンクを取得
- ×
- メール
- 他のアプリ
SalesforceのAccountPlanエラーに関する解説
Salesforceで「Field does not exist: StartDate on AccountPlan」というエラーが発生するケースでは、主にApexクラスのAPIバージョンが影響しています。
問題の背景
現象:
Apexクラス(APIバージョン62.0)でAccountPlanオブジェクトのStartDateやEndDateフィールドを参照しようとすると、これらのフィールドが存在しないというエラーが発生します。現状:
Developer WorkbenchのRESTエクスプローラーでAPIバージョン62.0でクエリを実行するとエラーが出ますが、APIバージョン63.0でクエリを実行すると正常にデータが返されます。考察:
SalesforceのSpring'25リリースに伴い、AccountPlanに関連する新しいフィールド(StartDate、EndDateなど)が追加されたと考えられます。これらのフィールドはAPIバージョン63.0以降で利用可能となっており、以前のバージョン(62.0)では存在しないため、エラーが発生していたと推測されます。
解決策
APIバージョンの更新:
問題を解決するには、ApexクラスのAPIバージョンを63.0以上に更新してください。これにより、AccountPlanの新しいフィールドにアクセスできるようになります。手順:
- ApexクラスのAPIバージョンを確認・更新:
開発環境やメタデータで、該当するApexクラスのAPIバージョンを63.0以上に設定します。 - テスト実行:
クラスの更新後、再度クエリを実行して、エラーが解消されているか確認します。
- ApexクラスのAPIバージョンを確認・更新:
なぜ発生したのか?
- Salesforceは、APIバージョンごとに使用可能なメタデータを管理しています。
- Spring'25リリースでは、AccountPlanに新しいフィールドが追加されましたが、APIバージョン62.0ではまだその情報が含まれていません。
- そのため、以前は問題なくコンパイルおよびデプロイされていたクラスも、Spring'25の変更によりAPIバージョン63.0へのアップグレードが必要になりました。
まとめ
SalesforceのSpring'25リリースにより、AccountPlanオブジェクトに新しいフィールドが追加され、これらのフィールドにアクセスするためにはApexクラスのAPIバージョンを63.0以上に更新する必要があります。これにより、エラー「Field does not exist: StartDate on AccountPlan」が解消され、正常にレコードの操作が可能になります。
上記の手順を実行し、Apexクラスのバージョンを更新することで、Salesforceの新機能に適応し、より安定したシステム運用が実現できます。
コメント
コメントを投稿