User Exit in MIGO_GR

Can you please give me some User Exits for MIGO_GR transaction. I am trying to run it for Movement type 101 for an Order. I want to check the Financial Posting for this GR.
Thanks and Regards
Ramakanth

BADI: MB_MIGO_ITEM_BADI

Similar Messages

  • USER EXIT FOR MIGO_GR ISSUE:

    HI
    I have case which user want to limit material received of quantity.
    i addon one table which structure
    WERKS  --plant id
    MATNR  ---material
    ALLOW_SIZE -
    allow max limit
    RECEIVE_SIZE  --- have received quantity
    ervery time when execute MIGO_GR program, i will add this time received quanitity  to table and check RECEIVE_SIZE  < ALLOW_SIZE .
    otherwise will give a message to user what this action be reject.
    so i find a user exit:MB_CF001
    and ABAP CODE as follow:
    tables:ZMRP_LOT_SIZE,ZMRP_PARAMETER.
      data:wa_mseg type mseg.
      data:l_subrc type c.
      DATA:IT_PARA TYPE ZMRP_PARAMETER OCCURS 0 WITH HEADER LINE.
      DATA:IT_ZMRP_LOT_SIZE TYPE ZMRP_LOT_SIZE OCCURS 0 WITH HEADER LINE.
      data:wa_zmrp_lot_size type ZMRP_LOT_SIZE.
      RANGES:R_WERKS FOR ZMRP_LOT_SIZE-WERKS,
             R_MATNR FOR MARA-MATNR,
             R_MATKL FOR MARA-MATKL.
      data:wa_mara type mara.
      data:l_msg(30) type c,
           g_msg(100) type c.
      break john.
      break fms04873.
      clear l_subrc .
      read table XMSEG INTO wa_mseg with key bwart = '101'.
      if sy-subrc <> 0.
        read table XMSEG INTO wa_mseg with key bwart = '103'.
        if sy-subrc = 0.
          l_subrc = '0'.
        endif.
      else.
        l_subrc = '0'.
      endif.
      check l_subrc = '0'.
    ***lock mrp prameters table.
      CALL FUNCTION 'ENQUEUE_EZ_MRP_PARAMETER'
       EXPORTING
         MODE_ZMRP_PARAMETER       = 'S'
         MANDT                     = SY-MANDT
      MRP01                     =
      MRP02                     =
      X_MRP01                   = ' '
      X_MRP02                   = ' '
      _SCOPE                    = '2'
      _WAIT                     = ' '
      _COLLECT                  = ' '
    EXCEPTIONS
      FOREIGN_LOCK              = 1
      SYSTEM_FAILURE            = 2
      OTHERS                    = 3
      IF SY-SUBRC <> 0.
        MESSAGE 'parameter table is lock' TYPE 'E'.
      ENDIF.
      SELECT * INTO TABLE IT_PARA FROM ZMRP_PARAMETER.
      loop at IT_PARA.
        IF IT_PARA-MRP01 = '1'.
          R_WERKS-SIGN = 'I'.
          R_WERKS-OPTION = 'EQ'.
          R_WERKS-LOW = IT_PARA-MRP03.
          COLLECT R_WERKS.
        ENDIF.
        IF IT_PARA-MRP01 = '3'.
          R_MATNR-SIGN = 'I'.
          R_MATNR-OPTION = 'CP'.
          R_MATNR-LOW = IT_PARA-MRP03.
          COLLECT R_MATNR.
        ENDIF.
        IF IT_PARA-MRP01 = '4'.
          R_MATKL-SIGN = 'I'.
          R_MATKL-OPTION = 'CP'.
          R_MATKL-LOW = IT_PARA-MRP03.
          COLLECT R_MATKL.
        ENDIF.
      ENDLOOP.
      LOOP AT XMSEG INTO WA_MSEG.
        IF WA_MSEG-BWART = '101' OR WA_MSEG-BWART = '103'.
          IF WA_MSEG-WERKS IN R_WERKS.
            IF NOT WA_MSEG-MATNR IN R_MATNR.
              SELECT SINGLE * INTO WA_MARA FROM MARA
              WHERE MATNR = WA_MSEG-MATNR.
              IF NOT WA_MARA-MATKL IN R_MATKL.
                read table IT_ZMRP_LOT_SIZE with key werks = wa_mseg-werks
                                                     matnr = wa_mseg-matnr.
                if sy-subrc = 0.
                  it_zmrp_lot_size-RECEIVE_SIZE =
                      it_zmrp_lot_size-RECEIVE_SIZE  + wa_mseg-MENGE.
                  if it_zmrp_lot_size-ALLOW_SIZE <
                            it_zmrp_lot_size-RECEIVE_SIZE.
                   perform unlock_data.
                   perform display_info.
                    loop at it_zmrp_lot_size into wa_zmrp_lot_size.
                      CALL FUNCTION 'DEQUEUE_EZ_ZMRP_LOT_SIZE'
                        EXPORTING
                          MODE_ZMRP_LOT_SIZE = 'E'
                          MANDT              = SY-MANDT
                          WERKS              = wa_zmrp_lot_size-werks
                          MATNR              = wa_zmrp_lot_size-matnr.
                    endloop.
                    CALL FUNCTION 'DEQUEUE_EZ_MRP_PARAMETER'
                      EXPORTING
                        MODE_ZMRP_PARAMETER = 'S'
                        MANDT               = SY-MANDT.
                    l_msg = wa_mseg-ebeln.
                    condense l_msg.
                    concatenate 'num:' l_msg into g_msg.
                    l_msg = wa_mseg-ebelp.
                    condense l_msg.
                    concatenate g_msg 'item' l_msg into g_msg.
                    concatenate g_msg 'exceed max number'
                        into g_msg.
                    MESSAGE g_msg type 'E'.
                  else.
                    modify it_zmrp_lot_size.
                  endif.
                else.
                  select single * into IT_ZMRP_LOT_SIZE from ZMRP_LOT_SIZE
                  where werks = wa_mseg-werks
                  and    matnr = wa_mseg-matnr.
                  if sy-subrc <> 0.
                   perform unlock_data.
                   perform display_info.
                    loop at it_zmrp_lot_size into wa_zmrp_lot_size.
                      CALL FUNCTION 'DEQUEUE_EZ_ZMRP_LOT_SIZE'
                        EXPORTING
                          MODE_ZMRP_LOT_SIZE = 'E'
                          MANDT              = SY-MANDT
                          WERKS              = wa_zmrp_lot_size-werks
                          MATNR              = wa_zmrp_lot_size-matnr.
                    endloop.
                    CALL FUNCTION 'DEQUEUE_EZ_MRP_PARAMETER'
                      EXPORTING
                        MODE_ZMRP_PARAMETER = 'S'
                        MANDT               = SY-MANDT.
                    l_msg = wa_mseg-ebeln.
                    condense l_msg.
                    concatenate 'num:' l_msg into g_msg.
                    l_msg = wa_mseg-ebelp.
                    condense l_msg.
                    concatenate g_msg 'item' l_msg into g_msg.
                    concatenate g_msg 'exceed max number'
                            into g_msg.
                    MESSAGE g_msg type 'E'.
                  else.
                    if it_zmrp_lot_size-ALLOW_SIZE <
                              it_zmrp_lot_size-RECEIVE_SIZE.
                     perform unlock_data.
                     perform display_info.
                      loop at it_zmrp_lot_size into wa_zmrp_lot_size.
                        CALL FUNCTION 'DEQUEUE_EZ_ZMRP_LOT_SIZE'
                          EXPORTING
                            MODE_ZMRP_LOT_SIZE = 'E'
                            MANDT              = SY-MANDT
                            WERKS              = wa_zmrp_lot_size-werks
                            MATNR              = wa_zmrp_lot_size-matnr
                      endloop.
                      CALL FUNCTION 'DEQUEUE_EZ_MRP_PARAMETER'
                        EXPORTING
                          MODE_ZMRP_PARAMETER = 'S'
                          MANDT               = SY-MANDT.
                      l_msg = wa_mseg-ebeln.
                      condense l_msg.
                      concatenate 'num:' l_msg into g_msg.
                      l_msg = wa_mseg-ebelp.
                      condense l_msg.
                      concatenate g_msg 'item' l_msg into g_msg.
                      concatenate g_msg 'exceed max number'
                           into g_msg.
                      MESSAGE g_msg type 'E'.
                    else.
                     perform lock_data.
                      CALL FUNCTION 'ENQUEUE_EZ_ZMRP_LOT_SIZE'
                        EXPORTING
                          MODE_ZMRP_LOT_SIZE = 'E'
                          MANDT              = SY-MANDT
                          WERKS              = it_zmrp_lot_size-werks
                          MATNR              = it_zmrp_lot_size-matnr.
                      IF SY-SUBRC <> 0.
                       perform unlock_data.
                        loop at it_zmrp_lot_size into wa_zmrp_lot_size.
                          CALL FUNCTION 'DEQUEUE_EZ_ZMRP_LOT_SIZE'
                            EXPORTING
                              MODE_ZMRP_LOT_SIZE = 'E'
                              MANDT              = SY-MANDT
                              WERKS              = wa_zmrp_lot_size-werks
                              MATNR              = wa_zmrp_lot_size-matnr
                        endloop.
                        CALL FUNCTION 'DEQUEUE_EZ_MRP_PARAMETER'
                          EXPORTING
                            MODE_ZMRP_PARAMETER = 'S'
                            MANDT               = SY-MANDT.
                        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
                      ENDIF.
                      append it_zmrp_lot_size.
                    endif.
                  endif.
                endif.
              ENDIF.
            ENDIF.
          ENDIF.
        ENDIF.
      ENDLOOP.
    *****modify
      IF it_zmrp_lot_size[] is not initial.
        modify zmrp_lot_size from table it_zmrp_lot_size.
      endif.
    perform unlock_data.
      loop at it_zmrp_lot_size into wa_zmrp_lot_size.
        CALL FUNCTION 'DEQUEUE_EZ_ZMRP_LOT_SIZE'
          EXPORTING
            MODE_ZMRP_LOT_SIZE = 'E'
            MANDT              = SY-MANDT
            WERKS              = wa_zmrp_lot_size-werks
            MATNR              = wa_zmrp_lot_size-matnr.
      endloop.
      CALL FUNCTION 'DEQUEUE_EZ_MRP_PARAMETER'
        EXPORTING
          MODE_ZMRP_PARAMETER = 'S'
          MANDT               = SY-MANDT.
    ***************end
    first question:
      this segment code can't be debug even have set break point.
      how to debug this segment.
    second question:
      use the same condition to execute MIGO_GR,but one usING BDC method with CALL TRANSCTION 'MIGO_GR' will go to this segment code and display message which set in USER EXIT code.
    but other use TCODE MIGO_GR to receive goods and will create document successfully.
    three question:
       have other method will be resolve my issue.
    thank you advance!

    close!

  • User-Exit For MIGO_GR

    Hello,
    The requirement is when migo_gr is saved or posted the document date
    and time should appear in shipmentend (shipmentend the buttons that appear in vt03n t-code in Deadl. tab)
    I know which tables to refer to how to go about but where do I need to
    code this to achieve the functionality..
    is there a  user-exit or badi to achieve this if yes please let me know
    Rgds,
    Aryan

    Hello Martin,
    but is there a user-exit avialable to acheive this ?
    or which specific Badi should I refer to
    could you please let me know , its really very urgent
    don;t worry abt the points I'll give full points thats my promise
    from anybody either from your collegues or your friends
    anyone
    Rgds,
    Aryan

  • User exit info

    will someone guide me on usage of USER-EXIT ,
    FUNCTION-EXIT & how to use them ? what all things i
    have to do initially ? what transaction i have to use
    for starting these EXITS?

    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_<program name><3 digit suffix>
    The call to a functionmodule exit is implemented as:
    CALL CUSTOMER.-FUNCTION <3 digit suffix>
    http://www.sap-img.com/abap/a-short-tutorial-on-user-exits.htm
    CUSTOMER EXITS-> t-code CMOD.
    As of Release 4.6A SAP provides a new enhancement technique, the Business Add-Ins.
    Among others, this enhancement technique has the advantage of
    being based on a multi-level system landscape (SAP, country versions, IS solutions, partner,
    customer, and so on)
    instead of a two-level landscape (SAP, customer) as with the customer exits.
    You can create definitions and implementations of business add-ins at any level of the system landscape.
    To unify enhancements of the SAP Standard you can migrate customer exits to business add-ins.
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/1975cc43b111d1896f0000e8322d00/content.htm
    In order to find out the user exits for any tcode,
    1. get the developement class of the tcode from SE93.
    2. Now goto transaction SMOD and press F4,
    3. give in the Deve class in the dev class and Press ENTER
    this will show u the exits for any tcode.
    or execute this report
    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
    Look at the below link, it will solve your Prblem
    http://www.sap-img.com/abap/what-is-user-exits.htm
    Re: what is the difference between User exit and customer exit
    the following links give u a clear picture abt customer & user exits
    User-Exit For MIGO_GR
    This will surely help:
    examples of user exits in SD and MM module
    Reward points if useful
    Regards,
    Nageswar

  • User Exit ,Badi or Configuration in MIGO_GR

    Hi All,
    Issue : According to my customers process if the Plant belongs to a US then the Material Ledger is not activated . now if i do the GR for an Order(Order type PM04 - Refurbishment Order ) with movement type 101 to a plant in US then any Financial Postings should not take place since the Material Ledger is deactivated .This is not happening .ie the financial postings are taking place .
    So , I need the User Exit or Badi or Configuration settings where i can debug and find whether the Material Ledger is Activated or not to check why the Financial Postings are happening while doing the GR in this case .
    Thanks and Regards
    Ramakanth Akunury.

    Hi Digvijay,
    In the past I have used substituion rules for this type of requirement.
    This is a feature which can be found in the IMG and is therefore normally performed by the Functional Analyst. Now I am not sure if this is considered an "old" technology and that in the meantime BTE events are more common.
    For more info on substituion please see the following link:
    [What Are Substitutions?|http://help.sap.com/saphelp_40b/helpdata/en/5b/d2316743c611d182b30000e829fbfe/content.htm]
    Kind regards,
    Robert

  • User exit ZXPADU02 - evaluating SY-UCOMM

    Hello everyone,
    I am trying to display an error message whenever someone tries to create a new work schedule rule (P0007-SCHKZ) in infotype 7. However, the error message should just come up when the user is trying to save his data.
    I am using user exit ZXPADU02 for this purpose. My problem is that SY-UCOMM does not seem to hold reliable data in this user exit, and SSCRFIELDS does not seem to be supported at all.
    My code looks like this (only the relevant code snippet in ZXPADU02):
    CASE INNNN-INFTY.
            WHEN '0007'.
          CALL METHOD CL_HR_PNNNN_TYPE_CAST=>PRELP_TO_PNNNN
            EXPORTING PRELP = INNNN
            IMPORTING PNNNN = P0007.
          CALL METHOD CL_HR_PNNNN_TYPE_CAST=>PRELP_TO_PNNNN
            EXPORTING PRELP = PSAVE
            IMPORTING PNNNN = P0007_ALT.
          IF P0007_ALT-SCHKZ <> P0007-SCHKZ
          AND IPSYST-MASSN IS INITIAL " do not warn within an info group of a personnel action
          AND SY-UCOMM = 'UPD'. " only warn when saving the data -> problem here <-
            MESSAGE 'Do not change IT7 directly or else.' TYPE 'I' DISPLAY LIKE 'E'.
            SHOW_DATA_AGAIN = 'X'.
          ENDIF.
    At first glance, the above works nicely.  But this is what happens when I test more thoroughly:
    I create a new period in IT 7, enter a P0007-SCHKZ other than the one that was previously valid, press F11. Some warnings appear (for different reasons), which I dismiss using the Enter key. Afterwards, the above code fires, the error message is being displayed, and I am thrown back into the data screen. So far, so good.
    Now I simply alter the value in the field "Weekly hours" (P0007-WOSTD) and press Enter (!). Again a series of warnings appear, including one that a dataset is going to be deleted (seeing that an IT 7-period with just the same date range already exists). I confirm that with Enter, and the data is being saved. The above code does not fire because I have only pressed Enter - but the data is being saved anyway!
    Looks like a pretty erroneous behavior on the side of the SAP system. The question is whether I have a chance to do something about it in the code.

    Mihir Nagar wrote:
    Dear Petersen,
    Your IF condition seems ok. I doubt on the message statement. Can you replace your message statement with type E.
    MESSAGE 'Do not change IT7 directly or else.' TYPE 'E'.
          ENDIF.
    Hope this works.
    Regards,
    Mihir.
    I did not expect this to work, because normally you use type 'E'-messages only in certain PAI-environments, but it does the job, thank you!
    make use of  field IOPER of the structure  PSYST to check on the infotype actions INS, MOD, COP, DEL...
    In this particular case I did not care, so I did not check that. IT 7 should only be maintained through personnel actions in our case.
    Next you can check with sy-ucomm field the different between "enter" and "save". With "save" sy-ucomm will be 'UPD'.
    That is what I did, but as I described, there was a situation when SY-UCOMM is SPACE, but the system saved anyway due to a prior save attempt.

  • Using a variable not in the Export,Import, table Parameters in USER EXIT

    Hi all,
       During the Invoice Creation, I need to add an entry in the VBFS table, so that it will be displayed in the system log.  In the FM 'RV_INVOICE_CREATE', the structure corresponding to it is XVBFS.  There is a user-exit   CALL CUSTOMER-FUNCTION '002', in this FM 'RV_INVOICE_CREATE'.  But the import, export or Table Parameters does not have XVBFS.
      How can I use XVBFS inside the User exit?..
    Please help.
    Regards,
    Asha

    Hi,
    I dont know whether this will help u...
    write this in user exit...to access variables/tables of main program..
    FIELD-SYMBOLS: <komv>.
    ASSIGN ('(SAPLMEPO)TKOMV[]') TO <komv>.
    where.. SAPLMEPO is the main program...and TKOMV[] is a internal table in SAPLMEPO.
    regards
    Sukriti....

  • How to find out the user exit is implemented

    Hi All,
    Kindly let me know the process to be followed to find out the User exit is implemented in SAP system.
    I have seen many senriors suggestions for some treads to check if there is any Exit is implemented in the process when the system is behaving differently rather standard.
    Is it the only way with help of ABAP'er we can find out or the functional consultant also can find out through some procedure?
    I tied in google for this doubt, but i could not get the relavant answer.Pleaea execuse me if this already answered.
    Thanks,

    Hi Krishna/TW,
    Thank you for your immediate replies. Sorry i think i have not explained correctly my requirment.
    Let me explain my requirement once again.Let us say Comapny has implemented one Exit in the project, now i want to find out what exactly the Exit was implemented.
    Example: In STO process user is able to increase the  qty in delivery. As per the client requriement system should not allow.
    This is not possible in standard to control even after maintainig  check over delivery field in 0VLP.
    For this comapny has already implemented one enahnceament.
    User Exit : USER EXIT_READ_DOCUMENT
    Program: MV50AFZ1
    like this when any one joined in the project we do not know what are all the Exits are implemented in the SAP system where we are working.
    So if i want to find out if there is any Exit or enhancement implemented, what is the process to find out?
    I hope now  am clear with my requirement.
    Thanks in advance.

  • How to find out the user-exits?

    hi.
    how to find out the user-exits?
    regards
    eswar.

    Hi,
    *& Report  ZEXITFINDER
    *report  zexitfinder.
    *& Enter the transaction code that you want to search through in order
    *& to find which Standard SAP User Exits exists.
    *& Tables
    tables : tstc, "SAP Transaction Codes
    tadir, "Directory of Repository Objects
    modsapt, "SAP Enhancements - Short Texts
    modact, "Modifications
    trdir, "System table TRDIR
    tfdir, "Function Module
    enlfdir, "Additional Attributes for Function Modules
    tstct. "Transaction Code Texts
    *& Variables
    data : jtab like tadir occurs 0 with header line.
    data : field1(30).
    data : v_devclass like tadir-devclass.
    *& Selection Screen Parameters
    selection-screen begin of block a01 with frame title text-001.
    selection-screen skip.
    parameters : p_tcode like tstc-tcode obligatory.
    selection-screen skip.
    selection-screen end of block a01.
    *& Start of main program
    start-of-selection.
    Validate Transaction Code
    select single * from tstc
    where tcode eq p_tcode.
    Find Repository Objects for transaction code
    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 = enlfdir-area.
    move : tadir-devclass to v_devclass.
    endif.
    endif.
    Find SAP Modifactions
    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.
    Take the user to SMOD for the Exit that was selected.
    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.
    Regards

  • How to find out appropriate user exit

    Hi,
    I want to know how to find out the user exit that matches to the requirement. Suppose for a material master program, there are so many include programs hence im unable to find call custer-function and even unable to debug an appropriate include. Please help me out how to learn user exits in a rightious way.
    Thanks
    Basu

    Look for program SAPICSS_ in your system and run it. This program can also be found under CMOD menu:  Utilities -> SAP enhancements.
    This will only give you the CMOD user exits.
    There is a program someone made that searches for all sorts of user-exits (including BADI's etc.). I remember that it was posted on sapfans.com
    Edited by: Maen Anachronos on Apr 6, 2009 3:22 PM

  • How to find out FICO user exits that are used by User

    How to find out the FICO user exits that are used by user.

    Go to tcode CMOD. In the project field drop down your list there. Put a Z* there and run the list. These should be all the exits that are activated. Search for the ones that pertain to FI. You can also search by development class. You need a little ABAP knowledge to search easily. You get this by going to the tcode then to status then to the program then to the attributes. There you find the development class. Ie FBAS.
    pls assign points if helpful as a way to say thanks.

  • Free Goods Problem and User Exit if needed in Sales Order

    Hello All,
    The problem is related to Free Goods in Sales Order which is given with an example -
    We have maintained Free Goods ( T Code - VBN1) in inclusive scenario which is as follows -
    For 210 PAC (Pack) of Material A 18 PAC Free.
    Where 1 PAC = 20 BT (Bottle) and 20 PAC = 1 CV (Case Pack)
    In the material master of Material A the Base Unit Of Measurement (UOM) = PAC and Sales UOM = Blank so that we can use any conversion factor maintained for the material.
    The conversion factors maintained for Material A are as follows -
    1 BT = 1BT
    1 PAC = 20 BT
    1 CV = 20 PAC
    Now when we are raising sales order for 11 CV the free goods are not generated in the Sale Order.
    Again if we maintain the Sales UOM in CV and raise the sales order it is showing :
    10 CV as main item and 1 CV as Free which is wrong because in the conversion factor we have already maintained 1CV = 20 PAC , Whereas in the inclusive scenario it is given 11CV = 210 PAC and 210 PAC = 18 PAC is free.So in any case it is taking into account 2 more PACs.
    Please suggest what need to be done in this case in respect of User Exit or Source Code in ABAP if needed.
    Thanks & Regards
    Priyanka Mitra

    Hello Priyanka Mitra,
    We are facing a problem same as you.
    How did you solve this problem?
    We are very glad if you teach it concretely.
    Please advise your solution to us.
    Thanks.

  • User Exit/ Badi for Changing Quant parameters during TO Creation

    Hi Gurus,
    Could you please guide me to advice the User Exit/Badi which can be used for changing Quant Data during TO Creation.
    User Requirement: Using "Recepient Field" in MIGO as a Key Value for FIFO in WM during goods issue. Receipient is copied into TR and TO (Standard SAP Functionality). For the purpose of Stock Removal based on Receipient Value, we need to copy this value into Quant Data field named Certificate Number ("LQUA-ZEUGN").
    I will highly appreciate reply from Gurus.
    Regards,
    Gupta M

    Hi manish,
    Use the Exit MWMTO001 for this purpose and modify the table accordingly. This will solve your problem.
    Thanks,
    Shibashis

  • BADI/user exit for transcation code "BP" in CRM

    Hi Experts,
    Is there a BADI / user exit that is triggered after successful saving/updating of Business Partner using transaction code "BP"?
    We want to send general infos such as partner number, Name, Birth date, etc. about the business partner being created/updated using IDoc.
    We are using CRM WinClient 4.0.
    If you know  the steps on how this requirement will be done, kindly post them.
    Thank you very much.

    I don't have any CRM system at hand, but I'm sure there are some BAdI's for this. Look in SE18 for BP or BUS, and i'm sure  you will find something.
    One suggestion though: Before going for the BadI, try and see if CRM also uses change pointers for sending Idoc's . This case you wont need any user exits / badis, an probably no programming at all.
    Transaction
    BD50: Activate Change Ptrs for Mess. Type
    BD61: Activate Change Pointers - Generally
    and use report RBDMIDOC for triggering IDoc.

  • What are the user-exits which will trigger on saving Sales Order

    Hello Experts!!!
    I am working on Sales Order VA01. The requirement is I need to pre populate Sold-to-Party field. I find out user-exit (V45A0002  Predefine sold-to party in sales document  ). So it is working fine.
    Now second requirement is I need to capture all the date once user saves Sales Order. Also the time or Sales Order creation I have to make u2018GRAYu2019 some of the fields so user cannot change the value. Can anybody tell me which user-exits should I use to retrieve the entire information user entered and lock fields in Sales Order screen?
    Thanks a lot on advance.

    Hi
    U can't find it there,because it's a include, not enanchement.
    So u need to use the trx SE38, not CMOD.
    For sales ored there aren't the enanchements, but only some FORMs defined in particular includes.
    U need to get the access key by OSS in order to change them.
    These are the rest of the includes where u can find other exits:
           INCLUDE MV45ATZZ.            " Data definitions in MV45ATOP
             INCLUDE MV45AOZZ.             " User-modules PBO
             INCLUDE MV45AIZZ.             " User-modules PAI
             INCLUDE MV45AFZA.             " User-forms < 3.0
             INCLUDE MV45AFZB.             " User-forms
             INCLUDE MV45AFZC.             " User-forms < 3.0D
             INCLUDE MV45AFZD.             " User-forms   3.0E
             INCLUDE MV45AFZF.             " User-forms   3.0F
           include mv45afzg.             " User-forms   3.1G
             INCLUDE MV45AFZH.             " User-forms   4.6B
             INCLUDE MV45AFZZ.             " User-forms
             INCLUDE MV45AFZ4.             " User-forms   4.0
    Anyway u can find some information about these exit in customizing (trx SPRO):
    Sales and Distributions->System modifications->User exits
    Max

Maybe you are looking for