Customer function or Badi for MB21
Hello,
I'm looking for a customer function or BADI for MB21 to check values entered in the header.
I just tried MB_RESERVATION_BADI using DATA_MODIFY or DATA_CHECK interface,but in the first case you cannot use error messages (that's what I need to stop process),well you could use but it get you out of the MB21!
In the second case you can use error messages (with raise external_message) but
the transaction doesn't stop in the dynpro header.
I also used MBCF0007 but it's after the commit ...in this case I don't know how could be usefully,I need to check before it.
Anyone know if I need to try migrating MBCF0007 to BADI ? Could this help me ?
Or there something else ?
I was thinking to move MBCF0007 user extt before commit....
Thank you !
Hi,
look at this
Exits to change Destination Bin and Storage type during TO creation
Thanks,
Gaurav.
Similar Messages
-
Customer function or BADI for Destination storage section (WM)
Hi guru's
I'm looking for a customer function or a badi that allows me to choose the destination storage section (field LTAP-NLBER).
There is something that can help me? I look at EXIT_SAPLL03T_001 and EXIT_SAPML03T_002 but they don't seems to fit my needs.Hi,
look at this
Exits to change Destination Bin and Storage type during TO creation
Thanks,
Gaurav. -
User,Customer exits or BADI for IDOC Type - CRMXIF_ORDER_SAVE_M01 in CRM
Hi Friends,
We are creating teh EDI Sales order in CRM using below details:
Basic Type - CRMXIF_ORDER_SAVE_M01
Message Type - CRMXIF_ORDER_SAVE_M
Functional Module - IDOC_INPUT_CRMXIF_ORDER_SAVE_M
Direction -Inbound
We need to customize the values for the IDOC,
Can any one help us in providing the details on any Customer Exits , User Exits and /or BADIs for the abov ementioned FM.
We greatly appreciate your early responce.
Thanks
VijayThanks Naresh, it helped...
Can you please help on the below:
1. For outbound Sales order IDoc- CRMXIF_ORDER_SAVE_M01,need BADIs for modification of the IDoc before it gets generated.
2. Need program to generate output as outbound IDoc- CRMXIF_ORDER_SAVE_M01 for sales order conformation/acknowledgement.
3. Need a BADI after the EDI Sales order is saved.
Thanks in advance
Vijay -
Customer Exit or BADI for PP61 (Shift Planning) for Saving action
I have a requirement to enhance PP61 (shift planning). First of all this program accepts any update of attendance for values before than current date, i think it should not happen by default. Thus we have to disable editing or display an error message when any user updates values for previous dates than today. I tried HRBAS00INFTY Badi but didn't get solution. Please give any Customer Exit or BADI name for this purpose.
i have tried BADI - HRPAD00INFTY but it does not have sufficient parameters for this requirement. And i don't understand EXIT_SAPFP50M_001 or 002 use...can you expalin me how it will help out my problem?
-
Custom function/operation creation for payroll
Hello Experts,
I need to create the custom operation/function in PE04. I would appreciate if you could give me the step by step process.
I tried to create the custom function in PE04 and it is not creating the form to include the source code.
I appreciate your help.
Thanks.Here you go
http://help.sap.com/saphelp_45b/helpdata/en/96/79bc4bb27911d1a5400000e83ddb11/content.htm
http://www.sapfans.com/forums/viewtopic.php?f=11&t=311346
http://help.sap.com/saphelp_40b/helpdata/en/60/d8b913576311d189270000e8322f96/content.htm
Good luck !
Khan -
Custom exit or badi for changing the user fields in operation of process order
Hi all
I want to find a exit or badi to set default value to the user fields in operation of process order when COR1.
I have tried exit 'PPCO0001', but this exit is call after commit work, so I can not change any thing
I also tried to use badi 'workorder_update', 'before_update', but all parameters in this BADI are importing, can't be changed, I've tried to change it and then program dump.
Do you have any solution for this question?
ThanksDo a Implicit Enhancement at the PBO of this subscreen.
-
User Exit or BADI for Material,BOM,Customer,Vendor
Dear All,
I have requirement where if User A changes a Material X .It should go for approval by workflow.
When the Material X is waiting for approval no other User should be able to change the material .It should give him a message
and restrict him from changing the Material.
Is there any User Exit or BADI to restrict him from changing the material. The exit or BADI should be called as soon as the Material is entered in MM02.
I need exit or BADI for BOM, Vendor and Customer also.
Thank you.Hi,
You can go to Transaction SE80 and check in Function Group MATF. There have been two User Exits which are called during MM02 Transaction execution (via Analysis Transaction SE30) - MATERIAL_FIELD_SELECTION_NEW and MATERIAL_FIELD_SELECTION_COMB.
BAdI called by FM MATERIAL_FIELD_SELECTION_NEW.
Thanks and Regards,
Prabhakar Dharmala -
Difference between user exit/Function exit / Customer exit and BADI
Hi Guys,
I am confused with the types of exits-user exit/Function exit / Customer exit and BADI.
Can you tell me the difference between the different exits/Enhancements?
Classify the following:
what is the one which is shown in SMOD under enhancements? There are 3 sections in that - Function module, Screen and includes.
What is the one which are called using -
Call Customer-Function 001?
Regards,
Guruhi,
The standard applications do not offer some of the functionality you need. The R/3 enchancement concept allows you to add your own functionality to SAP's standard business applications.
Different types of enhancements
Enhancements using customer exits
Customers' potential requirements which are not included in the standard software are incorporated in the standard as empty modification 'shells'. Customers can then fill these with their own coding. Enhancements can relate to programs, menus and screens. Upward compatibility is assured. In other words, SAP guarantees that the jump from the standard software to the exit and the interface which call the exit will remain valid in future releases.
Enhancements to ABAP/4 Dictionary elements
These are ABAP/4 Dictionary enhancements (creation of table appends), text enhancements (customer-specific key words and documentation for data elements) and field exits (creation of additional coding for data elements).
advantages of enhancements
Do not affect standard SAP source code
Do not affect software upgrades
Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAPs standard business applications without having to modify the original applications. SAP creates customer exits for specific programs, screens, and menus within standard R/3 applications. These exits do not contain any functionality. Instead, the customer exits act as hooks. You can hang your own add-on functionality onto these hooks.
Various types of customer exits
Menu exits
Screen exits
Function module exits
Keyword exits
Menu exit
Adding items to the pulldown menus in standard R/3 applications .
Screen exit
Adding fields to the screens within R/3 applications. SAP creates screen exits by placing special subscreen areas within a standard R/3 screen and calling a customer subscreen from within the standard dynpro's flow logic.
Function module exit
Adding functionality to R/3 applications. Function module exits play a role in both menu and screen exits.
keyword exit
Add documentation to the data elements of key words defined in the ABAP/4 Dictionary. The system displays this documentation whenever a user presses F1 to get online help for a screen field
Hope this helps, Do reward. -
Call statistics for customer functions (CMOD)
Hi experts,
I wonder, whether R/3 4.6C provides an option to generate a call statistics for customer functions (w/o adding additional logging code in the ZX-includes).
This would be beneficial to identify customer functions called frequently (and to check/improve the performance of these subsequently).
I am aware of a similar feature for BAdIs as well as the coverage analyzer (in NW'04s).
Regards
ThomasHello Thomas
On a 4.6c release I would use the following approach:
(1) Identify the transactions which pass user-exits
(2) Analyze transaction log
Regards
Uwe -
Customer function / badi to CHANGE AFVC-STEUS (Production Order)
Hi Gurus,
i'm looking for a customer function/badi to change field AFVC-STEUS when postin a Production Order.
The PPCO0... customer functions seems NO good because allow only to check but not to change data.
Any hint?BBP_PD_PO_CHANGE <- that one
BBP_PD_PO_SAVE
COMMIT WORK.
The others to persist the change into the database -
Once the custom fields inside cProjects are updated and saved, I am looking for a BADi that would do some enhancements. Any idea about this availability?
Dear Anantharam,
Please check this sample program from other thread to find BADI and enhancement for a given transaction code. You just need to create a custom program in your system by cut and paste below codes.
REPORT ZTEST.
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.
Alternatively, you can do the following:
1. For what ever transaction u want the enhancement .. just check for the System-->status (menu) and find out the PROGRAM name....
2. Double click on to the program name and go inside the program (Abap editor)
3. Search for "Call Customer-function " ... and u'll get some search results .. If u get results then u have enhancement in that tcode .....
4. Then it actually calls a Function module .... copy the Function module name .... go to SE80 (object navigator) click on "Repository Information system" then Customer Enhancements .... Give the Function module name in the "Components" field and click Execute ....
ull get a list of Enhancements related to that Componene....
5. Choose which ever enhancement will suit ur business need ..
6. Go to CMOD... create a project .... assign ur enhancement ... and then code ur logic.... activate ur enhancement in CMOD ....... Ur Buisness need will be solved...
For a user exit......
Finding whether there is any User Exit or not for tcode VA42
1. For what ever transaction u want the user exit .. just check for the System-->status (menu) and find out the PROGRAM name.... ( The program name would be for our scenario "SAPMV45A" )
2. Double click on to the program name and go inside the program (Abap editor)
3. Search for the word "USEREXIT" .... u ll find all the user exits in the search result .. and find ur's then ...
Reward points if this is helpful.
Regards,
Naveen. -
User exit/BADI for updating custom table in MB1B transaction-
Dear All,
When performing a material to material conversion in MB1B transaction for batch managed materials,system is creating a new batch by copying the characteristics of issuing material/batch.The details of the new batch created are updated in standard batch tables(MCH1,MCHA,MCHA).
The requirement is when the new batch is created,the batch details and characteristics has to be stamped in a custom table.
Kindly suggest a user exit/BAIi available for updating the same in the custom table.
Regards,
DeepakDeepak, Exits for MB1B are
MBCF0002 Customer function exit: Segment text in material doc. item
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_CREATE1
MBCF0011 Read from RESB and RKPF for print list in MB26
MB_CF001 Customer Function Exit in the Case of Updating a Mat. Doc. -
BADI for Customer's own screen for Purchase Requisition.
Hi All,
I have a requirement where I need to create a BADI implementation for creating addition screens in the Purchase Requisition Transaction (ME51n/ME52n/ME53n).
I know there are User exits but we donu2019t want to implement them. Now in case of PO there is a standard SAP given BADI -> ME_GUI_PO_CUST for Customeru2019s own screen but as far as my understanding goes there are no such BADIs for Purchase Requisition.
Could anyone please advice if I can create a Custom BADI similar to ME_GUI_PO_CUST for PR for adding the screen and throw some light on it like how can this be achieved?
Thanks,
AmeeshaThanks Darek for replying back and the BADI ME_BAPI_PR_CUST looks helpful but could you please help me in understanding how can i create my own custom screens within ME51N / ME52N / ME53N tcode using the BADI , ME_BAPI_PR_CUST.
For example in PO, we have the BADI ME_GUI_PO_CUST, with several methods like SUBSCRIBE and others which we can make use of for creating screen exits but what in the case of PR fpr BADI ME_BAPI_PR_CUST. i couldn't find any sample code for implementing this.
Any help is greatly appreciated.
Thanks,
Ameesha -
Is there a custom function available which can be used for logging errors captured in a sp during and after execution in a sql table?
Basically we would like to utilize such function in every sp and log errors of each sp in a error log table
MudassarThanks .
I was able to write this however I am thinking I am missing something
CREATE FUNCTION testfunction1()
RETURNS @temp_error TABLE (
id int identity(1,1),
procedure_name varchar(255),
line_number int,
error_number int,
error_message varchar(max),
error_state int,
error_severity int,
occurence_datetime datetime default current_timestamp,
user_name sysname default suser_name(),
login_name sysname default suser_name()
AS
BEGIN
insert @temp_error(procedure_name,line_number,error_number,error_message,error_state,error_severity)
select error_procedure(),error_line(),error_number(),error_message(),error_state(),error_severity()
RETURN;
END;
CREATE TYPE test_type AS TABLE(
id int identity(1,1),
procedure_name varchar(255),
line_number int,
error_number int,
error_message varchar(max),
error_state int,
error_severity int,
occurence_datetime datetime default current_timestamp,
user_name sysname default suser_name(),
login_name sysname default suser_name()
GO
create proc usp_error_test
@test_type AS test_type READONLY
as
begin
begin try
select 1/0
end try
begin catch
select * from testfunction1(@test_type)
end catch
end
Mudassar -
Hi Experts,
Is there any badi , i need to validate the customer master data before saving.
Thanks in Advance,
Ur's
HarshaHi Harsha,
I will tell you a general process to find BADI for a transcation.
Go to the Transaction, for which we want to find the BADI,
In our case we will take the example of Transaction XD01/XD02.
Get the Program Name of Corresponding Transaction.
(Click on System->Status. Double Click on Program Name)
Once inside the program search for CL_EXITHANDLER=>GET_INSTANCE.
Make sure the radio button In main program is checked.
A list of all the programs with call to the BADIs will be listed.
The export parameter EXIT_NAME for the method GET_INSTANCE of class CL_EXITHANDLER will have the user exit assigned to it.
With the exit name go to SE18 and get the interface name. Do the validation in appropriate of the methods of the interface.
For example for your case, BADI is CUSTOMER_ADD_DATA and you can do validation in method CHECK_ALL_DATA of interface IF_EX_CUSTOMER_ADD_DATA.
Award points if found useful.
Regards
Indrajit
Maybe you are looking for
-
Can no longer connect to internet w/ cell signal - advice?
Hi, all - I can no longer access the internet using a cell signal on my Droid 3. Everything was working fine until about a week ago, but now I get no 3G signal at all and only one or two bars. When I turn on the WiFi, I have no trouble accessing the
-
Valuation class in the material master
hi all, we maintain split valuation materials, namely domestic & imported. we are working on project based scenarion planning strategy 21 : MTO/project. in daily practice user convert unrestricted stock to project stock with 412 Q mvt type before MRP
-
Compilation issues with shared swc
I am often having error messages when I compile my project, that are often fixed with simply doing a Project clean. although, sometimes it requires to recompile certain graphic libraries. I get this error most of the time "Unable to convert LinkageN
-
How to erase old macbook HD without install disk
I have an old macbook that im looking to donate. Its running on os x 10.5.8 Id like to format my HD to delete all of the information on it. I dont have the original install DVD. Ive tried using Disk Utility. When i go to erase, the buttons are greyed
-
I have a webpage that is using the Tooltip/HTML Panel structure to load details from a database: http://www.fctu.org.uk/repfinder/tooltip.asp The problem is that the html panel page is at http://www.fctu.org.uk/repfinder/tooltiprep.asp and cannot be