Die Verwaltung von Instandhaltungsaufträgen in SAP ist ein komplexer Prozess, der präzise Steuerung und Kontrolle erfordert. Insbesondere die Transaktion Iw32 Sap spielt hierbei eine zentrale Rolle, da sie es ermöglicht, Instandhaltungsaufträge zu bearbeiten. Doch was passiert, wenn bestimmte Aufträge von der Bearbeitung ausgeschlossen oder der Zugriff auf IW32 für bestimmte Benutzer eingeschränkt werden soll? Dieser Artikel beleuchtet praxisnahe Lösungen für solche Szenarien, um die Effizienz und Sicherheit in Ihrer Instandhaltung zu erhöhen.
Die Notwendigkeit, die Bearbeitung von Aufträgen zu steuern, entsteht oft in spezifischen Situationen. Während der “Nicht ausführen”-Funktion für Aufträge im CRTD-Status eine klare Lösung bietet, sind die Anforderungen für Aufträge im REL-Status (freigegeben) vielschichtiger. Hierbei lassen sich grob zwei Hauptfälle unterscheiden:
- Fall 1: Kunden wünschen eine Einschränkung für bestimmte Auftragstypen im REL-Status, sodass diese nur noch im Anzeigemodus über IW32 SAP eingesehen, aber nicht mehr verändert werden können.
- Fall 2: Spezifische, fehlerhaft erstellte und freigegebene Aufträge sollen von weiterer Bearbeitung ausgeschlossen werden.
Darüber hinaus gibt es Anfragen bezüglich der Autorisierungsprüfung bereits auf dem Einstiegsbild von IW32 SAP. Dies stellt eine alternative Methode zur Steuerung über Rollen dar und wird im Folgenden als Fall 3 behandelt.
Eine naheliegende Methode zur Lösung dieser Probleme ist die Verwendung des User-Exits IWO10009. Allerdings hat dieser Ansatz den Nachteil, dass Benutzer ihre Änderungen vornehmen und erst beim Speichern die Ablehnung des Systems erfahren. Dies führt zu unnötigem Zeitaufwand und Frustration. Eine perfekte Lösung für Fall 1 und Fall 2 über den Transaktionssteuerung durch Benutzerstatus (OIBS) ist oft nicht vollständig umsetzbar.
Daher ist es wünschenswert, den Benutzer bereits zu Beginn der Transaktion IW32 SAP zu stoppen. Hierfür bieten sich zwei Hauptansätze:
- Die Anzeige von IW32 SAP für bestimmte Aufträge auf den reinen Anzeigemodus umzustellen.
- Den Benutzer bereits auf dem Einstiegsbild von IW32 SAP mit einer Meldung wie „Dieser Auftrag darf nicht geändert werden, nutzen Sie IW33 zur Ansicht“ oder „Sie sind nicht autorisiert für IW33“ zu stoppen.
Effektive Lösungen durch SAP Enhancement Points
Die hier vorgestellten Lösungen sind besonders effektiv, da sie einen Implicit Enhancement Point im Include LCOIHF7R des Auftragsprogramms (SAPLCOIH) nutzen. An einem solchen Enhancement Point am Ende der Form AUTHORITY_CHECK_AUART_SMOD können Sie eigenen Code einfügen.
Implementierung des Enhancement Points
Um unseren Code zu platzieren, erstellen wir ein Enhancement, beispielsweise mit dem Namen ZPM_STAT, am von SAP bereitgestellten Enhancement Point. Dies gibt uns die Möglichkeit, unseren Code für die verschiedenen Fälle und Situationen einzufügen.
Fall 1: Umwandlung von IW32 SAP in den Anzeigemodus für bestimmte Auftragstypen im REL-Status
Situation 1: Alle Aufträge eines bestimmten Typs im REL-Status sollen in IW32 SAP nur noch angezeigt werden können.
IF caufvd-auart = 'ZM03' AND sy-tcode = 'IW32' AND caufvd-iphas = '2'.
tc10-trtyp = 'A'. " 'V' durch 'A' ersetzen für Anzeigemodus
MESSAGE: 'Umstellung auf Anzeigemodus.' TYPE 'S'.
ENDIF.Dieser Code wandelt IW32 SAP für alle freigegebenen Aufträge vom Typ ‘ZM03’ (passen Sie diesen Auftragstyp an Ihren Bedarf an) in den reinen Anzeigemodus um.
SAP IW32 Interface – Order Display Mode
Hinweis: In solchen Fällen kann der Benutzer den Auftrag über Transaktionen wie IW38 dennoch technisch stilllegen (TECO) und schließen (CLSD).
Situation 2: Alle Aufträge eines bestimmten Typs im REL-Status sollen nicht mehr über IW32 SAP bearbeitet werden können.
IF caufvd-auart = 'ZM03' AND sy-tcode = 'IW32' AND caufvd-iphas = '2'.
MESSAGE: 'Dieser Auftrag darf nicht geändert werden. Zur Ansicht Transaktion ''IW33'' verwenden.' TYPE 'E' DISPLAY LIKE 'I'.
ENDIF.Diese Meldung erscheint auf dem Einstiegsbild von IW32 SAP, wenn der Benutzer versucht, auf einen freigegebenen Auftrag vom Typ ‘ZM03’ zuzugreifen, und verhindert dessen Bearbeitung.
Fall 2: Ausschluss spezifischer Aufträge von der Bearbeitung in IW32 SAP
Für diesen Fall, der oft für fehlerhafte Erstellungen relevant ist, die bereits im REL-Status sind, können beliebige Auftragstypen betroffen sein.
Voraussetzung:
Erstellen Sie eine kundeneigene Tabelle, z. B. ZPM_BLK_ORD, die das Feld AUFNR (Auftragsnummer) enthält. Sie können diese Tabelle um weitere auftragsbezogene Felder erweitern. Nutzen Sie den Table Maintenance Generator (TMG), um die Tabelle über Transaktionen wie SM30 oder eine eigene Transaktion zu pflegen (Auftragsnummern hinzufügen/löschen).
Der Code für diesen Fall:
DATA: v_aufnr TYPE aufk-aufnr.
CLEAR: v_aufnr.
SELECT SINGLE aufnr FROM zpm_blk_ord INTO v_aufnr WHERE aufnr = caufvd-aufnr.
IF v_aufnr IS NOT INITIAL.
MESSAGE: 'Dieser Auftrag darf nicht geändert werden.' TYPE 'E' DISPLAY LIKE 'I'.
ENDIF.Dieser Code erzeugt eine ähnliche Fehlermeldung wie oben, wenn der Benutzer versucht, über IW32 SAP auf Aufträge zuzugreifen, deren Nummern in der Z-Tabelle ZPM_BLK_ORD hinterlegt sind.
Fall 3: Einschränkung spezifischer Benutzer für die Bearbeitung von IW32 SAP
Voraussetzung:
Erstellen Sie eine weitere kundeneigene Tabelle, z. B. ZPM_BLK_USR, die das Feld UNAME (Benutzername) enthält. Verwenden Sie auch hier den TMG für die Pflege der Tabelle.
Der Code für diesen Fall:
DATA: v_uname TYPE uname.
CLEAR: v_uname.
SELECT SINGLE uname FROM zpm_blk_usr INTO v_unmae WHERE uname = sy-uname.
IF v_uname IS NOT INITIAL.
MESSAGE: 'Sie sind nicht autorisiert für IW32 SAP.' TYPE 'E' DISPLAY LIKE 'I'.
ENDIF.Diese Meldung erscheint, wenn der Benutzer, dessen Benutzername in der Z-Tabelle ZPM_BLK_USR hinterlegt ist, versucht, IW32 SAP zu öffnen.
Fazit für die Steuerung mit IW32 SAP
Dieser Beitrag bietet Ihnen Informationen zu einem wichtigen Enhancement Point und stellt Beispielcodes zur Verfügung, die Ihnen bei der Umsetzung ähnlicher Anforderungen helfen können. Fast alle anderen denkbaren Szenarien lassen sich durch einfache Anpassungen der bereitgestellten Codes realisieren.
Wir hoffen, dass diese praktischen Anleitungen zur Steuerung von IW32 SAP Ihnen und Ihren Teams von großem Nutzen sein werden.
Vielen Dank und freundliche Grüße
KJogeswaraRao
