0

首先,我只是一个初学者,现在写一个视觉力页面和顶点

基本上,我有对象A和B,A是master,B是detail,每次创建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 中?

欢迎任何帮助!

4

1 回答 1

0

您不需要 Visualforce 来实现这一点,工作流规则表单预填充技巧就足够了。

使用“每次创建记录”的条件对详细信息对象制定新规则,操作将是设置详细信息Balance字段的字段更新。它应该设置的公式是简单Master__r.Balance__c的,A__r.Balance__c或者你已经命名了主从字段。

如果您坚持使用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;
}
于 2013-04-09T20:30:16.207 回答