动态生成报表的问题?大家都来谈谈自己设计的思路(10分)

  • 主题发起人 主题发起人 hurryman
  • 开始时间 开始时间
H

hurryman

Unregistered / Unconfirmed
GUEST, unregistred user!
假如A表有如下字段
名称,编号,型号,价格,采购人,日期,金费来源。
现在我要求生成的报表可以让用户自定义输出字段。
假如开始我为用户设计好的报表是名称,编号,价格。
而用户在有时使用的过程中要求要在在添加一个金费来源字段或减少一个
价格字段,这些我打算用一个FORM来列出所有字段,用户选种的就生成
但是我遇到一个问题:
如:
报表格式:
______________
|名称|编号|价格|
当我加一个金费来源字段时,将它定位价格的后头。
再如我不要价格这个字段,将后面的金费来源字段有要提前,不然回有一个
空位置,大家看看,该如何处理呢?
(不要说用word)
 
根据用户选择的字段个数动态调整每一个字段的位置,你可以等分每一个字段的宽度。
 
superljj:
可以在详细些吗?你的意思是开始每个字段都放在报表里是吗?
其它DFW也来帮帮我呀
 
但是我这里要求用户可以在指定字段的同时,指定只段的长度呀,还有,要考虑报表栏
的边框呀,
怎么没有人回答呀!
 
每个字段都放在报表里,不需要打印或预览的字段动态设定value:=''。
边框可以在设计室做,也可以动态调整。
如果指定字段长度,也可以动态调整他们之间的间隙。
 
动态调整他们之间的间隙。
什么意思?
 
字段与字段之间的距离。
 
用EhLib可以动态增加减少列调整列间距直接调整DBGridEh就行了直接打印Grid的格式
或使用FastReprot可以在运行期设计报表但使用者要学一下
Delphi园地
http://mydelphi.8u8.com
 
以下的回復隻是我個人的經驗:
一般先將要打印的資料用一個表格顯示出來,然後提供用戶篩選。
這樣就隻將篩選出來的打印出來。
當然,我用的不是WORD,而是EXCEL
 
可以用ReportBuild控件来做,把所有字段输出,然后根据需要调整是否显示,
也可以让用户自己设计。
 
踢一下,
 
谢谢大家
基本我以实现但是,还有一个问题:
如:
报表格式:
______________
|名称|编号|价格|
如果我不要“编号”那么,名称和价格中间会有一个空白区呀,
我是按照:superljj的方法来的
 
后退
顶部