从EXCEL导入到PB时,DataWindows(数据窗口)如何设置?如何保存到数据库?

albert99 2014-05-28 11:21:40
各位网友:

我刚刚开始接触PB, 现在想通过PB编程的方式从EXCEL文件中导入数据到数据库. 通过网上去查找了一下, 找到以下代码:
string str_savename,named,s_grxh
int excelok,li_net
long li_count,i

oleobject excelserver
excelserver=create oleobject
excelok=excelserver.connecttonewobject("excel.application")

//检查返回值,以确保已成功地连接到了Excel
if excelok <> 0 then
messagebox("信息提示","连接EXCEL失败,请检查计算机中是否安装了EXCEL!")
return -1
end if
li_net = GetFileOpenName("选择文件", str_savename,named,"xls","Excel文件(*.xls),*.xls")
if li_net > 0 then
if str_savename = "" then return -1
dw_grid.settransobject(sqlca)
dw_grid.reset()
excelserver.workbooks.open(str_savename)
excelserver.activesheet.cells.copy
li_count = dw_grid.importclipboard() //导入数据
clipboard("")
fileclose(li_net)
excelserver.quit()
excelserver.disconnectobject()
destroy excelserver
return 1
else
messagebox('信息提示','没有指定导入文件!')
return -1
end if

首先上述代码可以用吗?
其次,在上述代码中,用到一个数据窗口: dw_grid ,但并没有具体说明如何设置这个DataWindows(数据窗口)呀. 这个数据窗口该用哪种数据源呢? 导入后, 又该如何保存到数据库呢?

各位能否给点建议呢?

非常感谢!
...全文
2183 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
hp_2000 2016-07-13
  • 打赏
  • 举报
回复
我现在正在做同样的事。但以我的尝试,这excel导入datawindow的要求挺严格的,你这excel里不能出现除了数据行以外的东西,比如,文件头信息啥的,如不能满足要求,最好还是按行、按字节读取靠谱。哎,很麻烦的
952492383 2016-07-12
  • 打赏
  • 举报
回复
如果里面有下拉窗口,显示和储存不一样,导入时要导入显示值还是储存值?
kekeservices 2015-10-16
  • 打赏
  • 举报
回复
可以用,但有要求,必须是没有标题行的excel才行
WorldMobile 2014-05-29
  • 打赏
  • 举报
回复
1.简单看了一下代码,应该是可行的,复制数据到剪切板,然后再从剪切板里导入数据窗口 2.数据窗口采用grid格式应该行,数据源采用sqlselect,把excel里的字段和你的数据窗口里的字段顺序对应好(不是显示的顺序,是sql的顺序),导入数据成功后,调用dw_1.update()就可以保存到数据库里了

1,079

社区成员

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

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