作者unget (零缺点(武夷军威))
看板Visual_Basic
标题Re: [VB6 ] Report
时间Fri Apr 7 12:54:15 2006
※ 引述《fumizuki (蒙面加菲狮)》之铭言:
: 用了vb这麽多年,对於列印一直有很大的困扰,
: 直式横书、横式直书,资料由上而下输出,
: 用 DataReport 或 Crystal Report 都很容易达成,
: 如果资料是由左而右输出的话, Crystal Report 还提供交叉表,亦可达成
: 但是问题来了...
: 交叉表没有左上的标题栏,也没有上方的标题栏,
: Column Name 也似乎只能指定为一个栏位的值,
: ┌───────────────────────────────────┐
: ∣ A ∣
: ├──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┤
: ∣ B ∣ C ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ D ∣
: ├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤
: ∣ E ∣ F ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣
: ├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤
: ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣ ∣
: ├──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┼──┤
: .
: .
: .
: A是报表的标题 ex. 中国厨艺学院出勤统计表
: B是说明C和E
: C是Column Data ex. 休假类别
: E是Row Data ex. 姓名
: D是额外的栏位 ---> 全勤 如果没休假下面就显示全勤之类的文字
: F是统计的资料
: C、E、F 都没问题,但是A、B、D不知道该如何设计
: 有高手能指点迷津吗Q.Q
: P.S. 限制要除了 Printer 物件以外的高招才行XD
因为我不知道你是不是用 crystal report ..
以前我也没摸过.最近到公司上班.一天要开发10几个crystal报表给主管
我的写法都是这样的
关於A的部份
设定一个 Formula 设定为 title ...但是editer 里面不要编译任何资料
在vb里面
str_title = str_title & "中国厨艺学院出勤统计表"
RPT.Formulas = "title = '" & str_title & "'"
类似这样就可以做出你要的ABD
RPT.ReportFileName = 'XXX' 'XXX = 报表位置
RPT.Connect = "ServerXX.XX.X.X;uid=;pwd=" '如果有连结资料库
RPT.Action = 1 '呼叫出报表
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.70.169.99
※ 编辑: unget 来自: 203.70.169.99 (04/07 12:59)
1F:推 fumizuki:我用的是 Crystal Report 没错 04/07 13:02
2F:推 fumizuki:RPT 是指....? 不过我用的报表是加在专案中的呀 04/07 13:02
3F:推 unget:如果有问题可以再用mail来讨论.. 04/07 13:02
4F:→ unget:RPT是指VB控制项..控制项元件名称Crystal report control 04/07 13:03
5F:→ unget:元件档案档名是crystl32.ocx 04/07 13:05
6F:→ unget:如果有安装crystal report 应该会有 04/07 13:05
7F:推 fumizuki:soga 04/07 13:05
8F:→ unget:我的作法通常都事先作crystal report报表 04/07 13:06
9F:推 fumizuki:我这边是用 crystal viewer 04/07 13:06
10F:→ unget:然後再form里面拉一个rpt元件.设定名称RPT 04/07 13:06
11F:→ unget:viewer用起来感觉上很像data report.. 04/07 13:07
12F:推 unget:viewer 的话..建议你拉text在去修改你要的标题 04/07 13:11
13F:→ unget:不知道可不可行 04/07 13:11
14F:推 fumizuki:可以 ....text1.settext "我是标题" 04/07 19:13