难啊,难啊,真是太难了!(5分)

  • 主题发起人 主题发起人 freesoft
  • 开始时间 开始时间
F

freesoft

Unregistered / Unconfirmed
GUEST, unregistred user!
要求票据中有这样的销售
100079,100080,100081,100082,100083
这几张票一起销售
记做100078/83
但是要统计多少张票的时候怎么办呢?
只有一条记录怎么会在报表中统计出5条记录呢?
 
数据库和显示分别不同。
在数据库里面存储5条,显示的时候才显示为1000078/83之类的。
 
你用两个字段啊,Begin_no,End_No,这两个字段来表示连续的票据号,这样想要多少都可以。
如果Begin_no = End_No 表示就只有一个号码。
 
to yzhshi:
你这样正是我所需要的可是怎么做呢?
to suman:
虽然我设计数据库时没有分开,可是我还是想听听你的意见,不知道怎么取他们的数目
并不是每条都是象1000078/83那样的,大部分可能是单条记录。
 
显示的时候,使用那些怪SQL可以,比如Group By、Distinct,两次Select等。
 
到底怎么弄呀,别卖官子了。
 
sorry,对于大部分都是单条纪录,我的方法太浪费空间。
应该说yzhshi的方法还是比较可行的,但是我想还是应该增加一个字段来完成
比如增加一个Customer表示卖给谁的票据,显示的时候用Select * from piaoju group by customer
(注:这个例子可能不太贴切,但原理应该这样)
 
to suman :你说的客户我已经加了。的确这个问题很难处理。
不知道你是否知道yzhshi的方法怎么做,先谢谢你的关心了。


穷人
2002-4-3
 
帮助提前!
 
没人助我吗?
 
我不知道是不是正确理解了你的意思
再用一个临时的表,报表控件连接这个临时表
根据100078/83可得出票张数count:+5 票为100079,100080,100081,100082,100083
再用循环语句
for i:=1 to count do
begin
在临时表中插入这几条记录
end
 
想来想去,后来还是多填一个字段,在插入是就记下张数这样最简单了。
虽然没有得到很好方法,不过还是感谢各位的帮忙,
起码你们也努力了。
分散大概太少了。
 
呵呵,其实不是买关子,是没有亲身实践,只是简单的想想,所以也说不出太多。
 

Similar threads

回复
0
查看
541
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部