Regd: Userexit

Hi,
Can any 1 tell me the specific Userexits in the Include Prog MV45AFZZ which i should use to modify n get the results for
1. Customer Master change (SD Modlue based)
2. Payment Terms (SD Modlue based)
3. Delivery Location (SD Modlue based)
4. Pricing List (SD Modlue based)
5. Sales Tax (SD Modlue based)
Suggestion and Help will be much appreciated.
Thanks.
Ganesh.

Hi Ramesh,
1. Customer Master change (SD Modlue based)
If header userexit_move_field_to_vbak
if at Item level userexit_move_field_to_vbap
2. Payment Terms (SD Modlue based)
userexit_move_field_to_vbkd
3. Delivery Location (SD Modlue based) : userexit_move_field_to_vbap.
4. Pricing List (SD Modlue based)
userexit_pricing_prepare_tkomk
userexit_pricing_prepare_tkomp
5. Sales Tax (SD Modlue based)
userexit_move_field_to_vbak .
Hope this helps.
Regards,
Sudheer

Similar Messages

  • MIRO Userexit

    Hi,
      Is there is any userexit for MIRO so that I can change the values to the header amount and change the G/L account data? Please let me know...
    Thanks,
    Naren

    Not sure which suits you, but here is the list of exits
    LMR1M001 User exits in Logistics Invoice Verification
    LMR1M002 Account grouping for GR/IR account maintenance
    LMR1M003 Number assignment in Logistics Invoice Verification
    LMR1M004 Logistics Invoice Verification: item text for follow-on docs
    LMR1M005 Logistics Inv. Verification: Release Parked Doc. for Posting
    LMR1M006 Logistics Invoice Verification: Process XML Invoice
    MRMH0001 Logistics Invoice Verification: ERS procedure
    MRMH0002 Logistics Invoice Verification: EDI inbound
    MRMH0003 Logistics Invoice Verification: Revaluation/RAP
    MRMN0001 Message output and creation: Logistics Invoice Verification
    BADI available
    Implement BADI : CHANGE_IN_UPDATE.
    Method : CHANGE_AT_SAVE
    If exits does'nt suits, you can also try with Validations & Substitutions.
    http://help.sap.com/saphelp_erp2004/helpdata/en/5b/d231a843c611d182b30000e829fbfe/frameset.htm
    Regds
    Manohar

  • Diff between userexit and customer exits

    hi friends,
                 what is the diff b/w userexit and customer exits.
    thanks in Advance.

    Hai,
    Here is the clear differentiation:
    User exit - A user exit is a three character code that instructs the system to access a program during system processing.
    SXX: S is for standard exits that are delivered by SAP.   XX represents the 2-digit exit number.
    UXX: U is for user exits that are defined by the user.  XX represents the 2-digit exit number
    Customer exit - The R/3 enhancement concept allows you to add your own functionality to SAP’s 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.    
    User Exits : -
    1. User exits are routines which SAP allows you to add in additional
    customized programs process without affecting the standard SAP programs. SAP
    user exits are usually declared as a form routine :-
    form userexit_xxxxx
    endform.
    2. No need to create project in CMOD/SMOD.
    3. Won't be automatically transported during version upgrade.
    Customer Exits :-
    1. Could be either Function Exits or Menu Exits.  SAP will provide certain
    FMs which will be called during the execution of SAP transactions.
    2.Generally require the developer to create a project in CMOD/SMOD.
    3. Will be automatically transported during version upgrade.
    Types of Exits 
    There are several different types of user exits. Each of these exits acts as hooks where you can attach or "hang" your own add-ons.
    Menu Exits
    Menu exits add items to the pulldown menus in standard SAP applications. You can use these menu items to call up your own screens or to trigger entire add-on applications.
    SAP creates menu exits by defining special menu items in the Menu Painter. These special entries have function codes that begin with "+" (a plus sign). You specify the menu item’s text when activating the item in an add-on project.
    Screen Exits
    Screen exits add fields to screens in R/3 applications. SAP creates screen exits by placing special subscreen areas on a standard R/3 screen and calling a customer subscreen from the standard screen’s flow logic.
    Function Module Exits 
    Function module exits add functions to R/3 applications. Function module exits play a role in both menu and screen exits. 
    When you add a new menu item to a standard pull down menu, you use a function module exit to define the actions that should take place once your menu is activated. 
    Function module exits also control the data flow between standard programs and screen exit fields. SAP application developers create function module exits by writing calls to customer functions into the source code of standard R/3 programs. 
    These calls have the following syntax: 
    CALL CUSTOMER-FUNCTION ‘001’.
    Field Exits
    Field exits allow you to create your own programming logic for any data element in the Dictionary. You can use this logic to carry out checks, conversions, or business-related processing for any screen field.  Example: The data element BBBNR identifies a company’s international location number. You might want to set up your R/3 System so that all international location numbers are larger than 100. 
    The field exit concept lets you create a special function module that contains this logic. 
    You assign the special function module to the data element BBBNR. You then assign the module to any programs and screens in which users can add new international location numbers. When you activate your field exit, the system automatically triggers your special routine whenever a user enters a company location number. 
    In 4.6c, you can use "RSMODPRF" program to create field exits.
    An example of a user exits :-
    MODULE user_exit_0001 INPUT 
        CASE okcode.
            WHEN 'BACK OR EXIT'.
                CASE sy-dynnr.
                        WHEN '100'.
                             SET SCREEN 0.
                             LEAVE SCREEN.
                        WHEN '200'.
    Note that you can write any code that satisfy your needs.                                                     ****
    But in this case, this was wrote as a sample code for reference sake.                                    ****
    And you can test it.                                                                                ****
                             SET SCREEN 100.
                             LEAVE SCREEN.
                 ENDCASE.
          ENDCASE.
    Hope u got the difference now.
    Reward points if it helps you.
    Regds,
    Rama.Pammi

  • Regd: Calculation of TOTAL field in ALV report

    Hi All,
    We have a scenario that we are not getting the total value for numeric fields in ALV report.
    Below i have given the code used for it.
    G_KEY = 'X'.
      G_NOKEY = SPACE.
      G_SUM = 'X'.
      G_NOSUM = SPACE.
      PERFORM BUILD_FIELDCAT USING 'VBELN'  G_KEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'BLDAT'  G_NOKEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'VGBEL'  G_KEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'POSNR'  G_KEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'MATNR'  G_KEY G_NOSUM..
      PERFORM BUILD_FIELDCAT USING 'LFIMG'  G_NOKEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'VRKME'  G_NOKEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'NETPR'  G_NOKEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'BRTWR'  G_NOKEY G_NOSUM.
      PERFORM BUILD_FIELDCAT USING 'VALUE_INR'  G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'B_DUTY'     G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'S_TOTAL1'   G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'CV_DUTY'    G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'C_CVD'      G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'S_TOTAL2'   G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'C_DUTY'     G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'S_TOTAL3'   G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'A_DUTY'     G_NOKEY G_SUM.
      PERFORM BUILD_FIELDCAT USING 'T_DUTY'     G_NOKEY G_SUM.
    PERFORM BUILD_LAYOUT.
      PERFORM BUILD_DISPLAY.
    *&      Form  DISPLAY
          text
    FORM BUILD_DISPLAY.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
      I_CALLBACK_PROGRAM                = ' '
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = ' '
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
         I_GRID_TITLE                      = TEXT-000
      I_GRID_SETTINGS                   =
       IS_LAYOUT                         = IG_LAYOUT
         IT_FIELDCAT                       = IG_FIELDCAT
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
         I_SAVE                            = 'A'
      IS_VARIANT                        =
      IT_EVENTS                         =
      IT_EVENT_EXIT                     =
      IS_PRINT                          =
      IS_REPREP_ID                      =
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      I_HTML_HEIGHT_TOP                 = 0
      I_HTML_HEIGHT_END                 = 0
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      IR_SALV_FULLSCREEN_ADAPTER        =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
        TABLES
          T_OUTTAB                          = IG_INBOUND
       EXCEPTIONS
         PROGRAM_ERROR                     = 1
         OTHERS                            = 2
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    "DISPLAY
    *&      Form  BUILD_FIELDCAT
          text
         -->G_FIELDNAME  text
         -->L_KEY        text
         -->L_SUM        text
    FORM BUILD_FIELDCAT USING L_FIELDNAME LIKE DD03L-FIELDNAME L_KEY TYPE C L_SUM TYPE C.
      CLEAR WG_FIELDCAT_LN.
      ADD 1 TO G_COL_POS.
      WG_FIELDCAT_LN-REF_TABNAME = 'IG_INBOUND'.
      WG_FIELDCAT_LN-FIELDNAME = L_FIELDNAME.
      WG_FIELDCAT_LN-KEY = L_KEY.
      WG_FIELDCAT_LN-DO_SUM = L_SUM.
      WG_FIELDCAT_LN-COL_POS = G_COL_POS.
      WG_FIELDCAT_LN-NO_OUT = SPACE.
      WG_FIELDCAT_LN-QFIELDNAME = SPACE.
      WG_FIELDCAT_LN-HOTSPOT = SPACE.
      APPEND WG_FIELDCAT_LN TO IG_FIELDCAT.
    ENDFORM.                    "BUILD_FIELDCAT
    *&      Form  BUILD_LAYOUT
          text
    FORM BUILD_LAYOUT.
    IG_LAYOUT-TOTALS_TEXT = 'Total Amount'.
    *IG_LAYOUT-SUBTOTALS_TEXT = 'A'.
    IG_LAYOUT-ZEBRA = 'X'.
    ENDFORM.
    Help and Sugesstions will be much appreciated.
    Thanks & Regds.
    Ramesh.

    This is sample program for the same
    REPORT  Z_50657_ALV_EX2
            NO STANDARD PAGE HEADING
            LINE-COUNT 65(3)
            LINE-SIZE 220
            MESSAGE-ID ZZ.
    *                             Type Pools                               *
    TYPE-POOLS: SLIS, ICON.
    *                              Tables                                  *
    TABLES: VBAK. "Sales Document Data
    *                         Internal Tables                              *
    * TABLE TO HOLD DATA OF SALES DOCUMENT
    DATA: BEGIN OF IT_VBAK OCCURS 0,
          VBELN LIKE VBAK-VBELN, "Sales Document
          VBTYP LIKE VBAK-VBTYP, "SD document category
          AUDAT LIKE VBAK-AUDAT, "Document date (date received/sent)
          AUGRU LIKE VBAK-AUGRU, "Order reason (reason for the business)
          AUART LIKE VBAK-AUART, "Sales Document Type
          NETWR LIKE VBAK-NETWR, "Net Sales Order in Doc. Currency
          WAERK LIKE VBAK-WAERK, "SD document currency
          ICON TYPE ICON-ID,     "traffic lights
          END OF IT_VBAK.
    *                             Work Areas                               *
    *WORK AREAS DEFINED FOR ALV'S
    DATA: WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,      "field catalog
          IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,     "field catalog ITAB
          WA_SORT TYPE SLIS_SORTINFO_ALV,           "SORT work area
          IT_SORT TYPE SLIS_T_SORTINFO_ALV,         "SORT ITAB
          LAYOUT TYPE SLIS_LAYOUT_ALV,              "LAYOUT
          WA_FCODE TYPE SLIS_EXTAB,                 "FUN CODE
          I_FCODE_EXTAB TYPE SLIS_T_EXTAB,
          WA_EVENTS TYPE SLIS_ALV_EVENT,
          IT_EVENTS TYPE SLIS_T_EVENT.
    *                       Selection-Screen                               *
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
    SELECT-OPTIONS: S_VBELN FOR VBAK-VBELN.
    PARAMETERS: P_VBTYP LIKE VBAK-VBTYP DEFAULT 'C'.
    SELECTION-SCREEN END OF BLOCK B1.
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME.
    PARAMETERS: LIST RADIOBUTTON GROUP G1,
                GRID RADIOBUTTON GROUP G1.
    SELECTION-SCREEN END OF BLOCK B2.
    *                     At  Selection-Screen                             *
    *VALIDATION
    *                       Start of Selection                             *
    START-OF-SELECTION.
    *POPULATION OF DATA INTO INTERNAL TABLE ITAB
      PERFORM GET_DATA.
    *DEFINE USER DEFINED FIELDCATALOG
      PERFORM DEFINE_FIELDCATALOG.
    *SUBTOTALS AND TOTALS DISPLAY USING SORT
      PERFORM SORT_LIST.
    *CHANGE FCODE OF STATUS
      PERFORM CHANGE_FCODE.
    *CHECK RADIOBUTTON OPTION AND ACCORDINGLY FINAL DISPLAY
      PERFORM CHECK_OPTION.
    *&      Form  GET_DATA
    *       text
    FORM GET_DATA.
      SELECT VBELN
             VBTYP
             AUDAT
             AUGRU
             AUART
             NETWR
             WAERK FROM VBAK INTO TABLE IT_VBAK
             WHERE VBELN IN S_VBELN AND VBTYP = P_VBTYP
             AND ERDAT > '01.01.2004' AND NETWR > 0.
      LOOP AT IT_VBAK.
        IF IT_VBAK-NETWR < 10000.
          IT_VBAK-ICON = '@08@'.
        ELSEIF IT_VBAK-NETWR > 100000.
          IT_VBAK-ICON = '@0A@'.
        ELSE.
          IT_VBAK-ICON = '@09@'.
        ENDIF.
        MODIFY IT_VBAK INDEX SY-TABIX.
      ENDLOOP.
    ENDFORM.                    "GET_DATA
    *&      Form  CHECK_OPTION
    *       text
    FORM CHECK_OPTION.
      WA_EVENTS-NAME = 'TOP_OF_PAGE'.
      WA_EVENTS-FORM = 'TOP'.
      APPEND WA_EVENTS TO IT_EVENTS.
      CLEAR WA_EVENTS.
      WA_EVENTS-NAME = 'END_OF_LIST'.
      WA_EVENTS-FORM = 'END_LIST'.
      APPEND WA_EVENTS TO IT_EVENTS.
      CLEAR WA_EVENTS.
      IF LIST = 'X'.
        PERFORM LIST_DISP.
      ENDIF.
      IF GRID = 'X'.
        PERFORM GRID_DISP.
      ENDIF.
    ENDFORM.                    "CHECK_OPTION
    *&      Form  DEFINE_FIELDCATALOG
    *       text
    FORM DEFINE_FIELDCATALOG.
      WA_FIELDCAT-COL_POS = 1.
      WA_FIELDCAT-FIELDNAME = 'ICON'.
      WA_FIELDCAT-SELTEXT_L = 'ICON'.
      WA_FIELDCAT-ICON = 'X'.
      WA_FIELDCAT-OUTPUTLEN = 8.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 2.
      WA_FIELDCAT-FIELDNAME = 'VBELN'.
      WA_FIELDCAT-SELTEXT_L = 'SALES DOC NO.'.
      WA_FIELDCAT-OUTPUTLEN = 10.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 3.
      WA_FIELDCAT-FIELDNAME = 'AUDAT'.
      WA_FIELDCAT-SELTEXT_L = 'CREATED ON'.
      WA_FIELDCAT-OUTPUTLEN = 10.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 4.
      WA_FIELDCAT-FIELDNAME = 'VBTYP'.
      WA_FIELDCAT-SELTEXT_L = 'CATEGORY'.
      WA_FIELDCAT-OUTPUTLEN = 1.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 6.
      WA_FIELDCAT-FIELDNAME = 'AUGRU'.
      WA_FIELDCAT-SELTEXT_L = 'REASON'.
      WA_FIELDCAT-OUTPUTLEN = 3.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 5.
      WA_FIELDCAT-FIELDNAME = 'AUART'.
      WA_FIELDCAT-SELTEXT_L = 'DOC TYPE'.
      WA_FIELDCAT-OUTPUTLEN = 4.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 7.
      WA_FIELDCAT-FIELDNAME = 'NETWR'.
      WA_FIELDCAT-SELTEXT_L = 'NET VALUE'.
      WA_FIELDCAT-OUTPUTLEN = 17.
      WA_FIELDCAT-DECIMALS_OUT = 2.
    *  WA_FIELDCAT-DO_SUM = 'X'.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
      WA_FIELDCAT-COL_POS = 8.
      WA_FIELDCAT-FIELDNAME = 'WAERK'.
      WA_FIELDCAT-SELTEXT_L = 'UNIT'.
      WA_FIELDCAT-OUTPUTLEN = 50.
      WA_FIELDCAT-TABNAME = 'IT_VBAK'.
      APPEND WA_FIELDCAT TO IT_FIELDCAT.
      CLEAR WA_FIELDCAT.
    ENDFORM.                    "DEFINE_FIELDCATALOG
    *&      Form  DEFINE_LAYOUT
    *       text
    FORM DEFINE_LAYOUT.
      LAYOUT-ZEBRA = 'X'.
      LAYOUT-SUBTOTALS_TEXT = 'SUBTOTAL SUM'.
      LAYOUT-WINDOW_TITLEBAR = 'EXERCISE 2'.
      LAYOUT-TOTALS_TEXT  = 'TOTAL'.
    ENDFORM.                    "DEFINE_LAYOUT
    *&      Form  SORT_LIST
    *       text
    FORM SORT_LIST.
      WA_SORT-FIELDNAME = 'VBELN'.
      WA_SORT-TABNAME = 'IT_VBAK'.
      WA_SORT-SPOS = 1.
      WA_SORT-UP = 'X'.
      WA_SORT-SUBTOT = 'X'.
      APPEND WA_SORT TO IT_SORT.
      CLEAR WA_SORT.
      WA_SORT-FIELDNAME = 'NETWR'.
      WA_SORT-TABNAME = 'IT_VBAK'.
      WA_SORT-UP = 'X'.
      WA_SORT-SPOS = 2.
      WA_SORT-SUBTOT = 'X'.
      APPEND WA_SORT TO IT_SORT.
      CLEAR WA_SORT.
    ENDFORM.                    "SORT_LIST
    *&      Form  LIST_DISP
    *       text
    FORM LIST_DISP.
      PERFORM DEFINE_LAYOUT.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
       EXPORTING
         I_CALLBACK_PROGRAM             = SY-REPID
         IT_FIELDCAT                    = IT_FIELDCAT
         IS_LAYOUT                      = LAYOUT
         IT_SORT                        = IT_SORT
         I_CALLBACK_PF_STATUS_SET       = 'STATUS'
         IT_EXCLUDING                   = I_FCODE_EXTAB
         I_CALLBACK_USER_COMMAND        = 'USER_COMMAND'
         IT_EVENTS                      = IT_EVENTS[]
    *   IMPORTING
    *     E_EXIT_CAUSED_BY_CALLER        =
    *     ES_EXIT_CAUSED_BY_USER         =
        TABLES
         T_OUTTAB                       = IT_VBAK
    *   EXCEPTIONS
    *     PROGRAM_ERROR                  = 1
    *     OTHERS                         = 2
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    "LIST_DISP
    *&      Form  GRID_DISP
    *       text
    FORM GRID_DISP.
      PERFORM DEFINE_LAYOUT.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM       = SY-REPID
          IS_LAYOUT                = LAYOUT
          IT_FIELDCAT              = IT_FIELDCAT
          IT_SORT                  = IT_SORT
          I_CALLBACK_PF_STATUS_SET = 'STATUS'
          IT_EXCLUDING             = I_FCODE_EXTAB
          I_CALLBACK_USER_COMMAND  = 'USER_COMMAND'
          IT_EVENTS                = IT_EVENTS[]
        TABLES
          T_OUTTAB                 = IT_VBAK.
    * EXCEPTIONS
    *   PROGRAM_ERROR                     = 1
    *   OTHERS                            = 2
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    "GRID_DISP
    *&      Form  STATUS
    *       text
    *      -->P_EXTAB    text
    FORM STATUS USING P_EXTAB TYPE SLIS_T_EXTAB.
      SET PF-STATUS 'STATUS' EXCLUDING P_EXTAB.
    ENDFORM.                    "STATUS
    *&      Form  USER_COMMAND
    *       text
    *      -->R_UCOMM      text
    *      -->RS_SELFIELD  text
    FORM USER_COMMAND USING R_UCOMM     LIKE SY-UCOMM
                                   RS_SELFIELD TYPE SLIS_SELFIELD.
      CASE R_UCOMM.
        WHEN 'BACK' OR 'CANC' OR 'EXIT'.
          LEAVE TO SCREEN 0.
        WHEN '&IC1'.
          SET PARAMETER ID 'AUN' FIELD RS_SELFIELD-VALUE.
          CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.
      ENDCASE.
    ENDFORM.                    "USER_COMMAND
    *&      Form  CHANGE_FCODE
    *       text
    FORM CHANGE_FCODE.
      WA_FCODE = 'PRNT'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&OAD'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&AVE'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&EB9'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&SUM'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&UMC'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&XPA'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
      WA_FCODE = '&OMP'.
      APPEND WA_FCODE TO I_FCODE_EXTAB.
    ENDFORM.                    "CHANGE_FCODE
    *&      Form  TOP
    *       text
    FORM TOP.
      IF LIST = 'X'.
        WRITE:/ SY-ULINE.
        WRITE:/ 'DATE:', SY-DATUM,55 'INTELLIGROUP ASIA PVT LTD'.
        WRITE:/ 'TIME:', SY-UZEIT.
        WRITE:/ 'USER NAME:', SY-UNAME,60 SY-TITLE.
        WRITE:/ 'PAGE', SY-PAGNO.
        WRITE:/ SY-ULINE.
      ENDIF.
      IF GRID = 'X'.
        DATA: LS_LINE TYPE SLIS_LISTHEADER,
              E04_LT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
    *   Listenüberschrift: Typ H
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'H'.
    *   LS_LINE-KEY:  not used for this type
        LS_LINE-INFO = 'Summary'.
        APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
    *   Kopfinfo: Typ S
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'S'.
        LS_LINE-KEY  = 'Intelligroup'.
        LS_LINE-INFO = ''.
        APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
        LS_LINE-KEY  = 'ASIA'.
        LS_LINE-INFO = 'PVT LTD'.
        APPEND LS_LINE TO E04_LT_TOP_OF_PAGE.
    *   Aktionsinfo: Typ A
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'A'.
    *   LS_LINE-KEY:  not used for this type
        LS_LINE-INFO = 'truman'.
        APPEND LS_LINE TO  E04_LT_TOP_OF_PAGE.
        CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
          EXPORTING
            IT_LIST_COMMENTARY = E04_LT_TOP_OF_PAGE
            I_LOGO             = 'ENJOY_SAP_LOGO'.
      ENDIF.
    ENDFORM.                    "TOP
    *&      Form  END_LIST
    *       text
    FORM END_LIST.
      IF LIST = 'X'.
        SKIP 2.
        WRITE:/60 'END OF PAGE'.
      ENDIF.
      IF GRID = 'X'.
          DATA: LS_LINE TYPE SLIS_LISTHEADER,
              E04_LT_END_OF_LIST TYPE SLIS_T_LISTHEADER.
    *   Listenüberschrift: Typ H
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'H'.
    *   LS_LINE-KEY:  not used for this type
        LS_LINE-INFO = 'Summary'.
        APPEND LS_LINE TO E04_LT_END_OF_LIST.
    *   Kopfinfo: Typ S
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'S'.
        LS_LINE-KEY  = 'Intelligroup'.
        LS_LINE-INFO = ''.
        APPEND LS_LINE TO E04_LT_END_OF_LIST.
        LS_LINE-KEY  = 'ASIA'.
        LS_LINE-INFO = 'PVT LTD'.
        APPEND LS_LINE TO E04_LT_END_OF_LIST.
    *   Aktionsinfo: Typ A
        CLEAR LS_LINE.
        LS_LINE-TYP  = 'A'.
    *   LS_LINE-KEY:  not used for this type
        LS_LINE-INFO = TEXT-105.
        APPEND LS_LINE TO  E04_LT_END_OF_LIST.
        CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
          EXPORTING
            IT_LIST_COMMENTARY = E04_LT_END_OF_LIST.
      ENDIF.
    ENDFORM.                    "END_LIST

  • Userexit For TCODE J1IJ depot excise invoice

    hi
    I want to know is there any userexit for depot excise invoice. That we can use to check weather excise entry date that is (J_1IRG23D-CPUDT) is equal to likp-WADAT_IST . Any info will be really helpful.
    Thank you

    Hi,
    Use this program SAPMJ1IJ in this program there are 4 includes.
    First try with  MJ1IJF01
    So check with your abaper which exit is working in this include.you can do it by setting break-point.
    Also check other includes MJ1IJTOP  MJ1IJO01  MJ1IJI01
    Thank you,

  • BADI/UserExit for MIGO in Stock Transfer

    Hi Gurus,
    I have a requirement.
    When posting a GR in MIGO, if the material has been flagged to go through inspection, MIGO post the batch to quality inspection.
    Now, when a batch has already gone through inspection (for example in another plant) and its released (passed) and its been transferred to another plant, if we are receiving this batch doing a post GR in MIGO, it automatically post it to quality inspection again.
    Is there a BADI, UserExit or way to skip this inspection and post the batch to unrestricted stock since its already gone through inspection in the previous plant and has a Decision Code A0 (accepted etc).
    We don't want to change the material master for this because we still want the material/batch to go through quality inspection if its hasn't already been.
    Thanks..
    Baz
    Edited by: Basil Balogun on Sep 23, 2010 1:49 AM

    Hi,
    Try the possibilities of MB_MIGO_BADI. I think in method LINE_MODIFY, POST_DOCUMENT and perhaps PAI_DETAIL.
    I hope this helps you
    Regards,
    Eduardo

  • Sales Order Costing. Error values, need BAPI or Userexit or Enhancements

    Hi Experts,
    I have a situation to solve the Errors in Sales Order Costing.
    My Error is,  its not splitting values equally,,, (BOM Item Price Values)
    for example...
    let i have a parent Item A.
    and Child Items as A1, A2, A3.
    Now the Qty of A is 100. for each item the price value is 50. so the total value is 5000/-
    Now If i need one A, then I need 8 A1's, 4 A2's, 3 A3's.and let think A1 value and A2 value and A3 value (single Unit ) are equal. and let the value be 100.
    but in BOM i can see all the values of A1, A2, A3 as same. (500, 500, 500) but it should be (800, 400, 300)
    The single Unit Price is not multiplying with Quantity, but its equally splitting.
    Please tell me Can I find and BAPI or Userexit or any enhancements or any Configurations to do.
    Thanks & Regards
    Dileep .C

    no replies and my thread was dead.

  • Regd: Sale Order U.O.M

    Hi All,
    While downloadng the data from VBAP DB Table fro a particular S.O.document the Unit of measurement correct value is not geting stored in the internal table but at the time of displaying as a report i get the correct value.
    Like when i set a break point in the program at the internal table level and view the data's the field value of VBAP-VRKME or VBAP-MEINS should be "PC" but i am getting a value as "ST" but at the time of displaying in the report it is displaying as "PC" only.
    Because i hav to generate a XML based on the values of the Internal Table.
    Is there any possibility to eliminate this problem or any other corressponding table from which i can get the exact value.
    Help and Suggestions will be much appreciated.
    Thanks & Regds.
    Ramesh.

    Hi Tanveer Shaikh,
    Here is my sample code below.
    REPORT  ZSO_STATUS_XML NO STANDARD PAGE HEADING.
       TBALES DECLARATION
    TABLES:  VBAK, "Sale Order Header
             VBAP, "Sale Order Item Data
             VBEP, "Schedule Line Data
             KNA1, "General Data in Customer Master
             VBRP. "Billing Document Item Data
       TYPES DECLARATION
    TYPES : BEGIN OF TY_SOSTATUS,
              KUNNR    LIKE VBAK-KUNNR,  "Customer Number
              NAME1    LIKE KNA1-NAME1,  "Customer Name
              BSTNK    LIKE VBAK-BSTNK,  "Customer P.O.
              BSTDK    LIKE VBAK-BSTDK,  "Customer P.O. Date
              VBELN    LIKE VBAK-VBELN,  "Sale Order Number
              ERDAT    LIKE VBAK-ERDAT,  "Sale Order Date
              POSNR    LIKE VBAP-POSNR,  "Sale Order Line Item
              MATNR    LIKE VBAP-MATNR,  "Material Number
              ARKTX    LIKE VBAP-ARKTX,  "Material Description
              KWMENG   LIKE VBAP-KWMENG, "Sale Order Quantity
              MEINS    LIKE VBAP-MEINS,  "Unit of Measurement
              EDATU    LIKE VBEP-EDATU,  "Sale Order Schedule Date
              FKIMG    LIKE VBRP-FKIMG,  "Despatch Quantity
              GBSTA    LIKE VBUP-GBSTA,  "Overall Sale Order Status
              PNDQTY TYPE I,
    END OF TY_SOSTATUS.
    DATA: XML_OUT TYPE STRING.
       INTERNAL TABLE DECLARATION
    DATA : IT_SOSTATUS TYPE STANDARD TABLE OF TY_SOSTATUS
                WITH HEADER LINE INITIAL SIZE 100 WITH DEFAULT KEY.
    DATA : BEGIN OF IT_XML_OUT  OCCURS 0,
           A(1500) TYPE C,
           END OF IT_XML_OUT.
       SELECTION SCREEN DECLARATION
    SELECTION-SCREEN  BEGIN OF BLOCK SOBLOCK WITH FRAME.
    SELECT-OPTIONS:   S_VBELN FOR VBAK-VBELN,
                      S_ERDAT FOR VBAK-ERDAT,
                      S_AUART  FOR VBAK-AUART,
                      S_WERKS FOR VBAP-WERKS.
    SELECTION-SCREEN  END OF BLOCK SOBLOCK.
       START OF SELECTION
    SELECT SVBELN SAUART SERDAT SKUNNR SBSTNK SBSTDK
                   LPOSNR LMATNR LARKTX LKWMENG L~MEINS
                   EEDATU FFKIMG GGBSTA NNAME1 FROM VBAK AS S INNER JOIN VBAP AS L ON SVBELN = LVBELN
                                                          INNER JOIN VBEP AS E ON SVBELN = EVBELN
                                                          INNER JOIN VBRP AS F ON SVBELN = FAUBEL
                                                          INNER JOIN VBUP AS G ON SVBELN = GVBELN
                                                          INNER JOIN KNA1 AS N ON SKUNNR = NKUNNR
                                                          INTO CORRESPONDING FIELDS OF TABLE IT_SOSTATUS
                                                          WHERE S~AUART IN S_AUART AND
                                                          S~ERDAT IN S_ERDAT AND
                                                          L~WERKS IN S_WERKS .
    CALL TRANSFORMATION (`ID`) SOURCE IT_XML_OUT = IT_SOSTATUS[] RESULT XML XML_OUT.
    CALL FUNCTION 'HR_EFI_CONVERT_STRING_TO_TABLE'
      EXPORTING
        I_STRING               = XML_OUT
        I_TABLINE_LENGTH       = 1500
      TABLES
        ET_TABLE               = IT_XML_OUT
    CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
    filetype = 'BIN'
    filename = 'C:\TEST1.xml'
    TABLES
    data_tab = IT_XML_OUT.
    submit Z_INO1_SO_STATUS_FTP USING SELECTION-SET 'Z_SO_FTP' and
    return .

  • USEREXIT FOR transaction J1IJ

    Hi
    My user wants that date in J1IJ that is excise from depot sale should same as PGI date. If it is not same it should throw some error. Is there any userexit available for the same.
    Any information will be of great help.
    Regards
    Jalaj

    Hi Jalaj,
    Use any one of  these user exits
    MJ1IJI01.
    MJ1IJF01.
    Regards
    Ram

  • Display error message in userexit

    I have a checking which implement in userexit. When the criteria meet, it will block po saving and display error message. I would like to know how to display the error message. Thanks!

    Use like this for first approach else if second one were serve you purpose than you may go with second one also.
    DATA: mid  TYPE sy-msgid VALUE 'SABAPDOCU',
          mtype TYPE sy-msgty VALUE 'I',
          num  TYPE sy-msgno VALUE '014'.
    MESSAGE ID mid TYPE mtype NUMBER num.

  • Need userexit while saving the billing document (VF01)

    HI Folks,
    I need a userexit while saving the VF01 transaction code. My requirement is i need to check if there is any intercompany invoice was created before the delivery related invoice
    By default SAP creates delivery related invoice . I have checked lot of userexits with package VF but none is working and also gone through the standard userexits RV60AFZ*, still didn't find any good one for my requirement..
    All your help is highly appreciated..
    waiting for your replies.
    Regards,
    raj

    Hi,
    I have done some analysis before posting the question and one mistake i done is i have checked theUSEREXIT RV60AFZC and i checked XVBRK AND XVBRP instead of VBRK and VBRP...also whie saving this  is not called, it is called when we press enter and also when we press SAVE button in the initial screen.
    I missed the small thing...
    Thanks for the link..
    Regards,
    Nagaraj

  • Userexit while saving the billing document

    Hi all,
    Is there any userexit while saving the billing document..I want to define minimum invoice value in system.
    Regards,
    Puneet Makkar

    Hi,
    In preceding project, i had the same requirement.
    Price condition : copy from std price for minimum value.
    Use condition category (for specific determination price for invoice).
    In price procedure : apply requirement to active only for invoice (std = 22).
    Re determination of price during creation of invoice :
    use RV61AFZA with the value of condition category to adapt pricing type (ex : X).
    modify copy rule (Tcode VTFL) for item : use new value for pricing type (ex : X).
    Regards,
    Lionel

  • Pls help me to identify in the SD userexit what triggers "del of items"

    Here's the background of the problem. (it is difficult to explain the problem and I will try my best).
    When processing certain IDOCs, something in the SD userexit is causing the change logs of vbap records to be set with a message for every item "Item has been deleted".  I could not reproduce the problem in either the development or QA environment. It is happening in production and it happens when the IDOC is processed every night by a batch job running a standard SAP program RBDAPP01.
    It then becomes too late for me to debug the issue in production...and I can't real mess around with idoc procesing in production either..
    Since it has become impossible to reproduce the problem in QA or Dev , I am trying to figure out how to prevent it from happening...
    (I know fixing the existing records is another problem) I'm trying to figure out what code in the user exit thinks that it should log a message "Item has been deleted" for every item of vbap. The item itself is not deleted or marked for deletion..it;s just that this is appearing in the change history...  
    Can anyone suggest what may be causing this issue.,..
    Thanks....
    Sam
    Edited by: SammyBoy on Apr 8, 2011 10:39 PM
    Edited by: Sam on Apr 8, 2011 10:40 PM

    If u want to add Items data, u have to handle the Table control by writing the complete code.
    U have to write code for 2 items, when u press enter u will get new row to enter new record one by one.
    Narendra

  • USEREXIT to adjust the rebate credit memo request to your own require

    We are using function module SD_BONUS_CREDIT_NOTE_CREATE in one of our rebate program.
    This Functional provides the option to use USEREXIT to adjust the rebate credit memo request to your      own requirements.
    With Present form of  functionl module it take standard doc type to  create the  rebate credit memo request.
    So Question here which  are userexit we have in this FM  which can be used to create  the  rebate credit memo request to our requirement.
    Has any body used this FM before to this length..
    appreacite your help
    Thanks
    rao

    Hi Serma,
    I haven't use this FM. I only can advise you how to find user exits in this (any) FM.
    Open your FM via SE37 and then try to find in this Function Group any CALL CUSTOMER-FUNCTION 'xxx' ..., where xxx is a 3-digit number which refers to the relevant FM EXIT_<FG>_xxx.
    <FG> is the name of the Function group to which the FM belongs to.
    When you find such an EXIT-Function, take a look at the parameters. When you find parameters which satisfy your needs, go ahead and build your EXIT enhancement in the predefined ZX-Include (you can find this inside the FM EXIT_<FG>_xxx).
    I hope this helps,
    Heinz

  • How to get xveda values in sales Order userexit MV45AFZZ

    Hi guys,
    Tables XVEDA and YVEDA has no entries in sales order userexit. Do you know how to get contract end dates of line items in sales order user exit

    Used function module SD_VEDA_SELECT to solve the issue

Maybe you are looking for

  • Ipod classic full with "other files", restoring not helping.

    Hi. I've read other threads about this problem on various devices. It's an 80GB ipod, 37 with music, 35.5 GB of other.  I've restored it, and it fills with other files again when I do the new long sync. It's not enabled for disk mode or manual syncin

  • Getting the name of a pc

    I'm trying to resolve the name of a computer. This is the code I'm using now and it works: try{     InetAddress hostname[] = InetAddress.getAllByName(InetAddress.getLocalHost().getHostAddress() ) ;     System.out.println(hostname[0].getHostName()); }

  • SAP Enterprise Structure.

    Dear all How the Client , Company and Company code hierarchy works ? Please define it's Hierarchy and Machanism. Thnaks to all. Regards, Pankaj A Bhalerao. FICO Edited by: pankaj_ab on Apr 27, 2009 1:53 PM Edited by: pankaj_ab on Apr 27, 2009 1:55 PM

  • Oracle XBRL extension - Validation

    Hi, I'm wondering how to perform a validation checking and I had find everywhere but fruitless results. After using DBMS_ORAXBRL.BULKLOADXBRLFILES(1, 'sample', 'schema.xml', NULL); How do I validate the loaded xbrl files? And also, do I still need to

  • How to disable ink supply alerts

    I have an imac running 10.9.3.  I cannot disable the alerts message (ink level notifications) for either printer: HP Office jet Pro 8500 A909a or Photosmart D100 series, both connect via network. After reading other posts, I have tried going into HP