壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1750|回复: 0

[OAF] 动态vo绑定动态表格求助

[复制链接]
回帖奖励 1 点努力值 回复本帖可获得 1 点努力值奖励! 每人限 1 次
发表于 2012/3/12 13:30:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
使用emp表动态创建vo,并绑定到动态创建的table(advance table),但为什么显示不出来数据,求高手赐教!!!!!
AM:

public String[][] initVO(){
  
  StringBuffer sb=new StringBuffer(300);
  StringBuffer sb1=new StringBuffer(300);
  sb.append("select 'no' empno,'name' ename,'job' job,'mgr' mgr,'hiredate' hiredate ,'sal' sal,'comm' comm,'dno'deptno  from dual \r\n ");
  sb.append("UNION ALL  \r\n");
  sb.append(" select to_char(empno),to_char(ename),to_char(job),to_char(mgr),to_char(hiredate),to_char(sal),to_char(comm),to_char(deptno) from emp");
  
//sb.append("select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp");
  
  OAViewObjectImpl vo=this.gettVO1();
  vo.setQuery(sb.toString());

  if(vo.getFetchedRowCount()==0){
  System.out.println("vo is prepared for execute");
  vo.setMaxFetchSize(-1);
  
  vo.executeQuery();
  }
  System.out.println("vo query="+vo.getQuery());
  System.out.println("VO  criteria"+vo.getViewCriteria());
  
  
  System.out.println("sql="+sb.toString());
  System.out.println("fetchedcount="+vo.getRowCount());
  //set the Attribute to updatable
    Row row=vo.first();
    AttributeDefImpl[] ad=(AttributeDefImpl[])vo.getViewDefinition().getAttributeDefs();
   
  
    int intAttributeCount = ad.length;
    System.out.println("count"+intAttributeCount);
   
    String[] strTitle = new String[]{"no","name","job","mgr","hiredate","sal","comm","dno"};
    String[] strAttributeNames = row.getAttributeNames();
      
       //for insert and update
       vo.addDynamicAttribute("DUMMY_ATTRIBUTE");
       row.remove();
       for(int i=0;i<strAttributeNames.length;i++){
       System.out.println("strAttributeNames["+i+"]="+strAttributeNames[i]);
       }
       System.out.println("sb1 rowcount="+vo.getRowCount());
       System.out.println("getfetchedrowcount="+vo.getFetchedRowCount());
      
      
       return new String[][]{strTitle, strAttributeNames};
  }

co:

    OAApplicationModule am = pageContext.getApplicationModule(webBean);
            
    String[][] strTitleAndAttributeName = (String[][])am.invokeMethod("initVO");
    OAAdvancedTableBean tableBean = (OAAdvancedTableBean)webBean.findChildRecursive("adtable");

     tableBean.setViewUsageName("tVO1");
   
     tableBean.prepareForRendering(pageContext);
//     pageContext..
    for (int i = 0; i < strTitleAndAttributeName[0].length; i++)
       {
         // create a column
         OAColumnBean cb = (OAColumnBean)createWebBean(pageContext, COLUMN_BEAN, null, null);
         
         // create MessageStyledText
         OAMessageStyledTextBean mst = (OAMessageStyledTextBean)createWebBean(pageContext, MESSAGE_STYLED_TEXT_BEAN, null, null);
         mst.setViewAttributeName(strTitleAndAttributeName[1][i]);
         mst.setViewUsageName("tVO1");
         mst.setTextBinding(strTitleAndAttributeName[1][i]);
        
         cb.addIndexedChild(mst);
         // create title
         OASortableHeaderBean shb = (OASortableHeaderBean)createWebBean(pageContext, SORTABLE_HEADER_BEAN, null, null);
         shb.setPrompt(strTitleAndAttributeName[0][i]);
         cb.setColumnHeader(shb);
      
         tableBean.addIndexedChild(cb);



您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/30 00:30 , Processed in 0.010925 second(s), 15 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表