Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
SAP Tabelle mittel Access und VBA
zurück: gebundene Liste weiter: Gefilterte Datensätze im UFO ändern Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
ryder
Neuling


Verfasst am:
21. Okt 2011, 13:28
Rufname:

SAP Tabelle mittel Access und VBA - SAP Tabelle mittel Access und VBA

Nach oben
       Version: Office 2003

Hallo, ich habe noch wenig erfahrung mit VB.
Bin gerade dabei eine Access DB an das umgestrikte SAP anzupassen.
Folgendes Problem. Es gibt eine Tabelle die ausgelesen werden muss anhand von 2 Kriterien. Zum einen Die "Sparte" und das "Datum". Im Access gibt es die Tabelle schon und muss mit Daten gefüllt werden. Zum einen mit den Werten aus "Vertrag" und "Anlagennummer", zum testen habe ich die Sparte noch mit reingenommen...es sind ca. 80.000 Datensätze

Anmeldung am SAP funktioniert, nur das auslesen nicht. Hier mal ein schnipsel des Codes. Er liefert mir ein paar datensätze (Aber nicht die laut filterung) und bricht das ab, weil dbxx_xx.Execute (sql_anweisung) einen fehler verursacht.
ich bin mir nicht sicher ob die Filter richtig sind...aber Der Insert funktioniert für ca 20 Datensätze *g....kann ich mir irgendwie nicht erklären Sad

Ich hoffe Ihr könnt mir helfen

weit oben im code steht das mit den rfc tables
Code:

'für Funktionsbaustein RFC_READ_TABLE (Auslesen aller Tabellen im SAP - Analog zu "se16")
Set FUBA_RT = functionCtrl.Add("RFC_READ_TABLE")
Set T_I_Options = FUBA_RT.tables("OPTIONS")
Set T_I_Fields = FUBA_RT.tables("FIELDS")
Set T_E_Data = FUBA_RT.tables("DATA")


weiter unten kommt dann die abfrage


Code:

'Filtern und Importieren der Vertragsnummer mit Anlagenummern
Private Sub Vertragsnummer()
Dim sql_anweisung As String
Dim ergebnis As Variant
Dim ergebnis2 As Variant
Dim ergebnis3 As Variant

'Löschen aller vorhandenen Daten in der Tabelle T_Verbrauch
If MsgBox("Sollen wirklich alle Rohdaten gelöscht werden ?", vbOKCancel, "Daten löschen ?") = vbOK Then
    Set dbxx_xx = CurrentDb
    dbxx_xx.Execute ("delete * from T_Verbrauch")

    'Auswahl und Aufruf der gewünschten Tabelle
    With FUBA_RT
        .exports("QUERY_TABLE") = "EVER"
        .exports("DELIMITER") = "|"
    End With
           
            'Spaltenauswahl
            T_I_Fields.appendrow
            T_I_Fields(1, 1) = "VERTRAG"
            T_I_Fields.appendrow
            T_I_Fields(2, 1) = "ANLAGE"
            T_I_Fields.appendrow
            T_I_Fields(3, 1) = "SPARTE"
           
            'Filter - Auszugsdatum bis 31.12.9999
            T_I_Options.appendrow
            T_I_Options(1, 1) = "AUSZDAT >= '31.12.9999'"
            T_I_Options.appendrow
            T_I_Options(1, 1) = "SPARTE >= '7'"
           
             'Aufruf der Tabelle mit Spalten und Filter
            FUBA_RT.call
   
            'Nur wenn Datensätze gefunden wurden, werden die Daten selektiert
            If T_E_Data.RowCount > 0 Then
                For DR = 1 To T_E_Data.RowCount
                    '1. Spalte - Vertragsnummer
                    ergebnis = Trim(Split(T_E_Data(DR, 1), "|", -1, vbTextCompare)(1 - 1))
                    '2.Spalte - Anlagennummer
                    ergebnis2 = Trim(Split(T_E_Data(DR, 1), "|", -1, vbTextCompare)(2 - 1))
                    '3.Spalte - Sparte
                    ergebnis3 = Trim(Split(T_E_Data(DR, 1), "|", -1, vbTextCompare)(3 - 1))
                    'SQL-Anweisung zum Anfügen neuer Datensätze
                    sql_anweisung = "INSERT INTO T_Verbrauch (Vertrag, Anlage, Sparte) SELECT " & ergebnis & "," & ergebnis2 & "," & ergebnis3
                    'Ausführen der SQL-Anweisung
                    dbxx_xx.Execute (sql_anweisung)
                Next DR
            End If
           
    'Aufruf zur Bereinigung des Aufrufs der Tabelle, Spalten und Filter
    Call clear_FUBA_RT
   
    dbxx_xx.Close
   
    End If

Call Rahmenvertragsnummer

End Sub
MissPh!
Office-VBA-Programmiererin


Verfasst am:
24. Okt 2011, 11:18
Rufname:
Wohnort: NRW


AW: SAP Tabelle mittel Access und VBA - AW: SAP Tabelle mittel Access und VBA

Nach oben
       Version: Office 2003

Hallo,

ich denke, die Anfügeabfrage sollte eine Werteliste enthalten, das könnte dann folgendermaßen aussehen:
Code:
sql_anweisung = "INSERT INTO T_Verbrauch (Vertrag, Anlage, Sparte) " & _
                "VALUES('" & ergebnis & "'," & ergebnis2 & "," & ergebnis3 & ")"

Je nach Datentyp müssen Hochkommata (siehe 1. Feld) oder keine gesetzt werden.

BTW:
Code:
            'Filter - Auszugsdatum bis 31.12.9999
            T_I_Options.appendrow
            T_I_Options(1, 1) = "AUSZDAT >= '31.12.9999'"
Hier müsste sicherlich auf "<=" abgefragt werden.
_________________
Gruß MissPh!
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Kreuztabellenabfrage für neue Tabelle nutzen 3 WaterMan 805 06. Jul 2004, 14:39
mabe38 Kreuztabellenabfrage für neue Tabelle nutzen
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle exportieren als Excel2000 Arbeitsblatt 1 thomassch 916 06. Jul 2004, 12:46
stpimi Tabelle exportieren als Excel2000 Arbeitsblatt
Keine neuen Beiträge Access Tabellen & Abfragen: Tage auf Datum addieren und an bestehende Tabelle anfügen... 1 lorelei 1234 11. Jun 2004, 08:38
stpimi Tage auf Datum addieren und an bestehende Tabelle anfügen...
Keine neuen Beiträge Access Tabellen & Abfragen: tabelle exportieren 1 Gast 1501 01. Jun 2004, 12:25
Willi Wipp tabelle exportieren
Keine neuen Beiträge Access Tabellen & Abfragen: Duplikate einer Tabelle löschen?! 3 Esel 2108 28. Mai 2004, 08:53
lothi Duplikate einer Tabelle löschen?!
Keine neuen Beiträge Access Tabellen & Abfragen: Spaltennamen einer Tabelle ermitteln 1 Alexander Neron 899 27. Mai 2004, 13:47
lothi Spaltennamen einer Tabelle ermitteln
Keine neuen Beiträge Access Tabellen & Abfragen: kein Wert in der Tabelle, dann immer Null (0)?? 3 Michel_9 1005 26. Mai 2004, 14:28
Michel_9 kein Wert in der Tabelle, dann immer Null (0)??
Keine neuen Beiträge Access Tabellen & Abfragen: Operant aus Tabelle in Abfrage verwenden 3 AccessGeek 673 06. Mai 2004, 09:15
lothi Operant aus Tabelle in Abfrage verwenden
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle formatiert in txt-Datei exportieren 1 robby 1115 12. Apr 2004, 23:10
Helge Tabelle formatiert in txt-Datei exportieren
Keine neuen Beiträge Access Tabellen & Abfragen: Zeilenumbruch nach Einfügen Word Tabelle 2 topflop 1698 30. März 2004, 16:06
Gast Zeilenumbruch nach Einfügen Word Tabelle
Keine neuen Beiträge Access Tabellen & Abfragen: Wert einer Abfrage in Tabelle kopieren? 1 BerlinerWolf 2009 21. März 2004, 12:43
Maya Wert einer Abfrage in Tabelle kopieren?
Keine neuen Beiträge Access Tabellen & Abfragen: Daten als Spaltenüberschriften einer anderen Tabelle 1 Melburnt 685 03. März 2004, 17:11
lothi Daten als Spaltenüberschriften einer anderen Tabelle
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Excel Tricks