2013-04-09 119 views
0

首先,我只是一個啓動,現在寫的視覺力量頁面,先端獲取對象的價值

基本上,我有對象A和B,A是碩士和B是一個細節,每一次創建一個BI將設置默認平衡值與A相同,我的代碼如下:

//visual force page: 
<apex:inputField value="{!acc.A__c}"/> 

//apex code: 
public void upgrade(){ 
     A__c bc; 
     bc.Id = acc.A__c; 
     Decimal str = bc.Balance__c; 
     acc.Balance__c = str; 
     insert acc; 
} 

它並沒有因爲某些原因工作,那麼有沒有什麼辦法讓主A_ 的價值c並將其複製到相同的字段B _c ??

任何幫助,歡迎!

回答

0

您不需要Visualforce來實現這一點,workflow ruleform prepopulation trick就足夠了。

使用「每次創建記錄」條件在細節對象上創建一個新規則,並且該操作將是一個字段更新,該字段更新設置詳細信息Balance字段。應該設置的公式只是Master__r.Balance__c,A__r.Balance__c或hovewer,您已將其命名爲主細節字段。

如果你堅持使用visualforce - 你的代碼是完全搞砸的(從正常情況下你永遠不會分配任何東西到Id字段)。

如果這個想法是,你的用戶將在查找中填寫從B到A(該A__c場),則:

B__c b = new B__c(); 
// Some time later user fills in the lookup 
// b.A__c = 'some id here'; 
// and hits save button. 

public void save(){ 
    if(b.A__c != null){ 
     A__c selectedA = [SELECT Id, Name, Balance__c FROM A__c WHERE Id = :b.A__c]; 
     b.Balance__c = selectedA.Balance__c; 
    } 
    insert b; 
}