Adding Component, Activity, Changing Activity through BAPI

Hello Everyone,
I have a requirement to develop a FM which will use the standard BAPI's to create an Activity, Change the activity status, and also add a component to the activity.
Am using BAPI_BUS2002_SET_STATUS to set the status of the activity, understand have to use BAPI_PS_INITILIZATION with it.
Using BAPI_NETWORK_MAINTAIN to maintain the activity, BAPI_NETWORK_COMP_ADD to add the component.
But the sequence of the initiailzation that I have developed are not helping me update the all of the required data.
Basic question would be a procedure to update activity, activity status and create component.
If anybody has used the above BAPI's or developed similar applications would be very much helpful.
Regards,
Prashanth

Hi Koushik,
                Thanks for the reply,
                                            But still I need to know what are the specific difference between the two function module.Even in CRM_ORDER MAINTAIN I am able to get all those Structure with which I am working in BAPIACTIVITYCRM_CREATEMULTI. I know all the other CRM Business transaction can be created through CRM_ORDER_MAINTAIN. If you could explain a bit detail in what context one should use CRM_ORDER MAINTAIN  and BAPIACTIVITYCRM_CREATEMULTI.

Similar Messages

  • Unable To Relaese a Network Activity Through BAPI

    Hi all,
           I am in the process of creating an interface between SAP PS and primavera. I use bapis to create the wbs,network , activities etc.
    In that process i need to release some activities after it gets created. If i do the same process in CJ20n and release an activity , automatically the parent wbs and the network of that activity goes into a partially released status.
    But if i try to do it through bapi i get an error that the wbs element under which the activity is present is not in a partially released status. The bapi i am using to release the activities is BAPI_BUS2002_SET_STATUS.
    Regards,
    Prasannakumar

    Why don't you use BDC for the same.
    I have used BDC for the similar parent- child relationship in one of  my assignment. As in BDC is the copy of standard txn it will not give this type of error.
    I am not sure the technically how BAPI works. As per me BAPI only changes the status field of activity and try to save than in case of  parent -child  relationship error  is natural & Usage of BAPI  is not slove your perpose.
    Regards
    Nitin

  • E Alternative I have locked and I want to change and jealousy, but the mail that has not been added recently activated I want a solution

    E Alternative I have locked and I want to change and jealousy, but the mail that has not been added recently activated I want a solution

    What?????
    No clue what you're talking about. Repost in your native language.

  • How to create Incoming Email Activity using BAPI or Function module

    To create an Incoming Email Activity using BAPI 'BAPI_ACTIVITYCRM_CREATEMULTI' or using 'CRM_ORDER_MAINTAIN' . what parameters i need to pass to a bapi.
    Suggest me with a solution.
    Regards,
    Sanjani

    For activity you must fill the following structures of 'CRM_ORDER_MAINTAIN'...
      CALL FUNCTION 'CRM_ORDER_MAINTAIN'
        EXPORTING
          it_activity_h             = t_activity_h
          iv_collect_exceptions = ''
        CHANGING
          ct_orderadm_h         = t_orderadm_h
          ct_input_fields       = t_input_fields
        EXCEPTIONS
          error_occurred        = 1
          document_locked       = 2
          no_change_allowed     = 3
          no_authority          = 4
          OTHERS                = 5.
    And at the end you must use also 'CRM_ORDER_SAVE' to performe the save.
    Regards.

  • Sales order change through bapi

    iam uploading va02 changes through bapi..but its not changing the sales order
    details in bapi_change function module item number its taking as zero. plz can any one
    say where iam going wrong.this is my code
    *______BAPI STRUCTURES
    data : bapi_header type BAPISDH1 occurs 0 with header line,
           bapi_item type BAPISDITM occurs 0 with header line,
           bapi_header_x like BAPISDH1X occurs 0 with header line,
           bapi_item_x type BAPISDITMX occurs 0 with header line,
         it_return type BAPIRET2 occurs 0 with header line.
    data: v_vbeln like BAPIVBELN-VBELN,
          v_bstkd like bapisdh1-purch_no_c,
          v_zterm like bapisdh1-pmnttrms,
          v_inco1 like bapisdh1-incoterms1,
          v_inco2 like bapisdh1-incoterms2,
          v_arktx like  bapisditm-short_text,
          v_koe1n like  bapisditm-currency.
    *_____ Internal to hold the records in the text file
    DATA : BEGIN OF it_header OCCURS 100,
      VBELN(10) ,
      BSTKD(35) ,
      ZTERM(4) ,
      INCO1(3) ,
      INCO2(28) ,
      POSNR(6) ,
      matnr(18) ,
      ARKTX(40) ,
    END OF it_header.
    *_____ Internal table to hold excel file data
    DATA : it_intern TYPE alsmex_tabline OCCURS 0 WITH HEADER LINE.
    SELECTION-SCREEN BEGIN OF BLOCK scr1 WITH FRAME TITLE text-111.
    PARAMETER : p_file TYPE rlgrap-filename OBLIGATORY .
    *paRAMETERS : p_header TYPE i DEFAULT 0.
    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 scr1.
    ___________START-OF-SELECTION________________
    START-OF-SELECTION.
    PERFORM convert_xls_itab. "to convert excel data into internal table
    ___________END-OF-SELECTION________________
    END-OF-SELECTION.
    *&      Form  convert_xls_itab
          text
    -->  p1        text
    <--  p2        text
    FORM convert_xls_itab .
    CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
      EXPORTING
       filename    = p_file
          i_begin_col = p_begcol
          i_begin_row = p_begrow
          i_end_col   = p_endcol
          i_end_row   = p_endrow
        TABLES
          intern      = it_intern.
    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.
    PERFORM move_data. " to move the data into an internal table
    ENDFORM.                    " convert_xls_itab
    ___________END-OF-SELECTION________________
    END-OF-SELECTION.
    PERFORM upload_so.   "to upload salesorder changes
    *&      Form  upload_so
          text
    -->  p1        text
    <--  p2        text
    *&      Form  move_data
          text
    -->  p1        text
    <--  p2        text
    FORM move_data .
      DATA : lv_index TYPE i.
      FIELD-SYMBOLS <fs>.
      SORT it_intern BY row col.  "Sorting Internal Table
      CLEAR it_intern.
      LOOP AT it_intern.
        MOVE it_intern-col TO lv_index.
        ASSIGN COMPONENT lv_index OF STRUCTURE it_header TO <fs>. " assigning each record to internal table row
        MOVE it_intern-value TO <fs>.
        AT END OF row.
          APPEND it_header.
          CLEAR it_header.
        ENDAT.
      ENDLOOP.
    ENDFORM.                    " MOVE_DATA
                       " move_data
    *&      Form  upload_so
          text
    -->  p1        text
    <--  p2        text
    FORM upload_so .
    LOOP AT it_header.
    Header
       v_vbeln            = it_header-VBELN.
       bapi_header-purch_no_c  = it_header-BSTKD.
       bapi_header-pmnttrms    = it_header-ZTERM.
       bapi_header-incoterms1  = it_header-INCO1.
       bapi_header-incoterms2  = it_header-INCO2.
    APPEND BAPI_header.
        bapi_header_x-updateflag = 'U'.
       bapi_header_x-purch_no_c  = 'X'.
       bapi_header_x-pmnttrms    = 'X'.
       bapi_header_x-incoterms1  = 'X'.
       bapi_header_x-incoterms2  = 'X'.
    APPEND BAPI_header_x.
    item
       REFRESH BAPI_item.
        bapi_item-ITM_NUMBER = it_header-POSNR.
        bapi_item-material =  it_header-matnr.
        bapi_item-short_text = it_header-arktx.
       bapi_item-currency   = it_item-koein.
        APPEND BAPI_item.
    bapi_item_x-updateflag = 'U'.
        bapi_item_x-ITM_NUMBER = it_header-POSNR.
        bapi_item_x-MATERIAL = 'X'.
        bapi_item_x-short_text = 'X'.
       bapi_item_x-currency   = 'X'.
        APPEND  bapi_item_x.
        CALL FUNCTION 'CONVERSION_EXIT_ALPHA_INPUT'
          EXPORTING
            INPUT         = V_VBELN
         IMPORTING
           OUTPUT        = V_VBELN.
    BAPI to change sales order
                       CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
                         EXPORTING
                           SALESDOCUMENT               = v_vbeln
                        ORDER_HEADER_IN             = bapi_header
                           ORDER_HEADER_INX            = bapi_header_x
                         SIMULATION                  =
                         BEHAVE_WHEN_ERROR           = ' '
                         INT_NUMBER_ASSIGNMENT       = ' '
                         LOGIC_SWITCH                =
                         NO_STATUS_BUF_INIT          = ' '
                         TABLES
                           RETURN                      = it_return
                        ORDER_ITEM_IN               = bapi_item
                        ORDER_ITEM_INX              = bapi_item_x
                         PARTNERS                    =
                         PARTNERCHANGES              =
                         PARTNERADDRESSES            =
                         ORDER_CFGS_REF              =
                         ORDER_CFGS_INST             =
                         ORDER_CFGS_PART_OF          =
                         ORDER_CFGS_VALUE            =
                         ORDER_CFGS_BLOB             =
                         ORDER_CFGS_VK               =
                         ORDER_CFGS_REFINST          =
                         SCHEDULE_LINES              =
                         SCHEDULE_LINESX             =
                         ORDER_TEXT                  =
                         ORDER_KEYS                  =
                         CONDITIONS_IN               =
                         CONDITIONS_INX              =
                         EXTENSIONIN                 =
    COMMIT WORK.
    ENDLOOP.
      IF IT_return-type = 'E'.
          WRITE: / 'Error :', IT_return-message, / 'for VBELN:',it_HEADER-VBELN.
        ELSEIF IT_return-type = 'S'.
          WRITE: / 'Successfully CHANGED', it_HEADER-VBELN.
        ENDIF.
    ENDFORM.                    " upload_so
    thanks

    hi
    You can use ORDER_ITEMS_IN. For further details use the documentation of the function module.This must help you in your requirement.
    regards
    Aakash Banga

  • IC Webclient: Adding new activity

    Hi All,
    Could you please tell me the steps of adding new activity (Business Activity) in IC Webclient Framework.
    Thanks
    PD

    hi
    In general these are the steps
    &#61656;     Define a transactional launcher profile.(Menu Path: IMG ->CRM-> IC WebClient ->Transaction Launcher
    ->Define Transaction Launcher Profile)
    &#61656;     Create a navigational bar profile.(IMG ->CRM-> IC WebClient -> Navigation Bar-> Define Navigation Bar Profile )
    &#61656;     Create a new button by creating a new entry to your navigation Profile(IMG ->CRM-> IC WebClient -> Navigation Bar-> Define Navigation Bar Profile Wizard)
    &#61656;     ID in navigation bar profile should be the same as your transaction launcher profile (IMG ->CRM-> IC WebClient-> Transaction Launcher -> Configure Transaction Launcher Wizard)
    Award points if helpful

  • HT1316 my phone is activated through phone company but just recently it is saying 'no service' as SIM card is provisioned how do i get service back on my phone?

    my phone is activated through carrier and has been working, just recently it is saying no service as the SIM card is not provisioned. how do i fix this?

    Now 1st make sure there is nothing wrong on the carrier side
    2nd make sure sim card works and make sure sim trey is not damaged some how.
    Try settings>general>reset>reset network settings
    Try as well a restore as new and with the iPhone as it was when you 1st got it see if you have service, if not go o an apple store or call apple care.
    Try all that in that same order, and test it afterwards.
    Hope that helps

  • Component activation in cmod for datasource enchancements

    HI GURU,
                   iam a facing a problem with  component activation in cmod for datasource enchancments.in components screen i am unabel to get tick mark on  imp column for component "EXIT_SAPLRSAP_002", give to that i am not able to write code in include .
    THANKING YOU

    hi,
    If it is standard it is not allowed to write a code if u wwant edit are write a code go to SE80 and create new once and add into that 002 include program. XRsR and select function group.
    SE80----REpository Browser--Select Function group in droup down list -XRSR----Add into includes
    Regards,
    Lakshmi

  • MPEG2 Component activation as normal user

    Our users with normal privileges (non admins) using ADOBE Premiere Elements 12 on Windows 7 64-Bit are running in to UAC when MPEG2 Component activation happens.Does there exists any possibility to preinstall this component (and even others) during silent installation of ADOBE Premiere Elements 12 (happens with SCCM 2012 as lokal admin)?
    Thanks for any answer
    Andreas

    Dear ATR
    Thanks for your answer - I am coming from a company with a volume license agreement and silent installation of PRE 12 works fine. The only problem is as mentioned the UAC when MPEG2 Component activation happens (during/after rendering). If a "normal" user cancels the UAC (trying to register the two files C:\Program Files\Adobe\Adobe Premiere Elements 12\mc_dec_mpa_ds.ax and C:\Program Files\Adobe\Adobe Premiere Elements 12\32\mc_dec_mp2v_ds.ax), rendering works anyway and no UAC appears in future!? Giving the necessary permissions on this files doesn't work...
    Unfortunately Adobe Chat for me is unusable!
    Thanks for any further suggestions.
    Andreas

  • This active component (Active X) cannot be installed, executed or displayed

    hi,
    resourceBundle=java.util.PropertyResourceBundle@6ada73d0, locale=en,
    key=SAPUR_AX_ALT, string=Due to browser or system restrictions, this active
    component (Active X) cannot be installed, executed or displayed
    When executing a Adobe Interactive [web Dynpro for Java application on IE6.0 and Adobe 7.0.9, I am getting the following info in the log "resourceBundle=java.util.PropertyResourceBundle@6ada73d0, locale=en, key=SAPUR_AX_ALT, string=Due to browser or system restrictions, this active component (Active X) cannot be installed, executed or displayed".  Instead of PDF form I am getting a blank page [with no errors in the log], can you please help me out.
    I have followed the notes 766191 and 834573 but with no success.
    thanks,
    Sanketh

    Has anyone had this kind of a problem? There is no other error in the log, IE comes up with a blank page [no embedded pdf in it]. Sometimes IE allows to download the "unknown.pdf" file but it does not embed, I feel its a clear Active X problem, please help me out.
    We are having windows 64bit, NW04s SP11 and ADs is also at the same level EP7.0 SP11 with patch1.
    And the client is Windows XP IE6.0 SP2
    Thanks,
    Sanketh

  • What does mean "2 component active for validations"?

    Hi Gurus,
    I want to activate cost center component in a controlling area(tcode okkp). So I want to know what does mean " 2 component active for validations", and the difference with " 1 component active". It seems that co document will not be created when I choose "2 component active for validations".
    Thanks in advance,
    --Alex

    Hello Alexander,
    1  -  Active
    CCA is active without limitation. Cost centers are validated against the cost center master. They can be used as account assignment objects. The CO files are updated on posting.
    2  -  Active for validations
    CCA is not active. Cost centers are validated against the cost center master. The cost centers can be used as account assignment objects but the relevant CO files are not updated on posting. If CCA is implemented at a later date, you can subsequently post the cost-relevant business transactions in cost centers to the relevant CO files (OKBA, OKBB, OKBC).
    So when you set the activation status to 1, you can post CO documents, and when you set the status to 2, co CO documents will be created but you can set CO objects on posting lines and these CO objects will be validated. This ensures, when you activate CCC at a later date, then these postings can be re-posted to CO.
    Cheers,
    Daniela

  • Print of TO created through Bapi

    Hi friends,
    I want to have immediate printing of the TO created through BAPI l_to_create_multiple.
    I don't want to change the configuration setting what is the other way to get TP printed immediately.
    Thanks,
    Kiran

    Immediate printing of Transfer order is depend on the spool code setting.If the transfer order which you are creating through L_TO_CREATE_MULTIPLE is having the spool code and print immediately is activated for the spool code then it should trigger the printing.
    SPRO---LE  - WM --ACTIVITIES -- DEFINE PRINT CONTROL  (Definition -----Spool code)

  • Material Master Update through BAPI - Follow up material not updated

    Hi Experts,
    I am updating the material master through a custom transaction using the BAPI  'BAPI_MATERIAL_SAVEDATA'. Rest of the fields are updating correctly except for discontinuation ind., effective out date & follow-up material.
    When I try to update it through MM02 it is working fine. However, when I pass the same data through BAPI it is throwing an error message that 'the material XXXXXX does not exist or is not activated'.
    Please advice.
    Thanks & Regards,
    Ashu Arora

    Some more fields need to be updated along with the discont. indicator. Now working fine.

  • Profit Center not getting uploaded through BAPI for MM01. Pls help

    Hello all,
                  I am getting an errror while uploading a file through BAPI for MM01 , The error says
    Error:
    Profit center 1000/sslcommon does not exist
    for material: AC2
    *& Report  ZBAPI_DUMMY
    REPORT  ZBAPI_MM01.
    *& Report  ZBAPI2
    TABLES
    FLAGS *
    DATA: F_STOP. " Flag used to stop processing
    DATA DECLARATIONS *
    DATA : V_EMPTY TYPE I, " No. of empty records
    V_TOTAL TYPE I. " Total no. of records.
    STRUCTURES & INTERNAL TABLES
    *--- BAPI structures
    DATA: BAPI_HEAD LIKE BAPIMATHEAD,  " Header Segment with Control
    BAPI_MAKT LIKE BAPI_MAKT, " Material Description
    BAPI_MARA1 LIKE BAPI_MARA, " Client Data
    BAPI_MARAX LIKE BAPI_MARAX, " Checkbox Structure for BAPI_MARA
    BAPI_MARC1 LIKE BAPI_MARC, " Plant View
    BAPI_MARCX LIKE BAPI_MARCX, " Checkbox Structure for BAPI_MARC
    BAPI_MBEW1 LIKE BAPI_MBEW, " Accounting View
    BAPI_MBEWX LIKE BAPI_MBEWX, " Checkbox Structure for BAPI_MBEW
    BAPI_RETURN LIKE BAPIRET2, " Return Parameter
    BAPI_MARDL LIKE BAPI_MARD,
    BAPI_MARDX LIKE BAPI_MARDX.
    *--- Internal table to hold excel file data
    DATA: IT_INTERN TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE.
    *--- Internal table to hold Matetrial descriptions
    DATA: BEGIN OF IT_MAKT OCCURS 100.
            INCLUDE STRUCTURE BAPI_MAKT.
    DATA: END OF IT_MAKT.
    *--- Internal to hold the records in the text file
    DATA : BEGIN OF IT_DATA OCCURS 100,
    WERKS(4), " Plant
    MTART(4), " Material type
    MATNR(18), " Material number
    MATKL(9) , " Material group
    MBRSH(1), " Industry sector
    MEINS(3), " Base unit of measure
    SPART(2), " Division
    EKGRP(3), " Purchasing group
    PRCTR(10), " Profit Center
    VPRSV(1), " Price control indicator
    BKLAS(4), "Valuation Class
    *stprs(12), " Standard price
    PEINH(3), " Price unit
    SPRAS(2), " Language key
    MAKTX(40), " Material description
    LGORT(4) , " storage location
    DISMM(2) , "MRP TYPE
    VERPR(23), " Moving Average Price
    MTVFP(2) , " Availability Check
    DISLS(2) , "Lot Size
    DISPO(3) , "MRP Controller
    BESKZ(1) , "Procurment Type
    FHORI(3) , "SCHEDMARGIN KEY
    PERKZ(1) , "Period Indicator
    END OF IT_DATA.
    SELECTION SCREEN. *
    SELECTION-SCREEN BEGIN OF BLOCK SCR1 WITH FRAME TITLE TEXT-111.
    PARAMETER : P_FILE TYPE RLGRAP-FILENAME OBLIGATORY  " Input File
    PARAMETER : P_MAX(4) OBLIGATORY DEFAULT '100'. " no.of recs in a session
    PARAMETERS: P_HEADER TYPE I DEFAULT 0. " Header Lines
    PARAMETERS: P_BEGCOL TYPE I DEFAULT 1 NO-DISPLAY,
    P_BEGROW TYPE I DEFAULT 2 NO-DISPLAY,
    P_ENDCOL TYPE I DEFAULT 100 NO-DISPLAY,
    P_ENDROW TYPE I DEFAULT 32000 NO-DISPLAY.
    SELECTION-SCREEN END OF BLOCK SCR1.
    AT SELECTION-SCREEN *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE.
    *--- Validating file
      PERFORM VALIDATE_FILE USING P_FILE.
    START-OF-SELECTION
    START-OF-SELECTION.
    *--- Perform to convert the Excel data into an internal table
      PERFORM CONVERT_XLS_ITAB.
      IF NOT IT_DATA[] IS INITIAL.
    *--- Perform to delete Header lines
        PERFORM DELETE_HEADER_EMPTY_RECS.
      ENDIF.
    END OF SELECTION. *
    END-OF-SELECTION.
    *--- Perform to upload Material Master data
      PERFORM UPLOAD_MATMAS.
    Form : validate_input_file
    Description : To provide F4 help for file if read from PC
    FORM VALIDATE_FILE USING F_FILE TYPE RLGRAP-FILENAME.
      CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
        CHANGING
          FILE_NAME     = F_FILE
        EXCEPTIONS
          MASK_TOO_LONG = 1
          OTHERS        = 2.
      IF SY-SUBRC <> 0.
        MESSAGE S010(ZLKPL_MSGCLASS). " 'Error in getting filename'.
      ENDIF.
    ENDFORM. " validate_input_file
    *& Form CONVER_XLS_ITAB
    text
    FORM CONVERT_XLS_ITAB.
      CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
        EXPORTING
          FILENAME    = P_FILE
          I_BEGIN_COL = P_BEGCOL
          I_BEGIN_ROW = P_BEGROW
          I_END_COL   = P_ENDCOL
          I_END_ROW   = P_ENDROW
        TABLES
          INTERN      = IT_INTERN.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *--- Perform to move the data into an internal data
      PERFORM MOVE_DATA.
    ENDFORM. " CONVERT_XLS_ITAB
    *& Form MOVE_DATA
    text
    FORM MOVE_DATA.
      DATA : LV_INDEX TYPE I.
      FIELD-SYMBOLS <FS>  .
    *--- Sorting the internal table
      SORT IT_INTERN BY ROW COL.
      CLEAR IT_INTERN.
      LOOP AT IT_INTERN.
        MOVE IT_INTERN-COL TO LV_INDEX.
    *--- Assigning the each record to an internal table row
        ASSIGN COMPONENT LV_INDEX OF STRUCTURE IT_DATA TO <FS> .
    *--- Asigning the field value to a field symbol
        MOVE IT_INTERN-VALUE TO <FS> .
        AT END OF ROW.
          APPEND IT_DATA.
          CLEAR IT_DATA.
        ENDAT.
      ENDLOOP.
    ENDFORM. " MOVE_DATA
    *& Form DELETE_HEADER_EMPTY_RECS
    To delete the Header and empty records
    FORM DELETE_HEADER_EMPTY_RECS.
      DATA: LV_TABIX LIKE SY-TABIX.
      IF NOT P_HEADER IS INITIAL.
        LOOP AT IT_DATA.
          IF P_HEADER > 0 AND NOT IT_DATA IS INITIAL.
            DELETE IT_DATA FROM 1 TO P_HEADER.
    P_HEADER = 0.
            EXIT.
          ENDIF.
        ENDLOOP.
      ENDIF.
      CLEAR IT_DATA.
    *--- To delete the empty lines from internal table
      LOOP AT IT_DATA.
        LV_TABIX = SY-TABIX.
        IF IT_DATA IS INITIAL.
          V_EMPTY = V_EMPTY + 1.
          DELETE IT_DATA INDEX LV_TABIX..
        ENDIF.
      ENDLOOP.
      CLEAR IT_DATA.
    *--- Total no of recs in file
      DESCRIBE TABLE IT_DATA LINES V_TOTAL.
      IF V_TOTAL = 0.
        MESSAGE I013(ZLKPL_MSGCLASS). " No records in the file
        F_STOP = 'X'.
        STOP.
      ENDIF.
    ENDFORM. " DELETE_HEADER_EMPTY_RECS
    *& Form UPLOAD_MATMAS
    to upload Material Master data
    FORM UPLOAD_MATMAS .
      LOOP AT IT_DATA.
    Header
        BAPI_HEAD-MATERIAL = IT_DATA-MATNR.
        BAPI_HEAD-IND_SECTOR = IT_DATA-MBRSH.
        BAPI_HEAD-MATL_TYPE = IT_DATA-MTART.
        BAPI_HEAD-BASIC_VIEW = 'X'.
        BAPI_HEAD-PURCHASE_VIEW = 'X'.
        BAPI_HEAD-ACCOUNT_VIEW = 'X'.
        BAPI_HEAD-storage_view ='X'.
        bapi_head-mrp_view = 'X'.
        bapi_head-COST_view ='X'.
    Material Description
        REFRESH IT_MAKT.
        IT_MAKT-LANGU = IT_DATA-SPRAS.
        IT_MAKT-MATL_DESC = IT_DATA-MAKTX.
        APPEND IT_MAKT.
    Client Data - Basic
        BAPI_MARA1-MATL_GROUP = IT_DATA-MATKL.
        BAPI_MARA1-BASE_UOM = IT_DATA-MEINS.
       bapi_mara1-unit_of_wt = it_data-gewei.
        BAPI_MARA1-DIVISION = IT_DATA-SPART.
        BAPI_MARAX-MATL_GROUP = 'X'.
        BAPI_MARAX-BASE_UOM = 'X'.
        BAPI_MARAX-UNIT_OF_WT = 'X'.
        BAPI_MARAX-DIVISION = 'X'.
    Plant - Purchasing
        BAPI_MARC1-PLANT = IT_DATA-WERKS.
        BAPI_MARC1-PUR_GROUP = IT_DATA-EKGRP.
        BAPI_MARC1-PROFIT_CTR = IT_DATA-PRCTR.
        BAPI_MARC1-MRP_TYPE = IT_DATA-DISMM.
        BAPI_MARC1-AVAILCHECK = IT_DATA-MTVFP.
        BAPI_MARC1-LOTSIZEKEY = IT_DATA-DISLS.
        BAPI_MARC1-MRP_CTRLER = IT_DATA-DISPO.
        BAPI_MARC1-PROC_TYPE = IT_DATA-BESKZ.
        BAPI_MARC1-SM_KEY = IT_DATA-FHORI.
        BAPI_MARC1-PERIOD_IND = IT_DATA-PERKZ.
        BAPI_MARCX-PLANT = IT_DATA-WERKS.
        BAPI_MARCX-PUR_GROUP = 'X'.
        BAPI_MARCX-AVAILCHECK = 'X'.
        BAPI_MARCX-PROFIT_CTR = 'X'.
        BAPI_MARCX-MRP_TYPE = 'X'.
        BAPI_MARCX-MRP_CTRLER = 'X'.
        BAPI_MARCX-SM_KEY = 'X'.
        BAPI_MARCX-LOTSIZEKEY = 'X'.
       Storage Location.
        BAPI_MARDL-PLANT     = IT_DATA-WERKS.
        BAPI_MARDL-STGE_LOC = IT_DATA-LGORT.
        BAPI_MARDX-PLANT    = IT_DATA-WERKS.
        BAPI_MARDX-STGE_LOC = IT_DATA-LGORT.
    Accounting
        BAPI_MBEW1-VAL_AREA = IT_DATA-WERKS.
        BAPI_MBEW1-PRICE_CTRL = IT_DATA-VPRSV.
        BAPI_MBEW1-VAL_CLASS = IT_DATA-BKLAS.
        BAPI_MBEW1-MOVING_PR = IT_DATA-VERPR.
       bapi_mbew1-std_price = it_data-stprs.
        BAPI_MBEW1-PRICE_UNIT = IT_DATA-PEINH.
        BAPI_MBEWX-VAL_AREA = IT_DATA-WERKS.
        BAPI_MBEWX-PRICE_CTRL = 'X'.
        BAPI_MBEWX-STD_PRICE = 'X'.
        BAPI_MBEWX-PRICE_UNIT = 'X'.
        BAPI_MBEWX-MOVING_PR = 'X'.
    *--- BAPI to create material
        CALL FUNCTION 'BAPI_MATERIAL_SAVEDATA'
        EXPORTING
        HEADDATA = BAPI_HEAD
        CLIENTDATA = BAPI_MARA1
        CLIENTDATAX = BAPI_MARAX
        PLANTDATA = BAPI_MARC1
        PLANTDATAX = BAPI_MARCX
    FORECASTPARAMETERS =
    FORECASTPARAMETERSX =
    PLANNINGDATA =
    PLANNINGDATAX =
    STORAGELOCATIONDATA = BAPI_MARDL
    STORAGELOCATIONDATAX = BAPI_MARDX
    VALUATIONDATA = BAPI_MBEW1
    VALUATIONDATAX = BAPI_MBEWX
    WAREHOUSENUMBERDATA =
    WAREHOUSENUMBERDATAX =
    SALESDATA = BAPI_MVKE1
    SALESDATAX = BAPI_MVKEX
    STORAGETYPEDATA =
    STORAGETYPEDATAX =
        IMPORTING
        RETURN = BAPI_RETURN
        TABLES
        MATERIALDESCRIPTION = IT_MAKT
    UNITSOFMEASURE =
    UNITSOFMEASUREX =
    INTERNATIONALARTNOS =
    MATERIALLONGTEXT =
    TAXCLASSIFICATIONS =
    RETURNMESSAGES =
    PRTDATA =
    PRTDATAX =
    EXTENSIONIN =
    EXTENSIONINX =
        IF BAPI_RETURN-TYPE = 'E'.
          WRITE:/ 'Error:' ,BAPI_RETURN-MESSAGE ,'for material:' ,
    IT_DATA-MATNR.
        ELSEIF BAPI_RETURN-TYPE = 'S'.
          CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          WAIT          =
         IMPORTING
           RETURN        = BAPI_RETURN
          WRITE: 'Successfully created material' ,IT_DATA-MATNR.
        ENDIF.
       CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          WAIT          =
        IMPORTING
          RETURN        = BAPI_RETURN
      ENDLOOP.
    ENDFORM. " UPLOAD_MATMAS

    the Profit center 1000/sslcommon  not created. first create the profit center and then upload your data.check tcode KE52 for created profit centers...

  • Execute Infopackage Through BAPI Using Excel Macro (BAPI_IPAK_START)

    Hi everyone,
    I have a problem when execute infopackage through BAPI using excel macro. I have create a button in macro. When this button is clicked, BAPI for trigger InfoPackage will executed (BAPI_IPAK_START) and this button will disabled.
    After this process completely done (traffic indicator for the request is green in update rules), the button will enabled again.
    Here the subroutine or pseudocode that i will write :
    Private Sub ClickButton()
    Begin
    1. ThisButton.Activated = False   --> Disabled Button
    2. Call BAPI/custom Function Module to execute InfoPackage (BAPI_IPAK_START)
    4. ThisButton.Activated = True   --> Enabled Button
    End
    The problem is i need some statement like this between statement no 2 and statement no 4
    Statement That I Want :
    3. Wait Until BAPI Execute Completely
    So user can click this button again only after the process is finished completely. I don't know how to do this in macro (in ABAP i know i can use "WAIT ... SECOND"), others said this can be done using event in schedule option at infopackage. Anyone,please help me.
    Thank you.
    Regards,
    Satria B

    Enter that req number in RSRQ and monitor the load
    or  right click on the DS - manage - you will req in yellow status which is in progress and you can click on the ...takes you monitor screen
    Edited by: Srinivas on Jul 6, 2010 7:51 AM

Maybe you are looking for