BAPI Enhancement for updating database.

HI,
My task is to enhance a BAPI structure in SRM, "BAPIBUS1006_CENTRAL_ORGAN",
where, when I am trying to append structures its telling me that the BAPI structure cant be enhanced. PLease find an alternative route, or else tell me how do I add some fields which are already in the SAP tables, to the BAPI.
Regards,
Gautam

Hi
<b>Documetation on Enhancement Category</b>
Enhancement Category Selection
Structures and tables that were defined by SAP in the ABAP Dictionary can be enhanced subsequently by customers using Customizing includes or append structures. The enhancements do not only refer to structures/ tables themselves, but also to dependent structures that adopt the enhancement as an include or referenced structure. Append structures that only take effect at the end of the original structure can also cause shifts - in the case of dependent structures - even within these structures.
You must select an enhancement category for the following reason: In programs where there is no active Unicode check, enhancements to tables and structures can cause syntax and runtime errors during type checks and particularly in combination with deep structures.
In programs where there is an active Unicode check, statements, operand checks, and accesses with an offset and length are problematic - for example, if numeric or deep components are inserted into a purely character-type structure and the structure thus loses its character- type nature.
Depending on the structure definition, the radio buttons allowed in the dialog box are ready for input. Choose one of the possible enhancement categories:
Cannot be enhanced
The structure must not be enhanced.
Can be enhanced or character type
All structure components and their enhancements must be character-type (C, N, D, or T). The original structure and all enhancements through Customizing includes or through append structures are subject to this limitation.
Can be enhanced or character-type or numeric
The structure and its enhancement must not contain any deep data types (tables, references, strings).
Can be enhanced in any way
The structure and its enhancement may contain components whose data type can be of any type.
Not classified
This category can be chosen, for example, for a transition status; however, it must not be chosen for creating structures.
The rules for defining the enhancement category result implicitly from the structure setup and the classification of the types used. These rules are as follows:
If the object contains at least one numeric type or a substructure or component (field has a structure/table/view as its type) that can be enhanced numerically, the object can no longer be enhanced character-type, but is itself, at most, enhanceable character-type or numeric.
If the object contains a deep component (string, reference, or table type), or it contains a substructure or component that is marked as enhanceable in any way, then the object itself is enhanceable in any way.
If the object does not contain any substructure or component that is marked as enhanceable, you can select cannot be enhanced. If the structure has not yet been enhanced, you can choose the categorycannot be enhanced in any case.
If you are creating new tables and structures in the ABAP Dictionary, the system proposes the category can be enhanced in any way as standard value for the classification of the enhancement options. If the developer chooses a more restrictive classification than can be enhanced in any way for a particular structure, then only the classification levels that adhere to the rules above are allowed. It is not possible to choose an enhancement option of a structure that is more restrictive than the classification resulting immplicitly from the structure setup and from the classification of the types used. Therefore, only the allowed categories are proposed for selection in the maintenance user interface.
If a structure depends on one or several other structures, the smallest category is chosen as implicit classification (in the order cannot be enhanced < can be enhanced and character-type < can be enhanced and character-type or numeric < can be enhanced in any way). This classification is greater than or less than the category in the other structures and also greater than or the same as the category that results from the actual setup in the original structure itself.
Regards
- Atul

Similar Messages

  • Need BAPI Name for updation of Subcontracting scheduling line agreement

    Hi All,
            Can anybody please tell me BAPI Name for updation of Subcontracting scheduling line agreement from EKET table?
    Note: BAPI_PO_CHANGE is not useful for me.
    Thanks and Regards,
    Atul.

    Hi Muralidhara,
    Can you please give some more details for this BAPI..
    I tried using it , but getting an error "No instance of object type PurchSchedAgreement has been created. External reference:"
    and "Enter G/L Account" (Infact I did specify G/L account in account assignment table)
    with regards,
    Kirti

  • Need BAPI/RFC for Updating Category field of CRM_DNO_MONITOR  from SAP R/3.

    Hi SAP GURUS!!
    I need to have a new field category in "Create support message"  of the HELP menu in SAP server. This field values needs tobe updated with that of Category in Solution Manager ( CRM_DNO_MONITOR) .We have found a BADI (SBCOS001 ) where we designed the screen for having the new field. FOr updating the value of this field to sol man, is there any bapi or rfc ..
    Thanks in Advance,
    gopa.

    Hi
    Please check the following points.
    1. Please check the settings that you maintained in the table CRMSUBTAB in ECC. You need to have an entry as follows:
    User: CRM
    Object: VENDOR_MAIN
    U/D : DOWNLOAD
    Object Class: VEND ( & not BUPA for this entry)
    Function Module: PI_BP_VENDOR_MAIN_EXTRACT
    The other entry (for upload) has similar but different values. (Refer to the OSS note 883162.)
    2. Check if you have applied any filter settings in CRM for the adapter object VENDOR_MAIN.
    Regards,
    Srini.

  • BAPI/Function for updating RP & RQ

    Hi !
    Please tell me which BAPI/Function to use for updating Reorder Point (  marc-minbe ) & Reorder Quantity( marc-bstfe ) .
    Thanks
    Moshe

    Hi,
    Please try BAPI BAPI_MATERIAL_SAVEDATA.
    Regards,
    Ferry Lianto

  • How to use BAPI extension for updating field which is not in BAPI stracture

    I am doing a conversion for control cycle create. The data is maintained in DB Table "PKHD". i have to update 12 fields threre through BAPI "BAPI_KANBANCC_CREATE". there are 11 fields in BAPI structure. but 1 field called"BERKZ" is not there . How can i update it through EXTENSION.

    Hi ,
    in the bapi extension check one structure with name BAPIPAREX will available..
    you need to pass custom structure in that..
    ands conactenate 12 field of your structure and pass in to value1 in bapirex structure and append.
    go to se11 and enter >bapiparex> check where it is used -->see the zprogram and check how it is used the add your code according to that..
    Regards,
    Prabhudas

  • Am I correct to say there's no BAPI/BAdI for updating an MSEG extension ?

    SAP allows you to append to MSEG in dictionary, although many customers agree this is not a good thing to do.
    But suppose your customer has decided to extend MSEG.
    As far as I can tell, SAP does not allow update of this extension via any of its BAPIs or BAdIs.
    My reason for claiming this is that:
    1) MSEG is received "importing", not changing, by the screen-handling interface  IF_EX_MB_MIGO_BADI that allows you to put a custom tab on MIGO
    2) MSEG is received "importing", not changing, by the standard MIGO update interface BAdI  IF_EX_MB_DOCUMENT_BADI.
    3) There are 79 flavors of Goods Movement BAPI, and so far as I can tell, none of them have "extension" capability (like the PR or PO BAPIs.)
    Do you all agree that:
    there is no way to update the custom portion of an MSEG record using an SAP provided BAPI or BAdI.
    If you disagree, please point me to the BAdI or BAPI that does this.

    Also, please note that extension capability, even in CREATE mode, is only available in a "new-style" BAdI, and therefore only at level ECC6 or above - this is spelled out specifically in Note 906314 - where it indicates that the BAdI is a "new-style" BAdI.
    So at ECC5, there is no extension capability for MSEG in any BAPI or BAdI, and at ECC6, it is still an open question in my mind as to whether there is extension capability in change mode.

  • Table control program for updating database table

    Does anybody have a sample code for a table control program which can insert/delete/update a database table?
    I mean like on the output on table control, if the user insert/delete/update the records, the corresponding records will be updated in database table also.
    Appreciate your input.
    Thanks.

    hi nuren,
    TABLES: kna1,knbk.
    DATA: v_kunnr LIKE kna1-kunnr.
    DATA: v_check TYPE c.
    DATA: BEGIN OF it_knbk OCCURS 0,
          banks LIKE knbk-banks,
          bankl LIKE knbk-bankl,
          bankn LIKE knbk-bankn,
          bkont LIKE knbk-bkont,
          koinh LIKE knbk-koinh,
          chk TYPE c,
          END OF it_knbk.
    DATA: v_ucomm TYPE sy-ucomm,
          v_dynnr TYPE sy-dynnr.
    DATA: l_index TYPE sy-index.
    data: count type i.
    CONTROLS: tc1 TYPE TABLEVIEW USING SCREEN 0200.
    *&      Module  STATUS_0100  OUTPUT
          text
    MODULE status_0100 OUTPUT.
      SET PF-STATUS 'ABC'.
    SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
          text
    MODULE user_command_0100 INPUT.
      v_ucomm = sy-ucomm.
      CASE v_ucomm.
        WHEN 'DISP' OR 'CHNG'.
          IF v_kunnr <> space.
            SELECT banks
                   bankl
                   bankn
                   bkont
                   koinh
                   FROM knbk
                   INTO TABLE it_knbk
                   WHERE kunnr = v_kunnr.
            LEAVE TO SCREEN '0200'.
          ENDIF.
        WHEN 'BACK'.
          LEAVE TO SCREEN 0.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    *&      Module  MOD_KUNNR  INPUT
          text
    MODULE mod_kunnr INPUT.
      IF NOT v_kunnr IS INITIAL.
        SELECT SINGLE
               kunnr
               FROM kna1
               INTO v_kunnr
               WHERE kunnr = v_kunnr.
        IF sy-subrc <> 0.
          MESSAGE e000(zz) WITH 'INCORRECT CUSTOMER NUMBER'.
        ENDIF.
      ENDIF.
      IF v_kunnr IS INITIAL.
        MESSAGE e000(zz) WITH 'PLEASE ENTER A VALUE'.
      ENDIF.
    ENDMODULE.                 " MOD_KUNNR  INPUT
    *&      Module  STATUS_0200  OUTPUT
          text
    MODULE status_0200 OUTPUT.
      SET PF-STATUS 'ABC1'.
    SET TITLEBAR 'xxx'.
    ENDMODULE.                 " STATUS_0200  OUTPUT
    *&      Module  SCREENMOD  OUTPUT
          text
    MODULE screenmod OUTPUT.
      IF v_ucomm = 'DISP'.
        LOOP AT SCREEN.
          screen-input = 0.
          MODIFY SCREEN.
        ENDLOOP.
      ELSE."if v_UCOMM = 'CHNG'.
        LOOP AT SCREEN.
            IF screen-group1 = 'G1'.
              screen-input = 0.
            ELSE.
              screen-input = 1.
            ENDIF.
         MODIFY SCREEN.
        ENDLOOP.
    endif.
    if sy-ucomm = 'INSE'.
    loop at screen.
    IF ( tc1-current_line <> tc1-lines ).
      screen-input = 0.
    else.
    screen-input = 1.
    modify screen.
    endif.
    endloop.
    endif.
    ENDMODULE.                 " SCREENMOD  OUTPUT
    *&      Module  EXIT2  INPUT
          text
    MODULE exit2 INPUT.
      LEAVE TO SCREEN 0.
    ENDMODULE.                 " EXIT2  INPUT
    *&      Module  modify  INPUT
          text
    MODULE modify INPUT.
          IF v_check =  'X'.
            it_knbk-chk =  'X'.
            MODIFY it_knbk index tc1-current_line.
          ELSE.
            CLEAR it_knbk-chk .
         ENDIF.
    ENDMODULE.                 " modify  INPUT
    *&      Module  USER_COMMAND_0200  INPUT
          text
    MODULE user_command_0200 INPUT.
    v_ucomm = sy-ucomm.
      CASE v_ucomm.
        WHEN 'DELE'.
            DELETE it_knbk where chk eq 'X'.
            DESCRIBE TABLE it_knbk LINES tc1-lines.
        WHEN 'INSE'.
          CLEAR it_knbk.
          APPEND it_knbk.
          DESCRIBE TABLE it_knbk LINES tc1-lines.
        WHEN 'LIST'.
          LEAVE TO LIST-PROCESSING AND RETURN TO SCREEN '0200'.
          WRITE 'Report'.
        WHEN 'BACK'.
          LEAVE TO SCREEN '0100'.
      ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0200  INPUT
    *&      Module  validate  INPUT
          text
    module validate input.
    IF IT_KNBK IS INITIAL.
    MESSAGE E000(ZZ) WITH 'A BLANK LINE CANNOT BE SAVED'.
    ENDIF.
    endmodule.                 " validate  INPUT

  • For for updating database with referential integrity

    Hi:
    Here is the essence of the problem:
    I have created an Access database that I want the fire chiefs
    to update. The database is a one to many structure with referential
    integrity set. One fire truck has many capabilities. So if Fort
    Myers has a truck named 'FM101' and it has several capabilities
    such as 1.) pumper, 2.) extrication 3.) Advanced Life Support.
    My problem is how to set up a form to do that. In particular,
    how do I set up the form so that it will allow the fire chiefs to
    input several capabilities at a time for a truck.
    I can build a form showing the truck which was obtained from
    a pick-list. And I can show another field showing a pick-list for
    the capability of that truck (pumper, extrication, ALS, etc). My
    question is how do I set up the form to allow the chiefs to input
    multiple lines for the many capabilities of that one truck? Right
    now I have one input for the truck and one input for the capability
    - but I want to enable the user to input as many capabilities as
    they feel necessary.
    How do I do that?
    thanks

    You put the capabilities in a multi-select box.
    <select name="capabilities" multiple="true">
    <option value="capability1">Capability 1</option>
    </select>

  • Enhancement for updating accounting document in MIGO

    When doing MIGO, material document gets generated in background. I would like to pass this material document num (mkpf-mblnr) to the assignment field of GR/IR line item of accounting document (BSEG-ZUONR)

    Hi, Thanks for u r response. it is giving problem
    My requirement :  Transaction is : MIGO
    Before posting of material document, update material document number in assignment field of GR/IR line item of accounting document (WE) at number commitment stage
    Update MKPF-MBLNR (Material Document Number) in BSEG-ZUONR
    but already i tried AC_DOCUMENT i got a problem .
    What i did,
    first use MB_DOCUMENT_BADI  with  method
                 mb_document_before_update.
    here i tried to get the material document and export into memory
    after use AC_DOCUMENT With method
                   change_after_check.
    here Import the material document doc num and pass it to Assignment field in
    but it is not working
    when i debug first trigger the   AC_DOCUMENT   And then it goes to   MB_DOCUMENT_BADI
    Plese help me regarding this.
    Edited by: vsreelakshmi on Feb 9, 2012 5:23 AM
    Edited by: vsreelakshmi on Feb 9, 2012 5:29 AM

  • BAPI/FM for updating VBAK

    Hi Experts,
    I need to update the AMTBL and CMFRE fields in VBAK table. Is there any BAPI or FM to update the table.
    Moderator message: please do more research before asking, show what you have done yourself when asking.
    Edited by: Thomas Zloch on Mar 3, 2012 10:32 PM

    Use the BAPI
    BAPI_INSPOPER_RECORDRESULTS
    Check the sample code from below link..
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/community/sample%2bcode%2bbapi_inspoper_recordresults

  • BAPI for updation of  Profit center in table VBRP

    Hello Friends,
    I have to Update the Field 'PRCTR' in the table VBRP. Is there some BAPI available for updating VBRP .
    I tried FM 'RV_INVOICE_ITEM_MAINTAIN'.
            FM RV_INVOICE_DOCUMENT_UPDATE
    But fields are  not getting updated
    Could you please help me, It is  urgent.
    Thanks & Regards,
    Anju N

    RV_INVOICE_DOCUMENT_UPDATE is used to buffer header updates, i don't think you need this. what you most likely need is RV_INVOICE_DOCUMENT_ADD to process the buffered item updates. but its highly recommended to have complete sequence 1. RV_INVOICE_REFRESH 2. RV_INVOICE_DOCUMENT_READ 3. series of RV_INVOICE_ITEM_MAINTAIN, if multiple line update 4.  RV_INVOICE_DOCUMENT_ADD

  • Function Module/BAPI for updating Document Status.

    Hi Experts,
    Is there any Function Module/BAPI available for updating the document status ?
    Thank You,
    Radhika.

    unresolved!

  • Reg:BAPI for updation of Progress parameter and status profile

    Hi,
    Can anybody suggest name of BAPI used for updating "progress parameter" & "Status Profile" in actvity.
    With Regards
    Rohit Prakash

    Hi Ammar,
    I have checked both BAPI but BAPI are not working as per our requirement.
    Firstly we wanted to update progress parameter like measurement method(progress version,method plan,method actual) & POC weight into activity but as per BAPI given by you there is no any field available related to measurement method(progress version,method plan,method actual).
    And secondly we wanted to update status profile residing in Activity tab not in network header or WBS.
    Waiting for some more input related to  query.
    With Regards
    Rohit Prakash

  • Bapi for updation of table VBRP

    Hi,
    I have to Update the Field 'KONDM' in the table VBRP. Is there some BAPI available for updating VBRP or we can have to go with the direct Update to the table. I have to Update this field by a stand alone report program.
    Thanks and regards,
    Pankaj Bist.

    Might be use this Function module
      CALL FUNCTION 'RV_INVOICE_ITEM_MAINTAIN'
           EXPORTING
                VBRP_I = VBRP
           IMPORTING
                VBRP_E = VBRP
           TABLES
                XKOMFK = XKOMFK
                XTHEAD = XTHEAD
                XVBFS  = XVBFS
                XVBSS  = XVBSS
                XVBRK  = XVBRK
                XVBRP  = XVBRP
                XVBPA  = XVBPA
                XKOMV  = XKOMV.
    Matintain the value in the VBRP table & pass rest as is... u get the value using the FM RV_INVOICE_DOCUMENT_READ

  • BAPI for Updating the partners in Contract Documents

    Hi All,
    I am Using a BAPI  BAPI_CONTRACT_CREATEFROMDATA for Updating the Partners in the Contract documents by passing 'U' in the field Update_flag of the structure BAPISDHD1X.
    I am facing an issue as in the BAPI Return table : S document saved successfully
                                                                                  S No data was changed.
    Please help or give me a solution to update only partners in the Contract documents(VA42).
    Also please let me know any other BAPIs that can be used to do so.
    Thanks & Regards,
    Bhargav.

    HI,
    I am passing the right data. there is no problem with the data. My question is how do we update partners in the Contract documents. If possible can you explain with example.
    Regards,
    Bhargav.

Maybe you are looking for