To add screen exits to a existing transaction ( Purchase order) - ME33k
Hi,
Can anyone tell me whether how to add screen exits to a particular transaction
Transaction - ME33k.
I need to add a screen to the existing transaction, so how do i do that
can any one suggest me the way
i know the BADI which can be used for the same
ME_PROCESS_PO
ME_PROCESS_PO_CUST
GOS_SRV_SELECT
but can anyone suggest me a better so as to how to implement them !
thanks,
Hi
Screen exits are exits that allow you to use a reserved part of the screen (A subscreen) to display or input data. It is determined be SAP where the sub screen will be displayed. The syntax is: CALL CUSTOMER-SUBSCREEN The screen exit is not processed untill the corresponding subscreen has been created in an enhancement project, and the project has been activated. Note: Function codes are only processed in the main screens flow logic You are not allowed to enter a name for the subscreens command field You are not allowed to define GUI stauses You are not allowed to enter a value for Next screen The global data of the program is not available for the subscreen. Data for the subscreen is provided by function modules. These function modules belongs to the same function group as the subscreen Subscreens are edited with transaction CMOD. When you activate a project containg subscreens, the calling screen is regenerated and the subscreen is displayed next time you display the calling screen The developer must create the subscreen and the corresponding PBO and PAI modules How to identify screen exits Look after CALL CUSTOMER-SUBSCREEN in the screenprogram of the screen you want to modify. Use transaction CMOD menu Utillities -> SAP enhancements to search for screen exits MENU EXITS Menu exits allow you to add your own functionallity to menus. Menu exits are implemented by SAP, and are reserved menu entries in the GUI interface. The developer can add his/her own text and logic for the menu. Function codes for menu exits all start with "+" Example We want to create a new menu item in the Office menu. The text for the menu should be "Run ZTEST", and the menu will run report ZTEST. Goto transaction SE43 Area Menu Maintenance In Area Menu Paramenter type 'S000' (S triple Zero) Select Change and ignore all the warning screens Expand the office menu. In the buttom of the office tree you will find a menu named "Customer function" Double click on the text. In the pop-up screen change the text to "Run ZTEST". Note that the trsnaction code is +C01 Goto transaction SE93 and create transaction +C01 that calls report ZTEST. Now you will se the menu displayed in the office tree. If you delete transaction +C01 again, the new menu will dissapear. USER EXITS User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a functionmodule. The code for the function module is writeen by the developer. You are not writing the code directly in the function module, but in the include that is implemented in the function module. The naming standard of function modules for functionmodule exits is: EXIT_<3 digit suffix> The call to a functionmodule exit is implemented as: CALL CUSTOMER.-FUNCTION <3 digit suffix> Example: The program for transaction VA01 Create salesorder is SAPMV45A If you search for CALL CUSTOMER-FUNCTION i program SAPMV45A you will find ( Among other user exits): CALL CUSTOMER-FUNCTION '003' exporting xvbak = vbak xvbuk = vbuk xkomk = tkomk importing lvf_subrc = lvf_subrc tables xvbfa = xvbfa xvbap = xvbap xvbup = xvbup. The exit calls function module EXIT_SAPMV45A_003 2. How to find user exits Display the program where you are searching for and exit and search for CALL CUSTOMER-EXIT If you know the Exit name, go to transaction CMOD. Choose menu Utillities->SAP Enhancements. Enter the exit name and press enter. You will now come to a screen that shows the function module exits for the exit. 3. Using Project management of SAP Enhancements We want to create a project to enahance trasnaction VA01 Go to transaction CMOD Create a project called ZVA01 Choose the Enhancement assign radio button and press the Change button In the first column enter V45A0002 Predefine sold-to party in sales document . Note that an enhancement can only be used i 1 project. If the enhancement is allready in use, and error message will be displayed Press Save Press Components. You can now see that enhancement uses user exit EXIT_SAPMV45A_002. Double click on the exit. Now the function module is displayed. Double click on include ZXVVAU04 in the function module Insert the following code into the include: E_KUNNR = '2155'. Activate the include program. Go back to CMOD and activate the project. Goto transaction VA01 and craete a salesorder. Note that Sold-to-party now automatically is "2155" Please check if the thread given below would be of any help. http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/menu-exits-72696# http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
Similar Messages
-
Screen Layout Issue in ME21N Transaction (Purchase Order Creation)
Hi,
we had recently upgraded our system from R3 4.6'c to Version ECC 6.0
in this i had observed that earlier layout of purchase order screen is changed.
1. Material Column is not visible in default layout. however i had check in table settings of item overview Screen. This Field is hidden. I tried to make it visible but didnt get success.
secondly, Pricing Schema layout at condition Tab at ITem Details level is also changed.
any idea, how to change their layout.
Regards,
ShivaWhen you change the std settings that time you have to create your own variant and save in that variant and then enter that variant in variant filed and remove the use std settign check mark then you will see your fields are nothidden any more
about the pricing tab i can't help you because we are in ECC 5.0 so i don't know what u r taking -
Screen exit for ME51(old transaction)
Is there any screen exit for ME51 old transaction? ME51N(new transaction) I was able to find, please help me to find something in ME51.
ThanksHi,
check enhancement : MM06E005.
Regards,
Himanshu -
Can anyone give me user exit name for create/update purchase order partners
Hello guys
Can anyone gives me user exit name for create/update purchase order partners?
Requirement is to insert/update partner when SC flag is checked while creating/updating purchase order (ME22N / ME21N) by using user exit.hi,
check these exits.
Transaction Code - ME21N Create Purchase Order
Enhancement/ Business Add-in Description
Enhancement
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 processing
MMDA0001 Default delivery addresses
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
MELAB001 Gen. forecast delivery schedules: Transfer schedule implem.
AMPL0001 User subscreen for additional data on AMPL
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
MEFLD004 Determine earliest delivery date f. check w. GR (only PO)
MEETA001 Define schedule line type (backlog, immed. req., preview)
ME590001 Grouping of requsitions for PO split in ME59
M06E0005 Role determination for release of purchasing documents
M06E0004 Changes to communication structure for release purch. doc.
M06B0005 Changes to comm. structure for overall release of requisn.
M06B0004 Number range and document number
M06B0003 Number range and document number -
How to add external URL link to SAP object (Purchase Order, Invoice, etc)
Hello,
Is there any function module /BAPI that allows me to add an external URL link to a existing Purchase Order
or Invoice document in R3 system?
I tried to debug the system but have not found no suitable function module for it.
I also analyzed the ABAP code of the small GUI window that allows to add a external URL link to
a Purchase Order, and found the function module SO_OBJECT_INSERT. However I could not debug
it (seems to be created with BOR objects) so I've no example for it.
Please help!
Regards,
Manuel DiasCONSTANTS:
c_http(36) TYPE c VALUE '/BpHttpApis/slaphapi?ibmperson/(uid=',
c_listxml(12) TYPE c VALUE ').list/byxml',
c_value(5) TYPE c VALUE 'value',
c_cn(2) TYPE c VALUE 'cn',
c_mail(4) TYPE c VALUE 'mail',
c_em_num(19) TYPE c VALUE 'managerserialnumber',
c_em_cou(18) TYPE c VALUE 'managercountrycode'.
DATA client TYPE REF TO if_http_client.
DATA url TYPE string.
DATA xbuffer TYPE xstring.
DATA l_value TYPE zchar2000.
DATA l_value_string TYPE string.
DATA content TYPE string .
DATA rows TYPE STANDARD TABLE OF string.
DATA wa_rows TYPE string .
DATA conv TYPE REF TO cl_abap_conv_in_ce.
DATA ixml TYPE REF TO if_ixml.
DATA streamfactory TYPE REF TO if_ixml_stream_factory.
DATA parser TYPE REF TO if_ixml_parser.
DATA istream TYPE REF TO if_ixml_istream.
DATA document TYPE REF TO if_ixml_document.
DATA node TYPE REF TO if_ixml_node.
DATA xmldata TYPE string.
DATA iterator TYPE REF TO if_ixml_node_iterator.
DATA nodemap TYPE REF TO if_ixml_named_node_map.
DATA attr TYPE REF TO if_ixml_node.
DATA name TYPE string.
DATA prefix TYPE string.
DATA value TYPE string.
DATA indent TYPE i.
DATA count TYPE i.
DATA index TYPE i.
url = 'http://bluepages.ibm.com'.
CLEAR: l_value_string, l_value.
***Create the HTTP client
CALL METHOD cl_http_client=>create_by_url
EXPORTING
url = url
IMPORTING
client = client
EXCEPTIONS
OTHERS = 1.
IF sy-subrc <> 0.
Create the HTTP client failure, sy-subrc =
MESSAGE i005(zm) WITH text-026 sy-subrc.
EXIT.
ENDIF.
CONCATENATE c_http
p_accnt
p_couty
c_listxml
INTO l_value.
l_value_string = l_value.
***Get employee information
CALL METHOD client->request->set_header_field
EXPORTING
name = '~request_uri'
value = l_value_string.
client->send( ).
client->receive( ).
***Load to xstring
CLEAR xbuffer .
xbuffer = client->response->get_data( ).
conv = cl_abap_conv_in_ce=>create( input = xbuffer ).
conv->read( IMPORTING data = content ).
create the ixml main factory
ixml = cl_ixml=>create( ).
create a stream factory
streamfactory = ixml->create_stream_factory( ).
xmldata = content.
create a input stream
istream = streamfactory->create_istream_string( string = xmldata )
create a ixml document
document = ixml->create_document( ).
create a xml parser
parser = ixml->create_parser( document = document
stream_factory = streamfactory
istream = istream ).
parse the xml document into DOM tree
IF parser->parse( ) <> 0.
parse the xml document into DOM tree failure
MESSAGE i005(zm) WITH text-027.
EXIT.
ELSE.
node ?= document.
IF node IS INITIAL.
To be done
ENDIF.
create a node iterator
iterator = node->create_iterator( ).
get current node
node = iterator->get_next( ).
loop over all nodes
WHILE NOT node IS INITIAL.
indent = node->get_height( ) * 2.
indent = indent + 20.
CASE node->get_type( ).
WHEN if_ixml_node=>co_node_element.
element node
name = node->get_name( ).
nodemap = node->get_attributes( ).
IF NOT nodemap IS INITIAL.
attributes
count = nodemap->get_length( ).
DO count TIMES.
index = sy-index - 1.
attr = nodemap->get_item( index ).
name = attr->get_name( ).
prefix = attr->get_namespace_prefix( ).
value = attr->get_value( ).
ENDDO.
ENDIF.
WHEN if_ixml_node=>co_node_text.
User name
IF name = c_value AND
value = c_cn.
text node
value = node->get_value( ).
p_name = value.
ENDIF.
User email
IF name = c_value AND
value = c_mail.
text node
value = node->get_value( ).
p_email = value.
ENDIF.
Employ serial number
IF name = c_value AND
value = c_em_num.
text node
value = node->get_value( ).
p_em_num = value.
ENDIF.
Employ country code
IF name = c_value AND
value = c_em_cou.
text node
value = node->get_value( ).
p_em_cou = value.
ENDIF.
ENDCASE.
advance to next node
node = iterator->get_next( ).
ENDWHILE.
ENDIF. -
Archieve does not exist for purchase order
Hello Gururs,
When i tried to change the delivery date for the PO and when i trying to save the PO
then it throws the error messages-'Archieve does not exist for purchase order'.
PO was created in feb.
Please help me how can i solve this issue.
BR
AshishCan you give a more detailed information.
What transaction you actually use, what you enter step by step until you get to the error: 'Archieve does not exist for purchase order'
This message sounds like you want change a PO which is already archived.
A change to an archived PO is not really logical, as you can only archive closed business cases. and if the business case is closed, then why would you change the delivery date.
A PO from February should not really be archived already in June. I never saw it in practice, as you could not do any anual reporting
I would assume further that SAP found the entered PO number in the archive index but did not find the way to the archive itself. This can happen if the archive file was deleted or moved manually.
I am not sure if the next messae has really anything to do with your purchase order, thats why I ask you to post the exact steps until the messages come up:
Le fichier archieve 000524-002SD_COND n'existe pas is the message discription
But even this message explains more or less the same, that the physical archive is no longer in the same place where it is expected to be found according to the info in records of table ADMI_FILES. -
No delivery costs exist for purchase order
Dear Friends,
While doing MIRO, i am getting an error message as mentioned below----
"No delivery costs exist for purchase order xxxxxxxxx"
Message no. M8014.
Kindly guide me in resolving the error.
Thanks & Regards,hi
>"No delivery costs exist for purchase order xxxxxxxxx"
itself says that there is no delivery cost,
firstly check ur PO ,Did u entere the delivery cost conditions like for freight or octoi in the PO
or if u have entered the condition then check if it is not already invoiced
if u dont have delivery cost in po and wanna do IV for material then in miro
change the option of delivery cost to goods/service
(at right side of the po no field)
regards
kunal -
Screen Exit in HB 21 Transaction
HI,
I am creating a sales unit using HB 21 transaction. I am generating material number with fixed plant number using call transaction in enhancement spot.
But I want to make an user input for plant number and other details. I could not find any screen exit for HB21 transaction.
Could any one help me out?
Regards
SP RAMRAJHi Sai .,
There is no screen exit avalible for HB21 .
If ur client needs the functionality Create Custom Transaction .
thanks
Sreenivas Reddy -
Screen Exit in Tcode COR1 - Create Process Order
Hi All,
Can anyone let me know if there is a screen exit or a BADI where in i can use it to extend the COR1 general data tab to include a field.
Even if i can add a additional tab in COR1 tcode through a BADI, will be good.
Please help.
Thanks,
Jaffer Ali.SHi,
STEP1:- Add Z-Fiels in Structure CAUFVD & Table: AUFK using (Goto --> Append Structure)
Step1. T-code: CMOD
STEP2: Enter project name: Zxxxxx --> Create
STEP3: Enter Short text -- > Click Enhancement Assignment
STEP4: Enter Enhancement: PPCO0001 & PPCO0020
STEP5: Click on Components
STEP6.1: double click on Screen-Exit: SAPLCOKO (Screen no: 5900)
A) Add Z-fileds in SCreen layout with keyp of structure :CAUFVD
Screen FLOW LOGIC:-
Process before output.
PROCESS BEFORE OUTPUT.
Set the screen status
Screen modifications incase of Display
MODULE screen_display.
Process after input.
PROCESS AFTER INPUT.
Screen fields and its processing.
CHAIN.
FIELD: caufvd-z_cust1,
caufvd-z_cust2,
caufvd-z_cust3,
caufvd-z_cust4,
caufvd-z_cust5,
caufvd-z_qty1,
caufvd-z_qty2,
caufvd-z_qty3,
caufvd-z_qty4,
caufvd-z_qty5.
MODULE header_update.
ENDCHAIN.
FIELD: z_total.
MODULE disp_data.
Update the header.
Not required as of now.
module screen_display output.
Disable input in case of display.
if sy-tcode = 'COR3'.
loop at screen.
screen-input = 0.
modify screen.
endloop.
endif.
endmodule. " screen_display OUTPUT
module header_update input.
check not sy-tcode = 'COR3'.
perform data_check using caufvd.
endmodule. " HEADER_UPDATE INPUT
*Validate screen input fiels
form data_check using p_caufvd structure caufvd.
data: l_v_count type i.
get parameter id 'MAT' field p_caufvd-matnr.
if p_caufvd-z_cust1 is initial and p_caufvd-z_qty1 is initial and
p_caufvd-z_cust2 is initial and p_caufvd-z_qty2 is initial and
p_caufvd-z_cust3 is initial and p_caufvd-z_qty3 is initial and
p_caufvd-z_cust4 is initial and p_caufvd-z_qty4 is initial and
p_caufvd-z_cust5 is initial and p_caufvd-z_qty5 is initial.
else.
if not p_caufvd-z_cust1 is initial
and not p_caufvd-z_qty1 is initial.
select single count(*) into l_v_count from zcc_t01
where z_custmat = p_caufvd-z_cust1 and
matnr = p_caufvd-matnr.
if l_v_count < 1.
message e000(zpp) with 'Entered customer does not exist'.
endif.
clear l_v_count.
else.
message e000(zpp) with 'Fill both customer material and Qty'.
endif.
if not p_caufvd-z_cust2 is initial
and not p_caufvd-z_qty2 is initial.
select single count(*) into l_v_count from zcc_t01
where z_custmat = p_caufvd-z_cust2 and
matnr = p_caufvd-matnr.
if l_v_count < 1.
message e000(zpp) with 'Entered customer does not exist'.
endif.
clear l_v_count.
elseif
not ( p_caufvd-z_cust2 is initial and p_caufvd-z_qty2 is initial ).
message e000(zpp) with 'Fill both customer material and Qty'.
endif.
if not p_caufvd-z_cust3 is initial
and not p_caufvd-z_qty3 is initial.
select single count(*) into l_v_count from zcc_t01
where z_custmat = p_caufvd-z_cust3 and
matnr = p_caufvd-matnr.
if l_v_count < 1.
message e000(zpp) with 'Entered customer does not exist'.
endif.
clear l_v_count.
elseif
not ( p_caufvd-z_cust3 is initial and p_caufvd-z_qty3 is initial ).
message e000(zpp) with 'Fill both customer material and Qty'.
endif.
if not p_caufvd-z_cust4 is initial
and not p_caufvd-z_qty4 is initial.
select single count(*) into l_v_count from zcc_t01
where z_custmat = p_caufvd-z_cust4 and
matnr = p_caufvd-matnr.
if l_v_count < 1.
message e000(zpp) with 'Entered customer does not exist'.
endif.
clear l_v_count.
elseif
not ( p_caufvd-z_cust4 is initial and p_caufvd-z_qty4 is initial ).
message e000(zpp) with 'Fill both customer material and Qty'.
endif.
if not p_caufvd-z_cust5 is initial
and not p_caufvd-z_qty5 is initial.
select single count(*) into l_v_count from zcc_t01
where z_custmat = p_caufvd-z_cust5 and
matnr = p_caufvd-matnr.
if l_v_count < 1.
message e000(zpp) with 'Entered customer does not exist'.
endif.
clear l_v_count.
elseif
not ( p_caufvd-z_cust5 is initial and p_caufvd-z_qty5 is initial ).
message e000(zpp) with 'Fill both customer material and Qty'.
endif.
endif.
endform. " Data_check
STEP7:-Double click on Function Exit:EXIT_SAPLCOKO_005
Doouble click on include program: ZXCO1U21 and careae and add below code in include program
Data declarations
TYPES: BEGIN OF l_ty_zqty,
z_custmat TYPE zcc_t01-z_custmat,
z_qty TYPE zcc_t01-z_qty,
END OF l_ty_zqty.
DATA: l_s_zqty TYPE l_ty_zqty,
l_t_zqty LIKE STANDARD TABLE OF l_s_zqty,
l_v_frac TYPE zcc_t01-z_qty,
l_v_four TYPE f VALUE '0.4'.
SET PARAMETER ID 'MAT' FIELD i_caufvd-matnr.
Get the fields from ZCC_T01 and display it.
IF ( sy-tcode EQ 'COR1' OR sy-tcode EQ 'COR2' )
AND g_v_flag IS INITIAL.
IF i_caufvd-z_cust1 IS INITIAL AND
i_caufvd-z_cust2 IS INITIAL AND
i_caufvd-z_cust3 IS INITIAL AND
i_caufvd-z_cust4 IS INITIAL AND
i_caufvd-z_cust5 IS INITIAL.
SELECT z_custmat z_qty INTO TABLE l_t_zqty FROM zcc_t01
WHERE matnr = i_caufvd-matnr
AND z_qty NE space
AND z_qty NE '0'.
CHECK sy-subrc = 0.
LOOP AT l_t_zqty INTO l_s_zqty.
CASE sy-tabix.
WHEN 1.
caufvd-z_cust1 = l_s_zqty-z_custmat.
caufvd-z_qty1 = i_caufvd-gamng * l_s_zqty-z_qty / 100.
COMPUTE l_v_frac = FRAC( caufvd-z_qty1 ).
IF l_v_frac > l_v_four.
COMPUTE caufvd-z_qty1 = CEIL( caufvd-z_qty1 ).
ELSE.
COMPUTE caufvd-z_qty1 = FLOOR( caufvd-z_qty1 ).
ENDIF.
CLEAR l_v_frac.
WHEN 2.
caufvd-z_cust2 = l_s_zqty-z_custmat.
caufvd-z_qty2 = i_caufvd-gamng * l_s_zqty-z_qty / 100.
COMPUTE l_v_frac = FRAC( caufvd-z_qty2 ).
IF l_v_frac > l_v_four.
COMPUTE caufvd-z_qty2 = CEIL( caufvd-z_qty2 ).
ELSE.
COMPUTE caufvd-z_qty2 = FLOOR( caufvd-z_qty2 ).
ENDIF.
CLEAR l_v_frac.
WHEN 3.
caufvd-z_cust3 = l_s_zqty-z_custmat.
caufvd-z_qty3 = i_caufvd-gamng * l_s_zqty-z_qty / 100.
COMPUTE l_v_frac = FRAC( caufvd-z_qty3 ).
IF l_v_frac > l_v_four.
COMPUTE caufvd-z_qty3 = CEIL( caufvd-z_qty3 ).
ELSE.
COMPUTE caufvd-z_qty3 = FLOOR( caufvd-z_qty3 ).
ENDIF.
CLEAR l_v_frac.
WHEN 4.
caufvd-z_cust4 = l_s_zqty-z_custmat.
caufvd-z_qty4 = i_caufvd-gamng * l_s_zqty-z_qty / 100.
COMPUTE l_v_frac = FRAC( caufvd-z_qty4 ).
IF l_v_frac > l_v_four.
COMPUTE caufvd-z_qty4 = CEIL( caufvd-z_qty4 ).
ELSE.
COMPUTE caufvd-z_qty4 = FLOOR( caufvd-z_qty4 ).
ENDIF.
CLEAR l_v_frac.
WHEN 5.
caufvd-z_cust5 = l_s_zqty-z_custmat.
caufvd-z_qty5 = i_caufvd-gamng * l_s_zqty-z_qty / 100.
COMPUTE l_v_frac = FRAC( caufvd-z_qty5 ).
IF l_v_frac > l_v_four.
COMPUTE caufvd-z_qty5 = CEIL( caufvd-z_qty5 ).
ELSE.
COMPUTE caufvd-z_qty5 = FLOOR( caufvd-z_qty5 ).
ENDIF.
CLEAR l_v_frac.
WHEN OTHERS.
ENDCASE.
ENDLOOP.
g_v_flag = 'X'.
ENDIF.
IF g_v_flag IS INITIAL AND sy-tcode = 'COR2'.
MOVE-CORRESPONDING i_caufvd TO caufvd.
ENDIF.
ELSE.
MOVE-CORRESPONDING i_caufvd TO caufvd.
ENDIF.
STEP8:- Double click EXIT_SAPLCOKO_006
Doouble click on include program: ZXCO1U17 and careae and add below code in include program
Data Declaration.
tables : caufvd.
Export the fields.
move-corresponding caufvd to e_coci_aufk.
hope this help...
Regards
Sudheer Madisetty -
API to add lines to an existing Standard Purchase Order on 11.5.8 version
Hello All,
Is there any API in Oracle 11.5.8 Version using which we can add a line to an existing open Standard Purchase Order.
In 11.5.10 we can do that using Purchasind document import program, how about 11.5.8, i am not able to find one.
Pls let me know the details, it is bit critical.
Regards,
AdarshYes see http://oracle-ebspro.blogspot.com/2011/12/how-to-programmatically-close-po-using.html
Sandeep Gandhi -
User exit for the release of Purchase Order
Hi Friends,
I am searching for a user exit which should trigger at the time of Purchase Order release in ME29n transaction.
If anyone can help me for the same....!!!
I need the exact exit which triggers at the release of PO....
Points will be rewarded for the needful replies.
Regards,
Mandeep.HI,
Finding the user-exits of a SAP transaction code
Enter the transaction code in which you are looking for the user-exit
and it will list you the list of user-exits in the transaction code.
Also a drill down is possible which will help you to branch to SMOD.
report zuserexit no standard page heading.
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).
call transaction 'SMOD' and skip first screen.
*---End of Program
USE THIS PROGRAM TO GET ANY USER EXIT BY GIVING THE TCODE.
MMFAB001 User exit for generation of release order
MRFLB001 Control Items for Contract Release Order
REGARDS,
PRIYA.
Edited by: Priyadharshini Veluswamy on Mar 13, 2008 9:21 AM
Edited by: Priyadharshini Veluswamy on Mar 13, 2008 9:40 AM -
User exit or BADI while saving purchase order
Hello,
I want to use an user exit or BADI while saving of purchase order. The objective is to check the material group of the line item while saving. We don´t want to allow to save purchase orders for one material group.
Can you please guide me.
Thanks
SrinivasanHi
The Business Add-In (BAdI) ME_PROCESS_PO_CUST enables you to extend the business logic of the Enjoy purchase order on an individual basis.
You can thus influence the dialog transactions ME21N, ME22N, ME23N, and ME29N, and the BAPIs BAPI_PO_CREATE1 and BAPI_PO_CHANGE.
Typical applications for this BAdI include:
Processing of own objects
Processing of additional data on standard objects
Implementation of additional checks and derivationsChange of data in standard fields
Change in field selection
you can use this BADI for checking the material group
Thanks & Regards
Kishore -
Add field to item position overview of Purchase Order
Dear SRM gurus,
I'm working on a change request of a customer.
They want to add a field to the item overview position of Purchase Orders.
They are using SRM 4.0 in Extended Classic Scenario.
When displaying the list of Purchase Orders only the headers are shown. When clicking on a header the item positions are shown below the header. In this item overview the customer wants a field to be added.
The field to be added is the GL Account. The customer wants this field to be visible before opening the item of the Purchase Order.
We already know which screen should be changed to display the field.
The screen is SAPLBBP_PO_UI_ITS and screen number 4000.
Is it possible to add fields to this screen?
If it is possible, how can this be done?
Thank you in advance for your support,
Best regards,
Jean-PierreIs there a solution yet?
At my company they also want to add a column to block Items in Shopping Cart.
The structures mentioned in the note are all in the item details but not in the overview.
regards,
Wim -
Add customer fields in Shopping cart and purchase order
Hi,
I have to add fields(moder of transport, country origin, country destination and more) in Shopping cart and purchase order in SRM system and remotle i have to update the same data in R/3 System.
could you please guide how to add the fields in screen.
regards
ShakeerHi
We have done this type of requirement several times in our previous SRM Implementations.
<b>You need to create an Append Structure in the Standard Structure to create the custom fields in your case.</b>
<u>Refer this link below for details.</u>
http://help.sap.com/saphelp_47x200/helpdata/en/cf/21eb61446011d189700000e8322d00/frameset.htm
<b>Define the fields of the append structure. You can proceed as when creating a normal structure with two restrictions (see Creating Structures).
The fields of an append structure must lie in the customer namespace, that is the field names must begin with ZZ or YY. This prevents conflicts with fields inserted in the table by SAP.</b>
http://help.sap.com/saphelp_srm50/helpdata/en/5b/c9df3b6ac34b44e10000000a114084/frameset.htm
http://help.sap.com/saphelp_srm50/helpdata/en/28/857a1867b52e4f8472c5d49209a675/frameset.htm
<u>BBP_CUF_BADI_2 BADI will be used to control the properties (hide/unhide, input/output enable or disable) for those customer fields you created in the above append structures.
BBP_DOC_CHANGE_BADI for defaulting or modifying the customer field contents, incase required.
BBP_DOC_CHECK_BADI for issuing customer messages for the customer field contents (incase data is entered incorrectly) , incase required.</u>
Let me know incase you face any issues.
Regards
- Atul -
User-Exits stop working in automated purchase order creation
Dear all,
we used to create sales orders with transaction VA01 and then separately call ME21N to create a purchase order.
In saving the purchase order we activated user-exit EXIT_SAPMM06E_012 to process some extra logic we need here.
Now we changed to process for SAP to automatically create the purchase order (to eventually be able to automate the entire process, including sales order creation). Ever since we did that, the user exit is not called any more!
Does anyone know why? If I manually open ME22N and save the PO, it works! We have to find a way to run the logic in the user-exit during automated PO creation just for the volume of orders.
Besides that, we're still looking for a convenient way to update PO confirmations using a BAPI or other function module.
Thanks for your help!
regards,
Johannes.Good question
User-exit may not work as the function modules [ and not ME21N ] called in the Sales Order --> Purchase Req --> Purchase Order process may not call the enjoy user-exits.
Further, this process of automated PO works on Business Obejct event trigger.
So a event is triggered [ ALECREATED ] on Sales Order Business at the time of Sales Order Creation.
This event is linked with a function module called PUR_ORDER_CREATE_VIA_SD_EVENT.
similarly for change it is PUR_ORDER_CHANGE_VIA_SD_EVENT.
If you go through the FM code, you can make out how to utilize this FM as user-exit.
However you need to make the change in this FM after copying the related function group to a Z one. And then change the event linkage accordinlgy to call the new FM.
See Business Workflow --> Events section..
If you are not sure about how to do the event linkage then ask it in BPM section...[ They will request you to get lost ...no no ..they didn't do it to me ..just kidding ]
Cheers,
Ram
Maybe you are looking for
-
MIGO for Excisable material without entering Excise details in MIGO
Hi Gurus, My Client purchases one material on which he is paying excise duties such as BED, E Cess etc. But actually he receives tax invoice some times after few days of receiving goods from vendor. At the time of receiving goods , client get only a
-
How do I change the phone number in the iPad?
How can change the phone number in my iPad?
-
Hi, I have a old VHS tape with my grandfathers birthday, and I would like to record that onto my Mac using FCP. I also have a DSR11. I have tried the following methods with no luck. 1) Inserted a scart adapter (http://www.bhphotovideo.com/c/product/5
-
SAP Report to Display Allocation Factors
Is there a standard SAP report that is available for displaying the Allocation Factors in an 'Actual Assessment Cycle'? Specifically, I am interested in viewing the factors when the receiver rule is 'Fixed Percentages'. Thank-you.
-
Group policy to Delete unauthorised software per logon
I have a group of on-site engineers (domain users but have local administrators rights) who are using laptops. They are required to install software occasionally when they travel, therefore I need a way using group policy to remove all these softwar