调用过程时经常出现 "automation error system call failed"是怎么回事?

谁为谁狂 2008-10-17 12:07:47

Private Sub dqxslbl_Change()
If MdPrintMode = 2 Then Exit Sub

Tojlmd = False
If dqxslbl.Caption = tpxslbl.Caption Then
PrintCmd.Enabled = False
OperateAccessDb "Update mdb Set ywc_mdb='1' Where mdh_mdb='" & dqmdlbl.Caption & "'", 0

Call PrintMd '调用此过程时有时会出现“automation error system call failed”

MsgBox "托盘已满,正在打印码单!", vbInformation, "提示"
Tojlmd = True
PrintCmd.Enabled = True
End If
End Sub

Private Sub PrintMd()
On Error GoTo ErrorProc
MyDoc.Close False
Set MyDoc = MyApp.Documents.Open(App.Path & "\mdyx.lab")
MyDoc.Printer.SwitchTo mdPrintlbl.Caption

OperateAccessDb "Select xh_zxbzjl,gs_zxbzjl,jz_zxbzjl,zdgh_zxbzjl From zxbzjl Where mdh_zxbzjl='" & dqmdlbl.Caption & "' Order by xh_zxbzjl ASC", 1
If redset.RecordCount < 1 Then Exit Sub
MyDoc.Variables("gg").Value = ggtxt.Text
MyDoc.Variables("ph").Value = phlbl.Caption
MyDoc.Variables("dj").Value = djlbl.Caption
MyDoc.Variables("mdtm").Value = dqmdlbl.Caption
MyDoc.Variables("xs").Value = redset.RecordCount
MyDoc.Variables("czy").Value = redset.Fields("zdgh_zxbzjl")
MyDoc.Variables("scbc").Value = bzbzlbl.Caption
Dim xhTmpI As Integer
redset.MoveFirst
For xhTmpI = 1 To redset.RecordCount
MyDoc.Variables("xh" & CStr(xhTmpI)).Value = redset.Fields("xh_zxbzjl")
MyDoc.Variables("gs" & CStr(xhTmpI)).Value = redset.Fields("gs_zxbzjl")
MyDoc.Variables("jz" & CStr(xhTmpI)).Value = redset.Fields("jz_zxbzjl")

redset.MoveNext
Next xhTmpI

MyDoc.PrintLabel 2
MyDoc.FormFeed
MyDoc.Close False
Set MyDoc = MyApp.Documents.Open(App.Path & "\labelyx.lab")
Exit Sub
ErrorProc:
If Err.Description <> "" Then
MsgBox Err.Description
End If
End Sub


不是每次都出现。
...全文
402 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
SYSSZ 2008-10-17
  • 打赏
  • 举报
回复
自动化错误系统调用失败--一种由于设备没准备好之类的原因引起的错误

7,785

社区成员

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

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