• May 1, 2026
  • Kishore Thutaram
  • 0

Update Value added service data to sales order by using BAPI FSH_API_SALESDOCUMENT_CREATE in S/4 HANA

Requirement: while creating the sales order by using the fashion order creation API, update value added service(VAS) fields data.

Steps: Call BAPI FSH_API_SALESDOCUMENT_CREATE in any program/FM/Class

Code Below


data : lt_vas_item                 TYPE STANDARD TABLE OF bapi_fsh_vas_item,
    ls_vas_item                 TYPE bapi_fsh_vas_item,
    lt_vas_text                 TYPE STANDARD TABLE OF bapi_fsh_vas_text,
    ls_vas_text                 TYPE bapi_fsh_vas_text.

CONSTANTS : lc_service       TYPE fsh_vas_ser VALUE '10',
              lc_sub_service_1 TYPE fsh_vas_sub_ser VALUE '10-7',
              lc_sub_service_2 TYPE fsh_vas_sub_ser VALUE '10-8',
              lc_textid_17   TYPE char4 VALUE 'ZD17'.
              
"Build Vas tables based on requirement, in this case incoming IDOC text data passing "to VAS.
" Service and subservice details should be configured
 WHEN 'E1BPSDTEXT'.
            e1bpsdtext = idoc_data-sdata.
            MOVE-CORRESPONDING e1bpsdtext
            TO order_text.                               "#EC ENHOK

            APPEND order_text.
            CASE e1bpsdtext-text_id.
*--*Header Text ZD17 meant for VAS
              WHEN lc_textid_17.
                ls_vas_item = VALUE #( itm_number = e1bpsdtext-itm_number
                                       service = lc_service
                                       sub_service = lc_sub_service_1 ).
                APPEND ls_vas_item TO lt_vas_item.
                CLEAR ls_vas_item.
                ls_vas_text = VALUE #( itm_number = e1bpsdtext-itm_number
                                       service = lc_service
                                       sub_service = lc_sub_service_1
                                       text_line = e1bpsdtext-text_line ).
                APPEND ls_vas_text TO lt_vas_text.
                CLEAR ls_vas_text.

CALL FUNCTION 'FSH_API_SALESDOCUMENT_CREATE'
      EXPORTING
        salesdocumentin         = salesdocumentin
        order_header_in         = order_header_in
        order_header_inx        = order_header_inx
      
      IMPORTING
        salesdocument           = salesdocument
      TABLES
        return                  = return
        order_items_in          = order_items_in
        order_items_inx         = order_items_inx
        fsh_vas_item_in         = lt_vas_item
        fsh_vas_text            = lt_vas_text
      EXCEPTIONS
        OTHERS                  = 1.
   
    

Kishore Thutaram

SAP Solution Architect | 16+ Years' Experience in SAP | Sharing Practical SAP Knowledge | Engineering Graduate with Expertise in SAP Architecture

https://fiowelt.com