CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  PowerBuilder >  基础类

crosstab 的问题,高手help!!!!在线等待

楼主zfyvc(新手上路中)2002-04-27 11:02:17 在 PowerBuilder / 基础类 提问

用crosstab   retrieve数据,  
  比如columns是A,rows是B,value   是C  
  得到如下数据:  
  sum   of   val     A  
  B                       00001         10002         33003       40004           grand   total  
  001                   3.2             3.4             5.6                   0                         12.2  
  002                   2.0                 0                 0                   0                               2  
  003                   1.2             1.2             1.2               1.2                           4.8    
  004                       0                 0                 0                   1                               1  
  grand   total       .............................................  
   
  我想得到A的值,即如果限定第2列,我希望得到10002,第四列,我希望  
  得到40004,etc.通过数据窗口的属性吗??请高手详细指点,谢谢。 问题点数:100、回复次数:5Top

1 楼xingxing(xingxing)回复于 2002-04-27 11:55:02 得分 0

再详细点,好象是可以!!!Top

2 楼jaguarcts(xzh2000)回复于 2002-04-27 12:44:15 得分 0

绝对没朋问题。  
  查数据窗口对象的语法:  
  dw_1.object.datawindow.crosstab.catagory  
  之类,  
  你知道怎么查询SQL  
  语法吗?  
  menu:new--tools(datawindow   syntax   tools)  
   
   
   
  Top

3 楼cqulzh(Eexcelence)回复于 2002-04-27 12:45:25 得分 0

帮兄弟up一把!Top

4 楼zfyvc(新手上路中)回复于 2002-04-27 12:46:25 得分 0

我的意思就是因为A的值是检索出来的,我事先并不知道,所以  
  00001,10002,33003,40004....这些列头的值是数据检索完后,  
  我要通过某种方式来得到,比如我现在想知道第二个列头的值,  
  我可不可以通过某种方式来得到?就如能看到的,该值是10002。Top

5 楼llitcwl(中国龙)回复于 2002-04-27 13:06:22 得分 100

看一段代码:  
  //====================================================================  
  //   DW_1   单击事件     在   w_sys_bzreport   inherited   from   window  
  //--------------------------------------------------------------------  
  //   说明:交叉表得到记录测试  
  //--------------------------------------------------------------------  
  //   返回: ()    
  //--------------------------------------------------------------------  
  //   作者: cwl 日期:   2002.01.20  
  //变更日志:020302   改变对列值的取值方法  
  //====================================================================  
   
  string   lsSubject,   lsClass,   lsValue,   lsCol   ,ls_clicked,ls_temp,ls_fristcol  
  int   li_i  
  //至关重要:将数据窗口静态化  
  dw_1.object.datawindow.crosstab.staticmode='Yes'    
   
  ls_clicked   =   dw_1.GetObjectAtPointer()    
   
  if   IsValid(   dwo   )   and   row   >   0   THEN    
   
      //列名  
      lsCol   =   string(   dwo.name   )    
   
      //值  
      lsValue   =   string(   this.getitemnumber(   row,   lsCol   )   )    
   
      if   isnull(   lsValue   )   then   lsValue   =   'null'    
   
      //   本行第一列值    
      lsSubject   =   this.GetItemString(   row,   1   )    
       
      //   相应列值  
      //原列名  
      li_i=pos(lscol,'_')  
      if   li_i=0   then   li_i=len(lscol)+1  
      ls_fristcol=mid(lscol,1,li_i   -   1)  
       
      //得到分隔串  
      ls_temp=mid(lscol,len(ls_fristcol)+1,len(lscol))  
      messagebox(   '',ls_fristcol   +   "_t"+ls_temp   )  
       
      //   相应列值  
      lsClass   =   this.Describe(   ls_fristcol   +   "_t"+ls_temp+".Text"   )  
      messagebox(   lscol,lsSubject   +   '   '   +   lsClass   +   "   "   +   lsValue   )    
   
  end   ifTop

相关问题

  • HELP(在线等待)
  • HELP!在线等待!
  • ----->help<------在线等待!!!!!!!!!!!
  • ----->help<------在线等待!!!!!!!!!!!
  • crosstab报表的排序问题,在线等待!急!
  • crosstab报表问题,在线等待,急急急!!
  • SOS!!! 在线等待!!! HELP ME!!!
  • SOS!!! 在线等待!!! HELP ME!!!
  • SOS!!! 在线等待!!! HELP ME!!!
  • 求救?help??????在线等待!

关键词

  • 数据
  • crosstab
  • lsvalue
  • lscol
  • datawindow
  • dw
  • 值
  • 得到
  • ls
  • 知道

得分解答快速导航

  • 帖主:zfyvc
  • llitcwl

相关链接

  • PowerBuilder类图书
  • PowerBuilder类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo