Screen Exit on Me21n
Hi experts,
I want to insert a field for the header part of the ME21n.
So I choose the MM06E005 enhancement and I created a project in smod.
then I create a field in CI_EKKODB include table , and I double click in 0101 screen and insert that field in that screen. Up to now I have done correctly.
Then I create a PO using ME21N, after saving PO, I checked the EKKO table and 1 record is updated. But the field I newly created is not updated. It is showing Blank.
Plz help me how to update that field value.
Thanks and Regards
Ganesh Reddy
FUNCTION EXIT_SAPMM06E_006.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_EKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_TRTYP)
*" VALUE(I_CI_EKKO) LIKE EKKO_CI STRUCTURE EKKO_CI
*" VALUE(I_BSTYP) LIKE EKKO-BSTYP
*" VALUE(I_NO_SCREEN)
*" VALUE(I_LFA1) LIKE LFA1 STRUCTURE LFA1
*" VALUE(I_LFM1) LIKE LFM1 STRUCTURE LFM1
*" VALUE(I_KEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_AEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_REKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_EKKO_OLD) LIKE EKKO STRUCTURE EKKO OPTIONAL
*" VALUE(I_VORGA) LIKE T160-VORGA
*" TABLES
*" TEKPO STRUCTURE BEKPO OPTIONAL
*" TEKET STRUCTURE BEKET OPTIONAL
*" TEKKN STRUCTURE EKKNU OPTIONAL
*" TKOMV STRUCTURE KOMV OPTIONAL
INCLUDE ZXM06U36 .
ENDFUNCTION.
in include ZXM06U36 u have to write like this
v_trtyp = i_trtyp.
ekko_ci-zinsur = i_ekko-zinsur.
ekko_ci-zindt = i_ekko-zindt.
ekko_ci-zindb = i_ekko-zindb.
ekko_ci-zprcty = i_ekko-zprcty.
ekko_ci-zdisty = i_ekko-zdisty.
ekko_ci-zdisfr = i_ekko-zdisfr.
ekko_ci-zdimd = i_ekko-zdimd.
ekko_ci-zcnfag = i_ekko-zcnfag.
ekko_ci-zfrmd = i_ekko-zfrmd.
ekko_ci-zfrtvn = i_ekko-zfrtvn.
ekko_ci-zbankgrty = i_ekko-zbankgrty.
ekko_ci-ZROADPRMT = i_ekko-zroadprmt.
ekko_ci-ZIECNR = i_ekko-ziecnr.
ekko_ci-ZIMPLIC = i_ekko-zimplic.
ekko_ci-ZPORTL = i_ekko-zportl.
ekko_ci-ZPORTD = i_ekko-zportd.
ekko_ci-abg = i_ekko-abg.
ekko_ci-cag = i_ekko-cag.
ekko_ci-pbg = i_ekko-pbg.
ekko_ci-cpg = i_ekko-cpg.
ekko_ci-shpnm = i_ekko-shpnm.
ekko_ci-pmtmd = i_ekko-pmtmd.
FUNCTION EXIT_SAPMM06E_007.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_EKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_TRTYP)
*" VALUE(I_BSTYP) LIKE EKKO-BSTYP
*" VALUE(I_NO_SCREEN)
*" VALUE(I_LFA1) LIKE LFA1 STRUCTURE LFA1
*" VALUE(I_LFM1) LIKE LFM1 STRUCTURE LFM1
*" VALUE(I_KEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_AEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_REKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_EKKO_OLD) LIKE EKKO STRUCTURE EKKO OPTIONAL
*" VALUE(I_VORGA) LIKE T160-VORGA
*" VALUE(I_UCOMM) LIKE SY-UCOMM OPTIONAL
*" TABLES
*" TEKPO STRUCTURE BEKPO OPTIONAL
*" TEKET STRUCTURE BEKET OPTIONAL
*" TEKKN STRUCTURE EKKNU OPTIONAL
*" TKOMV STRUCTURE KOMV OPTIONAL
INCLUDE ZXM06U38 .
ENDFUNCTION.
v_trtyp = i_trtyp.
FUNCTION EXIT_SAPMM06E_008.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_UCOMM) TYPE SY-UCOMM
*" EXPORTING
*" VALUE(E_CI_UPDATE) LIKE SY-CALLD
*" VALUE(E_UCOMM) LIKE SY-UCOMM
*" CHANGING
*" VALUE(E_CI_EKKO) LIKE EKKO_CI STRUCTURE EKKO_CI OPTIONAL
INCLUDE ZXM06U37 .
ENDFUNCTION.
e_ci_ekko-zinsur = ekko_ci-zinsur.
e_ci_ekko-zindt = ekko_ci-zindt.
e_ci_ekko-zindb = ekko_ci-zindb.
e_ci_ekko-zprcty = ekko_ci-zprcty.
e_ci_ekko-zdisty = ekko_ci-zdisty.
e_ci_ekko-zdisfr = ekko_ci-zdisfr.
e_ci_ekko-zdimd = ekko_ci-zdimd.
e_ci_ekko-zcnfag = ekko_ci-zcnfag.
e_ci_ekko-zfrmd = ekko_ci-zfrmd.
e_ci_ekko-zfrtvn = ekko_ci-zfrtvn.
e_ci_ekko-abg = ekko_ci-abg.
e_ci_ekko-pbg = ekko_ci-pbg.
e_ci_ekko-cag = ekko_ci-cag.
e_ci_ekko-cpg = ekko_ci-cpg.
e_ci_ekko-zbankgrty = ekko_ci-zbankgrty.
e_ci_ekko-shpnm = ekko_ci-shpnm.
e_ci_ekko-pmtmd = ekko_ci-pmtmd.
e_ci_ekko-zroadprmt = ekko_ci-zroadprmt.
e_ci_ekko-ziecnr = ekko_ci-ziecnr.
e_ci_ekko-zimplic = ekko_ci-zimplic.
e_ci_ekko-zportl = ekko_ci-zportl.
e_ci_ekko-zportd = ekko_ci-zportd.
FUNCTION EXIT_SAPMM06E_014.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_EKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_TRTYP)
*" VALUE(I_BSTYP) LIKE EKKO-BSTYP
*" VALUE(I_NO_SCREEN)
*" VALUE(I_LFA1) LIKE LFA1 STRUCTURE LFA1
*" VALUE(I_LFM1) LIKE LFM1 STRUCTURE LFM1
*" VALUE(I_KEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_AEKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_REKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_CI_EKKO) LIKE EKKO_CI STRUCTURE EKKO_CI
*" VALUE(I_VORGA) LIKE T160-VORGA
*" TABLES
*" TEKPO STRUCTURE BEKPO OPTIONAL
*" TEKET STRUCTURE BEKET OPTIONAL
*" TEKKN STRUCTURE EKKNU OPTIONAL
*" TKOMV STRUCTURE KOMV OPTIONAL
INCLUDE ZXM06U45 .
ENDFUNCTION.
*& Include ZXM06U45
V_TRTYP = I_TRTYP.
FUNCTION EXIT_SAPMM06E_016.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_EKPO) LIKE EKPO STRUCTURE EKPO
*" VALUE(I_AKTYP)
*" VALUE(I_CI_EKPO) LIKE EKPO_CI STRUCTURE EKPO_CI
*" VALUE(I_BSTYP) LIKE EKKO-BSTYP
*" VALUE(I_NO_SCREEN)
*" VALUE(I_LFA1) LIKE LFA1 STRUCTURE LFA1
*" VALUE(I_LFM1) LIKE LFM1 STRUCTURE LFM1
*" VALUE(I_EKKO) LIKE EKKO STRUCTURE EKKO
*" VALUE(I_REKPO) LIKE EKPO STRUCTURE EKPO OPTIONAL
*" VALUE(I_KEKPO) LIKE EKPO STRUCTURE EKPO OPTIONAL
*" VALUE(I_AEKPO) LIKE EKPO STRUCTURE EKPO OPTIONAL
*" VALUE(I_REBAN) LIKE EBAN STRUCTURE EBAN OPTIONAL
*" VALUE(I_MT06E) LIKE MT06E STRUCTURE MT06E OPTIONAL
*" VALUE(I_EINA) LIKE EINA STRUCTURE EINA OPTIONAL
*" VALUE(I_EINE) LIKE EINE STRUCTURE EINE OPTIONAL
*" VALUE(I_EKPO_OLD) LIKE EKPO STRUCTURE EKPO OPTIONAL
*" VALUE(I_KOMP) LIKE KOMP STRUCTURE KOMP OPTIONAL
*" VALUE(I_ENJ_CALL) OPTIONAL
*" TABLES
*" TEKPO STRUCTURE BEKPO OPTIONAL
*" TEKET STRUCTURE BEKET OPTIONAL
*" TEKKN STRUCTURE EKKNU OPTIONAL
*" TKOMV STRUCTURE KOMV OPTIONAL
INCLUDE ZXM06U41 .
ENDFUNCTION.
*& Include ZXM06U41
Export data to customer subscreen for item
v_trtyp = i_aktyp.
ekpo_ci-zinprc = i_ekpo-zinprc.
ekpo_ci-zindxt = i_ekpo-zindxt.
ekpo_ci-zinbit = i_ekpo-zinbit.
ekpo_ci-zref = i_ekpo-zref.
ekpo_ci-refno = i_ekpo-refno.
FUNCTION EXIT_SAPMM06E_018.
""Lokale Schnittstelle:
*" IMPORTING
*" VALUE(I_UCOMM) LIKE SY-UCOMM
*" EXPORTING
*" VALUE(E_CI_UPDATE) LIKE SY-CALLD
*" VALUE(E_UCOMM) LIKE SY-UCOMM
*" CHANGING
*" VALUE(E_CI_EKPO) LIKE EKPO_CI STRUCTURE EKPO_CI OPTIONAL
INCLUDE ZXM06U40 .
ENDFUNCTION.
*& Include ZXM06U40
e_ci_ekpo-zinprc = ekpo_ci-zinprc.
e_ci_ekpo-zindxt = ekpo_ci-zindxt.
e_ci_ekpo-zinbit = ekpo_ci-zinbit.
e_ci_ekpo-zref = ekpo_ci-zref.
e_ci_ekpo-refno = ekpo_ci-refno.
e_ci_ekpo-zshpnm = ekpo_ci-zshpnm.
e_ci_ekpo-zpmtmd = ekpo_ci-zpmtmd.
e_ci_ekpo-zldpnty = ekpo_ci-zldpnty.
e_ci_ekpo-zwrtdt = ekpo_ci-zwrtdt.
e_ci_ekpo-zbckcg = ekpo_ci-zbckcg.
e_ci_ekpo-zwrty = ekpo_ci-zwrty.
process before output.
module status_0101.
module screen_disable.
process after input.
MODULE USER_COMMAND_0101.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
PROCESS BEFORE OUTPUT.
MODULE STATUS_0111.
MODULE screen_disable.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0111.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
PROCESS BEFORE OUTPUT.
MODULE STATUS_0201.
MODULE screen_disable.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_0201.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
process before output.
MODULE STATUS_0211.
MODULE screen_disable.
process after input.
MODULE USER_COMMAND_0211.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
process before output.
MODULE STATUS_0301.
MODULE screen_disable.
process after input.
MODULE USER_COMMAND_0301.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
process before output.
MODULE STATUS_0311.
MODULE screen_disable.
process after input.
MODULE USER_COMMAND_0311.
***INCLUDE ZXM06O04 .
*& Module screen_disable OUTPUT
text
MODULE screen_disable OUTPUT.
IF sy-tcode = 'ME23N' OR
sy-tcode = 'ME23'.
if v_trtyp = 'A'.
LOOP AT SCREEN.
screen-input = 0.
modify screen.
ENDLOOP.
ENDIF.
ENDMODULE. " screen_disable OUTPUT
*& Include ZXM06TOP
TYPES: BEGIN OF ty_bsart,
sign TYPE TVARV_SIGN,
opti TYPE TVARV_OPTI,
low TYPE TVARV_VAL,
high TYPE TVARV_VAL,
END OF ty_bsart.
TYPES: BEGIN OF ty_esduscom,
prefix TYPE char20,
postfix TYPE char20,
END OF ty_esduscom.
DATA: s_esduscom TYPE esduscom,
s_esduscom1 TYPE ty_esduscom.
DATA: t_bsart TYPE STANDARD TABLE OF ty_bsart,
t_esduscom TYPE STANDARD TABLE OF esduscom.
DATA: v_bsart TYPE esart,
v_es_action TYPE es_action VALUE 'PurchaseOrder'..
CONSTANTS : c_ibr_bsart TYPE RVARI_VNAM VALUE 'ZIBR_IRK_BSART',
c_type TYPE RSSCR_KIND VALUE 'S',
c_numb TYPE TVARV_NUMB VALUE '0000'.
*} INSERT
Similar Messages
-
Hi,
I have a enhancement( screen exit ) to do... Has any one worked on this enhancement.. so that they can guide me...
This enhancement to be carried out in transaction ME21N and validated against the Purchase Organization (SG01). Singapore will be using this purchase organization alone. You can find this Purchasing Organization in header Org. Data Tab.
The field name to be Mode of Transport and to have fields Courier, Air, Sea, Land, & Local Transport. These fields to be displayed as dropdown for selection. This field has to be a mandatory field and to be validated while screen exit when they select Check and Save.
The data captured to be stored in Z table and additionally following field is to be captured for mapping.
 PO Number
This field should be available for amendment in transaction ME22N, displayed (greyed) in ME23N and again displayed in transaction ME29N.
The captured field in Z to be inserted in PO forms in transportation mode field.
I have found the Badi 'ME_GUI_PO_CUST'.
but dont know what parameters to pass, the parameters that to be passed in SPRO Olme transaction.
If anyone has better solution pls do forward to me so that i can try my best.
Regards,
Mahadev shetty.Hi,
For better understanding see the badi documentation in se18 transaction.
SAP people gives the sample code. Check the implementation class:CL_EXM_IM_ME_GUI_PO_CUST in se24 tcode.
U can use the subscribe and MAP_DYNPRO_FIELDS methods for screen exit.
or In se18 transaction,
give the badi def goto/sample code/display.
If it is helpful rewards points
Regards
Pratap.M -
Hi friends,
I need steps to create screen field in ME21N using the BADI ME_PROCESS_PO_CUST. Can anybody suggest me how to implement this.
Thanks in advance
Regards
Srikanth SHello Srikanth,
To created a screen exit you can use either a BADI or a USER EXIT.
BADI : ME_GUI_PO_CUST
USER EXIT: MM06E005
GO to transaction SMOD
and type MM06E005 and press display.
once inside the user exit, click on components, there you have function Module exits, screen exits and includes.
On the screen exits, you have to decide where you want to add the screen field, whether its on header or item level.
THE go to SE80, type the screen name as the program name. IT will give you all the objects for the particular program.
Choose screens, and then the relevent screen. Go to layout and add the field you want. Save and activate.
You also need to add the field in the Cl_include so that you could pass data and retrive data.
Write the relevant code in Function Modulte Exits.
ITEM LEVEL:
EXIT_SAPMM06e_016
EXIT_SAPMM06e_017
EXIT_SAPMM06e_018
Now you have to add the relevant code in the PAI and PBO module.
Reward if useful.
Regards,
Sandeep Salaria -
Screen exit for ME21N/22N/23N
Hi All.
I have created all the subscreens available for enhancement MM06E005 (sub. scr. 0101, 0111, 0201, 0211, 0301 and 0311) , and have put a text inside each subscreen. All I want so far is to see this text in transactions ME21N/22N/23N, but I can´t find it. Is there any other step I should follow in order to make my subscreens show up in those transactions?
I have followed everything I could find in every topic in this forum, but I still can´t see my subscreen and the texts inside it.
Any help will be much appreciated, and points will be given to helpful answers.
thanks a lot in advance.did u activated the project for which u assigned the exit.
you can check the exit directly in
SMOD.
give the exit name and press test.
check that u get u r requirement.
regards
santhosh reddy
reward if useful -
Problem in Screen Exit for me21
Hi,
I have developed Screen Exit in ME21N ..and facing a problem where to write the code...I have a little bit confused with all the function exits...
i used move-corresponding...in the function exit but i am getting errors ..if i am trying to activate the code it is activating...
could you plz help me out guys ..
points will be rewarded..
Regards,
Ravi Ganjihi,
if u want to add new fields in the transaction, this is sample code for CNEX0006 enhancement.
First create a project in cmod and attach the enhancement CNEX0006 to the project.
1.go to se11 and in the PROJ table u will find ci_proj include , in this add ur custom fields.
2.go to se51 give SAPLXCN1 in the program name with screen number 0600 , create the subscreen and in the layout choose Dict./Program fields and drag and drop in the screen .
3. if u want to write any logic before the screen is displayed do it in PBO.
4. now in the function exit EXIT_SAPLCJWB_002 , go in the INCLUDE ZXCN1U11 and write this logic
move-corresponding sap_proj_imp to proj.
5.4. now in the function exit EXIT_SAPLCJWB_003 , go in the INCLUDE ZXCN1U12. and write this logic
move-corresponding proj to cnci_proj_exp.
Activate the project .
Hope this helps
Regards
Syed -
Hi Experts.....
I have implemented a screen exit in ME21N Transaction to add custom fields. With this I could get an extra custom tab in which I have included my fields. Now my req is to get multiple tabs as the fields are more in number. So I wanted to implement this using a BADI. I have searched the BADI named ME_GUI_PO_CUST.
in this I have passed the screen no and program name and label name along with element as PO and name of view as HEADER. But I cannot see an extra TAb in header details. I also created the subscreen and the corresponding program...
Can anyone help me to implement a screen badi in ME21N.
Thank you in advanceHi Shakti,
The BADI ME_GUI_PO_CUST has an example implementation class CL_EXM_IM_ME_GUI_PO_CUST. Check the method SUBSCRIBE to see how the BADI can be subscribed.
The reason why your custom screen is not appearing is probably because your BADI implementation is not active or the custom screen has not be subscribed properly.
The code inside method SUBSCRIBE of your BADI implementation should be as follows:
DATA: ls_subscriber LIKE LINE OF re_subscribers.
* we want to add a customer subscreen on the item detail tab
CHECK im_application = 'PO'.
CHECK im_element = 'ITEM'.
* each line in re_subscribers generates a subscreen. We add one subscreen in this example
CLEAR re_subscribers[].
* the name is a unique identifier for the subscreen and defined in this class definition
ls_subscriber-name = 'ITEMSCREEN1'.
* the dynpro number to use
ls_subscriber-dynpro = '0001'.
* the program where the dynpro can be found
ls_subscriber-program = 'SAPLMEPOBADIEX'.
* each subscreen needs his own DDIC-Structure
ls_subscriber-struct_name = 'MEPO_BADI_STRUCT'.
* a label can be defined
ls_subscriber-label = 'BAdI customer'.
* the position within the tabstrib can be defined
ls_subscriber-position = 5.
* the height of the screen can be defined here. Currently we suport two screen sizes:
* value <= 7 a sevel line subscreen
* value > 7 a 16 line subscreen
ls_subscriber-height = 7.
APPEND ls_subscriber TO re_subscribers.
To impelement multiple tabs you have to subscribe each tab differently using the parameter
ls_subscriber-name
of the BADI
and also name each tab differently using
ls_subscriber-label
Let us assume that you have to implement three tabs, then you have to subscribe each tab with a different name and also label each tab differently.
You can name subscribe the first tab with name ITEMSCREEN1 label BAdI customer, subscribe 2nd tab with name ITEMSCREEN2 label BAdI customer'2 and subscribe 3rd tab with name ITEMSCREEN3 label BAdI customer3.
Mention a different positions for each tab.
Like say for BADI customer1 ls_subscriber-position = 5., for BADI customer2 ls_subscriber-position = 6. and for BADI customer3 ls_subscriber-position = 7..
Also append the subscribe data three times for the three tabs.
This will display three tabs with names BADI customer1, BADI customer2 and BADI customer3.
Hope the above information helps.
Regards,
Abhisek. -
Hi All,
am using the screen exit in me21n i.e in item data i.e. MM06E005
& also i found the screen but where should i declear
the internal table i.e global decleration.
am using table control into the subscreen.
so plz give me steps or any sample riport.
Regards,
Amit.Hi,
Try:
EXIT_SAPMM06E_001
EXIT_SAPMM06E_004
EXIT_SAPMM06E_006
EXIT_SAPMM06E_007
EXIT_SAPMM06E_008
EXIT_SAPMM06E_009
EXIT_SAPMM06E_012
EXIT_SAPMM06E_013
EXIT_SAPMM06E_014
EXIT_SAPMM06E_016
EXIT_SAPMM06E_017
EXIT_SAPMM06E_018
Regards,
Renjith Michael. -
Screen exit for invoice tab in me21n
Hello,
I have a requirment where i need to add push buttons at line item under the INVOICE TAB of transaction ME21N.Do we have a screen exit available for this?
Thanks in advance,
Suman
Moderator message: please do some research yourself first.
Edited by: Thomas Zloch on Dec 20, 2010 10:17 AMI have created the screen SAPLXTOB 1000 and 1001 as sub screens and activated them.
Attached a project to the enhancement and activated it.
Still I do not see the 'OTHER TAB' new screen on the transaction IE01/02/03.
As per the documentation it shld have appeared.
Do i need to do any customization/configuration here. -
Screen Exit for adding custom fields in Additional Data tab in ME21N
I need a screen exit or whatever other method for adding custom fields to the additional data tab at header level.
I also need a similar exit for adding a filed at item level.
Thanks in advance
MartinHello,
1st find badi or exit and then create screen ...and assign the screen group and screen no for that implementation....some steps i can give u i did with SPRO tcode....
please check it for VA02
SPRO u2013 SAP Reference IMG --- Logistics General --- Basic partner u2013 customers -- Control u2013 Adaption of customers own masters data element u2013 prepare modification of customer free enhancement of customer master record
1)Screen group description
zs creating badi --- (save)
click on (label tab pages) u2013 new entries
number u2013 10 , function code u2013 zs10 , description u2013 func ---(save) u2013(back)
2)select (FM_CUSTOMER_ADD) u2013 copy
Implementation name u2013 ZAS
(desc u2013 impl for cust) u2013 (save)
interfaceu2014(check_add_on_active) double click on it
3)the above screen appear -- write the code in it u2013 (save) --- (activate) u2013 (back) u2013 (save)
-- (activate) u2013 (back)
Business adds in customer sub screens
4)select (FM_CUSTOMER_ADD) u2013 copy
Implementation name u2013 ZAS1
(description -- cust) u2013 in attribute u2013 (give screen group name)
5)go to interfaces (GET_TAXI_SCREEN) double click on it
(save) --- (activate)
6)(SAVE) --
Goto SE38 -- CREATE PROGRAM WITH NAME (ZQW) type module pool
Goto SE51 -- Prog : ZQW
Screen : 200 (Create)
Goto layout u2013 design the screen
7)save u2013 activate
then goto transaction : va02
For User Exit's
goto to tcode->status->program name->double click on that,
then goto to-> attribute take the package name and
Goto SMOD tcode ->Utilities->give the package name and F8
then a list of exits will display for that tcode as well as that package.
u can check the table MODSAP
u can check the table MODACT
For BADI's,
1)goto to tcode SE24 give the CL_EXITHANDLER and display and then double click on the GET_INSTANCE
keep Break point at this location 'call method cl_exithandler=>get_class_name_by_interface'
then the tcode it will trigger there and we can debugg there we can find badi'for that tcode and then remove the break point.
2)Goto to tcode->status->program name->double click on that program will display's
then press crtl+F then cl_exithandler
Thank u ,
santhosh -
Hi,
Need your help for solving an issue related to ME21N ( Purchase Order Creation)
I am having ZVRL(say) condition type that is mandatory and is defined in pricing schema ZVVA01(say).ZVVA01 is further attached to purchase organisation 4000 (say).
I am having a document type ZVVN . I want to save the purchase order without ZVRL (Defined as Mandatory condition) for particular document type ZVVN. But as ZVRL is mandatory condition , So system does not allow me to save the purchase order.
For solution following option have been ruled out by the client-
1) Through a separate vendor schema with different purchase organization.
2) Entering any value like .01 or .002 for the mandatory condition type that is for ZVRL.
Other than above two, Can anyone please tell me if there is any exit/badi/ or pricing routine available through which we can avoid mandatory ZVRL condtion for particular document type ZVVN at the time of saving and changing the Purchase order.
Thanks
Deepak GuptaHi,
Check all user exit for ME21N
Transaction Code - ME21N Create Purchase Order
Exit Name Description
LMEDR001 Enhancements to print program
LMELA002 Adopt batch no. from shipping notification when posting a GR
LMELA010 Inbound shipping notification: Transfer item data from IDOC
LMEQR001 User exit for source determination
LMEXF001 Conditions in Purchasing Documents Without Invoice Receipt
LWSUS001 Customer-Specific Source Determination in Retail
M06B0001 Role determination for purchase requisition release
M06B0002 Changes to comm. structure for purchase requisition release
M06B0003 Number range and document number
M06B0004 Number range and document number
M06B0005 Changes to comm. structure for overall release of requisn.
M06E0004 Changes to communication structure for release purch. doc.
M06E0005 Role determination for release of purchasing documents
ME590001 Grouping of requsitions for PO split in ME59
MEETA001 Define schedule line type (backlog, immed. req., preview)
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
MEQUERY1 Enhancement to Document Overview ME21N/ME51N
MEVME001 WE default quantity calc. and over/ underdelivery tolerance
MM06E001 User exits for EDI inbound and outbound purchasing documents
MM06E003 Number range and document number
MM06E004 Control import data screens in purchase order
MM06E005 Customer fields in purchasing document
MM06E007 Change document for requisitions upon conversion into PO
MM06E008 Monitoring of contr. target value in case of release orders
MM06E009 Relevant texts for "Texts exist" indicator
MM06E010 Field selection for vendor address
MMAL0001 ALE source list distribution: Outbound processing
MMAL0002 ALE source list distribution: Inbound processing
MMAL0003 ALE purcasing info record distribution: Outbound processing
MMAL0004 ALE purchasing info record distribution: Inbound processin
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
AMPL0001 User subscreen for additional data on AMPL
See which is suitable for your requirement. -
How can i add field to screen exit ?
ver 4.7
trans. me21n
add field in screen exit .
i implement screen exit MM06E005->SAPMM06E->0111
in the layout i try to add field by pressing
button in the toolbar ( dictionary field window ) ,
but when i press "save" in me21n ,
i get message "No data changed".
i choose in the dialog window
field from structure "ci_ekpodb" , field that i already
been add .
thanks .Hi
You have to implement the exit to import/export the data into/from screen-exit:
EXIT_SAPMM06E_016 and EXIT_SAPMM06E_018
Max -
Capture Screen message while ME21N
How can I capture the PO Number while executing Me21N.
In one report I am called ME21N. SAP Displays message PO <PO Number > Created. I want to capture the PO Number and wanted to do further processing.
I tried to get data from SYST MSGV1, MSGV2 MSGV3 MSGV3. But all variables are blank.
I cant use set and get parameters. Because if user exit PO creation without creating the PO then get parameter picks the last created PO number.
CALL TRANSACTION 'ME21N'.
EBELN = ???????I have to Call Just ME21N and then user will create the PO mannually. after he saves the PO I want the PO number for further processing.
by using the following code I can Capture the PO number, but the problem is that it will behave like a BDC with differnet screen attribute.
Note i_BDCDATA table is blank.
DATA : EBELN TYPE EBELN.
CALL TRANSACTION 'ME21N'
USING i_bdcdata
MESSAGES INTO i_messtab.
*CLEAR i_messtab.
*SORT i_messtab DESCENDING by msgtyp.
*READ TABLE i_messtab WITH KEY msgtyp = 'S'.
*IF sy-subrc = 0 .
EBELN = i_messtab-msgv2.
I just want to capture the screen value after ME21N. -
Field Exit for ME21N & ME22N transactions
HI Friends,
I need to make the SAP Standard screen field "Overdeliv. Tol." & "Unlimited" to inactive under the Item level data --> Delivery tab in ME21N & ME22N transaction.
Can i do ths? If so give me the steps and Screen exit for the same...For User Exit's
goto to tcode->status->program name->double click on that,
then goto to-> attribute take the package name and
Goto SMOD tcode ->Utilities->give the package name and F8
then a list of exits will display for that tcode as well as that package.
double click on the exit u can see the Fm exit,screen exit,feild exit,include exit. there
u can check the table MODSAP
For BADI's,
1)goto to tcode SE24 give the CL_EXITHANDLER and display and then double click on the GET_INSTANCE
keep Break point at this location 'call method cl_exithandler=>get_class_name_by_interface'
then the tcode it will trigger there and we can debugg there we can find badi'for that tcode and then remove the break point.
2)Goto to tcode->status->program name->double click on that program will display's
then press crtl+F then cl_exithandler
Thank u,
santhosh -
Purchase order screen exit SAPMM06E,screen number 0111
Hi
I am working on purchase order screen exit SAPMM06E and screen number 0111
i am able to see customer screen in transaction but program control is not going to flow logic
due to that i couldn't able to fetch data into custom fields.pls suggest me wat to do.
Thanks & Regards
VinayHi Vinay ,
I think you are implementing the screen exit with the enhancement component 'MM06E005'.
if thats the case you add your fiels in the screen area provided
in the screen 'SAPMM06E' 0111 by creating the subscreen in the SE51 with the name space 'SAPLXM06' 0111 with then will be reflected (fields added) in the ME21n transaction .
You have to write your logic in the EXITS provided in that enhancement component
You have to write your logic in the exit 'EXIT_SAPMM06E_008'
as it imports data from screen field which you placed in the tcode.
Revert back to me for any queries.
Reward points if useful.
Thanks ,
Surya Pydikondala. -
Hi all,
I have a problem in Screen Exit. My requirement is to create one new field in ME21N transaction code, I did that using screen exit, which offers me a tab of Customer Data. That is working fine. My problem here is when the user enters the value in that(costcenter) field tax jurisdication code should populate automatically for the particular entry. I used user exit for this purpose to update taxjurcode field in the table. But after the user exit execution the rest of the program code executes and it updates the EKPO table which over writes the entries which i was updating using my user exit code. How can i get rid off this problem. Please throw some light on that. Thanks.You are right. My user exit is also triggering that place only for the ME22n and ME23n...........it is strange for me as it is not working for ME21n. Which is not updating with the statements that i provided in User exits.
When i am debugging the program after the user exit it is taking me to some std program where the entries were overwritten. That is where i face the problem.
Any suggestions.
Maybe you are looking for
-
How can I create the following table?
hi all, I have been create a tablespaces called as "data", do anyone knows what else I need to create? Thanks Amy CREATE TABLE BSS_PUSC_GROUPS GROUP_NO NUMBER(4) NOT NULL, LOCATION NUMBER(10) NOT NULL, STORE_CLUSTER VARCHAR2(2 BYTE), LAST_UPDATE_ID V
-
Encountering transaction statement from within a PL/SQL block
Hi All, i would like to know what will be the transaction status if we use an commit or a rollback statement inside a PL/SQL procedure called from within an PL/SQL package. For example BEGIN select statement insert statement 1 .... call to <xyz> proc
-
How to set randomized numbers to appear once
hello everyone. I'm trying to create a program on java in which i have assigned 26 values to the numbers 1 through 26. the thing is im not sure how to get these values to show up once ive randomized them and to not repeat. any help would be greatly a
-
Can you add a word or name to the spell checker in pages for iPad?
I'm looking for a way to add a word, alternate spelling or proper name to the spell checker for the newest version of pages for iPad so they won't keep showing up as "misspelled". Can you help?
-
[svn:fx-trunk] 7079: -Move init of heightInLines out to skin.
Revision: 7079 Author: [email protected] Date: 2009-05-19 10:43:53 -0700 (Tue, 19 May 2009) Log Message: -Move init of heightInLines out to skin. -Handle constrained width in RichEditableText for both the autoSize and !autoSize case. -For autoS