BOR for transaction MM02

Hi,
I want to create an alert for any change done in transaction MM02.
For that i need the corresponding BOR object.
We have already used BOR object BUS1001, but thats not working.
Thanks & Regards,
Arpita Saini

Then you may need to use change documents for event creation ( I think you can use Change oBject MATERIAL)
Please check this link
http://help.sap.com/saphelp_45b/helpdata/en/fb/13599d457311d189440000e829fbbd/content.htm

Similar Messages

  • Entries in table CDHDR for transaction MM02 missing after upgrade to ECC6.0

    Hi,
    I am supporting a client who has just performed an upgrade from 4.7 to ECC6.0 on their test system.  We try and use transaction MM04 (display material master changes) or MM02 and view changes to the material master but there are no entries.
    During the upgrade, the entries for transaction code MM02 in table CDHDR have been lost.  Can anybody give me assistance on how to avoid this when performing the production upgrade, or even better, is there any way to get these entries back?
    Thank you.
    Sharon.

    That shouldn't happen - entries shouldn't get lost.
    Is there anything in the CDHDR table (by browsing it with SE16)? If not, then something went wrong during the upgrade....
    Have there been modifications to the table? Is the the table active in SE11?
    Markus

  • BAPI needed  for  change material(Transaction : MM02)

    Hi all,
    We have a requirement where in we need to post the documents throuh BAPI for change material (Transaction: MM02).
    Any inputs on this..is highly appreciable...
    thanks in advance...
    regards..
    prathima.

    CHECK THIS CODE
    *& Report  ZBAPI_MATERIAL_SAVEDATA
    REPORT  ZBAPI_MATERIAL_SAVEDATA NO STANDARD PAGE HEADING MESSAGE-ID (ZHNC).
    TYPES:BEGIN OF TY_MAT,
           MATERIAL(4),
           IND_SECTOR(1),
           MATL_TYPE(4),
           MATL_GROUP(9),
           BASE_UOM(3),
           BASE_UOM_ISO(3),
           PLANT(4),
           DEL_FLAG(1),
           PUR_GROUP(3),
           BASE_QTY(13),
           STGE_LOC(4),
           MRP_IND(1),
           SALES_ORG(4),
           DISTR_CHAN(2),
           DEL_FLAG1(1),
           MIN_ORDER(13),
           LANGU(2),
          MATL_DESC(40),
       END OF TY_MAT.
    DATA: IT_DATA TYPE TABLE OF TY_MAT,
          WA_DATA LIKE LINE  OF IT_DATA.
    *decalraing flag
    data: v_flag value ''.
    *DECLARING WORK AREAs  TO BE PASSED TO THE FUNCTION MODULE.
    DATA: BAPI_HEAD LIKE BAPIMATHEAD,
          BAPI_CLIENTDATA LIKE BAPI_MARA,
          BAPI_CLIENTDATAX LIKE BAPI_MARAX,
          BAPI_PLANTDATA LIKE BAPI_MARC,
          BAPI_PLANTDATAX LIKE  BAPI_MARCX,
          BAPI_STORAGELOCATIONDATA LIKE BAPI_MARD,
          BAPI_STORAGELOCATIONDATAX LIKE BAPI_MARDX,
          BAPI_SALESDATA LIKE BAPI_MVKE,
          BAPI_SALESDATAX LIKE BAPI_MVKEX,
          BAPI_MAKT LIKE BAPI_MAKT,
          BAPI_RETURN LIKE BAPIRET2.
    *INTERNAL TABLE TO HOLD THE MATERIAL DESCRIPTION
    DATA: BEGIN OF IT_MAKT OCCURS 0.
    INCLUDE STRUCTURE BAPI_MAKT.
    DATA END OF IT_MAKT.
    DATA:BEGIN OF IT_RET OCCURS 0.
    INCLUDE STRUCTURE BAPIRET2.
    DATA END OF IT_RET.
    *INTERNAL TABLE TO HOLD HEADER DATA
    DATA: IT_EXCEL TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
    *SELECTION-SCREEN ELEMENTS
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETER: FNAME TYPE RLGRAP-FILENAME OBLIGATORY DEFAULT 'C:\Documents and Settings\Administrator\Desktop\MATMAS.XLS' .
    PARAMETERS: P_BEGCOL TYPE I DEFAULT 1 NO-DISPLAY,
                P_BEGROW TYPE I DEFAULT 1 NO-DISPLAY,
                P_ENDCOL TYPE I DEFAULT 100 NO-DISPLAY,
                P_ENDROW TYPE I DEFAULT 32000 NO-DISPLAY.
    SELECTION-SCREEN END OF BLOCK B1.
    *DECLARATION OF EXCELAL TABLE
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR FNAME.
    PERFORM F_GET_FILE USING FNAME.
    START-OF-SELECTION.
    PERFORM F_XLS_ITAB USING FNAME
                       CHANGING IT_EXCEL.
    PERFORM F_MOVE_DATA.
    perform F_GET_DATA.
    *&      Form  F_GET_FILE
          text
         -->P_FNAME  text
         <--P_SY_SUBRC  text
    FORM F_GET_FILE  USING    P_FNAME LIKE FNAME.
    CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
    EXPORTING
       PROGRAM_NAME        = SYST-REPID
       DYNPRO_NUMBER       = SYST-DYNNR
      FIELD_NAME          = ' '
      STATIC              = ' '
      MASK                = ' '
      CHANGING
        FILE_NAME           = P_FNAME
    EXCEPTIONS
      MASK_TOO_LONG       = 1
      OTHERS              = 2
    IF SY-SUBRC <> 0.
    MESSAGE E006(ZHNC).
    ENDIF.
    ENDFORM.                    " F_GET_FILE
    *&      Form  F_XLS_ITAB
          text
         -->P_FNAME  text
         <--P_IT_EXCEL  text
    FORM F_XLS_ITAB  USING    P_FNAME
                     CHANGING P_IT_EXCEL.
    CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
      EXPORTING
        FILENAME                      = FNAME
        I_BEGIN_COL                   = P_BEGCOL
        I_BEGIN_ROW                   = P_BEGROW
        I_END_COL                     = P_ENDCOL
        I_END_ROW                     = P_ENDROW
      TABLES
        INTERN                        = IT_EXCEL
    EXCEPTIONS
       INCONSISTENT_PARAMETERS       = 1
       UPLOAD_OLE                    = 2
       OTHERS                        = 3
    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.                    " F_XLS_ITAB
    *&      Form  F_MOVE_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM F_MOVE_DATA .
    DATA : LV_INDEX TYPE I.
    FIELD-SYMBOLS <FS>.
    *--- Sorting the internal table
    SORT IT_EXCEL BY ROW COL.
    CLEAR IT_EXCEL.
    LOOP AT IT_EXCEL.
    MOVE IT_EXCEL-COL TO LV_INDEX.
    *--- Assigning the each record to an internal table row
    ASSIGN COMPONENT LV_INDEX OF STRUCTURE WA_DATA TO <FS>.
    *--- Asigning the field value to a field symbol
    MOVE IT_EXCEL-VALUE TO <FS>.
    AT END OF ROW.
    APPEND WA_DATA TO IT_DATA.
    CLEAR WA_DATA.
    ENDAT.
    ENDLOOP.
    ENDFORM.                    " F_MOVE_DATA
    *&      Form  F_GET_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM F_GET_DATA .
    LOOP AT IT_DATA INTO WA_DATA.
    MOVE-CORRESPONDING WA_DATA  TO  BAPI_HEAD.
    BAPI_HEAD-BASIC_VIEW ='X'.
    BAPI_HEAD-SALES_VIEW ='X'.
    BAPI_HEAD-PURCHASE_VIEW ='X'.
    BAPI_HEAD-STORAGE_VIEW ='X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_CLIENTDATA.
    BAPI_CLIENTDATAX-MATL_GROUP = 'X'.
    BAPI_CLIENTDATAX-BASE_UOM = 'X'.
    BAPI_CLIENTDATAX-BASE_UOM_ISO = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_PLANTDATA.
    BAPI_PLANTDATAX-PLANT = BAPI_PLANTDATA-PLANT.
    BAPI_PLANTDATAX-DEL_FLAG = 'X'.
    BAPI_PLANTDATAX-PUR_GROUP = 'X'.
    BAPI_PLANTDATAX-BASE_QTY = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_STORAGELOCATIONDATA.
    BAPI_STORAGELOCATIONDATA-PLANT = BAPI_PLANTDATA-PLANT.
    BAPI_STORAGELOCATIONDATAX-PLANT = BAPI_STORAGELOCATIONDATA-PLANT.
    BAPI_STORAGELOCATIONDATAX-STGE_LOC = BAPI_STORAGELOCATIONDATA-STGE_LOC.
    BAPI_STORAGELOCATIONDATAX-MRP_IND = 'X'.
    MOVE-CORRESPONDING WA_DATA TO BAPI_SALESDATA.
    BAPI_SALESDATAX-SALES_ORG = BAPI_SALESDATA-SALES_ORG.
    BAPI_SALESDATAX-DISTR_CHAN = BAPI_SALESDATA-DISTR_CHAN.
    BAPI_SALESDATAX-DEL_FLAG = BAPI_SALESDATA-DEL_FLAG.
    BAPI_SALESDATAX-MIN_ORDER = 'X'.
    REFRESH IT_MAKT.
    IT_MAKT-LANGU = WA_DATA-LANGU.
    IT_MAKT-MATL_DESC = WA_DATA-MATL_DESC.
    APPEND IT_MAKT.
    CLEAR IT_RET.
    REFRESH IT_RET.
    PERFORM F_CALL_BAPI.
    READ TABLE IT_RET WITH KEY TYPE = 'S'.
    IF SY-SUBRC EQ 0.
    PERFORM F_BAPI_COMMIT.
    WRITE:/ 'MATERIAL CREATED OR UPDATED SUCESSFULLY WITH MATERIAL NO',WA_DATA-MATERIAL.
    ELSE.
    MESSAGE E000(ZHNC) WITH 'ERROR IN CREATING THE MATERIAL'.
    *WRITE: / 'ERROR IN CREATIN MATERIAL',IT_RET-MESSAGE.
    *PERFORM F_DOWNLOAD.
    ENDIF.
    *ENDIF.
    ENDLOOP.
    ENDFORM.                    " F_GET_DATA
    *&      Form  F_CALL_BAPI
          text
    -->  p1        text
    <--  p2        text
    FORM F_CALL_BAPI .
    CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
      EXPORTING
        HEADDATA                   = BAPI_HEAD
       CLIENTDATA                 =  BAPI_CLIENTDATA
       CLIENTDATAX                =  BAPI_CLIENTDATAX
       PLANTDATA                  =  BAPI_PLANTDATA
       PLANTDATAX                 =  BAPI_PLANTDATAX
       STORAGELOCATIONDATA        =  BAPI_STORAGELOCATIONDATA
       STORAGELOCATIONDATAX       =  BAPI_STORAGELOCATIONDATAX
       SALESDATA                  =  BAPI_SALESDATA
       SALESDATAX                 =  BAPI_SALESDATAX
    IMPORTING
       RETURN                     =  IT_RET
    TABLES
       MATERIALDESCRIPTION        = IT_MAKT
      UNITSOFMEASURE             =
      UNITSOFMEASUREX            =
      INTERNATIONALARTNOS        =
      MATERIALLONGTEXT           =
      TAXCLASSIFICATIONS         =
      RETURNMESSAGES             =
      PRTDATA                    =
      PRTDATAX                   =
      EXTENSIONIN                =
      EXTENSIONINX               =
    APPEND IT_RET.
    ENDFORM.                    " F_CALL_BAPI
    *&      Form  F_BAPI_COMMIT
          text
    -->  p1        text
    <--  p2        text
    FORM F_BAPI_COMMIT .
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
      WAIT         =
    IMPORTING
      RETURN        =
    ENDFORM.                    " F_BAPI_COMMIT

  • How to maintain open change request control for the transaction MM02 & CS02

    hi all...
    can any one please let me know that, is there any BADI or Enhancement spot
    where i can code for my desired functionality...
    how to maintain open change request control for the transaction MM02 and CS02.
    Desired Functionality:
    • The user wants to maintain a material, bill of material or a document.
    • On the initial screen of the respective transaction (MM02, CS02)
      user enters a change request number.
    • The system checks whether the object record that the user wants to maintain
      is already assigned to other change request numbers.
    • If this is the case, the system displays a warning, stating that there are
      other open change requests for this master data record.
    • In addition, the system lists the relevant change request numbers.
    • The user can continue the maintenance or leave the transaction and first check
      the mentioned change requests.

    hi satish thanks for reverting back
    but sorry yaar given enhancement is not triggering...
    but my requirement is:
    - after executing the transaction MM02 & CS02.
    - user inputs the data for Material Number and then he enters the Change Number.
    - if the given Change Number is not maintained with the Material (i dont no
      where/how this two fields are maintained internally), then it has to raise a
      warning and it should list the existing Change Numbers for that perticular
      Material.

  • BOR type and event for transaction ABF1

    Dear experts,
    I am looking for BOR type and event to use in the workflow for transaction ABF1.
    Thanks.

    Hi,
    You can use event trace to check the events for a particular Transaction.
    1. Go to Transaction SWELS and Switch on the Event Trace.
    2. Then post your document using ABF1.
    3. Switch off the trace using Transaction using SWELS.
    Then check the transaction SWEL. If it displayed any BO and Events then you can make use of it.
    If it is finance related transaction, then you should check for the business transaction Events.
    It can be done using wizard SWU_EWBTE.
    Please do a search for Business transaction events in SDN.
    Thanks,
    Viji.

  • ERROR_CNTL_CREATE while calling BDC from transaction MM02 for Text Editor

    Hi Friends,
    I am using transaction MM02 when creating Purchase Order Text . Its working fine in foreground, but when I run it in background it is raising exception  ERROR_CNTL_CREATE when calling the Text Editor.
    I know in background SAPGui is not available and thats why it is raising the exception. But is there a way I can avoid it?
    Thanks in advance,
    Victoria
    Here is the dump info:
    The termination occurred in the ABAP program
    "CL_GUI_TEXTEDIT===============CP" 
      In "CONSTRUCTOR".                                                                 
    The main program was "SAPMMG01 ".                                                  
        The termination occurred in line 6 of the source code of the (Include)             
    program "CL_GUI_TEXTEDIT===============CM002"                                    (when calling the editor 60).                                                           
        The program "CL_GUI_TEXTEDIT===============CP" was started as a background job.                                                                               
    Error occurred during batch input processing                                           
    Here is the source code where the error occurs:
        1 *creates and links TextEdit control                                                  
        2 METHOD constructor .                                                                 
        3   DATA prog_id(80).                                                                  
        4                                                                               
    5   if parent is initial.                                                              
    >>>>>     raise error_cntl_create.                                                         
        7   endif.                                                                               
    8                                                                               
    9   CLASS cl_gui_cfw DEFINITION LOAD.                                                  
       10                                                                               
    11 * assign prog_id to get the frontend specific control                                
       12   if not activex is initial.                                                         
       13     prog_id = 'SAPGUI.TextEditCtrl.1'.                                               
       14   elseif not javabean is initial.                                                    
       15     prog_id = 'com.sap.components.controls.textEdit.SapTextEdit'.              
      endif.

    Dear Vicki Reed,
    I encounter same raise exception ERROR_CNTL_CREATE in MM02 while maintaining material texts in different languages.
    Can you please let me know how you resolved this issue in your case.
    Thanks in advance .
    Warm Regards,
    RajaShekar Gangula.

  • BAPI for Transaction VA01?

    How to Develope an interface program to upload the sales order data from legacy system to SAP using BAPI for Transaction VA01.Explain me clearly?

    VA01:
    BAPI_SALESORDER_CREATEFROMDAT1
    BAPI_SALESORDER_CREATEFROMDAT2
    steps for bapi creation
    STEP 1 - Define a structures for the BAPI
    In this step a structures for the parameters and tables of the function module used for the BAPI are defined.
    Use Data type -> Structure
    Define the following structures:
    ZBAPI_ORDER_STATUS_IMPORT which contains the following fields:
    ORDERID Order number (Keyfield)
    SPRAS Language
    ExcludeInactive - Checkbox - Exclude inactive status
    ZBAPISTAT:
    STEP 2 - Write Function Module
    Important notes:
    Each BAPI must have its own function group.
    Under the attributes tab remember to select Processing Type Remote Enabled module, otherwise the function module cannot be invoked via RFC and used as a BAPI
    Import/Export parameters can only be BY VALUE for an RFC enabled function module
    We are only creating one BAPI in this example, but you can create related BAPIs in the same function pool, so they will be able to share global data.
    Code
    Notes:
    The subroutine SET_RETURN_MESSAGE is a standard routine used for BAPIs that use the BAPIRETURN structure
    In form Z_BAPI_GET_ORDER_SYSTEM_STATUS there is a test IF 1 = 2. If the test is true a message is displayed. The condition will obviously never be true, and we will never want to display a message in a BAPI. The reason why it is included is, that it create a reference for the message, so that the WHERE USED functionality can be used for the message. This is the SAP standard way to handle it, copied from the Company Code GetList BAPI.
    INCLUDE LZBAPISTATUSUXX
      THIS FILE IS GENERATED BY THE FUNCTION LIBRARY.             *
      NEVER CHANGE IT MANUALLY, PLEASE!                           *
    INCLUDE LZBAPISTATUSU02.
                        "Z_BAPI_GET_ORDER_SYSTEM_STATUS
    INCLUDE LZBAPISTATUSTOP - Global data
    FUNCTION-POOL ZBAPISTATUS.                  "MESSAGE-ID Z3
    Types:
      begin of Type_tj02t,
        istat  like tj02t-istat,
        txt04  like tj02t-txt04,
        txt30  like tj02t-txt30,
      end of type_tj02t.
    DATA:
    Declarations for TABLE parameter
      T_BAPISTAT like ZBAPISTAT occurs 0,
      G_BAPISTAT like ZBAPISTAT,
    Table for object texts
      t_tj02t    type type_tj02t occurs 0,
      g_tj02t    type type_tj02t.
    Structure for return messages
    DATA:
      BEGIN OF MESSAGE,
        MSGTY LIKE SY-MSGTY,
        MSGID LIKE SY-MSGID,
        MSGNO LIKE SY-MSGNO,
        MSGV1 LIKE SY-MSGV1,
        MSGV2 LIKE SY-MSGV2,
        MSGV3 LIKE SY-MSGV3,
        MSGV4 LIKE SY-MSGV4,
      END OF MESSAGE.
    INCLUDE LZBAPISTATUSF01 - Subroutines
    ***INCLUDE LZBAPISTATUSF01 .
    *&      Form  SET_RETURN_MESSAGE
    This routine is used for setting the BAPI return message.
    The routine is a standard routine for BAPIs that handles the message
    structure for the BAPIRETURN structure. It has been copied from the
    BAPI Company Code Getlist
         -->P_MESSAGE  text
         <--P_RETURN  text
    form SET_RETURN_MESSAGE USING    VALUE(P_MESSAGE)   LIKE MESSAGE
                            CHANGING P_RETURN  LIKE BAPIRETURN.
      CHECK NOT MESSAGE IS INITIAL.
      CALL FUNCTION 'BALW_BAPIRETURN_GET'
           EXPORTING
                TYPE       = P_MESSAGE-MSGTY
                CL         = P_MESSAGE-MSGID
                NUMBER     = P_MESSAGE-MSGNO
                PAR1       = P_MESSAGE-MSGV1
                PAR2       = P_MESSAGE-MSGV2
                PAR3       = P_MESSAGE-MSGV3
                PAR4       = P_MESSAGE-MSGV4
             LOG_NO     = ' '
             LOG_MSG_NO = ' '
           IMPORTING
                BAPIRETURN = P_RETURN
           EXCEPTIONS
                OTHERS     = 1.
    endform.                    " SET_RETURN_MESSAGE
    FUNCTION Z_BAPI_GET_ORDER_STATUS
    FUNCTION z_bapi_get_order_system_status.
    ""Local interface:
    *"  IMPORTING
    *"     VALUE(I_AUFNR) TYPE  AUFNR
    *"     VALUE(I_SPRAS) TYPE  SPRAS DEFAULT SY-LANGU
    *"     VALUE(I_EXCLUDEINACTIVE) TYPE  CHAR1 OPTIONAL
    *"  EXPORTING
    *"     VALUE(RETURN) TYPE  BAPIRETURN
    *"  TABLES
    *"      T_BAPISTAT STRUCTURE  ZBAPISTAT
    DATA:
       l_aufnr LIKE afko-aufnr,
       l_objnr LIKE jest-objnr.
    Check if order exists
    SELECT SINGLE aufnr
        FROM afko
        INTO  l_aufnr
        WHERE aufnr = BAPI_ORDER_STATUS_IMPORT-orderid.
      IF sy-subrc NE 0.
        CLEAR message.
        message-msgty = 'E'.
        message-msgid = 'Z3'.
        message-msgno = '000'.
        message-msgv1 = BAPI_ORDER_STATUS_IMPORT-orderid.
        PERFORM set_return_message USING    message
                                   CHANGING return.
        IF 1 = 2.
        The only reason to include this statement, that will obviously
        never execute, is that it will create a referecence so that you
        can find out where a particular message is being used. This
        functionality is used by the BAPIs programmed by SAP
          MESSAGE e000(z3).
        ENDIF.
      ENDIF.
      CHECK return IS INITIAL.
    Read order status
    CONCATENATE 'OR' BAPI_ORDER_STATUS_IMPORT-orderid INTO l_objnr.
      IF BAPI_ORDER_STATUS_IMPORT-i_excludeinactive = 'X'.
        SELECT objnr stat inact
          FROM  jest
          INTO  TABLE t_bapistat
          WHERE objnr = l_objnr AND
                inact  'X'.
      ELSE.
        SELECT objnr stat inact
          FROM  jest
          INTO  TABLE t_bapistat
          WHERE objnr = l_objnr.
      ENDIF.
      IF sy-subrc  0.
      No object status found
        CLEAR message.
        message-msgty = 'E'.
        message-msgid = 'Z3'.
        message-msgno = '001'.
        message-msgv1 = BAPI_ORDER_STATUS_IMPORT-orderid.
        PERFORM set_return_message USING    message
                                   CHANGING return.
        IF 1 = 2.
          MESSAGE e001(z3).
        ENDIF.
      ENDIF.
      CHECK return IS INITIAL.
    Read order status texts
      SELECT istat txt04 txt30
        FROM tj02t
        INTO TABLE t_tj02t
        FOR ALL ENTRIES IN t_bapistat
        WHERE istat = t_bapistat-stat AND
              spras = BAPI_ORDER_STATUS_IMPORT-i_spras.
      SORT t_tj02t BY istat.
      LOOP AT t_bapistat INTO g_bapistat.
        READ TABLE t_tj02t
          WITH KEY istat = g_bapistat-stat BINARY SEARCH
         INTO g_tj02t.
        IF sy-subrc = 0.
          MOVE:
            g_tj02t-txt04 TO g_bapistat-txt04,
            g_tj02t-txt30 TO g_bapistat-txt30.
          MODIFY t_bapistat FROM g_bapistat TRANSPORTING txt04 txt30.
        ENDIF.
    ENDLOOP.
    ENDFUNCTION.
    OBJNR like JEST-OBJNR
    STAT like JEST-STAT
    INACT like JEST-INACT
    TXT04 like TJ02T-TXT04
    TXT30 likeTJ02T-TXT30
    Important note:
    You will have to define a structure for every parameter in the BAPI. You cannot use the same structures used in existing applications because BAPI structures are frozen when BAPIs are released and then there are restrictions on changing them.
    STEP 3 - Create the API Method Using the BAPI WIZARD
    The BAPI wizard is used toTo expose the remote function module as a BAPI. The wizard will generate some additional code, so the function module is a valid method of the BOR. This allows the BAPi to be called as a workflow method in addition to be called by an outside program.
    Note: Each function module corresponds to a method in the BOR
    Go to the Business Object Builder SWO1.
    You can either create the new Object type as a subtype of an existing business object or create a new business object from scratch. In this example it would be obvious to create the Object type as a subtype of BUS2005 Production order. However, to illustrate how to create a new Object type from scratch, we will do this.
    In the Object/Interface type field write the name of the new Business Object: ZORDERSTAT. Press enter and fill in the additional fields necessary to create the object type.
    Supertype: Not relevant because we are creating our object from scratch
    Program. This is the name of the program where the wizard generates code for the Object type, NOT the function module we created earlier. The program name must not be the name of an existing program.
    Press enter and create the new business object. Note that when you create the business object a standard interface, an attribute ObjectType and the methods ExistenceCheck and Display are automatically generated. These cannot be changed !
    The next step is to add the Z_BAPI_GET_ORDER_STATUS method to the business object. Select Utilities -> API methods -> Add method and write the name of the function module in the dialog box. Next the dialog ox show below will be shown. This is the start screen of the BAPI wizard. Proceed with wizard by pressing the button.
    After you have finished the wizard, you will notice that the ZGetOrderStatus has been added to the business object:
    You can double-click on the method to see its properties. To use the business object you must change the Object type status to Implemented. Use menu Edit->Change releases status->Object type->To implemented. No you can test the object (Press F8).
    Note that the BAPI wizard has added a wrapper class for the function module so it can be sued as method in the business object. Choose menu Goto->Program to display the program:
              Implementation of object type ZORDERSTAT           *****
    INCLUDE <OBJECT>.
    BEGIN_DATA OBJECT. " Do not change.. DATA is generated
    only private members may be inserted into structure private
    DATA:
    " begin of private,
    "   to declare private attributes remove comments and
    "   insert private attributes here ...
    " end of private,
          KEY LIKE SWOTOBJID-OBJKEY.
    END_DATA OBJECT. " Do not change.. DATA is generated
    BEGIN_METHOD ZGETORDERSTATUS CHANGING CONTAINER.
    DATA:
          BAPIORDERSTATUSIMPORT LIKE ZBAPI_ORDER_STATUS_IMPORT,
          RETURN LIKE BAPIRETURN,
          TBAPISTAT LIKE ZBAPISTAT OCCURS 0.
      SWC_GET_ELEMENT CONTAINER 'BapiOrderStatusImport'
           BAPIORDERSTATUSIMPORT.
      SWC_GET_TABLE CONTAINER 'TBapistat' TBAPISTAT.
      CALL FUNCTION 'Z_BAPI_GET_ORDER_STATUS'
        EXPORTING
          BAPI_ORDER_STATUS_IMPORT = BAPIORDERSTATUSIMPORT
        IMPORTING
          RETURN = RETURN
        TABLES
          T_BAPISTAT = TBAPISTAT
        EXCEPTIONS
          OTHERS = 01.
      CASE SY-SUBRC.
        WHEN 0.            " OK
        WHEN OTHERS.       " to be implemented
      ENDCASE.
      SWC_SET_ELEMENT CONTAINER 'Return' RETURN.
      SWC_SET_TABLE CONTAINER 'TBapistat' TBAPISTAT.
    END_METHOD.
    STEP 4 - Final stepsWhen the Business object has been checked and the documentation created, the following steps must be carried out:
    Release the BAPI function module (in the Function Builder).
    Release the business object type (in the BOR ObjectType -> Change release status to -> Implemented ).
    Release the BAPI as a method in the BOR (Release the methods you has created - Set the cursor on the method then
    Edit -> Change release status -> Object type component -> To released )
    For potential write BAPIs: Release the IDoc and its segments
    You can now display the BAPI in the BAPI Explorer:
    for detailed expalnation
    http://www.erpgenie.com/abap/bapi/example.htm
    do reward if helpful

  • BOR for CJ37, CJ34 - Budget change document (BPDK)

    Anyone can tell me the BOR object for Transaction CJ37, CJ34
    or for Budget Change document (BPDK)
    I want to trigger my workflow whenever and budget update is happened. I used BUS2054 but this not relevent and not able to create even for change document in SWEC with BOR BUS2054 as it is not relevent with BPDK.
    Please tell me the BOR for Budget Change document (BPDK),  or Cj37 and cj34

    see error details
    Trigger Location of Runtime Error
        Program                                 SAPLKBPS
        Include                                 LKBPSU03
        Row                                     76
        Module type                             (FUNCTION)
        Module Name                             KBPS_GET_CURRENCY
    Source Code Extract
    Line  SourceCde
       46     ENDIF.
       47
       48     TABLES FM01.
       49     IF FIKRS <> FM01-FIKRS.
       50       SELECT SINGLE * FROM FM01 WHERE FIKRS = FIKRS.
       51       IF NOT SY-SUBRC IS INITIAL.
       52         RAISE FIKRS_NOT_FOUND.
       53       ENDIF.
       54     ENDIF.
       55     MOVE FM01-WAERS TO TWAER.
       56     IF NOT FIKRS_PERIV IS INITIAL.
       57       MOVE FM01-PERIV TO PERIV.
       58     ELSE.
       59       MOVE FM01-CA_PERIV TO PERIV.
       60     ENDIF.
       61
       62     "*** Anzahl Dezimalstellen bestimmen
       63     PERFORM DETERMINE_DECIMALS USING TWAER
       64                                CHANGING OP_DECIM.
       65     EXIT.
       66   ENDIF.
       67
       68 *-----Waehrung direkt
       69   IF NOT I_WAER IS INITIAL.
       70     "*** Anzahl Dezimalstellen bestimmen
       71     PERFORM DETERMINE_DECIMALS USING I_WAER
       72                                CHANGING OP_DECIM.
       73     EXIT.
       74   ENDIF.
       75
    >>>>>   RAISE NO_PARAMETERS.
       77
       78 ENDFUNCTION.
       79
       80
    Please sujjest the solution

  • Copy Control for Transaction Types

    Hi,
    Was wondering if someone could help on following topic. We need to specify the possibility of copy control (follow-up) for certain transaction types in CRM 6.0. I've specified the source TT (ZAPP) and the target TT (ZCON) in customizing activity : Define Copying Control for Transaction Types.
    ZAPP = Custom Appointment Activity
    ZCON = Custom Opportunity
    Now, when I want to create a follow-up for ZAPP in the WebUI (via dropdown 'More' and action 'Follow-Up'), I always get an extensive list of transaction types (about 30) rather than only the opportunity that I originally specified. Any ideas?
    Thank you,
    Sebastiaan.

    Hi Kai,
    Many thanks for your answer. Indeed, the COPY_DOCUMENT is a very good alternative as it also directs the flow for follow-up. However, I have a question in regards to using this method. I can see that there are parameters that need to be provided (like PROCESS_TYPE etc) but apart from that is it also possible to change fields in the copied document.
    e.g. Currently the description of the copied document gathers the description of the action definition, but how can you pass the description of the previous document for instance? Is this also done via the actual parameters?
    Thank you,
    Sebastiaan.

  • BDC is not working in background for Transaction COR6N

    Hi ,
       We have written the BDC program for transaction COR6N. BDC works perfectly in foreground but it's not working for background option.
        SELECT SINGLE AUFPL INTO W_AUFPL FROM AFKO
                  WHERE AUFNR = W_AUFNR.
        SELECT AUFPL VORNR INTO TABLE IT_PHASE FROM AFVC
                WHERE AUFPL = W_AUFPL
                  AND PHFLG = 'X'.
        LOOP AT IT_PHASE.
        WA_BDCDATA-PROGRAM  = 'SAPLCORU_S'.
        WA_BDCDATA-DYNPRO   = '0100'.
        WA_BDCDATA-DYNBEGIN = 'X'.
        APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-FNAM     = 'AFRUD-AUFNR'.
        WA_BDCDATA-FVAL     = W_AUFNR.
        APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-FNAM     = 'AFRUD-VORNR'.
        WA_BDCDATA-FVAL     = IT_PHASE-VORNR.
        APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-FNAM     = 'BDC_OKCODE'.
        WA_BDCDATA-FVAL     = '/00'.
        APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-PROGRAM  = 'SAPLCORU_S'.
        WA_BDCDATA-DYNPRO   = '0100'.
        WA_BDCDATA-DYNBEGIN = 'X'.
        APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-FNAM     = 'AFRUD-LMNGA'.
        WA_BDCDATA-FVAL     = w_qty. "'60'.
        APPEND WA_BDCDATA TO BDCDATA.
       CLEAR WA_BDCDATA.
       WA_BDCDATA-FNAM     = 'AFRUD-BUDAT'.
       WA_BDCDATA-FVAL     = w_date. "'31.12.2008'.
       APPEND WA_BDCDATA TO BDCDATA.
        CLEAR WA_BDCDATA.
        WA_BDCDATA-FNAM     = 'BDC_OKCODE'.
        WA_BDCDATA-FVAL     = '=BU'.
        APPEND WA_BDCDATA TO BDCDATA.
        clear X_OPTIONS.
        X_OPTIONS-DISMODE = 'N'.  ' works perfectly for 'A'
        X_OPTIONS-UPDMODE = 'S'.
        X_OPTIONS-CATTMODE = ' '.
        X_OPTIONS-DEFSIZE = ' '.
        X_OPTIONS-RACOMMIT = ' '.
        X_OPTIONS-NOBINPT = 'X'.
        X_OPTIONS-NOBIEND = ' '.
        CALL TRANSACTION 'COR6N'  USING BDCDATA  OPTIONS FROM X_OPTIONS
                           MESSAGES INTO ITAB.
                     MODE 'N'  MESSAGES INTO ITAB UPDATE 'S'.
       WAIT UP TO 3 SECONDS.
        COMMIT WORK AND WAIT.
        CLEAR:BDCDATA[],WA_BDCDATA.

    HI,
    COR6N is the Enjoy Transaction and sap does not suggest to write the BDC on these transaction as most of these transaction uses the GUI elements foe better display and which cannot be recorded while processing the BDC in back ground.
    Check for the Normal transaction and write the BDC for it.
    Or
    Pass X to Rcommit flag in the CTU_PARAMS option and check.

  • Dunning Letter for transaction F150

    Hi,
    I have developed a dunning letter , level 2 for transaction F150.
    As per the requirement it should display the balance in the beging rather than in last (as it was before)
    so I coped the print program and did some changes and Assigned that program to my sap script....
    but when i am going in debugging....
    it is taking the old program only...
    Anybody having any idea where to configure my new program??
    Thanks and Best Regards.
    Kusum.

    Hi Dubey,
    You can check the following customizing settings :
    Define Dunning Forms (with SAP Forms)
    We Require some standard u201CSPROu201D settings  :
    The standard settings allow us to create dunning notices using SAP Smart Forms, we must first define the corresponding function module in u201CSPROu201D.
    1. Financial Accounting (New) Financial Accounting Global Settings ( New )  -->Business Transaction Events.
    The SAP Business Framework screen appears.
    2. Choose Settings -> P/S function modules -> ... of an SAP appl. .
        Continue..
    3. Under the Business Transaction Event (BTE) "1720" with application indicator FI-FI, change the function module name and save your entries.
    Standard settings in u201CSPROu201D
    Financial Accounting (New)--> Accounts Receivable and Accounts Payable -->Business Transactions --> Dunning --> Printout ->Assign dunning forms.
    Select u2018Dunning Procedureu2019 and choose u2018Forms for normal dunning procedureu2019
    Choose u2018Company Codeu2019
    Change the name of your dunning form
    I thought, it will work for your requirement.
    Thanks
    Raghava Vakada

  • User Exit For Transaction F150 (Dunning)

    Hi All,
    Can any one help me in finding a User Exit for Transaction <b>F150</b> (Dunning).

    Hello,
    Try this one
    F150D001
    Bye
    gabriel

  • Cancel a SD invoice error message "no authorization for transaction FB08"

    Hi Gurus,
    I am trying to cancel a SD invoice and am receiving the error message " no authorization for transaction FB08" is coming. Never has this happened in past, i have checked all the security authorizations also and they are in place. Accounting document status is showing as not cleared. Also, as per my understanding cancellation of invoice happens through VF11 which does not calls FB08. Please point out reasons as to why this could be happening and the possible solution thereof.
    regards
    Anmol Pareek

    Hi Anmol
    Once you got the error screen, immediately after that goto T code SU53 and expand all link. Take the screen shot and send it to your BASIS team to provide you proper access.
    Yes you are correct cancellation is done through VF11 but sometime some programs internally calls other T codes.
    take help of your basis team.

  • BackGround Job for Transaction VF06

    Hi Experts,
    We are having problems with the background Job for transaction VF06. We run this job every day except weekends but this job runs and takes only 0 sec without creating Invoices.
    Allthough running this transaction Manually creates Invoice with same variant.
    Kindly help me on this.
    Thanks and Regards,
    Neha Kapoor

    Hi,
    I have the seen the Log it tells:
    Date       Time     Message text                                                                 Message class Message no. Message type
    29.06.2008 22:00:48 Job started                                                                       00           516          S
    29.06.2008 22:00:48 Step 001 started (program RV60SBAT, variant SOIE AUTO BILL, user ID GGBATCH)      00           550          S
    29.06.2008 22:00:48 Job finished                                                                      00           517          S
    But Invoices are not getting created.
    Thanks and Regards,
    Neha Kapoor

  • Problem with submit report for transaction LT23

    Hi,
    I want to submit report for transaction LT23 based on the double click on a field in the output of my report. I am using selection table to pass values. The problem is I have  something called dynamic selections. I am using some selection fields from the dynamic selection option. Can anyone tell me how do I pass the values in such a case?

    In your [submit|http://help.sap.com/abapdocu/en/ABAPSUBMIT.htm] statement in the [selection screen parameters|http://help.sap.com/abapdocu/en/ABAPSUBMIT_SELSCREEN_PARAMETERS.htm] use the [WITH FREE SELECTIONS|http://help.sap.com/abapdocu/en/ABAPSUBMIT_SELSCREEN_PARAMETERS.htm#!ABAP_ADDITION_5@5@] option to pass dynamic selections
    NB: Use FREE_SELECTIONS_RANGE_2_EX to build the correct parameter texpr.
    Regards
    Raymond

Maybe you are looking for

  • Upgraded from Elements 9 to 12 since upgrading from Windows 7 to 8.1 - Issues with my old psd's.

    Hi - in regards to moving up to the newer version of Elements, I find that all the psd files I was in the middle of working with (all of them multi-layered) don't seem to be associated with photoshop anymore.  When I double-click them, windows asks m

  • C and ncurses: execl in a specific window

    Hi! Is there a way to call vfork() and then execl a system program (/usr/bin/nano for example) in a specific ncurses window and not stdscr? I'd like to achieve that, having 2 subwin of stdscr, nano will be launched in the first, but the second window

  • Using a Pages template

    When trying to use a template in pages, I have access to edit the first page, but can't "find" the subsequent pages. I am trying to use a newsletter template.

  • CSS Style switcher (styleswitcher.js)

    I'm just trying to implement this for the first time, and as far as I can tell have it set up so that it should work, but doesn't seem to be, so I guess I must be doing something wrong somewhere. The page is here : link here So I've uploaded the styl

  • Problem bei CS5

    Hallo Zusammen, habe folgendes Problem bei CS5, Programm läuft seid ca. 2 Jahren bis heute stabil, ab jetzt zeit es an das es nicht mehr Funktioniert und " Das Programm wird aufgrund eines Problems nicht richtig ausgefüht. Das Programm wird geschloss