[置顶] BW自定义数据源之源系统

1. se80创建函数组ZBI001

2.创建提取功能结构ZBXN_BW_WMS_API

Import参数:

[置顶] BW自定义数据源之源系统_第1张图片

   table参数:

[置顶] BW自定义数据源之源系统_第2张图片

 

源代码:

FUNCTION ZBXN_BW_WMS_API.
*"----------------------------------------------------------------------
*"*"Local interface:
*"  IMPORTING
*"     VALUE(I_ISOURCE) TYPE  SBIWA_S_INTERFACE-ISOURCE OPTIONAL
*"     VALUE(I_REQUNR) TYPE  SBIWA_S_INTERFACE-REQUNR
*"     VALUE(I_MAXSIZE) TYPE  SBIWA_S_INTERFACE-MAXSIZE DEFAULT 1000
*"     VALUE(I_INITFLAG) TYPE  SBIWA_S_INTERFACE-INITFLAG OPTIONAL
*"     VALUE(I_UPDMODE) TYPE  SBIWA_S_INTERFACE-UPDMODE OPTIONAL
*"     VALUE(I_DATAPAKID) TYPE  SBIWA_S_INTERFACE-DATAPAKID DEFAULT
*"       50000
*"     VALUE(I_READ_ONLY) TYPE  SBIW_BOOL DEFAULT SBIW_C_FALSE
*"  TABLES
*"      I_T_SELECT TYPE  SBIWA_T_SELECT OPTIONAL
*"      I_T_FIELDS TYPE  SBIWA_T_FIELDS OPTIONAL
*"      E_T_DATA STRUCTURE  ZWTTRAN OPTIONAL
*"----------------------------------------------------------------------
  data:t_zwttran like table of zwttran with header line.
  data:l_s_select type sbiwa_s_select.

  clear:l_r_matnr,l_r_tran_type,l_r_tran_code,l_r_actn_code,l_r_rsn_code.
  refresh:l_r_matnr,l_r_tran_type,l_r_tran_code,l_r_actn_code,l_r_rsn_code.

  g_s_interface-requnr    = i_requnr.
  g_s_interface-isource   = i_isource.
  g_s_interface-maxsize   = i_maxsize.
  g_s_interface-initflag  = i_initflag.
  g_s_interface-updmode   = i_updmode.
  g_s_interface-datapakid = i_datapakid.

  if g_counter_datapakid = 0.
    loop at i_t_select into l_s_select.
      case l_s_select-fieldnm.
        when 'MATNR'.
          move-corresponding l_s_select to l_r_matnr.
          append l_r_matnr.
        when 'TRAN_TYPE'.
          move-corresponding l_s_select to l_r_tran_type.
          append l_r_tran_type.
        when 'TRAN_CODE'.
          move-corresponding l_s_select to l_r_tran_code.
          append l_r_tran_code.
        when 'ACTN_CODE'.
          move-corresponding l_s_select to l_r_actn_code.
          append l_r_actn_code.
        when 'RSN_CODE'.
          move-corresponding l_s_select to l_r_rsn_code.
          append l_r_rsn_code.
      endcase.
    endloop.
    open cursor with hold g_cursor for
      select (i_t_fields) from zwttran
        where matnr in l_r_matnr
          and tran_type in l_r_tran_type
          and tran_code in l_r_tran_code
          and actn_code in l_r_actn_code
          and rsn_code in l_r_rsn_code
          and invn_adjmt_qty > 0.
  endif.

  fetch next cursor g_cursor
    appending corresponding fields of table e_t_data
    package size g_s_interface-maxsize.

  if sy-subrc <> 0.
    close cursor g_cursor.
    raise no_more_data.
  else.
    loop at e_t_data.
      e_t_data-uom = 'BA'.
      translate e_t_data-matnr to upper case.
      modify e_t_data transporting uom matnr.
    endloop.
  endif.
  g_counter_datapakid = g_counter_datapakid + 1.

ENDFUNCTION.

3. RSO2创建数据源ZWMS_PIXTRAN

[置顶] BW自定义数据源之源系统_第3张图片

参数如下:

[置顶] BW自定义数据源之源系统_第4张图片

4.      RSA6选择自定义数据源并激活

选择数据源(光标停留在数据源上,按选择按钮,选择之后数据源底色为黄色):

[置顶] BW自定义数据源之源系统_第5张图片

 激活数据源:

[置顶] BW自定义数据源之源系统_第6张图片

5.      RSA3测试提取数据

点击执行按钮,确定之后点击显示清单:

[置顶] BW自定义数据源之源系统_第7张图片

双击某一行记录,显示提取到的数据:

[置顶] BW自定义数据源之源系统_第8张图片

[置顶] BW自定义数据源之源系统_第9张图片

 

 

 

 

 

 

 

你可能感兴趣的:([置顶] BW自定义数据源之源系统)