请PB高手支招:PB调用COM组件的难题

菜鸟先飞888 2010-04-15 07:11:09
最近在写一个接口,是关于HIS系统与金蝶K/3ERP系统对接的,需要用到金蝶提供的DLL组件

在VB里调用成功,但在PB里调用时,遇到难题了,现分别贴出源码,请高手校正

以下是VB代码,运行成功,将删除5号凭证
Private Sub Command4_Click()
Dim ReturnVoucherID As Long
Dim VoucherSet As Object '设置一个凭证对象

ReturnVoucherID = 5'设置要删除的凭证号

Set VoucherSet = CreateObject("Ebcgl.VoucherSet")
VoucherSet.Remove ReturnVoucherID

Set VoucherSet = Nothing
End Sub


在PB里这样写
全局变量定义了
oleobject oVoucherSet
long ReVoucherID


oVoucherSet = Create oleobject//定义凭证核算项目对象
oVoucherSet.ConnectToNewObject("EBSGLVoucher.VoucherUpdate")
oVoucherSet.Remove(ReVoucherID)
oVoucherSet.DisconnectObject()


上面代码执行失败,提示错误的函数

金蝶给出的说明:
Sub Remove([Key], [nYear], [Period], [Group], [Number])
给出的档案中说上述参数是可选项,我就不明白,如何使用它


不好意思,暂时没有可用分了,请高手帮忙
...全文
192 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
quancmlove 2011-03-17
  • 打赏
  • 举报
回复
要定义外部函数。
菜鸟先飞888 2010-04-17
  • 打赏
  • 举报
回复
更正,前面代码有错,应该为:
oVoucherSet = Create oleobject//定义凭证核算项目对象
oVoucherSet.ConnectToNewObject("Ebcgl.VoucherSet")//这一句原来写错了
oVoucherSet.Remove(ReVoucherID)
oVoucherSet.DisconnectObject()

执行错误提示:
Application terminated

Error:Error calling external object function remove at line 7 in clicked event of object cb_3 of w_kfo

第7行就是:oVoucherSet.Remove(ReVoucherID)
永生天地 2010-04-16
  • 打赏
  • 举报
回复
请把错提示写全

604

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 控件与界面
社区管理员
  • 控件与界面社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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