неизвестное свойство при использовании списка классов на странице Vf - PullRequest
1 голос
/ 03 октября 2011

у меня есть класс

public with sharing class CAccountRep {
string sageAccountNo {get;set;}
string clientName {get;set;}
string name {get;set;}
integer noofdays {get;set;}
string billableUnits {get;set;}
decimal dailyChargeRate {get;set;}
string nominalCode {get;set;}
string practice {get;set;}
string taxFlag {get;set;}
string ProjectId {get;set;}
string PONumber {get;set;}

public CAccountRep(String CrSageAc,String CrClientN,string CrName,integer Crnoofdays,string crbillableunits,decimal CrDecimalChargeRate,string crNominalCode,string CrPractice, String CrTaxFlag,String CrProjectId, String CrPONumber)
{
    sageAccountNo=CrSageAc;
    clientName=CrClientN;
    name=CrName;
    noofdays=Crnoofdays;
    billableUnits=crbillableunits;
    dailyChargeRate=CrDecimalChargeRate;
    nominalCode=crNominalCode;
    practice=CrPractice;
    taxFlag=CrTaxFlag;
    ProjectId=CrProjectId;
    PONumber=CrPONumber;

}

    }

Я создаю объект этого класса и передаю параметры этому классу

   public List<CAccountRep> AR { get;set; }

   public list<CAccountRep> getAR()
   {   
    if(AR!= null)
        return AR ;
    else return null;
   }

   Using the follwing code to create the object of the class

     CAccountRep CRep=new CAccountRep(projectList[0].Sage_Account_Number__c,projectList[0].Client_Name__c, Cname,enoOfBillableDays,projectList[0].BillableUnits__c,AssConlist[0].Daily_Charge_Rate_of_Consultant__c,AssConlist[0].Nominal_Code__c,projectList[0].C85_Practice__c,projectList[0].Tax_Flag__c,projectList[0].Project_ID__c,projectList[0].PO_Number__c);

     AR.add(CRep);

На моей странице VF я пытаюсь отобразить содержимое списка AR.

Но я получаю ошибку Unknown Propery CAccountRep.ProjectId при сохранении страницы VF.

<table id="tableRep">
   <apex:repeat id="tc" value="{!AR}" var="TCrep">
   <tr>

   <td>{!TCrep.ProjectId}</td>
   </tr>
   </apex:repeat>
   </table>

Я могу получить вывод, как это, если я просто дам {! TCrep}

CAccountRep:[PONumber=null, ProjectId=C85_JPMC1 _A-0083, billableUnits=null, clientName=001A000000YJFhdIAH, dailyChargeRate=null, name=Change Order 10002011-09-05 to 2011-10-10 : 0 null, nominalCode=null, noofdays=0, practice=Administration, sageAccountNo=null, taxFlag=null]
CAccountRep:[PONumber=null, ProjectId=C85_BBCWW _A-0084, billableUnits=null, clientName=001A000000cwgIlIAI, dailyChargeRate=null, name=Secure Desktop v012011-09-05 to 2011-10-10 : 0 null, nominalCode=null, noofdays=0, practice=null, sageAccountNo=null, taxFlag=null]
CAccountRep:[PONumber=null, ProjectId=C85_JPMC1 _A-0083, billableUnits=null, clientName=001A000000YJFhdIAH, dailyChargeRate=null, name=Change Order 10002011-09-05 to 2011-10-10 : 0 null, nominalCode=null, noofdays=0, practice=Administration, sageAccountNo=null, taxFlag=null]

Есть идеи, как правильно его отобразить?

1 Ответ

2 голосов
/ 03 октября 2011

Я думаю, что компилятор запутался, потому что, по его мнению, у вас есть 2 открытых метода получения, то есть обе эти строки:

public List<CAccountRep> AR { get;} // just removed set; for now

public list<CAccountRep> getAR()

Будет вызываться со страницы Visualforce при использовании следующего синтаксиса на странице:

{!AR}

Попробуйте сделать это вместо:

public List<CAccountRep> AR { get{
    return AR ; // if AR is null it returns null so the if statement was redundant

}set; }

И удалите метод getAR (). Вы также должны пометить переменные-члены класса, которые вы хотели бы видеть открытыми, например,

public string ProjectId {get;set;}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...