问题描述
我知道之前对此有一些疑问。但是,没有一个因素足以使我找到解决当前问题的方法。
到目前为止的代码
Sub GetPlannedOrderNums()
'--------
'Logon
'--------
Dim ws As Worksheet
Dim fRow As Long
Set ws = ThisWorkbook.Worksheets("Sheet1")
Dim sapConn As Object 'Declare variant
Set sapConn = CreateObject("SAP.Functions") 'Create ActiveX object
With sapConn.CONNECTION
.Destination = "**" 'SAP HOST
.ApplicationServer = "**" 'SAP SYSTEM
.Client = "**"
.User = "**" 'SOME VALID SAP LONG
.Password = "**" 'valid password
.SystemNumber = "**" 'for multiple logical systems
End With
If sapConn.CONNECTION.Logon(1,False) <> True Then 'Try Logon
MsgBox "Cannot Log on to SAP"
End If
If sapConn.CONNECTION.IsConnected Then
'--------
'Define function
'--------
Dim objRfcFunc As Object
Set objRfcFunc = sapConn.Add("BAPI_PLANNEDORDER_GET_DETAIL")
'--------
'Then set values
'--------
With ws
fRow = .Cells(.Rows.Count,5).End(xlUp).Row
End With
objRfcFunc.Value("MATNR") = "**"
objRfcFunc.Value("WERKS") = "**"
objRfcFunc.Value("DISPO") = "**"
objRfcFunc.Value("Production Scheduler") = "**"
If objRfcFunc.Call = False Then
MsgBox "Call failure" + objRfcFunc.Exception
End If
End If
End Sub
代码的最终目标
为n个物料运行BAPI,并为每个唯一的物料编号检索1个计划订单号。我没有继续进行独特的部分,因为我觉得我需要首先使BAPI正常工作。
未解决的问题
我知道此代码不完整。我一直坚持前进的方向和方法,但未能找到有关此特定问题的任何信息。 BAPI的必填字段是物料编号,工厂,MRP控制器和生产计划程序。 登录部分正常工作,但是代码在对象处中断(很可能是由于字段错误所致)。
问题
- 我如何知道BAPI所需的参数?我无权访问SE37或SE80。我在这里找到的名字是全能的Google使用的。
- 通过Excel的BAPI的语法如何?登录部分可以,但是我很难找到有关如何正确设置和编程它的任何答案。
任何指向正确方向或一般帮助的指针将不胜感激!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)