Ich habe eine Abfrage für mich, die gelöscht werden muss. Ich benutze Excel 2003. Das Blatt enthält 12 Spalten. Ich muss Exportdaten von Excel nach SAP exportieren. Vor dem Export muss ich prüfen, ob der Datensatz existiert oder nicht, falls vorhanden, dann lösche und füge ein.Füllung BAPI Import Tabelle Parameter in EXCEL mit VBA
Ich habe zwei BAPIs für dieses ist Import-Tabelle, die die Parameter gefüllt werden müssen, nach dem Füllen dieser Tabelle sucht das BAPI nach den relevanten Datensätzen.
Die Liste wird in einer Tabelle angezeigt. Ich muss diese Tabelle mit Werten von Excel suchen und dann einen Feldwert in Excel importieren.
Ich schreibe diesen Code, aber es funktioniert nicht das BAPI geben Error 0
.
Public Function Import_Order() As Boolean
Dim oBAPIGetOrder As Object
Dim oBAPIVariant1 As Object
Dim oBAPIVariant2 As Object
Dim oBAPIVariant3 As Object
Dim oBAPIImpOrder As Variant
Dim oBAPIRet As Boolean
Dim oDoNothing As Variant
gBAPIPlanOrder = 0
Set oBAPIGetPlOrder = sBAPIControl.Add("PLANED_GET_DET_LIST") 'BAPI
Set oBAPIVariant1 = oBAPIGetPlOrder.exports.Item("SELECTIONCRITERIA") 'Internal table
Set oBAPIVariant2 = oBAPIGetPlOrder.Tables.Item("DETAILEDLIST") 'Table
oBAPIVariant1.Value("MATERIAL") = eMaterial
oBAPIVariant1.Value("PLANT") = ePlnPlant
lBAPIRet = oBAPIGetPlOrder.call
If lBAPIRet Then
'oBAPIImpOrder = oBAPIGetPlOrder.imports.Item("PLANNEDORDER_NUM")
a = oBAPIVariant2.Rows.Count
oBAPIImpOrder = oBAPIVariant2.Value("PLANNEDORDER_NUM")
Import_PlannedOrder = True
Else
oBAPIImpOrder = 0
Import_PlannedOrder = False
End If
End Function
Vielen Dank im Voraus für jede Hilfe ...
Ich haben nie arbeitete mit der API (hatte noch nie zuvor davon gehört), aber was ich aus der Forschung im Internet gelernt habe, ist BAPI-Fehler #: 0 kann aus vielen Gründen auftreten. Versuchen Sie, Google nach 'bapi error 0 'zu durchsuchen. Haben Sie auch versucht, den Code zu debuggen und zu sehen, welche Zeile fehlschlägt? –
Ich versuche, das BAPI "PLANED_GET_DET_LIST" von VBA (Excel) aufzurufen. Unterhalb eines Teils der Codierung. Das Problem ist in der Zeile Set oBAPIVariant1 = oBAPIGetPlOrder.exports.Item ("SELECTIONCRITERIA"). Der Importparameter "SELECTIONCRITERIA" des BAPIs ist eine Struktur. Wenn das Makro über die obige Codierzeile läuft, sehe ich einen Fehler = 0 (Der Cursor liegt über der Variablen "oBAPIVariant1"). Wenn der Importparameter keine Struktur, sondern ein Datenelement ist, wird er ausgeführt. Bitte sagen Sie mir, wenn ich einen Fehler in der Codierung mache – user1049518