BAPI_BUSPROCESSND_CREATEMULTI - SERVICE_OS

Hi,
I'm using bapi BAPI_BUSPROCESSND_CREATE(CHANGE)MULTI for creating Repair Orders.  With the SERVICE_OS you can maniputlate: Results, Reasons, Subjects.
What I want to do is to add Objects too (Material).
I don't know how to provide the bapi with the data to create this Object-Material ? When checking the bapi I see FM CRM_ORDER_MAINTAIN is called which needs the SERVICE_OS table, which contains possible Subjects and Objects (OSSET structure).  The Subjects are correctly filled in the bapi ... but I can't find where the Objects are filled (if they are!) ?
Any help is welcome.  Thanx.
Jan

Hi Jan,
You can directly use CRM_ORDER_MAINTAIN.
Check out IT_SERVICE_OS, it's TYPE is CRMT_SRV_OSSET_COMT. Just double click on it, you will see the line type CRMT_SRV_OSSET_COM. Double click on the line type you will see the structure CRMT_SRV_OSSET_COM. This struture has OSSET which is again a table type CRMT_SRV_OSSET_COMT1. Double click on it, again double click on the Line Type CRMT_SRV_OSSET_COM1, here you will see REFOBJECT and SUBJECT both are again a table type. Drill down to CRMT_SRV_REFOBJ_COMT, now here you will see the required fields that you want to populate like TYPE_OBJECT, GUID_OBJECT, PRODUCT_ID etc.
Now the question is how to populate this.
Refer the Code below.
Data : git_osset         TYPE crmt_srv_osset_wrkt1,
       wa_osset          like line of git_osset,
       git_subject       TYPE crmt_srv_subject_wrkt,
       wa_subject        like line of git_subject,
       git_REFOBJECT     Type CRMT_SRV_REFOBJ_COMT,
       wa_REFOBJECT      like line of git_refobject,
       git_service_os  TYPE TABLE OF crmt_srv_osset_wrk,
       wa_service_os   like line of git_service_os.
*Populate the subject fields in git_subject.
wa_subject-GUID = '*******'.
wa_subject-KATALOGART = '******'.
append wa_subject to git_subject.
wa_osset-subject = git_subject[].
*Populate the Object fields
wa_refobject-TYPE_OBJECT = '*****'.
wa_refobject-GUID_OBJECT = '*****'.
wa_refobject-PRODUCT_ID  = '*****'.
append wa_refobject to git_refobject.
wa_osset-refobject = git_refobject[].
append wa_osset to git_osset.
wa_service_os-osset = git_osset.
append wa_service_os to git_service_os.
Now pass this internal table to CRM_ORDER_MAINTAIN.
<b>Please reward points if it helps.</b>
Regards,
Amit Mishra

Similar Messages

  • ***********Structure details required*************

    Hi,
       can anyone please tell me the fields to opulate while passing the dates to the structure 'APPOINTMENT' of the Bapi 'Bapi_Busprocessnd_createmulti' while creating an order. I have Date values,date Profiles,date Types .Please tell the fields to pass those values in the  appointment structure.
    Regards,
    Vijay
    *******Entries will surely be rewarded*******************

    Hi Vijay,
    Although I havent found the BAPI with the name. I think since I am not on CRM Server..
    Anyways,,I have found out some of the threads in ABAP forum. Although they are not related with the same problem. But in these you can get an idea of how the values passed to this very BAPI.
    Creating service order using BAPI_BUSPROCESSND_CREATEMULTI
    Re: BAPI_BUSPROCESSND_CREATEMULTI - SERVICE_OS
    Hope this may give you some inputs to solve your issue.
    Else you put the cursor on the BAPI Function module name in SE37 and do a where used search..jst check how the values are passed for the same structure..
    Thats all I can do buddy. Best of luck..
    Regards,
    Mayank

  • Creating service order using BAPI_BUSPROCESSND_CREATEMULTI

    Hi Experts,
    I have a requirement to create a Service order using a BAPI.
    I'm trying to use the BAPI BAPI_BUSPROCESSND_CREATEMULTI. I found some code related to this BAPI on this forum and and I've written my code based on that and while executing it i'm getting a short dump. Could anyone please help me figure out what the problem is.
    My code is as follows:
    data: lv_header_guid type guid_32.
    data: begin of lit_header occurs 0,
          include type BAPIBUS20001_HEADER_INS,
          end of lit_header.
    data: wa_header type BAPIBUS20001_HEADER_INS.
    data: begin of lit_inputfields occurs 0,
          include type BAPIBUS20001_INPUT_FIELDS,
          end of lit_inputfields.
    data: wa_inputfields type BAPIBUS20001_INPUT_FIELDS.
    data: begin of lit_partner occurs 0,
          include type BAPIBUS20001_PARTNER_INS,
          end of lit_partner.
    data: wa_partner type BAPIBUS20001_PARTNER_INS.
    Create Contract header guid
      CALL FUNCTION 'GUID_CREATE'
        IMPORTING
          ev_guid_32 = lv_header_guid.
    Fill orderadm_h
      wa_header-guid         = lv_header_guid.
      wa_header-process_type = 'YSC'.
      APPEND wa_header TO lit_header.
    Fill input fields
      MOVE: lv_header_guid  TO wa_inputfields-ref_guid,
            'A'             TO wa_inputfields-ref_kind,
            '0001'         TO wa_partner-ref_partner_handle,
            'ORDERADM_H'    TO wa_inputfields-objectname,
            'PROCESS_TYPE'  TO wa_inputfields-fieldname.
      APPEND wa_inputfields TO lit_inputfields.
      CLEAR wa_inputfields.
    Fill PARTNER DETAILS
    Sold to Party
      MOVE: lv_header_guid TO wa_partner-ref_guid,
            'A'            TO wa_partner-ref_kind,
            '0001'         TO wa_partner-ref_partner_handle,
            'CRM000'         TO wa_partner-partner_fct,
            '5000000288'    TO wa_partner-partner_no,
            'BP'           TO wa_partner-no_type,
            'BP'           TO wa_partner-display_type,
            'X'        TO wa_partner-mainpartner.
      APPEND wa_partner TO lit_partner.
      CLEAR wa_partner.
    Fill input fields
      MOVE: lv_header_guid TO wa_inputfields-ref_guid,
            'A'      TO wa_inputfields-ref_kind,
            '0001'         TO wa_inputfields-logical_key,
            'PARTNER'     TO wa_inputfields-objectname.
      MOVE  'PARTNER_FCT' TO wa_inputfields-fieldname.
      APPEND wa_inputfields TO lit_inputfields.
      MOVE  'PARTNER_NO' TO wa_inputfields-fieldname.
      APPEND wa_inputfields TO lit_inputfields.
      MOVE  'NO_TYPE' TO wa_inputfields-fieldname.
      APPEND wa_inputfields TO lit_inputfields.
      MOVE  'DISPLAY_TYPE' TO wa_inputfields-fieldname.
      APPEND wa_inputfields TO lit_inputfields.
      CLEAR wa_inputfields.
      CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
        TABLES
          HEADER                  = lit_header
        ITEM                    =
        ACTIVITY                =
        SALES                   =
         PARTNER                 =  lit_partner
        ORGANISATION            =
        SHIPPING                =
        APPOINTMENT             =
        TEXT                    =
        SERVICE_OS              =
        STATUS                  =
         INPUT_FIELDS            =  lit_inputfields
        CREATED_PROCESS         =
        RETURN                  =
        LEAD                    =
        OPPORTUNITY             =
        PRODUCT                 =
        SCHEDULELINE            =
        CUSTOMER_HEAD           =
        CUSTOMER_ITEM           =
        PRICING                 =
        PRICING_ITEM            =
        CONDITION_CREATE        =
        BILLING                 =
        CONFIG_CFG              =
        CONFIG_BLB              =
        CONFIG_INS              =
        CONFIG_PRT              =
        CONFIG_VAL              =
        CONFIG_VK               =
        CONFIG_REF              =
        ADDRESS                 =
        BILLPLAN                =
        BILLPLAN_DATE           =
        EXTENSIONIN             =
        DOCUMENT_FLOW           =
        BATCH                   =
        PRICING_AGR_CRM         =
        FINPROD_ITEM            =
        CANCEL                  =
        CANCEL_IR               =
        PRODUCT_LIST            =
        PRODUCTS                =
        OBJECTS                 =
        PAYPLAN                 =
        PAYPLAN_DATE            =
        CONFIG_FILTER_CFG       =
        CONFIG_FILTER_INS       =
        CONFIG_FILTER_PRT       =
        CONFIG_FILTER_VAL       =
        ACTIVITY_I              =
        EXT_REF                 =
    ENDFUNCTION.
    I'm getting the following dump.
    Runtime Errors         ITAB_ILLEGAL_COMPONENT
    Date and Time          07.09.2006 21:29:03
    Short dump has not been completely stored (too big)
    Short text
    Invalid line component &V2 in "... KEY k1 = v1 ... kn = vn".
    Error analysis
    When the ABAP/4 program "SAPLCRM_BUSPROCESSND_BAPI" attempted to process the
    internal table "HEADER[]"
    with "... KEY k1 = v1 ... kn = vn", a component "HANDLE " was specified
    dynamically as the contents
    of the field "LV_STR_HANDLE". However, the line type "u" of the internal table
    "HEADER[]"
    contains no component "HANDLE ".
    |                                                                         -
    Information on where terminated
    Termination occurred in the ABAP program "SAPLCRM_BUSPROCESSND_BAPI" - in
    "SET_RETURN_VALUES".
    The main program was "RS_TESTFRAME_CALL ".
    In the source code you have the termination point in line 36
    of the (Include) program "LCRM_BUSPROCESSND_BAPIF80".
    Source Code Extract
    Line
    SourceCde
    6
    7
          text
    8
    9
         -->P_LT_ORDERADM_H_COM  text
    10
         -->P_LT_ORDERADM_I_COM  text
    11
         <--P_HEADER  text
    12
         <--P_ITEM  text
    13
    14
    form set_return_values  tables  header structure BAPIBUS20001_HEADER_INS
    15
    item structure BAPIBUS20001_item
    16
    using   p_lt_orderadm_h_com type any table
    17
    p_lt_orderadm_i_com  type any table
    18
    19
    20
    data: lv_str_handle type fieldname,
    21
    lv_str_headerhandle type fieldname,
    22
    lv_str_objectid type fieldname.
    23
    24
    25
    field-symbols: <ls_orderadm_h> type crmt_orderadm_h_com,
    26
    <ls_orderadm_i> type crmt_orderadm_i_com,
    27
    <ls_header> type BAPIBUS20001_HEADER_INS,
    28
    <ls_item> type BAPIBUS20001_item.
    29
    30
    31
    lv_str_handle = 'HANDLE'.
    32
    lv_str_headerhandle = 'HEADER_HANDLE'.
    33
    lv_str_objectid = 'OBJECT_ID'.
    34
    35
    loop at p_lt_orderadm_h_com assigning <ls_orderadm_h>.
    >>>>>
    read table header with key (lv_str_handle) = <ls_orderadm_h>-handle
    37
    (lv_str_objectid) = <ls_orderadm_h>-object_id
    38
    assigning <ls_header>.
    39
    if sy-subrc = 0.
    40
    <ls_header>-guid = <ls_orderadm_h>-guid.
    41
    endif.
    42
    endloop.
    |   43|                                                              
    Could anyone please help me with this.
    Thanks,
    Preethi
    Message was edited by: Preethi Sooth

    First off. Debug.
    Put a break point on the line that is generating the short dump and run your code. The ABAP debugger should display before the dump...now....
    The error specifies that the line type of the table HEADER (which is the internal representation of your lit_header table and has line type BAPIBUS20001_HEADER_INS ) doesn't have a field called HANDLE.
    Check if it does (it should have or something is very wrong, and you should report a bug to SAP).
    Check all runtime variables for that command. See if the table has any values in it. Try using your lit_header table with header-line or not.
    Your in a far better position to determine what the error is then me. Right now, I don't have access to a CRM server.
    From my experience that BAPI is a piece of .... It is hard finding functions in CRM that actually do what you want...properly...Try using CRM_ORDER_CREATE (i think it's called like that). Much better, and if you need RFC capability just write a wrapper RFC.
    Message was edited by: João Sousa

  • Set item, partner data of sales order using BAPI_BUSPROCESSND_CREATEMULTI

    hi all,
    i am using BAPI_BUSPROCESSND_CREATEMULTI to create sales order in CRM. the order is created but i dont have the partner information, item data, organization and schedule line data even though i am passing them in the bapi.
    I am generating a new guide each time for all these tables HEADER, ITEM, PARTNER, ORGANIZATION, SCHEDULELINE,u2026u2026
    and finally in 'BAPI_BUSPROCESSND_SAVE i am passing  the guide as the guide that i generated for HEADER table..I am i using the bapi in correct way?
    I don't know why I dont see any partner data, product data i, item data n my saved order.i dont know what values i should pass to the PARTNER table for REF_GUID , REF_KIND, REF_PARTNER_HANDLE . please help me.
    this is my code
    *****Internal Tables
    ***TABLES
    DATA: IT_HEADER TYPE TABLE OF BAPIBUS20001_HEADER_INS.
    DATA: IT_INPUT_FIELDS_FILL TYPE TABLE OF BAPIBUS20001_INPUT_FIELDS.
    DATA: IT_ITEM TYPE TABLE OF BAPIBUS20001_ITEM.
    DATA: IT_PARTNER TYPE TABLE OF BAPIBUS20001_PARTNER_INS.
    DATA: IT_ORGANISATION TYPE TABLE OF BAPIBUS20001_ORGMAN_INS.
    ***WORK AREA
    DATA: WA_INPUT_FIELDS TYPE BAPIBUS20001_INPUT_FIELDS.
    DATA: WA_HEADER TYPE BAPIBUS20001_HEADER_INS.
    DATA: WA_ITEM TYPE BAPIBUS20001_ITEM.
    DATA: WA_PARTNER TYPE BAPIBUS20001_PARTNER_INS.
    DATA: WA_ORGANISATION TYPE BAPIBUS20001_ORGMAN_INS.
    DATA: IT_EV_GUID_32 TYPE GUID_32.
    DATA: IT_EV_GUID_32_1 TYPE GUID_32.
    DATA: IT_EV_GUID_32_2 TYPE GUID_32.
    DATA: IT_EV_GUID_32_3 TYPE GUID_32.
    DATA: IT_OBJECTS_TO_SAVE TYPE STANDARD TABLE OF BAPIBUS20001_GUID_DIS WITH HEADER LINE.
    DATA: IT_OBJECTS_TO_SAVE_1 TYPE STANDARD TABLE OF BAPIBUS20001_GUID_DIS WITH HEADER LINE.
    CONSTANTS:true TYPE crmt_boolean VALUE 'X'.
    *Create your own GUID for each order using function module GUID_CREATE (and use output field EV_GUID_32).
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32.
    Fill of the HEADER the fields GUID, PROCESS_TYPE, DESCRIPTION and CREATED_BY,
    do NOT fill HANDLE and OBJECT_ID, other fields if needed are allowed).
    WA_HEADER-GUID                      =  IT_EV_GUID_32.
    WA_HEADER-PROCESS_TYPE              =  'ZWEB'.
    WA_HEADER-DESCRIPTION               =  'WEB ORDER'.
    WA_HEADER-CREATED_BY                =  'SAMJESI.
    APPEND WA_HEADER TO IT_HEADER.
    *For each FIELD of HEADER structure that has been filled also fill INPUT_FIELDS fields REF_GUID (header GUID),
    *REF_KIND (header REF_KIND), LOGICAL_KEY (='1'), OBJECTNAME (='ORDERADM_H') and FIELDNAME (as text).
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32.
    WA_INPUT_FIELDS-REF_KIND               =  'A'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'ORDERADM_H'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'PROCESS_TYPE'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'DESCRIPTION'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'CREATED_BY'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    *Create your own GUID for each order using function module GUID_CREATE (and use output field EV_GUID_32).
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32_1.
    *For each ITEM, create your own GUID and fill the fields GUID (item GUID), HEADER (header GUID),
    *ORDERED_PROD, DESCRIPTION, ITM_TYPE, ORDER_DATE and MODE (='A').
    WA_ITEM-GUID              =  IT_EV_GUID_32_1.
    WA_ITEM-NUMBER_INT        =  '10'.
    WA_ITEM-ORDERED_PROD      =  '000000000090000230'.
    WA_ITEM-ITM_TYPE          =  'ZTAN'.
    WA_ITEM-MODE              =  'B'.
    APPEND WA_ITEM TO IT_ITEM.
    *For each FIELD of ITEM structure that has been filled also fill INPUT_FIELDS fields REF_GUID (header GUID),
    *REF_KIND (header REF_KIND), LOGICAL_KEY (='1'), OBJECTNAME (='ORDERADM_I') and FIELDNAME (as text).
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32_1.
    WA_INPUT_FIELDS-REF_KIND               =  'B'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'ORDERADM_I'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'NUMBER_INT'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME                 =  'ORDERED_PROD'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME                 =  'ITM_TYPE'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    *For each PARTNER fill the fields REF_GUID (header GUID), REF_KIND, REF_PARTNER_HANDLE (start with 1, next 1 higher),
    *KIND_OF_ENTRY, PARTNER_FCT, PARTNER_NO, NO_TYPE and DISPLAY_TYPE.
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32_2.
    WA_PARTNER-REF_GUID                = IT_EV_GUID_32_2.
    *WA_PARTNER-REF_KIND                = '1'
    *WA_PARTNER-REF_PARTNER_HANDLE      =  '1'.
    WA_PARTNER-PARTNER_FCT             =  '00000001'.
    WA_PARTNER-PARTNER_NO              =  '100000433'.
    APPEND WA_PARTNER TO IT_PARTNER.
    *For each FIELD of PARTNER structure that has been filled also fill INPUT_FIELDS fields REF_GUID (partner GUID),
    *REF_KIND (partner REF_KIND), LOGICAL_KEY (='1'), OBJECTNAME (='PARTNER') and FIELDNAME (as text).
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32_2.
    WA_INPUT_FIELDS-REF_KIND               =  'A'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'PARTNER'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'REF_GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    *WA_INPUT_FIELDS-FIELDNAME              =  'REF_PARTNER_HANDLE'.
    *APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'PARTNER_FCT'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              = 'PARTNER_NO'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    *Fill the ORGANISATION fields REF_GUID, REF_KIND, DIS_CHANNEL, DIVISION, SALES_ORG and MODE.
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32_3.
    WA_ORGANISATION-REF_GUID = IT_EV_GUID_32_3.
    *WA_ORGANISATION-REF_KIND
    WA_ORGANISATION-DIS_CHANNEL  =  '20'.
    WA_ORGANISATION-DIVISION     =  '00'.
    WA_ORGANISATION-SALES_ORG    =  '228'.
    WA_ORGANISATION-MODE         =  'A'.
    APPEND WA_ORGANISATION TO IT_ORGANISATION.
    *For each field of ORGANISATION structure that has been filled als fill INPUT_FIELDS. OBJECTNAME='ORGMAN'.
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32_3.
    WA_INPUT_FIELDS-REF_KIND               =  'A'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'ORGMAN'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'REF_GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'DIS_CHANNEL'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'DIVISION'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              = 'SALES_ORG'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              = 'MODE'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    REFRESH: CREATED_PROCESS.
                   CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
                     TABLES
                        HEADER                  = IT_HEADER
                        ITEM                    = IT_ITEM
                        PARTNER                 = IT_PARTNER
                        ORGANISATION            = IT_ORGANISATION
                        INPUT_FIELDS            = IT_INPUT_FIELDS_FILL
                        CREATED_PROCESS         = CREATED_PROCESS
                        RETURN                  = RETURN.
    IT_OBJECTS_TO_SAVE-GUID = IT_EV_GUID_32.
    IT_OBJECTS_TO_SAVE-OBJECT_TYPE = 'BAPIBUS20001'.
    APPEND IT_OBJECTS_TO_SAVE TO IT_OBJECTS_TO_SAVE.
    CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
      EXPORTING
        UPDATE_TASK_LOCAL       = true
        SAVE_FRAME_LOG          = true
    IMPORTING
      LOG_HANDLE              =
      TABLES
        OBJECTS_TO_SAVE         = IT_OBJECTS_TO_SAVE
        SAVED_OBJECTS           = ITAB_SAVED_OBJECTS
        RETURN                  = itab_return.

    Hi Jessica,
    Please find an example of how the code is implemented.
    DATA:    lt_saved   TYPE crmt_return_objects,
             lt_exc     TYPE crmt_exception_t,
             lt_not_saved TYPE crmt_object_guid_tab.
    DATA:    lv_contact_guid TYPE crmt_object_guid.
    DATA:    lt_headerx  TYPE TABLE OF bapibus2000110_header_insx,
             ls_headerx  TYPE bapibus2000110_header_insx,
             lt_reasonx  TYPE TABLE OF bapibus2000110_reason_insx,
             ls_reasonx  TYPE bapibus2000110_reason_insx,
             lt_reason   TYPE TABLE OF bapibus2000110_reason_ins,
             ls_reason   TYPE bapibus2000110_reason_ins,
             lt_text     TYPE TABLE OF bapibus20001_text_ins,
             ls_text     TYPE bapibus20001_text_ins,
             lt_textx    TYPE TABLE OF bapibus20001_text_insx,
             ls_textx    TYPE bapibus20001_text_insx,
             lt_outcome  TYPE TABLE OF bapibus2000110_outcome_ins,
             ls_outcome  TYPE bapibus2000110_outcome_ins,
             lt_outcomex TYPE TABLE OF bapibus2000110_outcome_insx,
             ls_outcomex TYPE bapibus2000110_outcome_insx,
             lt_status   TYPE TABLE OF bapibus20001_status_ins,
             ls_status   TYPE bapibus20001_status_ins,
             lt_statusx  TYPE TABLE OF bapibus20001_status_insx,
             ls_statusx  TYPE bapibus20001_status_insx,
             lt_return   TYPE TABLE OF bapiret2,
             BEGIN OF lv_reason,
               cat(2)        TYPE c,
               code_group(8) TYPE c,
               code(4)       TYPE c,
             END OF lv_reason,
             BEGIN OF lv_outcome,
               cat(2)        TYPE c,
               code_group(8) TYPE c,
               code(4)       TYPE c,
             END OF lv_outcome,
             lv_entry TYPE boolean.
    DATA: ls_header TYPE bapibus20001_header_ins.
    DATA: lt_header TYPE STANDARD TABLE OF bapibus20001_header_ins.
    DATA: ls_input_fields TYPE bapibus20001_input_fields.
    DATA: lt_input_fields TYPE STANDARD TABLE OF bapibus20001_input_fields.
    data: lw_service_os type BAPIBUS20001_SERVICE_OS_INS.
    data: lt_service_os type standard table of BAPIBUS20001_SERVICE_OS_INS.
    DATA: guid type guid_32.
    DATA LT_RRETURN TYPE STANDARD TABLE OF BAPIRET2.
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        ev_guid_32 = guid.
    lv_contact_guid = guid.
    Description, objective, completion and priority
    description
    ls_header-guid            = guid.
    ls_header-descr_language  = sy-langu.
    ls_header-description     = 'Test'.
    ls_header-created_at      = sy-uzeit.
    ls_header-created_by      = sy-uname.
    ls_header-process_type    = 'ZPRI'.
    APPEND ls_header  TO lt_header.
    APPEND ls_headerx TO lt_headerx.
    ls_input_fields-ref_guid   = guid.
    ls_input_fields-ref_kind  = 'A'.
    ls_input_fields-objectname = 'ORDERADM_H'.
    ls_input_fields-fieldname = 'GUID'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    ls_input_fields-fieldname = 'LANGUAGE'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    ls_input_fields-fieldname = 'DESCRIPTION'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    ls_input_fields-fieldname = 'CREATED_AT'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    ls_input_fields-fieldname = 'CREATED_BY'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    ls_input_fields-fieldname = 'PROCESS_TYPE'.
    INSERT ls_input_fields INTO TABLE lt_input_fields.
    lw_service_os-REF_HANDLE = guid.
    lw_service_os-REF_GUID  = guid.
    lw_service_os-SUBJECT_PROFILE = 'ZSPTSKPRI'.
    LW_SERVICE_OS-CAT_TYPE = 'A1'.
    LW_SERVICE_OS-CODE_GROUP = 'ZCGPRI'.
    LW_SERVICE_OS-CODE = 'P120'.
    APPEND LW_SERVICE_OS TO LT_SERVICE_OS.
    CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
      TABLES
        header                  = lt_header
      ITEM                    =
      ACTIVITY                =
      SALES                   =
      PARTNER                 =
      ORGANISATION            =
      SHIPPING                =
      APPOINTMENT             =
      TEXT                    =
       SERVICE_OS              = LT_SERVICE_OS
      STATUS                  =
       input_fields            = lt_input_fields
      CREATED_PROCESS         =
       RETURN                  = LT_RRETURN
      LEAD                    =
      OPPORTUNITY             =
      PRODUCT                 =
      SCHEDULELINE            =
      CUSTOMER_HEAD           =
      CUSTOMER_ITEM           =
      PRICING                 =
      PRICING_ITEM            =
      CONDITION_CREATE        =
      BILLING                 =
      CONFIG_CFG              =
      CONFIG_BLB              =
      CONFIG_INS              =
      CONFIG_PRT              =
      CONFIG_VAL              =
      CONFIG_VK               =
      CONFIG_REF              =
      ADDRESS                 =
      BILLPLAN                =
      BILLPLAN_DATE           =
      EXTENSIONIN             =
      DOCUMENT_FLOW           =
      BATCH                   =
      PRICING_AGR_CRM         =
      FINPROD_ITEM            =
      CANCEL                  =
      CANCEL_IR               =
      PRODUCT_LIST            =
      PRODUCTS                =
      OBJECTS                 =
      PAYPLAN                 =
      PAYPLAN_DATE            =
      CONFIG_FILTER_CFG       =
      CONFIG_FILTER_INS       =
      CONFIG_FILTER_PRT       =
      CONFIG_FILTER_VAL       =
      ACTIVITY_I              =
      EXT_REF                 =
    DATA: lt_objects_to_save  TYPE TABLE OF bapibus20001_guid_dis,
          ls_objects_to_save  TYPE bapibus20001_guid_dis,
          lt_saved_objects    TYPE STANDARD TABLE OF bapibus20001_object_id,
          lt_return1        TYPE STANDARD TABLE OF bapiret2,
          lv_object_guid      TYPE crmt_object_guid.
    build save table
    ls_objects_to_save-guid = ls_header-guid.
    ls_objects_to_save-object_type = 'BUS2000125'.
    INSERT ls_objects_to_save INTO TABLE lt_objects_to_save.
    CHECK lt_objects_to_save IS NOT INITIAL.
    CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
    EXPORTING
      UPDATE_TASK_LOCAL       = FALSE
      SAVE_FRAME_LOG          = FALSE
    IMPORTING
      LOG_HANDLE              =
      TABLES
        objects_to_save         = lt_objects_to_save
       saved_objects           = lt_saved_objects
       return                  = lt_return1

  • Problem in creating complain with BAPI_BUSPROCESSND_CREATEMULTI

    *& Report  YTEST2
    REPORT  ytest2.
    DATA: lv_header_guid TYPE guid_32,
          ls_orderadm_h TYPE TABLE OF  bapibus20001_header_ins WITH HEADER LINE,
          ls_input_fields TYPE TABLE OF bapibus20001_input_fields WITH HEADER LINE,
          lt_created_process TYPE TABLE OF bapibus20001_header_ins WITH HEADER LINE,
          lt_return TYPE TABLE OF bapiret2 WITH HEADER LINE ,
          lt_objects_to_save TYPE TABLE OF bapibus20001_guid_dis WITH HEADER LINE,
          lt_saved_objects TYPE TABLE OF  bapibus20001_object_id WITH HEADER LINE,
          lt_log TYPE  bapibus20001_control-log_handle,
          ls_objects_to_save TYPE bapibus20001_guid_dis,
          lt_orgman TYPE TABLE OF bapibus20001_orgman_ins WITH HEADER LINE,
         lt_partner TYPE TABLE OF bapibus20001_partner_ins WITH HEADER LINE,
         lt_service TYPE TABLE OF bapibus20001_service_os_ins WITH HEADER LINE .
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        ev_guid_32 = lv_header_guid.
    *CONCATENATE text-d01 is_import-complt_id i
    *INTO ls_orderadm_h-description SEPARATED BY space.
    PERFORM orderadm_h.
    PERFORM orgman.
    PERFORM partner.
    PERFORM lt_service.
    CLEAR: lt_created_process, lt_return.
    CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
    TABLES
      header = ls_orderadm_h
    item =
    activity =
    sales =
      artner = lt_partner
      organisation = lt_orgman
    shipping =
    appointment = lt_appointment
    text = lt_text
      service_os = lt_service
    status =lt_status
      input_fields = ls_input_fields
      created_process = lt_created_process
      return = lt_return.
    lead =
    opportunity =
    product =
    scheduleline =
    customer_head =
    customer_item =
    pricing =
    pricing_item =
    condition_create =
    billing = *
    config_cfg =
    Config_blb =
    config_ins =
    config_prt =
    config_val = .
    CLEAR ls_objects_to_save.
    ls_objects_to_save-guid = lv_header_guid.
    APPEND ls_objects_to_save TO lt_objects_to_save.
    CLEAR lt_return.
    CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
    * EXPORTING
      * update_task_local = false
      * save_frame_log = false
       IMPORTING
         log_handle = lt_log
       TABLES
         objects_to_save = lt_objects_to_save
         saved_objects = lt_saved_objects
         return = lt_return .
    REFRESH lt_return.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        wait   = 'X'
      IMPORTING
        return = lt_return.
    BREAK-POINT.
    *&      Form  ORDERADM_H
          text
    -->  p1        text
    <--  p2        text
    FORM orderadm_h .
      ls_orderadm_h-guid = lv_header_guid.
      ls_orderadm_h-process_type = 'ZCRM'.
      ls_orderadm_h-created_by = 'IBM_ABAP'.
      ls_orderadm_h-description = 'SMS COMPLAIN'.
      APPEND ls_orderadm_h TO ls_orderadm_h.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '1'.
      ls_input_fields-objectname ='ORDERADM_H'.
      ls_input_fields-fieldname = 'GUID'.
      ls_input_fields-changeable = ' '.
      APPEND ls_input_fields TO ls_input_fields.
    *ls_input_fields-fieldname = 'HANDLE'.
    *APPEND ls_input_fields TO lS_input_fields.
      ls_input_fields-fieldname = 'PROCESS_TYPE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'DESCRIPTION'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CREATED_BY'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.                    " ORDERADM_H
    *&      Form  ORGMAN
          text
    -->  p1        text
    <--  p2        text
    FORM orgman .
    CALL FUNCTION 'GUID_CREATE'
    IMPORTING
       ev_guid_32 = lv_header_guid.
      lt_orgman-ref_guid = lv_header_guid.
      lt_orgman-dis_channel = 10.
      lt_orgman-division = 10.
      lt_orgman-sales_org = 'O 50000649'.
      lt_orgman-sales_office = 'O 50000650'.
      lt_orgman-service_org = 'O 50000649'.
      lt_orgman-mode = 'A'.
      APPEND lt_orgman TO lt_orgman.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '2'.
      ls_input_fields-objectname ='ORGMAN'.
      ls_input_fields-fieldname = 'REF_GUID'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'DIS_CHANNEL'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'DIVISION'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'SALES_ORG'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'SALES_OFFICE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'SERVICE_ORG'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.                    " ORGMAN
    *&      Form  PARTNER
          text
    -->  p1        text
    <--  p2        text
    FORM partner .
    CALL FUNCTION 'GUID_CREATE'
    IMPORTING
       ev_guid_32 = lv_header_guid.
    lt_partner-MODE = 'A'.
      lt_partner-ref_guid = lv_header_guid.
      lt_partner-partner_fct = '00000014'.
      lt_partner-partner_no = 'EM00000022'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000004'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000003'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000002'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000001'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '3'.
      ls_input_fields-objectname ='PARTNER'.
      ls_input_fields-fieldname = 'PARTNER_FCT'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'PARTNER_NO'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.                    " PARTNER
    *&      Form  LT_SERVICE
          text
    -->  p1        text
    <--  p2        text
    FORM lt_service .
    CALL FUNCTION 'GUID_CREATE'
    IMPORTING
       ev_guid_32 = lv_header_guid.
      lt_service-ref_guid = lv_header_guid.
      lt_service-subject_profile = ' ' .
      lt_service-cat_type = 'A1'.
      lt_service-code_group = 'ZCODEGR1'.
      lt_service-code = '0001'.
      lt_service-mode = 'A'.
      APPEND lt_service TO lt_service.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '4'.
      ls_input_fields-objectname ='SERVICE_OS'.
      ls_input_fields-fieldname = 'REF_GUID'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'SUBJECT_PROFILE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CAT_TYPE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CODE_GROUP'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CODE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'MODE'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.                    " LT_SERVICE

    FORM partner .
    *  CALL FUNCTION 'GUID_CREATE'
    *  IMPORTING
    *    ev_guid_32 = lv_header_guid.
    *  lt_partner-MODE = 'A'.
      lt_partner-ref_guid = lv_header_guid.
      lt_partner-partner_fct = '00000014'.
      lt_partner-partner_no = 'EM00000022'.
      lt_partner-REF_HANDLE = '0000000002'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000004'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000003'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000002'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      lt_partner-partner_fct = '00000001'.
      lt_partner-partner_no = '415'.
      APPEND lt_partner TO lt_partner.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '3'.
      ls_input_fields-objectname ='PARTNER'.
      ls_input_fields-REF_HANDLE = '0000000002'.
      ls_input_fields-fieldname = 'PARTNER_FCT'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'PARTNER_NO'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.
    FORM lt_service .
    *  CALL FUNCTION 'GUID_CREATE'
    *  IMPORTING
    *    ev_guid_32 = lv_header_guid.
      lt_service-ref_guid = lv_header_guid.
      lt_service-REF_HANDLE = '0000000002'.
      lt_service-subject_profile = ' ' .
      lt_service-cat_type = 'A1'.
      lt_service-code_group = 'ZCODEGR1'.
      lt_service-code = '0001'.
      lt_service-mode = 'A'.
      APPEND lt_service TO lt_service.
      CLEAR ls_input_fields.
      ls_input_fields-ref_guid = lv_header_guid.
      ls_input_fields-ref_kind = 'A'.
      ls_input_fields-logical_key = '4'.
      ls_input_fields-objectname ='SERVICE_OS'.
      ls_input_fields-REF_HANDLE = '0000000002'.
      ls_input_fields-fieldname = 'REF_GUID'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'SUBJECT_PROFILE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CAT_TYPE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CODE_GROUP'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'CODE'.
      APPEND ls_input_fields TO ls_input_fields.
      ls_input_fields-fieldname = 'MODE'.
      APPEND ls_input_fields TO ls_input_fields.
    ENDFORM.

  • Trying to create a sales order in CRM with BAPI_BUSPROCESSND_CREATEMULTI.

    hi all,
    I am trying to create a sales order in CRM using the BAPI BAPI_BUSPROCESSND_CREATEMULTI.
    I need the sales order number as the out put. So I am declaring OBJECT_ID as the export parameter.
    This is my source code, I donu2019t get an error, but the sales order is not generated and I donu2019t get any output for my export parameter OBJECT_ID.
    I am setting the tables HEADER,ITEM ,SALES,PARTNER, ORGANISATION, RETURN and
        SCHEDULELINE in BAPI_BUSPROCESSND_CREATEMULTI. But still unable to display the sales order number. Please help me with information
    This is my code
    ***********************************Define the Internal Tables*************************
    DATA: IT_HEADER TYPE STANDARD TABLE OF BAPIBUS20001_HEADER_INS WITH HEADER LINE.
    DATA: IT_SALES TYPE STANDARD TABLE OF BAPIBUS20001_SALES WITH HEADER LINE.
    DATA: IT_ITEM TYPE STANDARD TABLE OF BAPIBUS20001_ITEM WITH HEADER LINE.
    DATA: IT_SCHEDULELINE TYPE STANDARD TABLE OF BAPIBUS20001_SCHEDLIN WITH HEADER LINE.
    DATA: IT_PARTNER TYPE STANDARD TABLE OF BAPIBUS20001_PARTNER_INS WITH HEADER LINE.
    DATA: IT_ORGANIZATION TYPE STANDARD TABLE OF BAPIBUS20001_ORGMAN_INS WITH HEADER LINE.
    **Values for Internal Table IT_HEADER**
    IT_HEADER-PROCESS_TYPE  =  'YWEB'.
    IT_HEADER-DESCRIPTION   =  'Web Order'.
    IT_HEADER-POSTING_DATE  =  'SY-DATUM'.
    IT_HEADER-CREATED_BY    =  'SY-USER'.
    APPEND IT_HEADER TO IT_HEADER.
    **Values for Internal Table IT_SALES**
    IT_SALES-PO_NUMBER_SOLD = '1'.
    APPEND IT_SALES TO IT_SALES.
    **Values for Internal Table IT_ITEM**
    IT_ITEM-NUMBER_INT  =  '20'.
    IT_ITEM-ORDERED_PROD  =  '50000180'.
    IT_ITEM-ITM_TYPE  =  'ZABC'.
    APPEND IT_ITEM TO IT_ITEM.
    **Values for Internal Table IT_PARTNER**
    IT_PARTNER-REF_PARTNER_NO  =  '100000620'.
    IT_PARTNER-REF_PARTNER_FCT = 'CRMH04'.
    APPEND IT_PARTNER TO IT_PARTNER.
    **Values for Internal Table IT_ORGANIZATION**
    IT_ORGANIZATION-SALES_ORG = 'O 50000100'.
    IT_ORGANIZATION-DIS_CHANNEL = '30'.
    IT_ORGANIZATION-DIVISION = '80'.
    APPEND IT_ORGANIZATION TO IT_ORGANIZATION.
    **Values for Internal Table IT_SCHEDULELINE**
    IT_SCHEDULELINE-QUANTITY  =  '2.268'.
    APPEND IT_SCHEDULELINE TO IT_SCHEDULELINE.
    **Call BAPI_BUSPROCESSND_CREATEMULTI for creating a sales 0rder******
    CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
      TABLES
        HEADER                  =  IT_HEADER
        ITEM                    =  IT_ITEM
        SALES                   =  IT_SALES
        PARTNER                 =  IT_PARTNER
        ORGANISATION            =  IT_ORGANIZATION
        RETURN                  = IT_RETURN1
        SCHEDULELINE            = IT_SCHEDULELINE.
    ****************CALL COMMIT WORK**********
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
        WAIT          = 'X'
    IMPORTING
       RETURN        =  IT_RETURN2.
    ENDFUNCTION.
    Edited by: jessica sam on Dec 10, 2008 1:45 AM

    Hi am getting the sales order but the item data is not available in sales order. Also should I generate a new guide always for HEADER, ITEM, PARTNER, ORGANIZATION, SCHEDULELINE,u2026u2026for the tables that I use?
    I  mean do I need to create a new guide each time for all the tables that I use and finally pass only header guide to the  bapi 'BAPI_BUSPROCESSND_SAVE'.
    I donu2019t know why I am not getting the product data in the saved sales order please help me.
    this is my code
    ***TABLES
    DATA: IT_HEADER TYPE TABLE OF BAPIBUS20001_HEADER_INS.
    DATA: IT_INPUT_FIELDS_FILL TYPE TABLE OF BAPIBUS20001_INPUT_FIELDS.
    DATA: IT_ITEM TYPE TABLE OF BAPIBUS20001_ITEM.
    DATA: IT_OBJECTS_TO_SAVE TYPE STANDARD TABLE OF BAPIBUS20001_GUID_DIS WITH HEADER LINE.
    ***WORK AREA
    DATA: WA_INPUT_FIELDS TYPE BAPIBUS20001_INPUT_FIELDS.
    DATA: WA_HEADER TYPE BAPIBUS20001_HEADER_INS.
    DATA: WA_ITEM TYPE BAPIBUS20001_ITEM.
    DATA: IT_EV_GUID_32 TYPE GUID_32.
    DATA: IT_EV_GUID_32_1 TYPE GUID_32.
    *Create GUID
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32.
    * Fill the HEADER
    WA_HEADER-GUID                      =  IT_EV_GUID_32.
    WA_HEADER-PROCESS_TYPE              =  'ZWEB'.
    WA_HEADER-DESCRIPTION               =  'WEB ORDER'.
    WA_HEADER-CREATED_BY                =  'jiopidn'.
    APPEND WA_HEADER TO IT_HEADER.
    *For each FIELD of HEADER fill INPUT_FIELDS
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32.
    WA_INPUT_FIELDS-REF_KIND               =  'A'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'ORDERADM_H'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'PROCESS_TYPE'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'DESCRIPTION'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'CREATED_BY'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    *Create your own GUID
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
        EV_GUID_32       = IT_EV_GUID_32_1.
    * Fill the ITEM
    WA_ITEM-GUID              =  IT_EV_GUID_32_1.
    WA_ITEM-NUMBER_INT        =  '10'.
    WA_ITEM-ORDERED_PROD      =  '000000000070000000'.
    WA_ITEM-ITM_TYPE          =  'ZTAN'.
    WA_ITEM-MODE              =  'A'.
    APPEND WA_ITEM TO IT_ITEM.
    *For each FIELD of ITEM fill INPUT_FIELDS fields
    WA_INPUT_FIELDS-REF_GUID               =  IT_EV_GUID_32_1.
    WA_INPUT_FIELDS-REF_KIND               =  'A'.
    WA_INPUT_FIELDS-OBJECTNAME             =  'ORDERADM_I'.
    WA_INPUT_FIELDS-LOGICAL_KEY            =  '1'.
    WA_INPUT_FIELDS-CHANGEABLE             =  ' '.
    WA_INPUT_FIELDS-FIELDNAME              =  'GUID'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME              =  'NUMBER_INT'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME                 =  'ORDERED_PROD'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    WA_INPUT_FIELDS-FIELDNAME                 =  'ITM_TYPE'.
    APPEND WA_INPUT_FIELDS TO IT_INPUT_FIELDS_FILL.
    REFRESH: CREATED_PROCESS.
    ***** CALL BAPI_BUSPROCESSND_CREATEMULTI
                   CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
                     TABLES
                       HEADER                  = IT_HEADER
                       ITEM                    = IT_ITEM
                       INPUT_FIELDS            = IT_INPUT_FIELDS_FILL
                       CREATED_PROCESS         = CREATED_PROCESS
                       RETURN                  = RETURN.
    IT_OBJECTS_TO_SAVE-GUID = IT_EV_GUID_32.
    IT_OBJECTS_TO_SAVE-OBJECT_TYPE = 'BAPIBUS20001'.
    APPEND IT_OBJECTS_TO_SAVE TO IT_OBJECTS_TO_SAVE.
    **** CALL 'BAPI_BUSPROCESSND_SAVE
    CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
      EXPORTING
        UPDATE_TASK_LOCAL       = true
        SAVE_FRAME_LOG          = true
      TABLES
        OBJECTS_TO_SAVE         = IT_OBJECTS_TO_SAVE
        SAVED_OBJECTS           = ITAB_SAVED_OBJECTS
        RETURN                  = itab_return.
    **** CALL BAPI_TRANSACTION_COMMIT
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
       EXPORTING
        WAIT = true
      IMPORTING
        RETURN = RETURN1.
    Edited by: jessica sam on Dec 12, 2008 3:50 AM

  • Problem with status of header in BAPI_BUSPROCESSND_CREATEMULTI

    Hi All,
    I start by shortly describing the situation of the problem.
    We have CRM linked to R/3 (IS-U (energy products) and SD (home assistance products)).
    We created a bsp application for the IC Winclient (integrated in a workspace) which makes it possible to create a contract easily. When I create a contract with 3 items (10 = Electricity; 20 = Home Assistance; 30 = Gas) then replication of item 20 to SD is not done. the status of the header does not change to 'to be distributed'...
    And since I use the BAPI 'BAPI_BUSPROCESSND_CREATEMULTI' it is possible to change the user status (works fine) but still it doesn't replicate.
    Since the BAPI does a CRM_ORDER_SAVE, afterwards I can't change it directly because it is still locked...
    Does anybody know how I can fix this???
    thanx in advance!!
    Micha

    Hi Kapil,
    I totally agree with you that in the normal circumstances the replication is complete. And it is the case if I create a contract where the Home Assistance is the last item...
    But when I create a contract with 3 items (10 = Electricity (new customer so a workflow is started and no replication is needed yet); 20 = Home Assistance (should be replicated to SD); 30 = Gas (new customer so a workflow is started and no replication is needed yet)) then the item 20 is not replicated...
    I changed the order of the contract (within the program) and if I create the contract with the following order (10 = Electricity (new customer so a workflow is started and no replication is needed yet); 20 = Gas (new customer so a workflow is started and no replication is needed yet); 30 = Home Assistance (should be replicated to SD)), then the Home Assistance is replicated fine...
    It is a very strange problem... replication works fine in all cases, just not in this order....
    Thanks for the tip anyhow!!
    Micha

  • How to Generate sales orders with custom Fields using BAPI_BUSPROCESSND_CREATEMULTI

    Hi,
    I need to generate sales orders with custom fields on table CRMD_ORDERADM_H using BAPI_BUSPROCESSND_CREATEMULTI, after changing the structure BAPI_TE_CRMD_ORDERADM_H, and feed the  EXTENSIONIN table of the BAPI with data, the order is created, but any value on custom fields.
    After debuging, I saw that the BAPI search for structure conversion in table CRMC_OBJECTS_GEN, but we haven't entry with BAPI_TE_CRMD_ORDERADM_H in this table. is that the problem ?, Is there any way to fix it?
    Best Regards,
    Salah.

    That depends on where do you have the customer fields, check the table CRMD_CUSTOMER_H, if your custom fields are there, you need to use the changing parameter CUSTOMER_HEAD, I guess your already checked that one, right? but there's no custom fields, well...AET/EEWB doesn't enhance the strcuture of the BAPI, so you should do it manually, check the note following note for further details.
    988410 - FAQ: User-defined fields in the BAPI
    If you don't have access to the SAP Marketplace, in resume you should create an append on the structure BAPIBUS20001_CUSTOMER_H and include the following strcutrue CI_EEW_CUSTOMER_H
    Cheers!
    Luis

  • Sales Order Creation using BAPI_BUSPROCESSND_CREATEMULTI

    Hi,
    I am trying to create sales order using  BAPI_BUSPROCESSND_CREATEMULTI.
    when I create a sales order using above mentioned BAPI  it is creating empty sales order,It is not passing the values from the code to the sales order.
    In BAPI_BUSPROCESSND_CREATEMULTI   Return parameter i m getting Message
         S     CRM_M_ESSAGES     005     A log has been generated for single document     $000001     000001
    Following  are the List of Function modulesi have used in  my code
    1 ) GUID_CREATE
    2) BAPI_BUSPROCESSND_CREATEMULTI
    3) BAPI_BUSPROCESSND_SAVE
    4) BAPI_TRANSACTION_COMMIT
    kindly help me to resolve the same
    Thanks

    Hi Prerna,
    still  Empty Sales order is creating
    This is my code
    ************HEADER-GUID*********
    CALL FUNCTION 'GUID_CREATE'
      IMPORTING
         EV_GUID_16       = LV_GUID
        EV_GUID_22       =
        EV_GUID_32       =  LV_GUID1.
    **********ITEM-GUID***********
    CALL FUNCTION 'GUID_CREATE'
    IMPORTING
      EV_GUID_16       =
      EV_GUID_22       =
       EV_GUID_32       = LV_GUID2
    ********SCHEDULELINE*******
      CALL FUNCTION 'GUID_CREATE'
        IMPORTING
         EV_GUID_16       =
         EV_GUID_22       =
          EV_GUID_32       = LV_GUID3
    CALL FUNCTION 'CRM_PRP_IL_GET_HANDLE'
      IMPORTING
        EV_HANDLE = LV_HANDLE.
    CALL FUNCTION 'CRM_ACTIVITY_MAIN_PARTNER_GET'
      EXPORTING
        IV_PROCESS_TYPE                   = 'ZDON'
        IV_CRMT_SUBOBJECT_CATEGORY        = 'BUS2000115'
    IMPORTING
       EV_DYNP_FCT_1                     = lv_partner_fct1
       EV_DYNP_FCT_2                     = lv_partner_fct2
       EV_DYNP_FCT_3                     = lv_partner_fct3
       EV_DYNP_FCT_4                     = lv_partner_fct4
    EXCEPTIONS
       PROCESS_TYPE_DOES_NOT_EXIST       = 1
       DETERM_PROC_DOES_NOT_EXIST        = 2
       NO_MAIN_PARTNER                   = 3
       OTHERS                            = 4
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ***********DATA IN HEADER*********
    WA_HDR-GUID = LV_GUID1.
    WA_HDR-HANDLE = LV_HANDLE.
    WA_HDR-PROCESS_TYPE = 'ZDON'.
    APPEND WA_HDR TO IS_HEADER.
    INPUT FIELDS HEADER**************
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'A'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_H'.
    WA_INPUT_FIELDS-FIELDNAME = 'GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'A'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_H'.
    WA_INPUT_FIELDS-FIELDNAME = 'HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'A'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_H'.
    WA_INPUT_FIELDS-FIELDNAME = 'PROCESS_TYPE'.
    APPEND  WA_INPUT_FIELDS TO IT_INPUT_FIELDS.
    ***********DATA IN ITEM*********
    WA_ITEM-GUID  = LV_GUID2.
    WA_ITEM-HANDLE  = LV_HANDLE.
    WA_ITEM-HEADER  = LV_GUID1.
    WA_ITEM-ORDERED_PROD = 'H10'.
    WA_ITEM-DESCRIPTION = 'Trading Good 1'."product name
    WA_ITEM-ITM_LANGUAGE = 'EN'.
    WA_ITEM-ITM_TYPE = 'LEAD'.
    WA_ITEM-MODE = 'A'.
    INSERT WA_ITEM  INTO TABLE IS_ITEM.
    ******INPUT FIELDS ITEM****************
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'HEADER'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'ORDERED_PROD'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'DESCRIPTION '.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'ITM_LANGUAGE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'number_int'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'B'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORDERADM_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'ITM_TYPE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ***********DATA IN SALES*********
    WA_SALES-REF_HANDLE = LV_HANDLE.
    WA_SALES-REF_GUID = LV_GUID1.
    WA_SALES-PO_NUMBER_SOLD = '10006'.
    WA_SALES-YOUR_REF_SHIP =  '10006'.
    APPEND WA_SALES TO It_SALES.
    ************INPUT FIELDS SALES************
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SALES'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SALES'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SALES'.
    WA_INPUT_FIELDS-FIELDNAME = 'PO_NUMBER_SOLD'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SALES'.
    WA_INPUT_FIELDS-FIELDNAME = 'YOUR_REF_SHIP'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ************DATA IN PARTNER *********
    WA_PARTNER-REF_GUID    = LV_GUID1.
    WA_PARTNER-REF_KIND    = 'A'.
    WA_PARTNER-REF_HANDLE = LV_HANDLE.
    WA_PARTNER-PARTNER_FCT = lv_partner_fct1.
    WA_PARTNER-PARTNER_NO  =  '10006' .
    APPEND WA_PARTNER TO IT_PARTNER.
    WA_PARTNER-REF_GUID    =  LV_GUID1.
    WA_PARTNER-REF_KIND    = 'A'.
    WA_PARTNER-REF_HANDLE = LV_HANDLE.
    WA_PARTNER-PARTNER_FCT = lv_partner_fct2.
    WA_PARTNER-PARTNER_NO  =  '10006' .
    APPEND WA_PARTNER TO IT_PARTNER.
    if lv_partner_fct3 is initial.
       lv_partner_fct3 = lv_partner_fct2 + 1.
    endif.
    WA_PARTNER-REF_GUID    =  LV_GUID1.
    WA_PARTNER-REF_KIND    = 'A'.
    WA_PARTNER-REF_HANDLE = LV_HANDLE.
    WA_PARTNER-PARTNER_FCT = lv_partner_fct3.
    WA_PARTNER-PARTNER_NO  =  '10006' .
    APPEND WA_PARTNER TO IT_PARTNER.
    if lv_partner_fct4 is initial.
       lv_partner_fct4 = lv_partner_fct3 + 1.
    endif.
    WA_PARTNER-REF_GUID    =  LV_GUID1.
    WA_PARTNER-REF_KIND    = 'A'.
    WA_PARTNER-REF_HANDLE = LV_HANDLE.
    WA_PARTNER-PARTNER_FCT = lv_partner_fct4.
    WA_PARTNER-PARTNER_NO  =  '10006' .
    APPEND WA_PARTNER TO IT_PARTNER.
    *INPUT FIELDS PARTENER
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PARTNER'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PARTNER'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PARTNER'.
    WA_INPUT_FIELDS-FIELDNAME = 'PARTNER_FCT'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PARTNER'.
    WA_INPUT_FIELDS-FIELDNAME = 'PARTNER_NO '.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ***********DATA IN ORGMAN*********
    WA_ORG-REF_GUID = LV_GUID1.
    WA_ORG-REF_HANDLE =  LV_HANDLE.
    WA_ORG-DIS_CHANNEL = '10'.
    WA_ORG-DIVISION = '10'.
    WA_ORG-SALES_ORG = 'BP_SALES'.
    WA_ORG-SALES_OFFICE = 'BP_SO_CENTER'.
    WA_ORG-SALES_ORG_RESP = 'BP_SALES'.
    APPEND WA_ORG TO IT_ORG.
    ORGMAN INPUT FIELDS*****************
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_GUID '.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'DIS_CHANNEL'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'DIVISION'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'SALES_ORG'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'E'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'SALES_OFFICE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID1.
    WA_INPUT_FIELDS-REF_KIND = 'A'.
    WA_INPUT_FIELDS-OBJECTNAME = 'ORGMAN'.
    WA_INPUT_FIELDS-FIELDNAME = 'SALES_ORG_RESP'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ***********DATA IN PRODUCT*********
    WA_PROD-REF_GUID = LV_GUID2.
    WA_PROD-REF_HANDLE =  LV_HANDLE.
    WA_PROD-PROCESS_QTY_UNIT = 'ONE'.
    APPEND WA_PROD TO IT_PROD.
    *INPUT FIELDS PRODUCT
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRODUCT_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRODUCT_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRODUCT_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'PROCESS_QTY_UNIT'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ***********DATA IN SCHED*********
    WA_SCHED-ITEM_GUID = LV_GUID2.
    WA_SCHED-GUID = LV_GUID4 .
    WA_SCHED-HANDLE =  LV_HANDLE.
    WA_SCHED-QUANTITY = '5'.
    APPEND WA_SCHED TO IT_SCHED.
    *INPUT FIELDS SCHEDULE LINE
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'ITEM_GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'GUID'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'QUANTITY '.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN'.
    WA_INPUT_FIELDS-FIELDNAME = 'LOGICAL_KEY'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'SCHEDLIN'.
    WA_INPUT_FIELDS-FIELDNAME = 'MODE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    ***********DATA IN PRICING********
    WA_PRICING-REF_HANDLE = LV_HANDLE.
    WA_PRICING-REF_GUID = LV_GUID2.
    WA_PRICING-CURRENCY = 'USDN'.
    APPEND WA_PRICING TO IT_PRICING.
    *INPUT FIELDS PRICING
    CLEAR WA_INPUT_FIELDS.
    CLEAR IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRICING_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_HANDLE'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRICING_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'REF_GUID '.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    WA_INPUT_FIELDS-REF_GUID = LV_GUID2.
    WA_INPUT_FIELDS-REF_KIND = 'D'.
    WA_INPUT_FIELDS-OBJECTNAME = 'PRICING_I'.
    WA_INPUT_FIELDS-FIELDNAME = 'CURRENCY'.
    APPEND  WA_INPUT_FIELDS  TO IT_INPUT_FIELDS.
    CALL FUNCTION 'BAPI_BUSPROCESSND_CREATEMULTI'
      IMPORTING
        EV_LOG_HANDLE           =
      TABLES
        HEADER                  =  IS_HEADER
       ITEM                     =  IS_ITEM
       SALES                    =  It_SALES
       PARTNER                 =  IT_PARTNER
       ORGANISATION             =  IT_ORG
       INPUT_FIELDS              = IT_INPUT_FIELDS
       CREATED_PROCESS         =   ITAB_CREATED_PROCESS
       RETURN                  =  IT_RETURN
       PRODUCT                  = IT_PROD
       SCHEDULELINE             = IT_SCHED
       PRICING_ITEM             = IT_PRICING
    W_OBJECT_TO_SAVE-GUID = lv_guid1.
    APPEND  W_OBJECT_TO_SAVE TO It1_object_to_save.
    CALL FUNCTION 'BAPI_BUSPROCESSND_SAVE'
      EXPORTING
        UPDATE_TASK_LOCAL = SPace
        SAVE_FRAME_LOG    = 'X'
    IMPORTING
       LOG_HANDLE        = LV_LOG_HANDLE
      TABLES
        OBJECTS_TO_SAVE   = It1_object_to_save
        SAVED_OBJECTS     = i_saved_objects
        RETURN            = IT_RETURN1.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        WAIT          = 'X'
      IMPORTING
        RETURN        = IT_RET2
    if sy-subrc = 0.
      write : / 'Sales Order Created'.
    endif.
    thanks

  • Payment Card Info for sale order with BAPI_BUSPROCESSND_CREATEMULTI

    hi all
    i am trying to create a sales order using BAPI_BUSPROCESSND_CREATEMULTI
    and i am able to create an order successfully without any problem.
    the order is being generated. I am trying to input
    the payment card details to the BAPI_BUSPROCESSND_CREATEMULTI in
    PAYPLAN & PAYPLAN_DATE tables of the BAPI.
    I also used CRM_ORDER_READ report to see how these tables are being filled
    and based on that i had filled the payment card details in BAPI_BUSPROCESSND_CREATEMULTI
    but still ..i see the order being generated but dont see any payment card information
    being poulated in it.
    If you have any idea how i should fill the PAYPLAN, PAYPLAN_DATE
    tables and their respective input fields..please kindly help
    i tried all possible ways and could not get a solution
    Regards,
    Jessica Sam

    Hi Richard,
    So does this mean that i'd be able to capture all the data that is being determined after i make the call to this BAPI whithout saving it. Well.. I just want to simulate as it is happening in SAP.. i.e we enter the sold to party and hit 'enter' and all the data should be determined..and at this point i should read this data.
    Could you let me know if this could be done.
    Thanks,
    Sahil

  • SERVICE_OS in CRM_ORDER_MAINTAIN for a follow up document

    Hello SAP Guru’s!
    Currently I’m working with my customer requirement that begins with the creation of a case after some business rules an appointment should be created with specific information. As I mentioned, the first document is a case and the second document (follow up document) is an appointment. But I´m facing the following issue:
    On the second document (appointment) I’m trying to add values to fields KATALOGART, CODE and CODEGRUPPE that correspond to structure SERVICE_OS through function CRM_ORDER_MAINTAIN, I filled out the corresponding structures like: SERVICE, OSSET AND SUBJECT (SUBJECT with fields CODE and CODEGRUPPE).
    After filling out the fields I use function CRM_ORDER_SAVE and then CRM_ORDER_COMMIT to create them in the second document (appointmen), but the structure SUBJECT has not been generated in the second document, this happens only with the second document because on the first one (case) it is created without any problems.
    Has anyone faced something similar before?
    Any guidence would be greatly appreciated.
    Kindest Regards,

    Are you using copy control badi? If yes, which method that are you using?

  • Problem in BAPI_BUSPROCESSND_CREATEMULTI

    Dear Gurus,
                     I am trying to create a service order from WEB channel through the BAPI BAPI_BUSPROCESSND_CREATEMULTI.
    I wanted to ask is this the best apporach to proceed??
    as in would it take care of the Billing and posting entries to FI also??
    and i am not able to find out where to provide bill to party and ship to party data.
    can any1 please help me with this as in which tables parameter would be having bill to party and ship to party data???
    Definite reward points for helpful answers.
    Cheers,
    Deepthee Kasal

    Hi Dear,
               My problem has been solved.I cannot paste the code here it would be against policies.But u can check the program
    CRM_CALL_ACTIVITY_INTERFACE
    I used this program for reference.Activate Debuggin mode and check the values of all the parameters it would be haelpful.
    Cheers,
    Deephee

  • BAPI_BUSPROCESSND_CREATEMULTI

    Hi,
    My requirement is i want to create the transaction by executing the BAPI_BUSPROCESSND_CREATEMULTI.  Now i am able to creating the transaction but not able to creating the item, product and partner  details. What are the parameters i need to pass in the BAPI. Please let me know.
    Regard
    Srinu

    Hi,
    Please check the following thread that related to above BAPI:
    Re: BAPI_BUSPROCESSND_CREATEMULTI - item detail
    Cheers,

  • BAPI_BUSPROCESSND_CREATEMULTI how to use the activity-category parameter

    Hi all,
    I am trying to use BAPI_BUSPROCESSND_CREATEMULTI to create purchase orders.
    I am having problems to use the Activity (header) Category field.
    Among other parameters, in the INPUT_FIELDS table I have added a line for the field CATEGORY as follows:
    REF_HANDLE = 0000000001
    REF_KIND = A
    OBJECTNAME = ACTIVITY
    FIELDNAME = CATEGORY
    Then I have added a line in the ACTIVITY table with:
    REF_HANDLE = 0000000001
    CATEGORY= ZSB
    PRIORITY=5
    But no results.  The field is not entered in the purchase order I create.
    Anybody could point out how to use this parameter in this BAPI?
    Many thanks,
    Aldo

    Please fill category on order and after Enter debug crm_order_maintain function module.
    This should help you to see where in function module this field should be filled.
    you can also use crm_order_maintain for documents creation.
    Regards
    Radek

  • BAPI_BUSPROCESSND_CREATEMULTI - Regdg ?

    Hi,
    I am using BAPI_BUSPROCESSND_CREATEMULTI to create service contracts. Kindly let me know how to populate partner, schedule line, objects structures. I am able to create a contract successfully with header details. But when i pass partner, schedule line, these details doesnt get reflected in the contract.
    Provide some sample code if possible.
    Thanks & Regards,
    Ramasubrmanian G.

    Hi,
    Were you able to figure out your problem. I am facing similar problem here of not able to populate the partners information to the complaint though I am passing the needed partner info to the bapi. Can you please help me out?
    Thanks,
    Suneetha

Maybe you are looking for

  • Can't see some letters from my Gmail box in Mail.app in MAC OS 10.8.5.

    Hello, can't see some letters from my Gmail box in Mail.app in MAC OS 10.8.5.

  • Battery life is extremely short

    I recently had to reset my iPod touch....now my battery life is only an hour. Anything I can do?

  • NEW LINE CHARACTER

    i am trying to load text into the BASIC TEXT of the material. The input file has matnr and the text. The file we loaded is fine. But in the text editor the # for new line character appears and this is causing problem while writing the text in a sapsc

  • Adding hashsets to a hashmap

    If I've created a hashmap of hashsets, for example, HashMap<String,HashSet<String>> hm = new HashMap<String,HashSet<String>> (); how do I add elements to a hashset at a particular key of the hashmap?

  • Dynamic Animation Assignment

    I don't know if this is something Edge does, or if I just missed it outlined in the docs somewhere. In a project based on something like Marionette (or Backbone) AKA, I have a view/templating system. Is it possible for me to take an animation produce