Material Master User-Exit Query?
Hi..
I want to implement a change pointer for a material master in my system.
Can I use the already existing message type / IDOC type or do I need to create a new IDOC type.
And if yes, please tell me the step by step procedure in short:-)
I was thinking of using a user-exit EXIT_SAPLMGMU_001 wherein I will fill a customised Z-Table on the basis of Plant ie. if it is my plant then I'll capture that material in my Z-table(Used a simple If-Endif)
And later I will create a customised report to run BD10 with those materials and then I will delete all those records from my Custom report.
But now I am facing a strange problem, that if the user changes only the basic data(first and second views in the material master screen) then , I can't capture that material in my Z-table because, I am using Plant key in my IF-Endif condition(that coding is done in the user-exit itself) and the plant is coming from the Structure WMARC which is one of the import parameter in the user-exit-->EXIT_SAPLMGMU_001.
So, I think unless and untill the user makes changes in the views related to Plant, we wont be able to capture those materials.
So, I want to know that is there any alternative to it?
Thank you.
Hi,
The plant and all the plant dependent data for a material will be in importing parameter WMARC. If this table is not being populated is becouse you are creating only the basic material views, otherwise, that table should contain data.
Regards,
Jose
Similar Messages
-
I want to get the material master User-exits for the classification view
Hi , All
I want to insert new data in the classification view of material master date, and I want to check it. I cannot find the user-exit to realize it. Can someone help me ?I understand you want to create a new characteristic for a classification. If that is the case, then you could have checks on the characteristic value entered. You can go to tcode CT04, enter the characteristic and go to the value tab. You can assign allowed values for that characteristic. Going to Other Value Check in that view, you can also check the entered value against a check table or even create a function module for custom check.
Hope this helps.
Thanks
Swagat -
Hi,
I want to assign internal number range for materials being created in MM01. For this I am using MGA00002 & EXIT_SAPLMG02_001 component.
With this I am able to create materials as per the logic I have written in the user exit.
When ever I extend the code to other plant, then also this user exit is triggered & a new number is being assigned from this user exit. How to over come this problem? Like my requirement is if material is same & being used across plants then item code must be same across the plants.
Please help me in resolving this problem.hi,
Try this,
place your logic inside condition where you check if the material is created (new entry) in your userexit.
IF t180-trtyp EQ 'H'. -
Add New record
Your logic
ENDIF.
Hope this helps you
regards
padma -
Vendor master user exit for copying NAME1 - NAME3
Hi Gurus,
I am looking for a user exit in Vendor master for FK01. User enters data in NAME1 and NAME2 field.
When the user saves the data, the data from Name1 field should be copied to NAME3 and data from NAME2 field should be copied to NAME4.
Please help...
Regards,
Tushar.u can find BADI's or Enhancement in Foloowing Ways.... Hope u will find one
1>First go to any transaction->iN THE menu bar SYSTEM->STATUS->Get the program name ->double click->u will go to the program attached to the tcode.Now search term will be CALL CL_EXITHANDLER.Now u will get list of BADI'S available..
2>Goto SE24->Give class name as CL_EXITHANDLER->Display->double click on get_instance mathod->Now u will go inside the method->Now put break point on the cl_exithandler.Now go to any transaction code and pass dat..U will see that it will be stopped on the break point which u set on the cl_exithandler...In the exit name u can find list of badi's attached to the tcode..
There are multiple ways of searching for BADI.
Finding BADI Using CL_EXITHANDLER=>GET_INSTANCE
Finding BADI Using SQL Trace (TCODE-ST05).
Finding BADI Using Repository Information System (TCODE- SE84).
1. Go to the Transaction, for which we want to find the BADI, take the example of Transaction VD02. Click on System->Status. Double click on the 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. The changing parameter INSTANCE will have the interface assigned to it. Double click on the method to enter the source code.Definition of Instance would give you the Interface name.
2. Start transaction ST05 (Performance Analysis).
Set flag field "Buffer trace"
Remark: We need to trace also the buffer calls, because BADI database tables are buffered. (Especially view V_EXT_IMP and V_EXT_ACT)
Push the button "Activate Trace". Start transaction VA02 in a new GUI session. Go back to the Performance trace session.
Push the button "Deactivate Trace".
Push the button "Display Trace".
The popup screen "Set Restrictions for Displaying Trace" appears.
Now, filter the trace on Objects:
V_EXT_IMP
V_EXT_ACT
Push button "Multiple selections" button behind field Objects
Fill: V_EXT_IMP and V_EXT_ACT
All the interface class names of view V_EXT_IMP start with IF_EX_. This is the standard SAP prefix for BADI class interfaces. The BADI name is after the IF_EX_.
So the BADI name of IF_EX_CUSTOMER_ADD_DATA is CUSTOMER_ADD_DATA
3. Go to Maintain Transaction (TCODE- SE93).
Enter the Transaction VD02 for which you want to find BADI.
Click on the Display push buttons.
Get the Package Name. (Package VS in this case)
Go to TCode: SE84->Enhancements->Business Add-inns->Definition
Enter the Package Name and Execute.
Here you get a list of all the Enhancement BADIs for the given package MB.
The simplese way for finding BADI is
1. chooes Tcode Program & package for that Tcode.
2. Go to Tcode se18
3. Press F4
4. search by package or by program.
Regards,
Usman Malik -
Service master user exit to populate work center description
Hi experts,
In IW31 work order, I need a user exit to populate the work center description to PR delivery address for control key PM03 with Service Master. I have tried and search in vain for other BADI or user exit but none works.
Is there anyone have solution on this?
Thanks.
Regards
PSKMy abaper has tried a few IWO1_PREQ_BADI, IW010009 and WORKORDER_UPDATE.
Operationally, user require the work centre address as the delivery address of the services due to the company has 24 physical workshop locations.
Anyway, will also try to create the fields in AUFK table as recommended. -
Asset master user exit at save
Hi!
Can anyone tell me, which user-exit is running at the save moment, while creating or modifying an asset master data (AS01, AS02 transaction)?
Only the user exit is interesting me, which is running when the user is pressing the "SAVE" button, random user-exit lists are unwanted.
Thank you
TamáHi,
Following are exits available for AS01. Just put break point in each exit and test it at the time saving asset whether it is triggering it or no. Then you will come to know the exact one.
TRAN0001 User exit for asset transfer
AAPM0001 Integration of asset accounting and plant maintenance
AFAR0003 External changeover method
AFAR0004 Determination of proportional values for retirement
AINT0004 Change amount posted for certain areas
AINT0005 Dummy for extended syntax check. Do not use.
AISA0001 Assign Inventory Number
AIST0001 Exchange number range in master data maintenance
AIST0002 Customer fields in asset master
AMSP0002 Determine relationship type for two company codes
Reward points if helpful.
Regards,
CS. -
Please send me some documents on User Exits based scenarios in SD.
You can forward the scripts to [email protected]
Thanks
AdiHello Aditya,
Could you please fwd the mail to
[email protected]
[email protected]
Thanks n advance
Regards
innova -
Customer master user exit to edit E-mail address (XD01)
We need to be able to change the e-mail address into smtp RFC 821 recommended format. SAP says the e-mail field is doing this already, however when you hit save it still leaves the entire field in the same case as it was typed. The 821 states that the domain will be upper case and the user name (before the @) will be lower case. I know the code to do this, I just can't find a place to put it. we are using EXIT_SAPMF02D_001 already for some edits, but the e-mail address is not available here. We are on 4.6C and I have not found any OSS notes pertaining to saving the address in this manner.
We try to match on the e-mail address to see if we already have this customer from the web so we need it in this format across the board to make the match effective.
We are not running CRM.
Thank you in advance for any help.Hello David,
This is not possible , cursor will stop last edittable tab position.
Just say to client that it is not possible since sap commands will not work.
Thanks
Seshu -
I want validation while creating material master with profit center
Dear Experts,
I want validation while creating material master with profit center.
If 0001 plant having 100100 profit center
0002 plant having 200200 profit center
Material A cant be created for 0001 plant for with wrong profit center 200200.
Kindly help & provide me solution clearlyHi,
Profit centers are assigned to controlling areas. And controlling areas can have many plants under them. So as long as both the plants and profit centers are in the same controlling area users will be able to extend the materials.
You should put in your validation control in the material master user exit. One of the exits you can use is
MGA00001 Material Master (Industry): Checks and Enhancements
Thanks & regards
Hameed Parvez -
Process will not be created with zero standard prices in material master
Hi,
I have two type of material;
1. In process material say A1
2. Finished Goods say B1
Both materials price control are standard price. I do not run costing. So , after creation of material master , standerd price has to update through MR21 in the account1 tab before start production .
Suppose, if I forget to update standard price in material master and prepared process order, it will carry zero value of production cost.
Hence, I want to restrict the creation of process order with zero standard prices in the material master.
In order words, as long as standard price will not be updated after creation of the material master, user will not be allowed to create process order, if wrongly try, system will give message u201Cwith zero standard price creation of process order will not be allowedu201D.
Please let me know either standard configuration or name of User exit or Badi.
Regards,
AmitHi,
You need to use BADI: workorder_update.
Method: At release.
check MBEW-STPRS field in the code ..and flag error and reject error if STPRS = 0.
Regards,
Santosh Sarda -
User exit: save PM order
Dear all,
I'm looking for an user exit that will be actived during order save. However, it seems most exits just for check, I can not change any data.
The requirement is: if user save certain order, then field function area 'CAUFVD-FUNC_AREA' is filled automatically. This fiels in the order header.
Thanks,
BenHi,
Orders
User Exits BBPK0001
Description Exit for determining the external procurement profile
User Exits CNEX0013
Description Default item category for component assignment
User Exits CNEX0026
Description Customer enhancement for general inspection of material
User Exits CNEX0027
Description Customer enhancement: Plant, storage loc. finding for comp.
User Exits CNEX0037
Description Check new component
User Exits COCCA002
Description Customer Functions for Organizational Authorization Checks (SETTLEMENT)
User Exits COI20001
Description Changing of person found
User Exits COI20002
Description Alternative procurement of HR availability data
User Exits COOM0001
Description Customer Functions for Overhead Percentages
User Exits COOPA_01
Description Customer check modules for internal orders
User Exits COOPA002
Description Customer function for master data maintenance - internal orders
User Exits COOPA003
Description User-Defined Fields in the Order Master
User Exits COOPA004
Description Customer function: Print order master data
User Exits COPCP005 (see: 1, )
Description Material Costing: User exit for material valuation (strategy U)
User Exits CY190001
Description Capacity Planning: Change order operation
User Exits COZF0001
Description Change purchase req. for externally processed operation
User Exits COZF0002
Description Change purchase req. for externally procured component
User Exits CYPP0001
Description Change sequence criteria and sequencing
User Exits ICSV0001
Description Display of geographic location data
User Exits ICSV0002
Description Automatic task determination for service notifications
User Exits ICSV0003
Description Partner selection
User Exits ICSV0004
Description Check PM object and display object information
User Exits ICSV0005
Description Determining reason for rejection - resource-related billing
User Exits ICSV0008
Description Validation of additional partner types
User Exits IWMI0001
Description User exits for SM/PM IDOCs
User Exits IWO10001
Description Create a PM sub-order
User Exits IWO10002
Description Customer check for order release
User Exits IWO10004
Description Customer check for order completion
User Exits IWO10005
Description Customer specific determination of profit centre
User Exits IWO10006
Description FCode exclusion through customer enhancement
User Exits IWO10007
Description Customer enhancement - permits in the order
User Exits IWO10008
Description Customer enhancement: Determination of tax jurisdiction code
User Exits IWO10009
Description Customer Check for 'Save' Event
User Exits IWO10010
Description Customer enhancement for determining WBS element
User Exits IWO10011
Description Customer enhancement for component selection
User Exits IWO10012
Description Priority handling on central header
User Exits IWO10015
Description F4 Help for user fields on operation
User Exits IWO10016
Description Customer enhancement to check operation user fields
User Exits IWO10017
Description Determine external order number by customer logic
User Exits IWO10018
Description User fields on order header
User Exits IWO10020
Description Automatically include task list
User Exits IWO10021
Description Automatic task list transfer when creating order from notification
User Exits IWO10022
Description Determine calendar from user exit
User Exits IWO10023
Description Service order: Change header data for advance shipment document
User Exits IWO10024
Description Service order: Changes to items for advance shipment
User Exits IWO10025
Description Finding responsible cost centre
User Exits IWO10026
Description User check on setting status 'Do not perform'
User Exits IWO10027
Description User exit: Generate user-defined settlement rule
User Exits IWO10029
Description Inclusion of bill of material in PM/SM order
User Exits IWO10030
Description Predefining the fields for the profitability segment
User Exits IWO10031
Description Hide personnel number in PM/SM order
User Exits IWO10033
Description Customer-Specific Authorization Check PM/CS Order
User Exits IWO10034
Description Operation status based on the status of capacity requirements
User Exits IWO20001
Description User exit to pass routing/task list to order
User Exits IWOC0003
Description PM/SM authorization check of ref. object and planner group
User Exits M06B0002
Description Change communication structure for purchase requisition release
User Exits MGA00003
Description Material Master (Industry and Retail): Number Display
User Exits PPCO0001
Description Application development: PP orders
User Exits PPCO0005
Description Storage location/backflushing when order is created
User Exits PPCO0023
Description Checks changes to components
regards,
Venkatesan Anandan -
User exit to make 262 movement go to QI rather than unrestricted status?
Hi Gurus,
In our system, we use "rework" production orders to occasionally rework Finished product.
The same finished product code is used (261) and returned (101).
Sometimes a 262 is used to retrieve unused Finished product back from the production order.
However this naturally places it back in unrestricted status.
What I'm being asked to investigate is whether there is anyway using the ABAP user exits
to influence the 262 movement,during the transaction, for certain finished product only,
so that the product ends up in Quality status - this is considered important
to ensure the product is not shipped as it was only released to enter the rework order.
On occasion the 262 is done in error, and in this case it would be especially useful!
Having looked through the material doc user exits, and done a search on the forum,
I don't think this is possible ABAP-wise,SAP intends a 262 to go to unrestricted and that's it..
I'm thinking of instead creating a bespoke authority object, to be checked under the above logic,
so that only certain qualified users will be able to do this operation -
but I want to throw the question out to forum before I resort to that..
Thanks for any help/ideas,
PaulDear Paul,
When the finished goods are found to be defective and needs to be reworked, first move the finished goods to a seperate st location (which is not relevant for MRP planning and not relevant for sales delivery. This by this the defective material is protected from being consumed or delivered).
Then create a rewind production order (or a rework production order) and issue the defective material against the production order and start the rework.
I am thinking what you said is not possible through user exit (there is a BADI MB_DOCUMENT_BEFORE_UPDATE or MB_DOCUMENT_UPDATE for material document movement) but you'll not be able to influence the stock to put in the quality.
Thanks
Nagarajan -
Material master extending to sales organization , distribution chanel ..
Hi All,
I have done the plant to plant Material master extending
my query is similar way how to approach the material master extending to sales organization , distribution chanel and storage location.
earlier in the plant to plant i have taken the selection screens
parameters : source plant
select option : target plant
materials i have taken is : material type and related but i didn't take any sales org, division and storage.
Regards...HI,
you can do this through MM01 bdc select sales views and end you data.(for extanding views not in mm02, mm01 only)
i hope it will slove your problem else please replay with quary.
Do Reward points..if found helpful -
Screen: illegal message in asset user exit
hi all,
I have done some validations in asset master user exit for some of the field while creating asset.
If for some valiation I put an error or warning message i.e.
message e001(zclass).
It just holds the screen and I cannot change the values. If I click BACK or EXIT button then it gives short dump saying:
screen: illegal message
During "Exit Command" processing, the program tried to send a " " message.
This is not allowed at this point in processing.
The program had to be terminated.
Screen name.............. "SAPLAIST"
Screen number............ 1000
Please advise.
Regards,
FSCan u explain with example how you perfomed the check for the exit routine.
Thanks,
Noufal.p -
Hi all ,
Can any one give me the complete material for user exits,
explain the any real time user exits with the business requirement.
Thanks,
SasiHi,
Userexits allow us to add our own functionality to SAP standard program
without modifying it . These are implemented in the form of subroutines and hence are also known as FORM EXITs. The userexits are generally collected in includes and attached to the standard program by the SAP.
User exits are used when the flow for a particular transaction has to take some other route other then the normal flow. this can be the case when you have to attach some additional functionality lik u need a customised screen, or new functionality (using a functional module). based on these things user exits can be classified as screen exits, function module exits, field exits( not used anymore). hope this gives some help on userexits.
*This is a complete Step by Step Screen shot tutorial on User Exits :*
http://www.201interviewquestions.com/docs/User%20exits.ppt
http://erpgenie.com/abaptips/component/option,com_docman/task,doc_details/gid,27/
*The above tutorials will serve your Requirement,also am expalining you how to cretae project in*
*implementing User-exits.*
First create a project in CMOD tcode
then add the enhancement of your requirement into that project
then save and activate .
go to the components of that Enhancement
you will find an fun module like thing
go to that and you will find a ZINCLUDE in that fun module
double click on it and write the code in that
save and activate the code and the project.
execute the transaction and check.
see the doc
User exits (Function module exits) are exits developed by SAP. The exit is implementerd as a call to a function module. The code for the function module is written 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_<program name><3 digit suffix>
The call to a functionmodule exit is implemented as:
CALL CUSTOMER.-FUNCTION <3 digit suffix>
To find a Exit.
Goto Transaction -- Find The Package
SMOD >f4>Use the Package here to Find the Exits In the Package.
Else if you Want to search by Application Area wise ,
There is one more tab to find the Exits in the Respective Application Area.
Implementing the Exit-- CMOD Create ProjectsAssgn your Component .
Now Run ur Transaction to Check if it Triggers.
Thats it..
Suppose you need to find out all the user exits related to a tcode.
1. Execute the Tcode.
2. Open the SAP program.
3. Get the Development Class.
4. Execute Tcode SE84.
5. Open the Node 'Envir. -> Exit Techniques -> 'Customer Exits -> Enhancements'
6. Enter the Development class and execute.
Check out this thread..
The specified item was not found.
1. Type the transaction : system->status-> <PROG. NAME>
2 open SE37 , type EXIT<PROG NAME> and press F4 to get the list of function exits available.
3. Open CMOD utilities->SAP enhancements
EDIT->All selections
4.type the function module name obtained in step 2, in fields 'component name' in 'additional selections' block. and execute.
5. The displayed list contains the enhancements names for the transaction You were looking for.
6. Create a project in CMOD and the code in default include->activate.
http://www.erpgenie.com/sap/abap/code/abap26.htm
which gives the list of exits for a tcode
http://help.sap.com/saphelp_nw04/helpdata/en/bf/ec079f5db911d295ae0000e82de14a/frameset.htm
For information on Exits, check these links
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sapgenie.com/abap/code/abap26.htm
http://www.sap-img.com/abap/what-is-user-exits.htm
http://wiki.ittoolbox.com/index.php/HOWTO:Implement_a_screen_exit_to_a_standard_SAP_transaction
http://www.easymarketplace.de/userexit.php
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sappoint.com/abap/userexit.pdfUser-Exit
http://www.planetsap.com/userexit_main_page.htm
User-Exits
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://www.sap-img.com/ab038.htm
http://www.planetsap.com/userexit_main_page.htm
http://www.sap-basis-abap.com/sapab013.htm
http://sap.ittoolbox.com/documents/popular-q-and-a/user-exits-for-the-transaction-code-migo-3283
These links will help you to learn more on user exits.
http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/frameset.htm
http://www.planetsap.com/userexit_main_page.htm
http://www.allsaplinks.com/user_exit.html
www.sap-img.com/abap/what-is-user-exits.htm
Also please check these threads for more details about user exits.
Re: Screen exit
user exit and customer exit
user exit
1. Document on UserExits in FI/CO
http://www.ficoexpertonline.com/downloads/User%20ExitsWPedit.doc
2. Finding User Exits...
http://sap.ionelburlacu.ro/abap/sap2/Other_Useful_Tips.html#Finding_User_Exits
3. List of all User Exits...
http://www.planetsap.com/userexit_main_page.htm
Real time Scenario
look in txn CMOD or SMOD, check enhancement 0VRF0001. It uses function module EXIT_SAPL0VRF_001. It is used to manipulate route determination for SD.
Here is the code
DATA: ls_xvbpa LIKE xvbpa,
lf_aland LIKE tvst-aland,
lf_azone LIKE tvst-azone,
lf_lland LIKE trolz-lland,
lf_lzone LIKE trolz-lzone,
ls_vbadr LIKE vbadr,
ls_xvbap LIKE xvbap,
ls_tvst LIKE tvst,
lv_route LIKE trolz-route.
LOOP AT xvbap INTO ls_xvbap.
IF NOT ls_xvbap-vstel IS INITIAL.
SELECT SINGLE * FROM tvst
INTO ls_tvst
WHERE vstel EQ ls_xvbap-vstel.
IF sy-subrc = 0.
lf_aland = ls_tvst-aland.
lf_azone = ls_tvst-azone.
ENDIF.
ENDIF.
READ TABLE xvbpa INTO ls_xvbpa WITH KEY vbeln = ls_xvbap-vbeln
posnr = ls_xvbap-posnr
parvw = 'Q1'.
IF sy-subrc = 0.
CALL FUNCTION 'SD_ADDRESS_GET'
EXPORTING
fif_address_number = ls_xvbpa-adrnr
IMPORTING
fes_address = ls_vbadr
EXCEPTIONS
address_not_found = 1
address_type_not_exists = 2
no_person_number = 3
OTHERS = 4.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
lf_lland = ls_vbadr-land1.
lf_lzone = ls_vbadr-lzone.
ENDIF.
ENDIF.
CALL FUNCTION 'SD_ROUTE_DETERMINATION'
EXPORTING
i_aland = lf_aland
i_azone = lf_azone
i_lland = lf_lland
i_lzone = lf_lzone
IMPORTING
e_route = lv_route
EXCEPTIONS
no_route_found = 1
departure_error = 2
destination_error = 3
invalid_generic_key = 4
customer_exit_error = 5
OTHERS = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
ls_xvbap-route = lv_route.
MODIFY xvbap FROM ls_xvbap TRANSPORTING route.
ENDIF.
ENDLOOP.
Reagrsd,
Raj.
Maybe you are looking for
-
Difference between unique constraint and unique index
1. What is the difference between unique constraint and unique index when unique constraint is always indexed ? Which one is better in this case for better performance ? 2. Is Composite index of 3 columns x,y,z better or having independent/ seperate
-
Calling a Web Service in Oracle Report Developer 10g?
Hello, Does Oracle Report Developer 10g supports Web Services (calls) or XML files as a Data Source? If yes. From what version? Thanks.
-
1:N mapping without using BPM , based on segment conditions
Hi All, I have to send 3 different files from source based on some conditions 1) for the first file to be sent is okay 2) But for second file and third file i need to check some conditions the conditions are If E1EDL44 case detail fields exists i s
-
IMAC Using MAC OS and WindowsVista - Removal
I partitioned my hard drive and created a 32gb partition for Windows Vista. I went ahead and installed Vista and switched back and forth by booting since Boot Camp didn't show up on the Vista toolbar. I decided to start using VMWare Fusion, installed
-
UNABLE TO FIX: "There was an error opening the database for the library"
Like many others I have received the "There was an error opening the database for the library" error message today after a mid-Aperture processing session crash. However, unlike others I have been unable to fix the database... I have trashed all pref