打印格式问题

饮水需思源 2003-01-09 04:56:19
最近这个问题很烦:即开发了一个比较通用的销售程序,可每个客户的打印格式都不一样,我是直接用printer对象编程实现打印的。现在有两个客户在试用,于是我就使用两个相互独立的工程,除打印格式外,在一工程中增加了功能后必须手工在另一工程中增加此功能。如果客户不断增加,这种方式肯定不行,不知大家有没有好的思路可供参考?
...全文
104 点赞 收藏 14
写回复
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
FreshAir 2003-01-14
没有问题。
Crystal Report最适合处理有大量数据的报表。
回复
饮水需思源 2003-01-14
客户一年数据记录大约在四十万条以上,不过客户有时候要求套打,有时候要求非套打,Crystal Report能实现吗
回复
FreshAir 2003-01-14
在数据量较大(5000条以上)时,用EXCEL做报表打印,速度问题将会很
严重,如果在9X系统下运行,还可能出现系统资源不够。
直接用Printer输出,可以实现高速、复杂的要求,但编程量较大,维护
不方便。
用Crystal Report可能是很好的方法,设计直观,输出速度快,最擅长
从数据库读取数据。对于不同客户要求不同报表格式的问题,只需针对特殊
客户,改变报表格式文件即可,不必修改程序。
回复
FreshAir 2003-01-14
我用Crystal Report做过套打,也做过非套打,方便得很。
回复
_131_ 2003-01-11
其实我提到的方法都是只用设置一次啊,以后的打印就不需要人工干预了啊!
从数据库里提取字段不会影响打印啊!
回复
suntt 2003-01-11
呵呵,的确很头疼
回复
ccbl 2003-01-10
用文件配置方式
回复
watt 2003-01-10
not=两个相互独立的工程
yes=1个工程
回复
qqqdong 2003-01-10
为何不用参数来控制
回复
twinking 2003-01-10
用VB
Dim xlApp As Excel.Application
Set xlApp = New Excel.Application
Set xlApp = CreateObject("Excel.Application")
‘激活EXCEL应用程序
xlApp.Visible = False ‘隐藏EXCEL应用程序窗口
Set xlBook = xlApp.Workbooks.Open(strDestination)
‘打开工作簿,strDestination为一个EXCEL报表文件
Set xlSheet = xlBook.Worksheets(1)
‘设定工作表
写数据的时候
Cell(4,2) 职工姓名 Cell(6,6) 毕业学校
Cell(4,4) 职工性别 Cell(6,7) 所学专业
Cell(4,6) 职工民族 Cell(6,9) 工作时间

打印的时候用
xlBook.Save ‘保存文件
xlSheet.PrintOut ‘执行打印
xlApp.Quit ‘退出EXCEL
回复
twinking 2003-01-10
我现在觉得用EXCEL
做报表的打印是对中国人来说最理想的
至于后台
可以在调用EXCEL的时候,隐藏其窗口
回复
饮水需思源 2003-01-10
楼上兄弟的思路固然好,可以用户要求是后台打印,即按“打印”或按快捷键后自动打印,无需人工干预,而且要求打印速度快,可能有些内容单据上没有,打印时要到数据库中读取。
回复
_131_ 2003-01-10
鉴于你的要求,我觉得用printer对象比较复杂,不容易处理!
不如这样:
打印窗体或者picturebox或者用水晶报表或者到处到excel、word等
打印窗体、picturebox的方法
1、把你需要打印的内容分别放到不同的textbox(例如:姓名放到textbox1,性别放到textbox2);
2、把textbox1。。。。。N的拖动属性打开,能够让用户把textbox拖放到他们需要的位置,并且把textbox的位置逐一记录(写入ini文件);
3、打印窗体或者picturebox
4、下次用户调用窗口的时候,首先读取ini文件,这样用户就能够自己定义textbox的位置了

用水晶报表
该报表支持rpt文件的编辑,即用户能够将rpt文件打开,随意的拖动里面的字段的位置(具体方法你可以查阅相关资料)

调用excel、word
把要打印的东西全部导入excel、word中,格式由用户来自己排。后者他们可以自定义一个模板,你导入的时候根据模板来!
回复
z_yanjie 2003-01-09
我是用动态改变datareport的session中的可视和位置来实现的.
回复
发动态
发帖子
VB基础类
创建于2007-09-28

7451

社区成员

VB 基础类
申请成为版主
社区公告
暂无公告