SAP Jobsuche bei DV-Treff
sap_newby
  • sap_newby
  • SAP Forum - Neuling Thema Starter
vor 17 Jahre

Hallo Community,

.

Ich versuche Verzweifelt, einen User-Exit herauszufinden, der sich hinter dem Prüfen-Button der ME21N (Bestellung anlegen) befindet. Dabei interessiert mich in 2. Linie auch, was sich genau hinter der Funktionalität befindet, bzw. welche Funktionsbausteine aufgerufen werden.

.

Normalerweise geht man zum Suchen eines User-Exits ja so vor:

1.       In der ME21N den Programmname ermitteln: -> System / Status   = "saplmegui"

2.       Das Paket dazu rausfinden: SE38 Programmname eintragen, Attribute -> Anzeigen  = "ME"

3.       Alle Exits zum Paket raussuchen: cmod / Hilfsmittel / SAP-Erweiterungen/ Paket "ME" eintragen -> F8

4.       In den User-exit reingehen, der anscheinend richtig ist und dort einen Breakpoint auf das Include des "anscheinend richtigen" Funktionsbausteines setzen.

5.       in der Transaktion mit "/h" den Debugger einschalten und hoffen, das er an der Richtigen Stell anhält. Wenn nicht, 5. mit einen anderen Funktionsaustein/user-exit probieren

.

Soweit schön und gut, ABER: er bleibt bei mir IMMER an der 1. Zeile des PAI hängen (dort habe ich keinen Breakpoint)!!! Und so aussagekräftig sind die Beschreibungen der User-Exits nicht, das ich die zu durchsuchende Menge gut einschränken kann!!!

Gibt es dazu evt. Alternativen?

.

Also mein Alternativansatz auch zum raussuchen der Funktionalität hinter dem Button "Prüfen" wäre:

1.       siehe oben

2.       in die SE80 gehen, dort das Programm anzeigen lassen

3.       im Repository Browser unter GUI-Status "NORMAL" öffnen.

4.       Unter Drucktastenleiste ist der Funktionscode "MECHECKDOC" hinter dem Prüfen Button.

5.       Cursor auf  "MECHECKDOC"  -> Verwendungsnachweise -> Programme -> dort ist die Codestelle  "WHEN 'MECHECKDOC'."  und der Aufruf der Methode.

.

OK, das Passiert also dabei, aber dort habe ich kein USER-Exit gefunden, in dem ich eine zusätzliche Prüfung anstoßen bzw. mit Funktionalität füllen kann !!!

Ich habe auch gelesen, das man mit Badi's (/Bapi's ?) arbeiten kann? - habe aber keinerlei Erfahrungen damit, wie ich da rudimentär beginne?

Kann mir jemand diesbezüglich helfen, wie ich den User-exit finde bzw. die Funktionalität anders einbauen kann?

 .

Danke für Eure Hilfe

sap_newby

 

Förderer

MMler mit SAPSCRIPT
vor 17 Jahre

Hallo SAP_NEWBY

nachfolgend eine Liste aller MM-PUR relevanten Exits: 

 

User-Exits

 

(purchasing)

 

Version 1.01

12. June-2000

 

 

 

 

 

 

 

 

 

Markus Wolf


 

User-Exits........................................................................................................................... 3

Function groups........................................................................................................................................................... 6

XAMP (User Exit: Customer’s Own AMPL Fields)............................................................................................ 6

XM01 (User Exits: Purchasing).............................................................................................................................. 6

XM06 (User Exits: Materials Mgmt. (Purchasing).............................................................................................. 6

XMAL (MM Purchasing: ALE Enhancements).................................................................................................. 6

XMEW (User Exits for Devt. Class MEW – BAPIs).......................................................................................... 6

XAMP............................................................................................................................................................................ 7

SAPLMBAM (Function Modules for AMPL).................................................................................................... 7

SAPLMBMP (MPN Processing: Check Modules)............................................................................................. 7

XM01.............................................................................................................................................................................. 7

SAPLME59 (Auxiliary Functions: PO Generation)............................................................................................. 7

SAPLMEDRUCK (Printing of Purchasing Documents).................................................................................... 7

SAPMM06E.............................................................................................................................................................. 7

XM06.............................................................................................................................................................................. 7

RM06EFAB (Generation of Scheduling Agreement Releases)......................................................................... 7

RM06ELAB (Generation of Forecast Delivery Schedules)............................................................................... 7

SAPLEBND (Determine Release Strategy: Requisition).................................................................................... 7

SAPLEBNE (External Accessing of Requisitions).............................................................................................. 8

SAPLEBNF (Release Procedure)........................................................................................................................... 8

SAPLEINL (Scheduling Agreement Releases).................................................................................................... 8

SAPLEINM (EDI Message Output: Purchasing)................................................................................................ 8

SAPLEINN (Inbound IDoc Processing for Contracts)...................................................................................... 8

SAPLEINR (Read Purchasing Document)........................................................................................................... 9

SAPLEINS (Statistics Updates: Purchasing)....................................................................................................... 9

SAPLEKPA (Partners in Purchasing)................................................................................................................... 9

SAPLMEKO (Purchasing Conditions)................................................................................................................. 9

SAPLMEQR (Source of Supply Functions)........................................................................................................ 9

SAPLMMDA (Delivery Addresses in MM)....................................................................................................... 9

SAPMM06B (Module Pool: Purchasing Requisitions)..................................................................................... 9

SAPMM06E (Module Pool: PO History) ???????.............................................................................................. 9

XMAL.......................................................................................................................................................................... 10

SAPLMEAI (ALE Inbound: Source List, Info Records).................................................................................. 10

SAPLMEAO (ALE Outbound: Source List, Info Records)............................................................................. 10

XMEW......................................................................................................................................................................... 10

SAPLMEWB (BAPIs Reservation)..................................................................................................................... 10

SAPLMEWP (BAPIs Purchase order)................................................................................................................ 10

SAPLMEWQ (BAPIs Requirement Coverage Request).................................................................................. 10

SAPLMEWR (BAPIs Requirement Coverage Request).................................................................................. 11

SAPMMWE1 (Module Pool: Create Requirement Coverage Request)........................................................ 11

Remarks........................................................................................................................................................................ 11

Notes............................................................................................................................................................................ 11

 


User-Exits

Searching for User-Exits: In transaction SE80 open development class (Entwicklungsklasse) ME and select ‘Function groups’. Those groups starting with an ‘X’ (XAMP, XM01, XM06 and XMAL) contain User-Exits.

User-Exits for Purchasing-BAPIs are in development class MEW in function group XMEW.

In U9B all the descriptions are translated in English.

Within the function groups they are grouped according to the programs/function groups from where they are called.


 





 

Schwerpunkt MM, dann noch SD, WM, ein wenig PP/QM, Rollen

Branche Pharma, Release ECC 6.0

LupusF
vor 17 Jahre
Hallo,

mit dem Progrämmelchen anbei kann man sich zu einen Transaktionscode alle User-Exits anzeigen lassen.

Gruß

Lupus


*&---------------------------------------------------------------------*

*& Auflistung alle User-Exits zu einem Transaktionscode

*& incl. Absprung mit Doppelclick

*&---------------------------------------------------------------------*

REPORT Z_BC_FIND_USEREXIT NO STANDARD PAGE HEADING.

TABLES : TSTC, "SAP Transaction Codes

TADIR, "Directory of Repository Objects

MODSAPT, "SAP Enhancements - Short Texts

MODACT, "Modifications

TRDIR, "System table TRDIR

TFDIR, "Function Module

ENLFDIR, "Additional Attributes for Function Modules

TSTCT. "Transaction Code Texts

*&---------------------------------------------------------------------*

*& Variables

*&---------------------------------------------------------------------*

DATA : JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE.

DATA : FIELD1(30).

DATA : V_DEVCLASS LIKE TADIR-DEVCLASS.

*&---------------------------------------------------------------------*

*& Selection Screen Parameters

*&---------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK A01 WITH FRAME TITLE TEXT-001.

SELECTION-SCREEN SKIP.

PARAMETERS : P_TCODE LIKE TSTC-TCODE OBLIGATORY.

SELECTION-SCREEN SKIP.

SELECTION-SCREEN END OF BLOCK A01.

*&---------------------------------------------------------------------*

*& Start of main program

*&---------------------------------------------------------------------*

START-OF-SELECTION.

* Validate Transaction Code

SELECT SINGLE * FROM TSTC

WHERE TCODE EQ P_TCODE.

* Find Repository Objects for transaction code

IF SY-SUBRC EQ 0.

SELECT SINGLE * FROM TADIR

WHERE PGMID = 'R3TR'

AND OBJECT = 'PROG'

AND OBJ_NAME = TSTC-PGMNA.

MOVE : TADIR-DEVCLASS TO V_DEVCLASS.

IF SY-SUBRC NE 0.

SELECT SINGLE * FROM TRDIR

WHERE NAME = TSTC-PGMNA.

IF TRDIR-SUBC EQ 'F'.

SELECT SINGLE * FROM TFDIR

WHERE PNAME = TSTC-PGMNA.

SELECT SINGLE * FROM ENLFDIR

WHERE FUNCNAME = TFDIR-FUNCNAME.

SELECT SINGLE * FROM TADIR

WHERE PGMID = 'R3TR'

AND OBJECT = 'FUGR'

AND OBJ_NAME = ENLFDIR-AREA.

MOVE : TADIR-DEVCLASS TO V_DEVCLASS.

ENDIF.

ENDIF.

* Find SAP Modifactions

SELECT * FROM TADIR

INTO TABLE JTAB

WHERE PGMID = 'R3TR'

AND OBJECT = 'SMOD'

AND DEVCLASS = V_DEVCLASS.

SELECT SINGLE * FROM TSTCT

WHERE SPRSL EQ SY-LANGU

AND TCODE EQ P_TCODE.

FORMAT COLOR COL_POSITIVE INTENSIFIED OFF.

WRITE:/(19) 'Transaction Code - ',

20(20) P_TCODE,

45(50) TSTCT-TTEXT.

SKIP.

IF NOT JTAB[] IS INITIAL.

WRITE:/(95) SY-ULINE.

FORMAT COLOR COL_HEADING INTENSIFIED ON.

WRITE:/1 SY-VLINE,

2 'Exit Name',

21 SY-VLINE ,

22 'Description',

95 SY-VLINE.

WRITE:/(95) SY-ULINE.

LOOP AT JTAB.

SELECT SINGLE * FROM MODSAPT

WHERE SPRSL = SY-LANGU AND

NAME = JTAB-OBJ_NAME.

FORMAT COLOR COL_NORMAL INTENSIFIED OFF.

WRITE:/1 SY-VLINE,

2 JTAB-OBJ_NAME HOTSPOT ON,

21 SY-VLINE ,

22 MODSAPT-MODTEXT,

95 SY-VLINE.

ENDLOOP.

WRITE:/(95) SY-ULINE.

DESCRIBE TABLE JTAB.

SKIP.

FORMAT COLOR COL_TOTAL INTENSIFIED ON.

WRITE:/ 'No of Exits:' , SY-TFILL.

ELSE.

FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.

WRITE:/(95) 'No User Exit exists'.

ENDIF.

ELSE.

FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.

WRITE:/(95) 'Transaction Code Does Not Exist'.

ENDIF.

* Take the user to SMOD for the Exit that was selected.

AT LINE-SELECTION.

GET CURSOR FIELD FIELD1.

CHECK FIELD1(4) EQ 'JTAB'.

SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10).

CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.