Grundlagen
LSMW ist ein Standard-SAP-Tool, um jede Art von Massendatenänderungen durchzuführen. Es gibt verschiedene Möglichkeiten, die Daten im System zu aktualisieren:
- BAPI
- IDOC
- Batch Recording
- Direct Input
BAPI ist der schnellste Weg, aber es steht dem Kunden eine begrenzte Anzahl von BAPIs zur Verfügung.
In 99% der Fälle verwenden wir Batch Recording, das wie Makros in MS Excel/Word funktioniert. Das System folgt den Schritten des Benutzers und zeichnet Bildschirm für Bildschirm auf. Sobald wir fertig sind, ordnen wir die Datendatei diesen Bildschirmen und Datenfeldern zu. Als System wiederholt die gleichen Schritte wie der Benutzer manuell tun würde.
LSMW-Projekte organisieren
In LSMW transaction haben wir Projekte, Teilprojekte und Objekte.
Idealerweise sollte es ein globales Projekt für Routineupdates und eines für die Datenmigration geben.
Das Teilprojekt ist etwas Sinnvolles, wie OM, PA, PT und PY für verschiedene HR-Bereiche. Oder es könnte ein Teilprojekt für alle Infotypen sein, egal.
Ein Objekt repräsentiert normalerweise, was geändert wird: infotyp, Tabelle oder etwas anderes.
Um zu beginnen, müssen wir alle drei Entitäten erstellen: Projekt, Unterprojekt, Objekt oder wählen Sie sie aus, wenn sie bereits erstellt wurden.
Hier ist das Hauptfenster von LSMW. Die Schritte „Objektattribute definieren“ bis „Dateien zuweisen“ sind Einstellungen, andere zur Ausführung für den Endbenutzer.
LSMW Customizing steps
Alle Schritte sollten nacheinander in der gleichen Reihenfolge wie auf dem Bildschirm ablaufen.
Objektattribute definieren
Hier legen wir fest, wie wir die Daten in das System laden möchten. Auch hier ist es für 99% ‚Batch Input Recording‘. Normalerweise erstellen wir für jede neue Massenänderung eine neue Aufzeichnung. Um eine neue Aufnahme zu erstellen, klicken Sie rechts auf die Schaltfläche ‚Aufnahmen: Übersicht‘.
Bevor wir mit der Aufzeichnung beginnen, müssen wir sicherstellen, dass wir alle Daten für alle Felder zur Hand haben. Wenn wir Benutzeraktivitäten aufzeichnen, zeichnet das System alle Schritte auf. Wenn wir auf die Liste klicken, um einen Wert für ein Feld auszuwählen, wird dieser ebenfalls aufgezeichnet. Wir möchten nicht, dass das System diese Bildschirme mit Hilfe von Werten aufzeichnet.
Klicken Sie auf Erstellen. Es ist eine gute Praxis, Präfix für Aufnahmen zu geben, wie hier R für Recording steht.
Für OM-Modul (Infotypen 1000 – 1999) wir PP02 Transaktion.
Achtung wir geben alle Daten ohne Hilfe von Werten oder Listen ein.
Klicken Sie auf Erstellen.
Klicken Sie auf Speichern. Dann Transaktion beenden.
Das System bringt uns zurück zur Aufnahme. Klicken Sie auf die Schaltfläche ‚Default All‘, um die Feldnamen automatisch auszufüllen. Wir werden diese Namen in Zuordnungsregeln verwenden.
Speichern und gehen Sie zurück zum Hauptbildschirm mit ‚Objektattribute ändern‘. Wählen Sie unsere Aufnahme aus der Liste.
Speichern und zurück zum Hauptmenü.
Quellstrukturen definieren
Quellstruktur spiegelt Daten aus einer Datei wider. Wenn wir eine Hierarchie in einer Datei haben oder mehrere Dateien gleichzeitig laden müssen, erstellen wir eine Struktur für jede Datenentität oder Datei. Es empfiehlt sich, bei der Benennung ein Präfix zu verwenden, wie hier ZS – Z steht für customer object, S – structure .
Speichern und zurück.
Quellfelder definieren
Für jede Struktur erstellte Quellfelder. Es empfiehlt sich,
- Die Reihenfolge der realen Dateifelder in der Quellstruktur beizubehalten
- SAP-Wörterbuchnamen in der Struktur verwenden
Wählen Sie Struktur und klicken Sie auf das Tabellensymbol. Es ist bequemer, alle Felder auf einem Bildschirm einzugeben.
Geben Sie alle Felder ein, die Sie aus der Datei laden möchten. Wenn Sie Felder mit konstanten Werten haben, können diese weggelassen und in späteren Schritten als Konstanten definiert werden.
Speichern und zurück zum Hauptmenü.
Strukturbeziehungen definieren
Hier müssen wir Beziehungen zwischen unseren Aufzeichnungen und Strukturen definieren. Wenn es sich um eine Aufnahme-und Struktursystem schlägt Beziehung. Alles, was wir brauchen, ist zu retten und zurückzukehren.
Definieren von Feldzuordnungs- und Konvertierungsregeln
Dies ist der komplizierteste Schritt. Hier definieren wir, wie unsere Daten aus einer Datei (Quellstruktur) Aufzeichnungsfeldern zugeordnet werden. Auf dem Bildschirm sehen wir alle aufgezeichneten Felder aus dem ersten Schritt. Für jedes Feld müssen wir einen Wert zuweisen. Es gibt einige Optionen:
Schaltfläche in der Symbolleiste | Bedeutung |
Quellfeld | Übernimmt Daten aus der Datei (Quellstruktur) |
Regel | Konvertiert Daten mit vordefinierten Konvertierungsregeln oder benutzerdefiniertem ABAP-Code |
Initial | Belassen Sie den Wert wie aus der Infotyplogik |
Konstante | Konstanter Wert |
Verschieben | Kopieren eines Feldes oder eines Teils davon |
Fester Wert | Fester Wert aus einer vordefinierten Liste |
Übersetzung | Konvertierung durch Mapping „wenn dieser Wert, wählen Sie diesen Wert“ |
Feste Werte, Übersetzungen, benutzerdefinierte Routinen definieren
Hier können wir feste Werte, Übersetzungen oder ABAP-Prozeduren definieren, die im vorherigen Schritt verwendet wurden. Für einfache Aufgaben in 99% ist dies nicht erforderlich.
Dateien angeben
Hier erstellen wir eine Dateireferenz.
Klicken Sie auf Legacy-Daten auf dem PC und klicken Sie auf Erstellen. Dies bedeutet, dass die Datei von Ihrem PC heruntergeladen wird, nicht vom SAP-Server.
Datei – vollständiger Pfad zur Datei.
Name – technischer Name. Verwenden Sie Präfix, wie ZF.
Wählen Sie je nach Datei das richtige Trennzeichen.
Es empfiehlt sich, Feldnamen in der allerersten Zeile der Datei zu haben und der Reihenfolge aus der Quellstruktur zu folgen. Aktivieren Sie also beide Kontrollkästchen unter ‚Dateistruktur‘ Rahmen.
Die Datei würde so aussehen.
Speichern und beenden.
Dateien zuweisen
Hier weisen wir der Quellstruktur einen Dateiverweis zu. Normalerweise ist es eine Datei zu einer Struktur.
Speichern und beenden.
Daten lesen
Hier liest das System die Datei und konvertiert sie in das interne Format auf dem Server.
Wenn die Datei groß ist und wir unser LSMW-Projekt testen möchten, begrenzen Sie eine Reihe von Datensätzen, die gelesen und verarbeitet werden sollen.
Anzeige Gelesene Daten
Hier können wir selbst überprüfen, ob die Datei korrekt organisiert und die Daten in die richtigen Felder eingefügt wurden.
Wenn Sie auf den Datensatz klicken, wird der in die Quellstruktur analysierte Datensatzinhalt angezeigt.
Daten konvertieren
Das System konvertiert Daten von der Quellstruktur in die Aufzeichnungsstruktur, einschließlich aller Arten von Zuordnungen, die wir im Schritt ‚Feldzuordnung und Konvertierungsregeln definieren‘ durchgeführt haben.
Konvertierte Daten anzeigen
Das gleiche wie der Schritt Daten lesen anzeigen, zeigt jedoch bereits konvertierte Daten an. Diese Daten werden während der Simulation eingegeben (Batch-Eingabe).
Stapeleingabesitzung erstellen
Wenn Sie alle Aufzeichnungen für Ihre Aufzeichnungen behalten möchten, kreuzen Sie ‚Stapeleingabeordner behalten‘ an. Andernfalls löscht das System alle erfolgreichen Aufzeichnungen. Nur Fehler bleiben im System, bis sie verarbeitet werden.
Stapeleingabesitzung ausführen
SAP öffnet eine SM35-Transaktion mit Stapeleingabesitzungen.
Wählen Sie die Aufnahme aus und klicken Sie auf ‚Verarbeiten‘.
Für 1 Datensatz zum Testen wird empfohlen, ‚Prozess / Vordergrund‘ zu verwenden, da das System jeden Schritt auf dem Bildschirm mit den ausgefüllten Daten anzeigt.
Anzeigefehler besteht nur darin, den Prozess im Vordergrund auszuführen und nur bei Fehlern anzuhalten, damit der Benutzer irgendwie reagieren kann.
Bei einem großen Volumen ist es besser, im Hintergrund zu laufen. Es ist der schnellste Weg.
Wenn der Datensatz nicht verarbeitet wurde, werden Fehler im Protokoll angezeigt.
Wenn wir auf die Aufzeichnung doppelklicken, gibt es eine Registerkarte mit einem Protokoll. Sobald Fehler behoben sind (am häufigsten wird der Mitarbeiter oder das Objekt von einem anderen Benutzer gesperrt), können Sie den Aufzeichnungsprozess neu starten. Es wird NUR für falsche Datensätze ausgeführt.
Sobald alle Fehler behoben und die Aufzeichnung verarbeitet wurde, verschwindet sie aus der Liste.
Dies bedeutet, dass kein Fehler mehr aufgetreten ist und wir die Daten überprüfen können.
Geschäftsszenario-spezifische Details
Es gibt einige szenariospezifische Empfehlungen.
Flach PA Infotypen (wie 0, 1, 2, etc.)
Es ist das gleiche wie oben erklärt. Um diese Infotypen hochzuladen, verwenden Sie die PA30-Transaktion.
Tabelle PA Infotypen (8, 27)
Diese Infotypen haben Tabellen, daher ist das Laden etwas anders. Vor dem Laden müssen wir sicherstellen, dass wir die maximale Anzahl von Zeilen in den hochladenden Daten kennen. Wenn es beispielsweise maximal 3 Zeilen gibt (eine pro Lohnart oder Kostenstelle), müssen wir in unserer Aufzeichnung drei Zeilen ausfüllen, sodass das System drei Felder für Lohnarten, Sätze usw. bereitstellt. Wenn wir nur die erste Zeile füllen, haben wir nur ein Feld und Datensätze mit 2-3 Zeilen werden übersprungen.
PA-Aktionen (PA40)
Sie müssen sicherstellen, dass in der PA40-Transaktion keine Aktionen vorhanden sind, mit denen Sie den Bildschirm scrollen müssen. In diesem Fall müssen Sie den Benutzergruppenparameter in SU3 in UGR = 10 ändern, um nur US-Aktionen anzuzeigen. Wenn dies völlig unmöglich ist, könnten Aktionen in PA30 im Infotyp 0000 geladen werden.
Aktualisierung der Systemtabellen (wie T510, T710 für Ratenerhöhung)
Beim Speichern von Daten in diesen Systemtabellen wird eine Transportanforderung angefordert. Außerdem fragt es nur das erste Mal. Der Transportanforderungsbildschirm wird also während der LSMW-Aufzeichnung angezeigt und nicht erneut. LSMW versucht, Daten für diesen Bildschirm zu finden, und findet keinen Fehler. Um dies zu vermeiden, erstellen Sie die Einträge manuell und speichern Sie sie in der Transportanforderung. Beenden Sie dann die Sitzung nicht, öffnen Sie LSMW, führen Sie eine Aufzeichnung durch und laden Sie die Daten innerhalb einer Sitzung hoch. Systems speichert die Transportanforderung im Sitzungsspeicher und fragt erst danach, wenn Sie sie beenden. So werden alle LSMW-Aktivitäten ausgeführt, ohne dass eine Transportanforderung erforderlich ist, wie sie bei der ersten manuellen Dateneingabe eingegeben wurde.
Flat OM Infotyp
Gehen Sie wie oben beschrieben vor.
Tabelle OM Infotyp
Gehen Sie wie in Tabelle PA Infotyp Abschnitt beschrieben.
Fortgeschrittene Techniken
SAP LSMW-Übersetzungsregeln
Fortgeschrittene LSMW-Anwendungsbeispiele
LSMW-Fehler bei der Arbeit mit Dateien
So laden Sie mehrere Dateien in SAP LSMW
Einfache Möglichkeit, ein beliebiges Feld in SAP zu ändern
So führen Sie ein Funktionsmodul aus mit Eingabedaten aus Textdatei