2016-08-17 8 views
0

У меня есть 3 bapi по имени BAPI_SALESORDER_GETLIST, BAPI_SALESORDER_GETSTATUS и BAPI_SALESORDER_GETDETAILBOS.как назвать bapi в se37 и дать выход bapi другому bapi

  1. Здесь в первом BAPI я должен Количество входных клиентов и организации продаж в качестве входных данных и извлечения по продажам Номер документа (SD_DOC) и FROM_DATE.

  2. Этот номер торгового документа (SD_Doc), извлеченный из 1-го BAPI, должен быть предоставлен в качестве входных данных для другого bapi с именем BAPI_SALESORDER_GETSTATUS для извлечения некоторых данных.

  3. и тот же номер документа продаж должен быть введен в третий BAPI, который является BAPI_SALESORDER_GETDETAILBOS для получения некоторых конкретных данных.

Насколько мне известно, я сделал некоторые работы с BAPI и до сих пор на службе, я создал я дал только номер клиента в качестве входных данных для URI в SAP GATEWAY КЛИЕНТА

, например, :

/сок/ОП/OData/сок/ZOPENSALESORDER_SRV/openSalesOrderSet $ ​​фильтра = CustomerNo э '1'

Если кто-то могут помочь в отношении этого было бы очень благодарен за это.

+0

Можете ли вы показать нам, что вы пробовали до сих пор? – gkubed

+0

Я создал службу, используя BAPI_SALESORDER_GETLIST, чтобы получить имя клиента, От даты, статуса, созданного и т. Д. Я использую эту услугу в виде sap. и для этого bapi единственным входным сигналом, который я пропустил, был номер клиента. вышесказанное является примером службы, которую я создал с помощью bapi BAPI_SALESORDER_GETLIST –

+0

Я вижу, что это то, что вы пытаетесь выполнить, но какова ваша фактическая проблема? – gkubed

ответ

0

Прежде всего я хотел бы сказать вам, ребята, что у меня есть три BAPIs, из которых я rquired мой данными.1) BAPI_SALESORDER_GETLIST 2) BAPI_SALESORDER_GETSTATUS и 3) BAPI_SALESORDER_GETDETAILBOS.

  1. Для первого Bapi я дам входной номер клиента (KUNNR) и организацию продаж (VKORG), после чего я получу номер документа продажи в качестве вывода.
    1. Этот номер торгового документа будет предоставлен следующему bapi BAPI_SALESORDER_GETSTATUS для получения других соответствующих данных.
    2. И тот же номер торгового документа будет также передан третьему bapi BAPI_SALESORDER_GETDETAILBOS.

я сначала расскажу вам шаги

  • указать входные параметры в параметре импорта. В моем сценарии у меня есть kunnr и vkorg. для изображения 1

    • Тогда внутренние таблицы уже сделаны, как я только собираюсь использовать стандартный BAPI, нажмите здесь. поэтому в разделе таблицы просто напишите имя вам bapi, и вам хорошо идти.для изображения 2

    • нажмите здесь Затем в разделе источника начать кодирование:

    введите код здесь

    ДАННЫЕ: «lt_bapiorders ТИПА ТАБЛИЦА bapiorders, lt_statusinfo ТИПА ТАБЛИЦА bapisdstat, lt_orderitem ТИПА ТАБЛИЦА bapisditbos, lt_orderscheduleline ТИПА ТАБЛИЦА bapisdhedu.

    FIELD-SYMBOLS: <lfs_order> TYPE bapiorders, 
           <lfs_statinfo> TYPE bapisdstat, 
           <lfs_orderitem> TYPE bapisditbos, 
           <lfs_orderscheduleline> TYPE bapisdhedu. 
    
    "Fecth all the sales order for a customer 
    CALL FUNCTION 'BAPI_SALESORDER_GETLIST' 
        EXPORTING 
        customer_number    = kunnr 
        sales_organization   = vkorg 
        TABLES 
        sales_orders    = order. 
    
    "Get status for the sales order 
    LOOP AT order ASSIGNING <lfs_order> . 
        IF <lfs_order> IS ASSIGNED. 
        WRITE:/ <lfs_order>-sd_doc. 
    
         "This function call is for getting the status of the 
         "Sales document number derived from the BAPI_SALESORDER_GETLIST 
         CALL FUNCTION 'BAPI_SALESORDER_GETSTATUS' 
          EXPORTING 
          salesdocument  = <lfs_order>-sd_doc 
         TABLES 
          statusinfo   = lt_statusinfo. 
    
         APPEND LINES OF lt_statusinfo TO statusinfo_lt. 
         "Read Processing and delivery Status 
         READ TABLE lt_statusinfo ASSIGNING <lfs_statinfo> INDEX 1. 
         IF sy-subrc EQ 0. 
         WRITE:/'Delivery Status', <lfs_statinfo>-dlv_stat_h, 
           'Required Date', <lfs_statinfo>-req_date_h, 
           'Delivery Number',<lfs_statinfo>-deliv_numb, 
           'Delivery Date',<lfs_statinfo>-deliv_date. 
         ENDIF. 
    
         CALL FUNCTION 'BAPI_SALESORDER_GETDETAILBOS' 
         EXPORTING 
          salesdocument   = <lfs_order>-sd_doc 
    
         TABLES 
    
         orderitems    = lt_orderitem 
         orderschedulelines  = lt_orderscheduleline. 
    APPEND LINES OF lt_orderitem to orderitem. 
         "Read Processing and delivery Details 
         READ TABLE lt_orderitem ASSIGNING <lfs_orderitem> INDEX 1. 
         IF sy-subrc EQ 0. 
         WRITE:/'Material', <lfs_orderitem>-material, 
           'Plant', <lfs_orderitem>-plant, 
           'Short-text',<lfs_orderitem>-short_text, 
           'Req_qty',<lfs_orderitem>-req_qty, 
           'doc_number',<lfs_orderitem>-doc_number. 
         ENDIF. 
    
    APPEND LINES OF lt_orderscheduleline to orderscheduleline. 
         "Read processing and delivery details -goods issue time 
         READ TABLE orderscheduleline ASSIGNING <lfs_orderscheduleline> INDEX 1. 
         IF sy-subrc EQ 0. 
         WRITE:/'Goods Issue Date', <lfs_orderscheduleline>-gi_date. 
         ENDIF. 
           . 
    
    
        ENDIF. 
    ENDLOOP. 
    

Затем выполните его.

+0

Решила ли ваша проблема? – Suncatcher

 Смежные вопросы

  • Нет связанных вопросов^_^