1

我设计了一个 VF 页面来显示自定义对象的字段记录列表。我的对象中有两个数字字段,我设计了 VF 页面,以在页面底部显示这些数字字段和总计。将来,如果将额外的数字字段添加到同一对象,那么我如何编写代码来添加一列,该列又应自动填充到 visualforce 页面上。是否可以在销售人员中。

4

2 回答 2

0

请在下面找到一些代码。请注意,这未经测试,但会给你一个完整的想法!

VF Page:
<apex:form>
      <!-- this column will return the sum -->
      <apex:column value="{!Sum}"/>
</apex:form>

Apex Class:
//Your class will contain the below method
    public String getSum(){
             Double Sum;
            //Return a list of the object
            List <Custom_Object__c> listCustom = [Select Num1, Num2 from Custom_Object__c];
            for(Custom_Object__c co : listCustom){
                Sum = co.Num1 + co.Num2;
              }
             return String.valueOf(Sum);
    }

答案将是这样的。请试一试,如果不起作用,请回复,我将很乐意提供帮助!

于 2012-11-14T15:06:33.423 回答
0

如果您在此页面上有控制器/控制器扩展,您可以使用描述调用来了解对象中所有字段的列表,检查它们的类型并决定要显示和汇总哪些字段。

Schema.DescribeFieldResult f = Account.NumberOfEmployees.getDescribe();
System.assertEquals(Schema.DisplayType.INTEGER, f.getType());

但是依赖于描述调用的结果会有一些限制(达到每个请求 100 个描述的州长限制,字段将按名称排序,这可能不是您想要显示它们的顺序......)。

由于您需要动态 Visualforce,您可以考虑制作一个字段集或自定义设置,列出您想要的字段,然后如果您使用 Apex 计算小计 -请从代码中引用它。这样,当您稍后需要更新它时,您就不必触摸控制器。

于 2012-11-12T07:26:42.650 回答