BAPI_PROJECT_MAINTAIN

I am getting an error in BAPI_PROJECT_MAINTAIN while trying to add an Activity to an existing Network.  The Activity number does not exist for the network so I am assuming that CREATE is the best Method to use.  Initially, this error was caused by a missing field UVORN, SubOperation, that is required to create an activity.  I do not see the connection of UVORN, a work order related field, to creating an Activity. 
Now, I am getting an Object Key error from my input data using UPDATE with the same data.  I am new to the world of PS and could use some help in getting the input data coded correctly to add and Activity.  Any help I can get on this would be gratefully appreciated.
Thank you in advance for your assistance.

Hi Robert,
It is rather the reverse way. BAPI_PROJECT_MAINTAIN has the functions of BAPI_NETWORK_MAINTAIN. Following is an extract from the documentation of the former BAPI:
"With the Maintain BAPI of the WorkBreakdownStruct business object you can edit the objects of a project definition. You can also use all the functions of the Maintain BAPI of the Network business object.
For more information, see Network.Maintain. With WorkBreakdownStruct.Maintain it is possible to edit the project definition, its WBS elements and their hierarchical relationships. The BAPI encapsulates a complete transaction in itself. As a result, several operations on project elements can be processed by only one call. The Project System determines in which order the operations are to be executed on the objects. The caller can choose the operations in any order."
RGds
Deepak

Similar Messages

  • Performance issues with BAPI_PROJECT_MAINTAIN

    Hi,
    We are facing Performance issues with BAPI_PROJECT_MAINTAIN.Would like to know any suggestions for improving performance.
    I would also like to know statistics regarding how much time is required to create a project with 3000 activities, 100 WBS etc.
    Regards

    Yes, I have. But didnt find any one relevant. If you can share time reqd for particular number of objects or suggest any solutions.
    Regards

  • BAPI_PROJECT_MAINTAIN problem while creating milestone

    Hi all,
    We created the milestone by using the function module.
    BAPI_PROJECT_MAINTAIN
    We get a success message such as milesone 00000020 created but the same is not getting displayed either in CJ20N
    or MLST table.
    Guess there is some problem with the commit.
    Kindly help me to point to solve the above issue.
    Regards,
    Ganesh J

    Just a short checklist:
    How did you use the BAPI (in test environment?? etc.)
    check application configuration (can you create milestone manually?)
    did the bapi update other fields?
    check the BAPI Documentation about usage?
    check OOS for known bugs in your release?
    Kind regards.
    Axel

  • Not able to update the project using 'BAPI_PROJECT_MAINTAIN'.

    I  want to create a project , with reference to an already existing project.
    I am using 'BAPI_PROJECT_GETINFO' to get the data of the existing project.
      The bapi gives the following:
    1)     e_project_definition.
    2)     e_wbs_element_table.
    3)     e_wbs_hierarchie_table
    I am passing the u2018e_project_definitionu2019 to 'BAPI_PROJECTDEF_CREATE' to create project.The project is created successfully.
    But I am not able to update the project with u2018e_wbs_element_tableu2019
    and u2018e_wbs_hierarchie_tableu2019. I am using 'BAPI_PROJECT_MAINTAIN' to update the project.
    The program is not giving an error, but it is also not updating the E_WBS_ELEMENT_TABLE and E_WBS_HIERARCHIE_TABLE.
    I am attaching the code below.
    *& Report  ZTEST_PC.
    DATA: project_definition   TYPE  bapipr-project_definition,
          with_activities      TYPE  bapipr-with_activities,
          with_milestones      TYPE  bapipr-with_milestones,
          with_subtree         TYPE  bapipr-with_subtree,
          e_project_definition TYPE  bapi_project_definition_ex,
          return               TYPE  bapireturn1.
    DATA: i_wbs_element_table         TYPE TABLE OF     bapi_wbs_elements,
          e_wbs_element_table         TYPE TABLE OF     bapi_wbs_element_exp,
          e_wbs_milestone_table   TYPE TABLE OF bapi_wbs_milestone_exp,
          e_wbs_hierarchie_table  TYPE TABLE OF bapi_wbs_hierarchie,
          e_activity_table        TYPE TABLE OF bapi_network_activity_exp,
          e_message_table         TYPE TABLE OF bapi_meth_message.
    DATA: wa_wbs_element_table    TYPE      bapi_wbs_element_exp,
          wa_wbs_hierarchie_table TYPE  bapi_wbs_hierarchie.
    DATA: l_new_proj_no TYPE  prpss-posid.
    DATA: l_project_definition        TYPE  bapi_project_definition.
    DATA: l_project_definition_upd    TYPE  bapi_project_definition_up.
    DATA: l_project_definition_stru   TYPE  bapi_project_definition.
    DATA :l_pspnr      TYPE ps_intnr,
          l_pspid      TYPE ps_pspid,
          l_pro_def(9) TYPE c.
    DATA :l_proj  TYPE proj.
    DATA :l_len TYPE i VALUE '0'.
    DATA: lt_dd03l TYPE TABLE OF dd03l,
          ls_dd03l TYPE dd03l.
    DATA: fieldname(50), fieldname1(50) TYPE c.
    DATA: p_ddic_name(40), struc(40), fun_struc(50) TYPE c.
    FIELD-SYMBOLS: <struc>, <c>, <sc>, <def_field> TYPE any.
    DATA : i_method_project    TYPE TABLE OF bapi_method_project,
           wa_method_project   TYPE  bapi_method_project.
    DATA : l_index TYPE bapi_method_project-refnumber.
    DATA : it_wbs_element_table         TYPE TABLE OF bapi_wbs_element,
           it_wbs_hierarchie_table      TYPE TABLE OF bapi_wbs_hierarchie.
    DATA : wl_wbs_element_table         TYPE bapi_wbs_element,
           wl_wbs_hierarchie_table      TYPE bapi_wbs_hierarchie.
    DATA : l_wbs_element_table_update   TYPE bapi_wbs_element_update.
    DATA : i_wbs_element_table_update   TYPE TABLE OF bapi_wbs_element_update.
    Get the project info of the Project 'C01.10995'
    CALL FUNCTION 'CONVERSION_EXIT_ABPSN_INPUT'
      EXPORTING
        input  = 'C01.10995'
      IMPORTING
        output = project_definition.
    CALL FUNCTION 'BAPI_PROJECT_GETINFO'
      EXPORTING
        project_definition     = project_definition
      IMPORTING
        e_project_definition   = e_project_definition
        return                 = return
      TABLES
        i_wbs_element_table    = i_wbs_element_table
        e_wbs_element_table    = e_wbs_element_table
        e_wbs_milestone_table  = e_wbs_milestone_table
        e_wbs_hierarchie_table = e_wbs_hierarchie_table
        e_activity_table       = e_activity_table
        e_message_table        = e_message_table.
    Automate the process the process to get the next number for the func module 'CN_SUCHE_FREIE_NUMMER'.
    CLEAR : l_pspnr, l_pspnr, l_pspid, l_pro_def.
    SELECT MAX( pspnr ) FROM proj INTO l_pspnr.
    SELECT SINGLE * FROM proj INTO l_proj WHERE pspnr EQ l_pspnr.
    l_pspid = l_proj-pspid.
    CALL FUNCTION 'CONVERSION_EXIT_ABPSN_OUTPUT'
      EXPORTING
        input  = l_pspid
      IMPORTING
        output = l_pspid.
    l_pro_def = l_pspid+4(5) + 1.
    CONDENSE l_pro_def.
    CONCATENATE 'C01.' l_pro_def INTO l_pspid .
    function module to generate the nect free number between the given range.
    CALL FUNCTION 'CN_SUCHE_FREIE_NUMMER'
      EXPORTING
        search_imp = '2'
        prps_s_imp = l_pspid
        prps_e_imp = 'C01.29999'
        no_dialog  = 'X'
      IMPORTING
        prps_exp   = l_new_proj_no.
    IF sy-subrc <> 0.
      EXIT.
    ENDIF.
    Update the fields of 'l_project_definition_upd' as 'X' for the fields which has values in 'E_PROJECT_DEFINITION'.
    Get the New Project Number.
    MOVE-CORRESPONDING e_project_definition TO l_project_definition.
    l_project_definition-project_definition = l_project_definition-project_definition+0(3).
    l_new_proj_no = l_new_proj_no+4(5).
    CONCATENATE l_project_definition-project_definition '.' l_new_proj_no INTO l_project_definition-project_definition.
    TRANSLATE l_project_definition-project_definition TO UPPER CASE.
    MOVE-CORRESPONDING l_project_definition TO l_project_definition_stru.
    Create the New project with the New project Number.
    CALL FUNCTION 'BAPI_PROJECTDEF_CREATE'
      EXPORTING
        project_definition_stru = l_project_definition_stru.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        wait = ' '.
    Populate internal table i_method_project for the bapi_project_maintain func module.
    CLEAR : wa_wbs_element_table,wl_wbs_element_table,wa_wbs_hierarchie_table,
            wl_wbs_hierarchie_table, it_wbs_element_table, it_wbs_hierarchie_table.
    CLEAR : wa_method_project, i_method_project, l_index .
    l_index = 0.
    LOOP AT e_wbs_element_table INTO wa_wbs_element_table.
      MOVE-CORRESPONDING wa_wbs_element_table TO wl_wbs_element_table .
      APPEND  wl_wbs_element_table  TO it_wbs_element_table .
      wa_method_project-objecttype = 'WBS_ELEMENT'.
      wa_method_project-method     = 'CREATE'.
      wa_method_project-objectkey  = wa_wbs_element_table-wbs_element.
      l_len = strlen( wa_wbs_element_table-wbs_element ).
    Setting Levels as reference number.
      CASE l_len.
        WHEN '9'.
          l_index = 1.
        WHEN '12'.
          l_index = 2.
        WHEN '15'.
          l_index = 3.
        WHEN '18'.
          l_index = 4.
      ENDCASE.
      wa_method_project-refnumber  =  l_index .
      TRANSLATE wa_method_project-objectkey TO UPPER CASE.
      APPEND wa_method_project TO i_method_project.
      CLEAR :wa_method_project, l_index.
    ENDLOOP.
    l_index = l_index + 1.
    wa_method_project-refnumber  = ' '.  "l_index .
    wa_method_project-objecttype = ' '.  "'WBS_ELEMENT'.
    wa_method_project-method     = 'SAVE'.
    wa_method_project-objectkey  = ' '.
    APPEND wa_method_project TO i_method_project.
    CLEAR wa_method_project.
    LOOP AT e_wbs_hierarchie_table INTO wa_wbs_hierarchie_table.
      MOVE-CORRESPONDING wa_wbs_hierarchie_table TO wl_wbs_hierarchie_table.
      APPEND wl_wbs_hierarchie_table TO it_wbs_hierarchie_table.
    ENDLOOP.
    Update the fields of 'l_project_definition_upd' as 'X' for the fields which has values in 'E_PROJECT_DEFINITION' respectively.
    CLEAR : l_project_definition_upd.
    p_ddic_name = 'BAPI_PROJECT_DEFINITION_UP'.
    struc       = 'l_project_definition_upd'.
    fun_struc   = 'E_PROJECT_DEFINITION'.
    TRANSLATE: p_ddic_name TO UPPER CASE,
               struc       TO UPPER CASE.
    SELECT * FROM dd03l INTO TABLE lt_dd03l WHERE tabname = p_ddic_name.
    LOOP AT lt_dd03l INTO ls_dd03l.
      ASSIGN ls_dd03l-fieldname TO <c>.
      fieldname = ls_dd03l-fieldname .
      CONCATENATE fun_struc '-' fieldname INTO fieldname.
      ASSIGN (struc) TO <struc>.
      ASSIGN COMPONENT <c> OF STRUCTURE <struc> TO <sc>.
      ASSIGN (fieldname) TO <def_field>.
      IF NOT <def_field> IS INITIAL  .
        <sc> = 'X'.
      ENDIF.
    ENDLOOP.
    Update the fields of 'l_wbs_element_table_update' as 'X' for the fields which has values in 'e_wbs_element_table' respectively.
    READ TABLE e_wbs_element_table INTO wa_wbs_element_table INDEX '1'.
    CLEAR : l_wbs_element_table_update, fieldname1, p_ddic_name, struc, fun_struc .
    p_ddic_name = 'BAPI_WBS_ELEMENT_UPDATE'.
    struc       = 'l_wbs_element_table_update'.
    fun_struc   = 'WA_WBS_ELEMENT_TABLE'.
    TRANSLATE: p_ddic_name TO UPPER CASE,
               struc       TO UPPER CASE.
    SELECT * FROM dd03l INTO TABLE lt_dd03l WHERE tabname = p_ddic_name.
    LOOP AT lt_dd03l INTO ls_dd03l.
      ASSIGN ls_dd03l-fieldname TO <c>.
      fieldname = ls_dd03l-fieldname .
      CONCATENATE fun_struc '-' fieldname INTO fieldname.
      ASSIGN (struc) TO <struc>.
      ASSIGN COMPONENT <c> OF STRUCTURE <struc> TO <sc>.
      ASSIGN (fieldname) TO <def_field>.
      IF NOT <def_field> IS INITIAL  .
        <sc> = 'X'.
      ENDIF.
    ENDLOOP.
    Append the value of l_wbs_element_table_update TO the table i_wbs_element_table_update for Bapi_project_maintain.
    CLEAR i_wbs_element_table_update.
    APPEND l_wbs_element_table_update TO i_wbs_element_table_update.
    CALL FUNCTION 'BAPI_PROJECT_MAINTAIN'
      EXPORTING
        i_project_definition       = l_project_definition
        i_project_definition_upd   = l_project_definition_upd
      TABLES
        i_method_project           = i_method_project
        i_wbs_element_table_update = i_wbs_element_table_update
        i_wbs_element_table        = it_wbs_element_table.
       i_wbs_hierarchie_table     = it_wbs_hierarchie_table.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        wait = ' '.
    Please help me to solve the issue.

    I am not sure why it is not working??  Try for any other alternate function modules.
    But i see one issue with your coding, always check the return table message type and use commit work, instead of sy-subrc check. This fails for BAPI's

  • Error in Creating Level2 WBS using BAPI_PROJECT_MAINTAIN

    Hi All,
    I am trying to Create a WBS-element at Level 2 of an already existing WBS-element using BAPI_PROJECT_MAINTAIN.
    I suppose the 'hierarchy table' has to be populated for positioning a WBS in the structure. But I am getting the error 'The transfered hierarchy is inconsistent. Too many errors.'.
    I desire to have the following WBS structure in place :
    Project Definition :   PROJ_DEF
    WBS for level 1   :   WBS1
    WBS for level 2   :   WBS2 (This has to be at a sub-node of WBS1,and NOT at the same level as  WBS1)
    Can some one give me solution to this error, and suggest a way to create the WBS in this pattern.
    Regards,
    Somil
    I have written the following code to populate the hierarchy table :
      l_hierarchy-wbs_element         = 'WBS1'.
      l_hierarchy-project_definition   = 'PROJ_DEF'.
      l_hierarchy-up                        = ' '.
      l_hierarchy-down                    = 'WBS2'.
      l_hierarchy-right                     = ' '.
      l_hierarchy-left                       = ' '.
      APPEND l_hierarchy TO t_hierarchy_table.
      l_hierarchy-wbs_element         = 'WBS2'.
      l_hierarchy-project_definition    = 'PROJ_DEF'.
      l_hierarchy-up                         = 'WBS1'.
      l_hierarchy-right                      = ' '.
      l_hierarchy-left                        = ' '.
      l_hierarchy-down                    = ''.
      APPEND l_hierarchy TO t_hierarchy_table.

    For create the network and the activity I use this:
    ***  NETWORK ACTIVITY
       wa_network-network = '000000000001'.
    *  wa_network-network_type = 'PS02'.
       wa_network-short_text = 'Network'.
       wa_network-wbs_element = ld_wbs.
       wa_network-project_definition = ld_projdef.
       APPEND wa_network TO it_network.
       wa_projmethod-objecttype = 'Network'.
       wa_projmethod-method = 'Create'.
       wa_projmethod-objectkey = ld_wbs.
       wa_projmethod-refnumber = '000001'.
       APPEND wa_projmethod TO it_projmethod.
       CLEAR wa_projmethod.
       d_refnumber = '000001'.
       wa_activity-network = wa_network-network.
       wa_activity-project_definition = ld_projdef.
       wa_activity-wbs_element = ld_wbs.
       wa_activity-activity = '0010'.
       wa_activity-control_key = 'PS02'.
       wa_activity-description = 'Activity 1'.
       wa_activity-plant = '1000'.
       wa_activity-cost_elem = '0000705003'.
       wa_activity-purch_org = '1000'.
       wa_activity-pur_group = '100'.
       wa_activity-matl_group = '90'.
       wa_activity-constraint_type_start = '5'.
       wa_activity-constraint_type_finish = '5'.
       APPEND wa_activity TO it_activity.
       CLEAR wa_activity.
       wa_projmethod-objecttype = 'NetworkActivity'.
       wa_projmethod-method = 'Create'.
       wa_projmethod-objectkey = ld_wbs.
       wa_projmethod-refnumber = d_refnumber.
       APPEND wa_projmethod TO it_projmethod.
       d_refnumber = d_refnumber + 1.
       CLEAR wa_projmethod.

  • Scheduling not carried out in BAPI_PROJECT_MAINTAIN

    Hi All,
    I am facing a problem that while updating the basic start date and basic end date for WBS elements using BAPI_PROJECT_MAINTAIN, the scheduling is not being carried out. Basic dates of WBS Elements are saved properly. But the project start date and end date are not updated accordingly.
    I am passing the following inputs:
    I_PROJECT_DEFINITION = <Project Number>
    I_PROJECT_DEFINITION_UPD-PROJECT_DEFINITION = 'X'.
    I_PROJECT_DEFINITION_UPD-START = 'X'
    I_PROJECT_DEFINITION_UPD-FINISH = 'X'
    I_WBS_ELEMENT_TABLE-WBS_ELEMENT = <WBS element Number>
    I_WBS_ELEMENT_TABLE-PROJECT_DEFINITION = <Proj Defination>
    I_WBS_ELEMENT_TABLE-WBS_BASIC_START_DATE = <Basic Start Date>
    I_WBS_ELEMENT_TABLE-WBS_BASIC_FINISH_DATE = <Basic End Date>
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_ELEMENT = 'X'
    I_WBS_ELEMENT_TABLE_UPDATE-PROJECT_DEFINITION ='X'
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_BASIC_START_DATE = 'X'
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_BASIC_FINISH_DATE = 'X'
    I_METHOD_PROJECT-REFNUMBER = '00000'.
    I_METHOD_PROJECT-METHOD = 'SAVE'.
    I_METHOD_PROJECT-REFNUMBER = '00001'.
    I_METHOD_PROJECT-OBJECTTYPE= 'WBS ELEMENT'
    I_METHOD_PROJECT-METHOD = 'UPDATE'
    I_METHOD_PROJECT-OBJECTKEY = <WBS element number>
    Please let me know the resolution to this problem.

    Hi All,
    I am facing a problem that while updating the basic start date and basic end date for WBS elements using BAPI_PROJECT_MAINTAIN, the scheduling is not being carried out. Basic dates of WBS Elements are saved properly. But the project start date and end date are not updated accordingly.
    I am passing the following inputs:
    I_PROJECT_DEFINITION = <Project Number>
    I_PROJECT_DEFINITION_UPD-PROJECT_DEFINITION = 'X'.
    I_PROJECT_DEFINITION_UPD-START = 'X'
    I_PROJECT_DEFINITION_UPD-FINISH = 'X'
    I_WBS_ELEMENT_TABLE-WBS_ELEMENT = <WBS element Number>
    I_WBS_ELEMENT_TABLE-PROJECT_DEFINITION = <Proj Defination>
    I_WBS_ELEMENT_TABLE-WBS_BASIC_START_DATE = <Basic Start Date>
    I_WBS_ELEMENT_TABLE-WBS_BASIC_FINISH_DATE = <Basic End Date>
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_ELEMENT = 'X'
    I_WBS_ELEMENT_TABLE_UPDATE-PROJECT_DEFINITION ='X'
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_BASIC_START_DATE = 'X'
    I_WBS_ELEMENT_TABLE_UPDATE-WBS_BASIC_FINISH_DATE = 'X'
    I_METHOD_PROJECT-REFNUMBER = '00000'.
    I_METHOD_PROJECT-METHOD = 'SAVE'.
    I_METHOD_PROJECT-REFNUMBER = '00001'.
    I_METHOD_PROJECT-OBJECTTYPE= 'WBS ELEMENT'
    I_METHOD_PROJECT-METHOD = 'UPDATE'
    I_METHOD_PROJECT-OBJECTKEY = <WBS element number>
    Please let me know the resolution to this problem.

  • BAPI_PROJECT_MAINTAIN error : Fill in all the required fields

    Hi All
    I am facing an error in BAPI_PROJECT_MAINTAIN in ECC 6.0. While creating WBS elemnts for existing project, I have disabled the field Responsible Cost center in the configuration.However it is still taking that field as mandatory and giving the error : Fill in all the required entry fields.
    It is working fine in 4.6C with the same configuration settings.
    Please let me know what configuration i missed in ECC 6.0 or how can I make the responsible Cost Centre as not a mandatory field.
    Please Note: I have checked the checkbox Accnt assignment Elem due to which the field Responsible Cost cnter becomes a mandatory field.
    Thanks
    Edited by: Pareekh on Apr 30, 2010 6:05 PM

    Hi
    Thanks for your response.
    I do not need to create a prject by BAPI as it is not the requirement. My query is why is the BAPI_PROJECT_MAINTAIN  in ECC 6.0 taking the field Responsible CC as mandatory field even when it has been disabled. Whereas it is working absolutely fine in 4.6C(Responsible CC has been disabled and is not mandatory anymore).
    Also, if I can get to know how can  i change the settings of Responsible CC to make it as a non-mandatory field.
    Thanks

  • Issue with using call transaction CJ9F and F.M  BAPI_PROJECT_MAINTAIN

    Hello All,
    In my custom program for a given project in selection screen we are getting all the related data as shown in CJ20N, in this screen I first created the WBS element and during save we used F.M BAPI_PROJECT_MAINTAIN to update the data, and next called transaction CJ9F to update BLC, after this we are comming back to selection screen 1000.
    Now from selection screen if i enter again into that project details screen and try to create a new WBS it is showing below information msg.
    Changing the contents of the field is not permitted
    Message no. CJ727
    If i remove the call transaction CJ9F part during save i am not getting the above error msg.
    I think i am getting this error when we call the function module BAPI_PROJECT_MAINTAIN twice in the program.
    Please help me to resolve this issue, as this msg is not allowing to save or create anything. 
    But i found that if i come totally out of my custom transaction and enter once again into that Z transaction it is working fine with out that message
    Please help me to resolve this issue.

    Hi,
    Not sure, but if it is possible, complete your project update using the custom transaction and do the CJ9F afterwards seperately.
    Regards
    Sreekanth

  • Bapi BAPI_PROJECT_MAINTAIN

    Hi SDN,
                 I am creating a Activity for a Network through the BAPI -BAPI_PROJECT_MAINTAIN in PS module. For Ext Processing Activity ( External Activity ), i am not able to create the external activity with Activity Quantity field. can any one suggest me the field for the activity quantity in the bapi for the structure BAPI_NETWORK_ACTIVITY.
    orelse is there is any other bapi to update the activity quantity for external Activities? The T-code for network is CN23. F7 for viewing the activities.

    Example - Creating a WBS element for the project definition. Creating three WBS elements TRAINING, TRAINING.1 and TRAINING.2 for project definition PD-TRAINING
    IMethodProject
    OBJECTTYPE = WBS-Element
    METHOD = Create
    OBJECTKEY = TRAINING
    REFNUMBER = 000001
    OBJECTTYPE = WBS-Element
    METHOD = Create
    OBJECTKEY = TRAINING.1
    REFNUMBER = 000002
    OBJECTTYPE = WBS element
    METHOD = Create
    OBJECTKEY = TRAINING.2
    REFNUMBER = 000003
    OBJECTTYPE =
    METHOD = Save
    OBJECTKEY =
    REFNUMBER =
    IProjectDefinition
    PROJECT_DEFINITION = PD-TRAINING
    IWbsElementTable
    Index = 1
    WBS_ELEMENT = TRAINING
    PROJECT_DEFINITION = PD-TRAINING
    DESCRIPTION = Whole project
    Index = 2
    WBS_ELEMENT = TRAINING.1
    PROJECT_DEFINITION = PD-TRAINING
    DESCRIPTION = Preparation
    Index = 3
    WBS_ELEMENT = TRAINING.2
    PROJECT_DEFINITION = PD-TRAINING
    DESCRIPTION = Execution

  • How to use BAPI_PROJECT_MAINTAIN?

    Hi,
    Please let me know how to use the BAPI, BAPI_PROJECT_MAINTAIN for maintaining project details in Project Systems(PS) module.
    Especially, I am not getting how to populate the table I_METHOD_PROJECT in the tables parameter.
    It will be more useful if you can explain with code.

    Thank you,
    Can you please explain me how to give the field values in that table?

  • Error in BAPI_PROJECT_MAINTAIN

    There is a program ZI000206 which substitutes Plant in Projects from CC Master data. We are trying to substitute Plants in almost 5000 projects.
    The problem is whenever we run the program it ends up with Error:
    Fill in All Required Fields
    though Substitution and Validations are carried out.
    While debugging the program we found it is calling standard BAPI : BAPI_PROJECT_MAINTAIN.
    The reason is that an OSS Note 1311030 which adds a call function CJWB_CHECK_BEFORE_COMMIT in from GENERAL_OBJECTS_MAINTAIN. This is causing a problem when it calls for the field PRPS-IZWEK(Investment Reason). Even though the field is hidden for projects it is calling as mandatory and throwing this error.
    I checked in customizing of screen layouts for WBS wherein this field is maintained as an input field.
    Will this change of field from input to hidden help in getting over this problem?
    Additionally I also tried CNMASS functionality for PS which also throws the same error " Fill in All Required Fields".
    input is highly appreciated.

    HI Shubhan .
    I solve my problem and in my case was the profirt cost center (profit_cctr), i write to sap and they tell me that this field is mandatory, so i use a profit  cost center "DUMMY" and i send it by default in the code, so that was my solution, i hope this help you with your problem.
    Regards.
    Alejandro

  • Need to find BAPI_PROJECT_MAINTAIN in ES Service Registry

    I need to do some testing with BAPI_PROJECT_MAINTAIN. What's the equivalent Enterprise Services Workplace function WSDL? How do I find this for testing?

    Hi,
    Check the below links:
    http://help.sap.com/saphelp_nwce711/helpdata/en/48/1d3a6198f633f4e10000000a42189d/frameset.htm
    http://help.sap.com/saphelp_nwce711/helpdata/en/48/1d3b0d98f633f4e10000000a42189d/content.htm
    http://help.sap.com/saphelp_nwce711/helpdata/en/48/1d3a6498f633f4e10000000a42189d/content.htm
    Thanks
    Dhwani

  • How to create services using BAPI_PROJECT_MAINTAIN

    Hi Gurus,
    I wish to create services ( in Ext Processing tab in tcode CN22) using BAPI_PROJECT_MAINTAIN. Please help me.
    Regards
    Ajay
    Moderator message: please search for available information/documentation before asking, try solving problems yourself first.
    Edited by: Thomas Zloch on Dec 8, 2010 2:50 PM

    Hi Lalyn.
    Firstly, I would like to suggest you not to use "REWARD POINTS" which is againts the rules of engagement.
    Hope you take things positively.
    I would like to suggest a couple of references, which are similar to your issue,
    [SDN - Reference for Updating value of WBS element - BAPI_PROJECT_MAINTAIN|Update WBS element;
    [SDN - Reference for issues related to creation of WBS element using BAPI_PROJECT_MAINTAIN|Problems with BAPI_PROJECT_MAINTAIN;
    [SDN Wiki - Standard Reference for ABAP Program to Upload WBS ELEMENTS IN Hierarchy|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/snippets/abap%2bprogram%2bto%2bupload%2bwbs%2belements%2bin%2bhierarchy ]
    Hope that's usefull.
    Good Luck & Regards.

  • Facing Problem in BAPI_PROJECT_MAINTAIN

    Hi all,
             I am facing some problem in  BAPI_PROJECT_MAINTAIN function module .
    I want to enter the parameters in I_ACTIVITY. mainly
    PERSON   DATE   TIME   WORK   DURATION   fields in ACTIVITY - Person Assignment TAB.
    so any one please tell where to pass the parameters in the above function module.
    Edited by: Swathi Kannan on Dec 4, 2008 1:19 PM

    hi,
    refer to the following link:
    http://abap.wikiprog.com/wiki/BAPI_PROJECT_MAINTAIN
    i hope it helps
    regards
    arjun

  • Multiple milestone creation issue for WBS element  'BAPI_PROJECT_MAINTAIN'?

    Hi all,
    I am using 'BAPI_PROJECT_MAINTAIN' to  create Project definition,WBS element & milestone for WBS at once.
    The program is working fine if one wbs element have one milestone.
    But If any of the WBS elements have more than one milestone, the milestones are not creating properly.
    The bottom level WBS milestones are creating for some higher level  WBS. some milestones are not at all
    creating. I am not getting any error message.
    Code for mile stone section is :
    **fill milsestone data for WBS in BAPI structures
            lv_mlstno = lv_mlstno + 1.
            it_wbsmilestone-milestone_number = lv_mlstno.
            it_wbsmilestone-wbs_element  = it_wbsdata-ID.
            it_wbsmilestone-milestone_usage = it_wbsdata-mlstn.
            concatenate it_wbsdata-edatu+6(4) it_wbsdata-edatu+3(2) it_wbsdata-edatu(2) into it_wbsmilestone-FIXED_MILESTONE_DATE_BASIC.
            it_wbsmilestone-SALES_DOC_DATE_INIDICATOR = it_wbsdata-faktp.
            it_wbsmilestone-INVOICE_PERCENTAGE   = it_wbsdata-fproz.
            append it_wbsmilestone.
            clear it_wbsmilestone.
    **fill milsestone data for WBS in BAPI update structures
            it_wbsmilestoneupd-milestone_number = cs_x.
            it_wbsmilestoneupd-wbs_element  = cs_x.
            it_wbsmilestoneupd-wbs_element  = cs_x.
            it_wbsmilestoneupd-milestone_usage = cs_x.
            it_wbsmilestoneUPD-FIXED_MILESTONE_DATE_BASIC = cs_x.
            it_wbsmilestoneupd-SALES_DOC_DATE_INIDICATOR = cs_x.
            it_wbsmilestoneupd-INVOICE_PERCENTAGE   = cs_x.
            append it_wbsmilestoneUPD.
            clear it_wbsmilestoneUPD.
    **Fill bapi table method project1 for the creation of WBS milestone
    **milestone will be created only after the creation of WBS elements first
    **lv_refnum is  the link to wbs element, which is already appened to it_methodproject
              it_methodproject-refnumber   = lv_refnum.
              it_methodproject-objecttype  = 'WBS Milestone'.
              it_methodproject-method      = 'Create'.
              append it_methodproject.
              clear it_methodproject.
          endif.
    How to resolve the issue?
    Please help.
    Thanks,
    vamshi

    Hi Ravi,
    Thanks for your continuous reply.
    The problem is solved.
    I  have passed the, reference number of WBS element  creation to milestone creation  in the 'Method' table.
    Thatswhy it is picking wrongly.
    I have corrected this by passing different reference numbers to WBS and milestone creations
    based on their tables.
    Thanks,
    Vamshi

Maybe you are looking for