User Exit with MD01 screen
Hi All,
In MD01 screen, you can find a field called <u>'User exit Parameter</u>".
The user will have 3 options to input the data into this field.
1. The User can enter single value... ex: E01
The user exit will execute the MRP Run based on this single value.
For this scenario, i have SAP standard code as follows.. (Pgm name: LXM61F01)
Here UXPAR will contain value 'E01'.
WHEN 'Z1'.
UXPAR = USER_PAR.
CONDENSE UXPAR.
WRITE UXPAR+0(3) TO DISPO.
IF DISPO IS INITIAL.
EXIT.
ENDIF.
IF MT61D-DISPO <> DISPO.
NO_PLANNING = 'X'.
ENDIF.
2. The user can enter multiple values... ex: E01, E03, E09.
The user exit should take these valuse into account and run the MRP.
The above code is meant for single value.
Now i have to develop the code for this scenario. How to build logic for this scenario as the UXPAR will have value "E01, E03, E09"...????
3. The user can enter values in range format... ex: E01-E05.
The user exit should take E01, E02, E03, E04 and E05 to run the MRP.
How to build the logic for this scenario..?????
Please Help me........
Regards
Pavan
Can anyone please look into this issue and help me out...????
Really appreciate your guidance in this regard....
Regards
Pavan
Similar Messages
-
How to find the user exit for a screen..
Hi,
plz help me how to find the user exit for a screen..?
Regards
AnbuHi,
check this program this will give you the list of user-exit and BADI for the perticular Tcode.
REPORT zuserexit_badi.
TABLES : tstc,
tadir,
modsapt,
modact,
trdir,
tfdir,
enlfdir,
sxs_attrt ,
tstct.
DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE.
DATA : field1(30).
DATA : v_devclass LIKE tadir-devclass.
PARAMETERS : p_tcode LIKE tstc-tcode,
p_pgmna LIKE tstc-pgmna .
DATA wa_tadir TYPE tadir.
START-OF-SELECTION.
IF NOT p_tcode IS INITIAL.
SELECT SINGLE * FROM tstc WHERE tcode EQ p_tcode.
ELSEIF NOT p_pgmna IS INITIAL.
tstc-pgmna = p_pgmna.
ENDIF.
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 EQ enlfdir-area.
MOVE : tadir-devclass TO v_devclass.
ENDIF.
ENDIF.
SELECT * FROM tadir INTO TABLE jtab
WHERE pgmid = 'R3TR'
AND object IN ('SMOD', 'SXSD')
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:/(105) sy-uline.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
Sorting the internal Table
SORT jtab BY object.
DATA : wf_txt(60) TYPE c,
wf_smod TYPE i ,
wf_badi TYPE i ,
wf_object2(30) TYPE c.
CLEAR : wf_smod, wf_badi , wf_object2.
Get the total SMOD.
LOOP AT jtab INTO wa_tadir.
AT FIRST.
FORMAT COLOR COL_HEADING INTENSIFIED ON.
WRITE:/1 sy-vline,
2 'Enhancement/ Business Add-in',
41 sy-vline ,
42 'Description',
105 sy-vline.
WRITE:/(105) sy-uline.
ENDAT.
CLEAR wf_txt.
AT NEW object.
IF wa_tadir-object = 'SMOD'.
wf_object2 = 'Enhancement' .
ELSEIF wa_tadir-object = 'SXSD'.
wf_object2 = ' Business Add-in'.
ENDIF.
FORMAT COLOR COL_GROUP INTENSIFIED ON.
WRITE:/1 sy-vline,
2 wf_object2,
105 sy-vline.
ENDAT.
CASE wa_tadir-object.
WHEN 'SMOD'.
wf_smod = wf_smod + 1.
SELECT SINGLE modtext INTO wf_txt
FROM modsapt
WHERE sprsl = sy-langu
AND name = wa_tadir-obj_name.
FORMAT COLOR COL_NORMAL INTENSIFIED OFF.
WHEN 'SXSD'.
For BADis
wf_badi = wf_badi + 1 .
SELECT SINGLE text INTO wf_txt
FROM sxs_attrt
WHERE sprsl = sy-langu
AND exit_name = wa_tadir-obj_name.
FORMAT COLOR COL_NORMAL INTENSIFIED ON.
ENDCASE.
WRITE:/1 sy-vline,
2 wa_tadir-obj_name HOTSPOT ON,
41 sy-vline ,
42 wf_txt,
105 sy-vline.
AT END OF object.
WRITE : /(105) sy-uline.
ENDAT.
ENDLOOP.
WRITE:/(105) sy-uline.
SKIP.
FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No.of Exits:' , wf_smod.
WRITE:/ 'No.of BADis:' , wf_badi.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'No userexits or BADis exist'.
ENDIF.
ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON.
WRITE:/(105) 'Transaction does not exist'.
ENDIF.
AT LINE-SELECTION.
DATA : wf_object TYPE tadir-object.
CLEAR wf_object.
GET CURSOR FIELD field1.
CHECK field1(8) EQ 'WA_TADIR'.
READ TABLE jtab WITH KEY obj_name = sy-lisel+1(20).
MOVE jtab-object TO wf_object.
CASE wf_object.
WHEN 'SMOD'.
SET PARAMETER ID 'MON' FIELD sy-lisel+1(10).
CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
WHEN 'SXSD'.
SET PARAMETER ID 'EXN' FIELD sy-lisel+1(20).
CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN.
ENDCASE.
Reagards,
Bharat. -
Hii
I am doing user exit for MD01 i am finding difficulty in writing the code .
I want materials haveing MRP Type : 'V1'.
I wrote code for it but its not working ..
TABLES: t024d,
mara,
marc .
TABLES : t023t.
DATA: v_dispo TYPE dispo,
v_matkl TYPE matkl.
IF user_key = 'ZME'.
IF user_par = SPACE.
MESSAGE e000(zmessage) WITH 'User Parameter should not be blank'.
ENDIF.
SELECT SINGLE * FROM t024d INTO t024d
WHERE dispo = user_par.
IF sy-subrc ne 0.
MESSAGE e000(zss) WITH 'Please Check the MRP controller number'.
exit.
ENDIF.
SELECT SINGLE * FROM t024d INTO t024d
WHERE werks = mt61d-werks AND
dispo = user_par.
IF sy-subrc = 0.
SELECT SINGLE dispo FROM marc INTO v_dispo
WHERE dismm = 'V1' and
*matnr = mt61d-matnr
*AND
werks = mt61d-werks.
*and DISMM = 'VB'.
IF sy-subrc EQ 0.
*CHECK v_dispo user_par.
no_planning = 'X'.
ENDIF.
ENDIF.
CLEAR v_dispo.
ELSEIF user_key = '002'.
SELECT SINGLE * FROM t023t INTO t023t
WHERE matkl = user_par.
IF sy-subrc eq 0.
MESSAGE e000(zss) WITH 'Invalid material group no.' user_par.
ENDIF.
SELECT SINGLE matkl FROM mara INTO v_matkl
WHERE matnr = mt61d-matnr.
IF v_matkl = user_par.
no_planning = 'X'.
ENDIF.
ENDIF.
Please help me ....Hi,
Please check if this user exit actually is triggered from MD01.
I could not find it.
Reg,
Raj -
Im trying to update db table in user exit, with the internal table
Im trying to update db table in user exit, with the internal table
my scenario:
loop at itekpo.
updating itekpo -
> at the end of user exit the db table ekpo have to be updated
endloop.
Im updating internal table, using
MODIFY itekpo TRANSPORTING INCO1 INCO2 WHERE ebeln = itekpo-ebeln
where itekpo is internal table, but it is not updating the db table 'ekpo'.
i also tried updating ekpo directly !
Thanks in advanceHi,
you can search in the forum itself,
Try this link for instance
https://www.sdn.sap.com/irj/sdn/advancedsearch?cat=sdn_all&query=tocreateaBADI&adv=false&sortby=cm_rnd_rankvalue
You can find a code for finding BADI as a report with the following Transaction
finding badis
How to find BADIs
Reward if helpful
Regards
Byju -
Client Copy Error - ERROR: Type 'F' user exit with SYS_ERROR:
Hello,
We want to create a client copy from client 001 to clien 715.
The client copy test runs successfully.
The following error occurs in normal mode of client copy.
1 ETA028XClient copy from "03.11.2010" "17:12:43"
1 ETA029 System ID............................ "IS3"
1 ETA043 Target client........................ "715"
1 ETA030 R/3 Release.......................... "701"
1 ETA354 Basis Support Package..............."SAPKB70107"
1 ETA031 Host................................. "xxx"
1 ETA000 Start in background............. ....." "
1 ETA032 User................................. "SAP*"
1 ETA033 Parameter
1 ETA034 Source client........................ "001"
1 ETA188 Source client user masters............"001"
1 ETA185 Copier profile:......................."SAP_ALL"
1 ETA036 Table selection
1 ETA177 Customizing data ....................."X"
1 ETA037 With application data................ "X"
1 ETA155 Initialize and recreate......... "X"
1 ETA294 Change documents are not copied
2 ETA367XStart analysis of system "17:12:43"
3 ETA108 "/GC1/CC_EXIT_CLIENT_DELETION" executed " 0"(" 0") entries copied
4 ETA114 Runtime " 0" seconds
3 ETA072 Exit program "/GC1/CC_EXIT_CLIENT_DELETION" successfully executed "17:12:53"
A2EE/SAPAPO/OM 012 "Mandant 715:" "Verbindung nicht oder fehlerhaft gepflegt:" "IS3CLNT001" " "
2 ETA102 ERROR: Type 'F' user exit with SYS_ERROR: "/SAPAPO/OM_CLNT_COPY_DOWNLOAD"
2 ETA534 "RCOD:" " 8" "SY-SUBRC:" " 0"
2 ETA191 Program ended abnormally
Can you help me?
thx
TorstenTorsten,
Are you doing a local client copy in a SCM System. I can see it fails & is looking for SCM specific fn modules & user exits.
If yes, has a look at this notes there are some steps that needs to be done for the transactional date:
894490 - Client copy: Transactional data
And re-post it in the SCM forum: SAP Advanced Planning & Optimization (SAP APO)
- Regards, Dibya -
I want to block the withdraw qty in MB1A screen.I used MBCFC003 AND MBCF0005 BUT I couldn't get the exact result.Is it user exit for MB1A screen -PPC00009.So can anyone tell me the exact user exit.
Regards,
Maran.dDear Maran,
What's your exact requirement?What do you want to block in MB1A T Code?
You want to restrict for 261 movement for an order or reservation in MB1A?
These are the exits that can be used for MB1A,
MB_CF001 Customer Function Exit in the Case of Updating a Mat. Doc.
MBCF0011 Read from RESB and RKPF for print list in MB26
MBCF0010 Customer exit: Create reservation BAPI_RESERVATION_CREATE1
MBCF0009 Filling the storage location field
MBCF0007 Customer function exit: Updating a reservation
MBCF0006 Customer function for WBS element
MBCF0005 Material document item for goods receipt/issue slip
MBCF0002 Customer function exit: Segment text in material doc. item
Regards
S Mangalraj -
Dear all,
I want to use a user exit in IW22 screen to add notification time.
pls help me.
ThankxNo Screen Exit for IW22 i think it has only Function Exits
Custom Exits
IWO10026 User check on setting status 'Do not perform'
IWO10027 User exit: Generate user-defined settlement rule
IWOC0001 Create PM/SM notification: Determine reference object
IWOC0002 PM/SM notification: Check whether status change is allowed
IWOC0003 PM/SM authorization check of ref. object and planner group
IWOC0004 Change single-level list editing PM/QM/SM ALV settings
BADIs
IQS0_STATUS_MAINTAIN Control of Changeability of User Status
IWO1_SUBSCREEN_0170 Display Additional Data on Object Screen 0170 PhysicalSample
IWOC_LIST_TUNING Performance Tuning for Lists in PM/CS
IWOC_OBJECTINFO_CHNG Changes to Data of Object Info Screen
NOTIF_AUTHORITY_01 Additional Authorization Checks for the Notification
WOC_FL_DETERMINE Determine Date for Determining Installation Loc. Equi.
Edited by: Bala Krishna on Aug 20, 2008 4:00 PM -
To find user exit and a screen exit for VD03
hi ,
can u please find if there is a user exit and a screen exit to add for adding a Z-field on for the customer master on the shipping tab. i.e VD03 transaction.
actually i have found the user-exit i.e exit_SAPMF02d_001.
but this exit is not triggering when i put a breakpoint.
so can u please tell me the solution for this.
regards,
soham pHi,
try these...
Enhancement/ Business Add-in Description
Enhancement
SAPMF02D User exits: Customer master data
Business Add-in
CUSTOMER_ADDRSCR_CHG Change Address Screen in the Master Data Maintenance
CUSTOMER_ADD_DATA Additional Data at Customers
CUSTOMER_ADD_DATA_BI Additional Data at Customers (Batch Input and ALE)
CUSTOMER_ADD_DATA_CS Additional Data at Customers (Subscreen Container 4000)
No.of Exits: 1
No.of BADis: 4
Arunima -
Screen /user exit for additional screen on sales order header
Hello sir's,
can anybody help me for this query---
Screen /user exit for additional screen on sales order header.
exit name.
Thanks in advance,
VikramHi,
SAP has provided screen modification. This you can do on "Additional data B" screen at both <b>header</b> and line iteam level.
Additional <b>header data is on screen SAPMV45A 0309</b>, additional item data on screen SAPMV45A 0459. These screens contain the <b>Include screens SAPMV45A 8309 ( this is the screen exit at header )</b> or SAPMV45A 8459 ( this is the screen exit at item ) as user exits. There few more exits you will have to code to get this screen works. The are,
MV45AOZZ - PBO module of screen
MV45AIZZ - PAI module of screen
MV45ATZZ - Global data definition for user-exit.
Check this link for more info regarding user-exit in sales docs.
http://help.sap.com/saphelp_46c/helpdata/en/1c/f62c7dd435d1118b3f0060b03ca329/frameset.htm
We have alredy implemented this solution at line item level. Let me know if you have any question.
Regards,
RS -
EXIT from a user exit to intial screen of MM01
hi friends,
I am working on MM01 user exit..after saving user exit ll trigger..and in one scenerio we need to come back to screen MM01 with message at task bar..
Please give some idea ..
regardswell to come back to your initial screen is quite easy.
goto mm01 on your initial screen and hit F1.
in the help hit the button technical information.
there you get some information. amongst them your dynpro number of the screen you are on. (ahhh BTW make sure you place you cursor on the main screen before doing above steps, otherwise you get the dynpro-number of the subscreen your cursor is placed on.)
Then at the end of your user-exit write: leave to screen (your dynpro number you identified with the steps above).
to place a status message i believe you already have to be on the dynpro on which you want it to display. this would mean you had to modify the PBO event of that dypro, and i dont think you want that.
but i dont see any other solution. maybe some other dude will post something about that -
hi,
While selecting material code in Purchase req screen I like to display the corresponding G/L account code in Account Assignment-->G/L Account field. Kindly give me the suggestion .
Thanks & Regards
R.VijaiCheck this MEREQ001 Customers' Own Data in Purchase Requisition USer Exit
Inside the above user exit you have a Screen Exit
SAPLMEGUI 0014 SUB0 SAPLXM02 0111
try with that -
Assign Source of Supply User Exit with Quota Arrangements in ME57 and ME56
Hi there,
We are using Quota Arrangements to define Vendor rebate levels and we have enabled User Exit EXIT_SAPLMEQR_001 to provide a more informative popup to replace standard Source of Supply popup as need to display current allocation quantities and % allocation fulfiled.
This User Exit is invoked during Assign Source of Supply during PReq processing (More precisely during Assign Source of Supply in ME51n and Automatic Source of Supply in ME57 and ME56) which all works fine.
When used in ME51n and Source of Supply Assigned and PReq saved, the allocated quantity against the valid Quota Arrangement (EQUK-QUMNG) is successfully updated with the relevant amount
When using ME56 or ME57 to Automatically Assign source of Supply via the PReq list, the User Exit is invoked correctly and on selecting Vendor and saving the PReq is update correctly, however the allocated quantity against the valid Quota Arrangement (EQUK-QUMNG) is NOT updated with the relevant amount
I have searched SAP Notes and debuged with limited success but cannot find evidence as to why this difference is happening - I assume that it has something to do with User Exit but any advice gratefully received if anyone else has experienced this issue?
BenHello Jerry,
source will be determine based on the following points:
Outline Agreement
Info record
Quota Arrangement
Source List
For more information, <a href="http://help.sap.com/saphelp_47x200/helpdata/en/75/ee11b255c811d189900000e8322d00/content.htm">Click here</a>
Hope this helps.
Regards
Arif Mansuri -
ABEND in Java User Exit with RAW DataType
I have a Java User Exit Extract running against a trail file that has been pumped to the GoldenGate instance in question. The extract starts up without any issues, but gives the following error after I update a record that has a RAW datatype as the primary key:
JAVAWRITER(javawriter.c:269) [ERROR]: Error occurred (Java exception): UEDataSource.createOperation:
com.goldengate.atg.datasource.InvalidTransactionState: A new operation was received without first receiving a BEGIN transaction. This can happen when processing is resumed in the middle of a transaction, or when there are "before" images in the trail that are not being sent to the user exit (always include "GetUpdateBefores" in the user-exit parameter file).
I have tried a number of things to try to resolve this, but I can't seem to make this work. the params for this extract currently looks like this:
extract uePump
sourcedefs ./dirdef/my_defgen.def
setenv (GGS_USEREXIT_CONF = "dirprm/javaue.properties")
getupdatebefores
cuserexit ./dirprm/libggjava_ue.so CUSEREXIT passthru includeupdatebefores
table my_schema.B_PLN_DIR, fetchmodcols (PLN_DIR_ID, *);
table my_schema.*;
... I've tried leaving off the "includeupdatebefores" argument to the cuserexit, leaving out the fetchmodcols handling for the table with the RAW PK field, but I still get the error shown above.
Any help / pointers is much appreciated.includeupdatebefores (lowercase) doesn't work; you must use the uppercase INCLUDEUPDATEBEFORES !!
-
User Exit PO MM06E005 - Screen does not exist
Hello All,
I created a new object for user exit 'EXIT_SAPMM06E_012' in Development System. This user exit is under the enhancement MM06E005. The user exit EXIT_SAPMM06E_012 will be used to produce an error message when saving a PO.
After Transported the Project into Quality System and I tried running transaction ME22->Select one line Item record in table control -> (Menu) ITEM -> Confirmations -> Overview to confirm the PO. I have been getting a dump telling me that SAPLXM06 Screen 0111 Screen does not exist." This is because the screen exit was also included in the activation.
When I have deactivated the Project its working fine. This problem occurs only the activation of user exit.
Thanks & Regards
Sudheerhi,
the problem when activating the exit you would have checked or activated the screen which currently is there in the development system , or you would have activated the screens and put them in a different request or in $tmp so when the request having the exit got transaported the screen code or activation was not taken along.
Deactivate the exit and then deactivate the screens also.
and then try to activate and put all in one request : deactivated and activations.
Narayani
Message was edited by:
Narayani -
Update transfer requirement user exit, with order
Dear experts,
I want to use exit MWMTR001, function module EXIT_SAPLL03T_003 to update the Transfer requirement with the Order number created in COR1.
But I see that by the time the user exit is called, the order number has not yet been created in the database.
Is there maybe another place to do what I want?
Thank you in advance,
Roxani AthousakiHi Frenchy,
Thanks for the answer. I have one more question.
Is it possible to automate it based on a movement type, so that every time we create a Transfer Order for this movement type the relevant TR will be automatically marked for 'final delivery'. This would help us, because then we would not have to go to WAM everytime to mark it as complete.
Or some kind of configuration that will dictate that only one Transfer order will be allowed for a Transfer Requirement and the TR will be set to complete as soon as the TO is confirmed.
Thanks,
Mike
Maybe you are looking for
-
AE appends my filename when setting up a render queue output filename via scripting
I wrote a script that imports quicktimes and creates comps from them and adds them to the render queue. I'm running into an issue where files with certain names get appended when adding them to the queue. I believe it has something to do with the "."
-
I've been following the Field Engineer example project from the Windows Development Center to guide into mapping many-to-many relationships on my model. What's been bothering me is how to insert entries into many-to-many relationships. Take my model
-
Output CSV File Naming Convention - Receiver File Adapter
Dear SAP experts, I need help regarding my scenario. My scenario is this, Customer will send EDI message to XI. XI will then translate the message and convert it into XML.. After, a Receiver File Adapter will receive the XML then convert it into .csv
-
Equi Join and Outer join using outer keyword
Hi, First lets take the create statment for scott schema. create table scott.emp_details(empno number, bonus_date date); Insert Into Scott.Emp_Details Values(7369, To_Date('01-jan-2013')); Insert Into Scott.Emp_Details Values(7499, To_Date('05-jan-20
-
Same as above.