簡體   English   中英

如何在 salesforce SOQL 中查詢查找上的查找

[英]How to query a lookup on a lookup in salesforce SOQL

我有一個記錄類型的案例,它查找一個機會,該機會查找帳戶。 當使用 Workbench 運行查詢時,它工作正常並且我可以獲得帳戶 - 但是當它在頂點運行時僅返回機會 ID,而不是帳戶。 我是 salesforce 的新手,但這讓我發瘋 - 查詢工具和代碼會返回不同信息這一事實超出了我的范圍 - 任何建議都會很棒!

SELECT RelatedOpportunity__r.Account.Name
FROM Case
         

在此處輸入圖像描述

從頂點:

(Case:{RelatedOpportunity__c=0061k00000B5GqiAAF, Id=5001k00000FwaivAAB})

一切都以同樣的方式查詢,寫你的代碼“正常”。

System.debug(myCase)關注什么是重要的,什么是真正在“這個”記錄上的。 它不會 go 通過查找“向上”和通過子查詢(如果有的話)“向下”。 它會向調試日志發送太多垃圾郵件。

(好吧,甚至不是。這不是System.debug的錯。它應該發出字符串。一個案例是 object,而不是字符串,因此調用了toString()

你可以System.debug(myCase.RelatedOpportunity__r.Account); 你會得到你的名字。 或者玩System.debug(JSON.serializePretty(myCase));

更好的是 - 從一開始就嘗試學習正確的方法。 通過垃圾調試來檢查代碼的流程已經過時了。 沒有真正的 Apex 調試(你不能像 .NET 那樣附加交互式調試器,不能像 JavaScript 那樣添加斷點和暫停執行)但是所有酷孩子都使用https://trailhead.salesforce.com/en/content/ learn/projects/find-and-fix-bugs-with-apex-replay-debugger/apex-replay-debugger-debug-your-code ,檢查一下。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM