十万火急,请求帮忙!!

lichlei 2001-07-30 09:11:26
我现在要做报表输出,很着急,用各位大哥的方法做实验,把DATAWINOW中的 数据写到一个WORD文件里。结果中文都成了乱码,不知道那位遇到过没有,是否解决过这个问题?我用的是WIN2000,PB6。5,OFFICE2000,代码如下(是各位在网上发表的):constant integer ppLayoutBlank = 12
OLEObject ole_object
ole_object = CREATE OLEObject

//连接PowerPoint
IF ole_object.ConnectToNewObject("Word.Application") <> 0 THEN
MessageBox('OLE错误','OLE无法连接!')
return
END IF

ole_object.Visible = True

long ll_colnum,ll_rownum
constant long wdWord9TableBehavior = 1
constant long wdAutoFitFixed = 0
constant long wdCell = 12
string ls_value

//得到数据窗口数据的列数与行数(行数应该是数据行数 + 1)
ll_colnum = Long(dw_1.object.datawindow.column.count)
ll_rownum = dw_1.rowcount() + 1

ole_object.Documents.Add("C:\WINDOWS\Application Data\Microsoft\Templates\Normal.dot",False,0)
ole_object.ActiveDocument.Tables.Add(ole_object.Selection.Range, ll_rownum, ll_colnum,wdWord9TableBehavior,wdAutoFitFixed)

string ls_colname
integer i,j,k
for i = 1 to ll_colnum
//得到标题头的名字
ls_colname = dw_1.describe('#' + string(i) + ".name") + "_t"
ls_value = dw_1.describe(ls_colname + ".text")
//messagebox("ss",ls_value)
ole_object.Selection.TypeText(ls_value+" ")
messagebox("",string(f_cncharnum(ls_value)))
for k = 1 to f_cncharnum(ls_value)
ole_object.Selection.TypeBackspace()
next
ole_object.Selection.MoveRight(wdCell)
next

dw_1.setredraw(false)
ole_object.Selection.MoveLeft(wdCell)
for i = 2 to ll_rownum
for j = 1 to ll_colnum
dw_1.scrolltorow(i - 1)
dw_1.setcolumn(j)
ls_value = dw_1.gettext()
ole_object.Selection.MoveRight(wdCell)
ole_object.Selection.TypeText(ls_value)
for k = 1 to f_cncharnum(ls_value)
ole_object.Selection.TypeBackspace()
next
next
next
dw_1.setredraw(true)

constant long wdFormatDocument = 0
//保存新建的文档
ole_object.ActiveDocument.SaveAs("sample.doc", 0,False,"",True,"",False,False,False, False,False)

//断开OLE连接
Ole_Object.DisConnectObject()
Destroy Ole_Object

...全文
83 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lichlei 2001-07-30
  • 打赏
  • 举报
回复
不行,谁装的是WIN2000,PB6。5,OFFICE2000,能帮忙调试一下吗,我把下载的原程序发给你,看看你那如何?
wangsw 2001-07-30
  • 打赏
  • 举报
回复
改为系统默的不行吗?
pbworm 2001-07-30
  • 打赏
  • 举报
回复
你用2000的话好象字体是会有一点问题的,你查一下以前的文章,我记得有这方面的资料。(我没有用过2000,Sorry)
lichlei 2001-07-30
  • 打赏
  • 举报
回复
是宋体啊,我设为宋体了
pbworm 2001-07-30
  • 打赏
  • 举报
回复
你的数据窗口中使用中文的地方的字体是宋体吗?
eastseaofdragon 2001-07-30
  • 打赏
  • 举报
回复
没有用过。

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧