QUESTION POSED ON: 23 January 2007
I've tried your example - RFC_RAD_TABLE_ENTRIES from VBA -
and it works fine for that function.
Now I've modified that code to use the function DDIF_FIELDLABEL_GET, but I get the following error message:
wdtfuncs SAP data type not supported
error on line:
Set i_TABNAME = Func.Exports("TABNAME")
Here is my VB code:
Option Explicit
Public Functions As SAPFunctionsOCX.SAPFunctions
Private LogonControl As SAPLogonCtrl.SAPLogonControl
Private R3Connection As SAPLogonCtrl.Connection
Private TableFactory As SAPTableFactory
Dim Func As SAPFunctionsOCX.Function
Public i_TABNAME As SAPFunctionsOCX.Parameter
Public i_FIELD As SAPFunctionsOCX.Parameter
Public i_LANGU As SAPFunctionsOCX.Parameter
Public strLabel As SAPFunctionsOCX.Parameter
'Public tENTRIES As SAPTableFactoryCtrl.Table
Public Sub Main()
Dim ix As Integer
Dim retcd As Boolean
Dim SilentLogon As Boolean
Set LogonControl = CreateObject("SAP.LogonControl.1")
Set Functions = CreateObject("SAP.Functions")
Set TableFactory = CreateObject("SAP.TableFactory.1")
Set R3Connection = LogonControl.NewConnection
R3Connection.client = "000"
R3Connection.ApplicationServer = "A1KGNB09"
R3Connection.language = "DE"
R3Connection.User = "BCUSER"
R3Connection.Password = "minisap"
R3Connection.System = "A1 SAP 620 09"
R3Connection.SystemID = "000"
R3Connection.SystemNumber = "00"
R3Connection.UseSAPLogonIni = False
SilentLogon = False
retcd = R3Connection.Logon(0, SilentLogon)
If retcd <> True Then MsgBox "Logon failed": Exit Sub
Functions.Connection = R3Connection
Set Func = Functions.Add("DDIF_FIELDLABEL_GET")
Set i_TABNAME = Func.Exports("TABNAME")
Set i_FIELD = Func.Exports("FIELDNAME")
Set i_LANGU = Func.Exports("LANGU")
Set strLabel = Func.Imports("LABEL")
i_TABNAME.Value = "USR02"
i_FIELD.Value = "BNAME"
i_LANGU.Value = "DE"
Func.Call
MsgBox strLabel
' Debug.Print eNUMBER_OF_ENTRIES
' For ix = 1 To tENTRIES.RowCount
' Debug.Print tENTRIES(ix, 1)
' Next
R3Connection.Logoff
End Sub
|