enhancments_batch4
enhancments_batch4
MM - material managment
FI - finnace
PP - Production Planning
PM - Plant Maintaince
QM - Qulaity Managment
PS -- Project systems
Modification :
User exit :
End form
Required Acces key for the User exit.(Only first time ).
acces key will provide by Basis team.
SE80 -- select the Package - provide the package VMOD -- expland the includes -->
A --
MV45afzz
B --
mv45afzx
lets suppose we have created one project ZTEST and assigned Enhancement ABC . if
we trying to create one more project ZTEST1 and assigng the same enhancmnent name
system will throw the error.
lets take example in MM01 based on the plant i want to change the value of Profit
Center .
In this case Plant should be my importing Parameter and Profit center should be
export or change or tables.
if profit in importing parameter we canot achevie the functionality .
Second way :
Lets suppose we want to find at the time of save customer exit ..
Before click on save /H on command prompt
click on save --- it will go debug --> Break points -->break point at statment --
> Call customer-function.
BADIs :
Interface ---- the main reason badis allowing multiple implementaion was interfaces
.
it_bsg
delete it_bseg where bukrs = '500'.
if bukrs = '300'.
it_bseg
elseif bukrs = '500'.
it_bseg
else
endif.
properties :
with in sap :
we canot create the implementation if we try to create it will throw the error.
if this check box checked then only badi will have multiple implementations .
if this check box was not checed then it will have only one active implementation
at a time.
lets suppose we have added the new logic in the same implementation and moved to
QE3 (quality) and PE3(Production ).
Later user comes back with he does not reuqired the earlier changes then if we have
multiple implementations we can deactivate or delete the implementation we can move
the changes to QE3 and PE3.
lets suppose we have created two implementations A and B for badi .if we want to
execute A implementation for country US and B implementation needs to exectue for
UK .
this kind of scenarioes this filter dependemt will helpful.
it will allow to create multiple implementatiosn but the fiter condition needs to
be different.
if land1 = 'US'.
EU
Finding BADIs :
SE24 -- cl_exithandler -- get_instance method put the break point and run then in
EXIT NAME parameter we can see the badi names.
se84 --- expand the enhancements ---> expand BADI --> provide package name ---
Lets suppoes we have written commit work stament in BADI .after executing my badi
if transction went to dump then till the commit wrk data will be saved into data
base tables.So data in consitencey will come .so we wont write commit work in
enhancment.
Va01 --
A --
t code dump --
SAP LUW
Db LUW - data was successfully
DB luw
BADI --- 1 st
customer exit -- 2nd
implict - 3 rd
explict - 4 th
endif.
enhancment frame work :
SAP has provides some predefined places where we can implement the logic
start of subroutine
end of subroutine
start of function module
end of function module etc.
method starting
method ending
Enhancment point :
if we wanto execute our custom code along with the satandard we will create
point.it will have mutiple implementations.
if we want to execute only our custom code not the standard code then we will
create section.only one implementations .
lets suppoes we have implementing GAS and OIL industry solutions if we want to
make invisable repositry objects of GAS to oil and same as to make invisable
repositry objects of OIL to gas.
this kind of scenarios switch frame wrk wil useful.
Lets suupose we have create static and dynamic enhancments . if switch was in
activation mode both static and dynamic will trigger .
A ---- Gas --- --- need to hide oil related repositry objects
Class enhnacments :
if want to add new method to standard class or
adding code to standrad method.
create implementation .
go with menu option edit --> enhancment opertaions --> insert pre method
insert post method
insert overwriten
delete pre method
delete post method
delete overwrotten method
Function Enhancements
Kernal badi :
Run time -- execution
complie time - syntax check
object instantitaion
call method
kernal badis implemenetations will load at the time of complie time.it will be
loaded to sap kernal .
in kernal badis sap has interduce new key words GET badi and Call badi.
in kernal badi if no implementation executed defaulth the logic in fall back class
will be executed .
https://blogs.sap.com/2014/03/04/is-kernel-badi-really-faster-than-classic-badi/
Step1 :
stpe2 :
stpe3 :
call the ,method using key word Call badi.
Step1 :
stpe2 :
patterns :
stpe3 :
call the ,method using key word Call method.
TRY
catch CX_BADI_NOT_IMPLEMENTED.
get_text method we need to call to display message.
End Try
A - 2 layer value
B - 3 layer value
C - 1 layer value
D - 4 layer value
Classical badi
se18 -- - badi definination --> goto -- sort ----> standard sort - it will ask
work bench request
.
then implementation level automatically layer value will come.
Kernal badi
https://blogs.sap.com/2016/10/02/badisorter-with-kernel-badi-and-other-sorting-
options/
ZCL
get_final
in classical badis we does not have any key words to create object and acces
method.
ZCLass - get_mara
commit work
se38 --
Kernal Badi
ztest
ztest1 -
1000
2000
A --
zif_interface
get_Data
se_data
A - ztest
zcl_test
A - Zest1
ZCL_test
Enhancemnets :
Customer exit
classical Badi
Class enhancemnet
function group enhanment
kernal Badis
Validations --
if order qty was more than the ware house qty then system needs to throw
error .order qty was more than the ware house qty .
when ever creating the sale order based on conditons plant needs to update .
Va01 ---
1200
1400 --
1000
05
Payment terms --
Custom Tabs