Skip to Content

TheBlogReaders.com

Salesforce.com, PHP, MySQL, Javascript, Ajax, Htacces

SObject row was retrieved via SOQL without querying the requested field

Be First!
by August 26, 2014 APEX, SALESFORCE, SOQL

SObject row was retrieved via SOQL without querying the requested field

Error:  SObject row was retrieved via SOQL without querying the requested field

to overcome, we can add the standard controller extension like:

public ContactExt(ApexPages.StandardController sc) {
        sc.addFields(new List<String> {'Account.BillingCity'});
        record = (Contact)sc.getRecord();
}

and make sure to add the isRunningTest, so that there is no issue while creating the test method for above apex class like:

public ContactExt(ApexPages.StandardController sc) {
                  if (!Test.isRunningTest()) { 
            sc.addFields(new List<String> {'Account.BillingCity'});
        }           
        record = (Contact)sc.getRecord();
}

or otherwise, facing the issue while executing the test method like below error:
but while executing the Apex Test Method, its throwing the error like:
System.SObjectException: You cannot call addFields when the data is being passed into the 
controller by the caller

(1281)

Previous
Next

Leave a Reply