2012-12-03 71 views
0

你好我是Salesforce.com平臺初學者在Salesforce調試混亂初學者

我寫了一個頂點類:

public class FieldSetDemonstration { 

public Resource__c merch { get; set; } 

public FieldSetDemonstration() { 
    this.merch = getMerchandise(); 
} 

public List<Schema.FieldSetMember> getFields() { 
    return SObjectType.Resource__c.FieldSets.Hello2.getFields(); 
} 

private Resource__c getMerchandise() { 
    String query = 'SELECT '; 
    for(Schema.FieldSetMember f : this.getFields()) { 
     query += f.getFieldPath() + ', '; 
    } 
    query += 'Id FROM Resource__c LIMIT 1'; 
    System.debug('Hello world debug log'); 
    Resource__c res= Database.query(query); 
    System.debug('Hello World Debug log'+''+res.name); 
    return res; 
} 
} 

這是在visualforce頁面控制器控制器類 給正確的res.name值,但在調試控制檯中,我只獲取Hello world調試日誌。任何人都可以告訴它爲什麼它沒有在調試控制檯中顯示res.name值。如何顯示它用於調試目的?

回答

0

OK終於讓我找到的,而不是在System.debug使用res.name()我必須使用res.get( '名稱')

公共類FieldSetDemonstration {

公共Resource__c貨品{獲得;組; }

公共FieldSetDemonstration(){ this.merch = getMerchandise(); }

public List getFields(){ return SObjectType.Resource__c.FieldSets.Hello2.getFields(); }

private Resource_ c getMerchandise(){ String query ='SELECT'; 爲(Schema.FieldSetMember F:this.getFields()){ 查詢+ = f.getFieldPath()+ ''; } 查詢+ = '標識從資源 _c LIMIT 1'; System.debug( '世界,你好調試日誌'); Resource__c解析度= Database.query(查詢); System.debug(的 'Hello World調試日誌' + '' + res.get( '名稱')); return res; }}

這個代碼是工作的罰款

+0

您可以從列表''投Database.query的結果列表''或(因爲你有限制)剛剛'Resource__c RES =(Resource__c )Database.query(query);'。這樣你就可以再次寫出沒有動態的獲得者。 – eyescream