06-18-2007 2:51 PM
Before Goods Receipt (101) against production order is posted with transaction code MIGO_GO, system should compare actual Goods Issue(261) done for production order with that of planned requirement of Production Order.If there is any difference in terms of either number of material codes or quantity of each and every material code then Warning message should pop up. This is my requirement can any one help me which User Exit I should use and how to add the code. Thanks in Advance.
06-18-2007 8:01 PM
The BAdI MB_MIGO_BADI will be just fine for this. I'd suggest using the method CHECK_ITEM. You have an easy way to add the warning message to the application log there.
Look at the documentation and sample code of this BAdI, they'll help to understand what needs to be done.
06-19-2007 5:31 AM
Hai,
These are the available user exit and badis for this t.code.
MB_CF001 Customer Function Exit in the Case of Updating a Mat. D
MBCF0002 Customer function exit: Segment text in material doc. i
MBCF0005 Material document item for goods receipt/issue slip
MBCF0006 Customer function for WBS element
MBCF0007 Customer function exit: Updating a reservation
MBCF0009 Filling the storage location field
MBCF0010 Customer exit: Create reservation BAPI_RESERVATION_CREA
MBCF0011 Read from RESB and RKPF for print list in MB26
U can try by putting the break-point in the include program. if it is going debug mode then that is correct for ur requirement.
These are the BADIs for this t.code.
ARC_MM_MATBEL_CHECK Check Add-On-Specific Criteria for MM_MATBEL
ARC_MM_MATBEL_WRITE Check Add-On-Specific Data for MM_MATBEL
MB_CHECK_LINE_BADI BAdI: Check Line Before Copying to the Blocking Tables
MB_CIN_LMBMBU04 posting of gr
MB_CIN_MM07MFB7 BAdI for India Version exit in include MM07MFB7
MB_CIN_MM07MFB7_QTY Proposal of quantity from Excise invoice in GR
MB_DOCUMENT_BADI BAdIs when Creating a Material Document
MB_DOCUMENT_UPDATE BADI when updating material document: MSEG and MKPF
MB_MIGO_BADI BAdI in MIGO for External Detail Subscreens
MB_MIGO_ITEM_BADI BAdI in MIGO for Changing Item Data
MB_RESERVATION_BADI MB21/MB22: Check and Complete Dialog Data
same thing put break-point in between module and endmodule.
Thanks and Rgds,
P.Naganjana Reddy.
06-19-2007 5:36 AM
06-19-2007 5:59 AM
Hi
Find the available exits with the following program:::
&----
*& Report ZFINDUSEREXIT
*&
&----
*&
*&
&----
report zfinduserexit.
tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
tables : 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 obligatory.
select single * from tstc where tcode eq p_tcode.
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 = '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.
at line-selection.
get cursor field field1.
check field1(4) eq 'JTAB'.
set parameter id 'MON' field sy-lisel+1(10).
If there are no available user exits you could go for badi's.
To search for a badi, go to se 24 display class cl_exithandler. double click on method get_instance, get a break point on case statement. execute and start the required transaction in new session. look for variable exit_name. It would show the available badi's.
<b>
Please do reward if useful</b>
Regards
Dinesh
08-01-2007 7:48 AM