状況:こんにちは、セールスフォース vf ページのみで期待どおりに機能するクエリがあります。
問題iframe から呼び出すと、親オブジェクトなしで出力が返されます。
頂点のコード:
public class showServiceHistory {
CKSW_BASE__Service__c services;
String id = ApexPages.currentPage().getParameters().get('id');
String x;
public myValues()
{
services = [SELECT id, name, (SELECT Name, Previous_Status__c, New_Status__c, Reason_Code__c, comment__c FROM Service_Status_History__r) FROM CKSW_BASE__Service__c WHERE id=:id];
}
public String getxx()
{
x=JSON.Serialize(services);
return x;
}
}
VF のコード
< apex:page controller="myValues" >
< apex:pageBlock title="{!xx}" >
< /apex:pageBlock >
< /apex:page >
Salesforce からの出力
{"attributes":{"type":"CKSW_BASE__Service__c","url":"/services/data/v38.0/sobjects/CKSW_BASE__Service__c/sss"},"Id":"s","Name":"S","Service_Status_History__r":{"totalSize":6,"done":true,"records":[{"attributes":{"type":"Service_Status_History__c","url":"/services/data/v38.0/sobjects/Service_Status_History__c/ss"},"Service__c":"asss","Id":"uu","Name":"yyy","Previous_Status__c":"xyz","New_Status__c":"y","Reason_Code__c":"xyz","Comment__c":"abc"}]}
と
iframe からの出力
{"attributes":{"type":"CKSW_BASE__Service__c","url":"/services/data/v38.0/sobjects/CKSW_BASE__Service__c/444"},"Id":"444","名前":"xyz "}
Vf ページからは完全な値で目的の出力が得られますが、force.com URL の iframeからは親オブジェクト (ネストされたクエリ) が利用できません。
ただし、単純な専用クエリで親のみを呼び出すと、両方の場所 (iframe と url)で値が返されます。
ネストされた SOQL が親オブジェクトを取得できない理由 ここで何が欠けていますか??
前もって感謝します。助けてください。
Iframe からの出力