起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 305|回复: 12

【搞定】[请求]效果没有完全实现**

[复制链接]
发表于 2007-7-2 10:45:19 | 显示全部楼层 |阅读模式
我按http://bbs.justep.com/forum.php?mod=viewthread&tid=15834 的12楼
做了一个窗体,
上面的datagrid的效果没有完全实现。
似乎差了最后两步,
根据 DataSetBrokerTSSJJ1.DataSet.FieldCount 循环设置colunm 属于哪个bands
根据 TSQLDataSet(DataSetBrokerTSSJJ1.DataSet).BizFields.DisplayName 显示名称中是否有'_'这个,修改字段的显示名称

这是为什么呢?
代码是照着抄过来的

Pic_096.jpg

39.53 KB, 下载次数: 173

回复

使用道具 举报

 楼主| 发表于 2007-7-2 10:48:10 | 显示全部楼层
这个东西,刺青实现了的,
不过这几天他们都不在,
只有我一个人在,
我把他的代码复制过来也是同样的问题
不知道是不是哪里设置错了
回复 支持 反对

使用道具 举报

发表于 2007-7-2 14:14:53 | 显示全部楼层
你还是跟他沟通一下吧,因为你们的沟通肯定比我们方便,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-2 16:23:17 | 显示全部楼层
可是他们今天不在
回复 支持 反对

使用道具 举报

发表于 2007-7-2 16:31:08 | 显示全部楼层
呵呵,给他们去电话,或者用QQ跟他们联系,

我现在发现你们内部很少沟通,经常出现类似的问题,多个人再问,这样其实不好,要多多相互交流,大家的水平都会提高,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-2 16:40:20 | 显示全部楼层
本来这个东西是我先要做的,
突然分配了别的任务,
刺青就先做了。
之前我们有沟通,
但因为有不同的任务,
所以没能很深入的了解。
刺青这几天有别的事要忙,
没在公司,
联系他也不方便。
回复 支持 反对

使用道具 举报

发表于 2007-7-2 17:00:38 | 显示全部楼层
你自己设置断点跟踪一下,是否按照你的意思在走,应该是逻辑出问题了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-2 17:04:51 | 显示全部楼层
我觉得应该是条件语句的问题
不过没看出来
procedure TMAINFORM.DataSetBroker1AfterOpen(DataSet: TDataSet);
var
  i,ii: integer;
  s:String;
begin
  ii:= 0;
  for i:=0 to ((DataSetBroker1.DataSet.FieldCount div 2)-1) do
  begin
    s:= TSQLDataSet(DataSetBroker1.DataSet).BizFields[ii].DisplayName;
    if i<>0 then
    DataGrid1.Bands.Add;
    if StringUtils.Pos('_',s)=0 then
       DataGrid1.Bands.Items.Caption := '商品信息'
    else if StringUtils.Pos('*',s)=0 then
       DataGrid1.Bands.Items.Caption := StrUtils.leftStr(TSQLDataSet(DataSetBroker1.DataSet).BizFields[ii].DisplayName,6)
    else
       DataGrid1.Bands.Items.Caption := '合计';
    ii:=ii+2;
  end;
  ii:=0;
  for i:=0 to  DataGrid1.ColumnCount-1 do
  begin
    if (Trunc(i/2)<>0) then
       if (i mod 2 =0) then
          ii:=ii+1;
       DataGrid1.Columns.BandIndex := ii;

  end;
  for i:=0 to  DataGrid1.ColumnCount-1 do
  begin
    s:= TSQLDataSet(DataSetBroker1.DataSet).BizFields.DisplayName;
    if StringUtils.Pos('_',s)>0 then
       TSQLDataSet(DataSetBroker1.DataSet).BizFields.DisplayName:= StrUtils.rightStr(s,4)
  end;
end;
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-2 17:15:24 | 显示全部楼层
数据集应该没有错吧
SELECT SPXX.SPXX_SPBH, SPXX.SPXX_SPQM, CKXX.CKXX_CKQM, SPKCZKB.KCSL as 数量, SPKCZKB.KCJE as 金额
  FROM SPKCZKB, SPXX, CKXX
  WHERE CKXX.CKXX_CKQM = SPKCZKB.CKM and SPKCZKB.SPBH = SPXX.SPXX_SPBH

Pic_097.jpg

41.97 KB, 下载次数: 136

回复 支持 反对

使用道具 举报

发表于 2007-7-2 17:16:06 | 显示全部楼层
关看肯定不行,要设置断点跟踪,看看是否按自己的逻辑在走
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-12 06:43 , Processed in 0.044974 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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