培训总结二

 

1 dev aleremote,参数文件S_BI-WX_RFCA,SAP_ALL
  BW  bwuser    参数文件:S_BI-WHM_RFC
2,sm51 yteccdev_DEV_01
3,WE21处理中的idoc,WE20合作伙伴参数
4,数据源是与源系统相关的。


5,rso2维护一般数据源
6,rsa3验证是否可以在源系统提取到数据
7,rsa6激活数通用的数据源
8,函数组RSAX复制出一个函数组,选择复制RSAX_BIW_GET_DATA_SIMPLE。

代码如下

function zrsax_biw_get_data_simple.
*"----------------------------------------------------------------------
*"*"Local Interface:
*"  IMPORTING
*"     VALUE(I_REQUNR) TYPE  SRSC_S_IF_SIMPLE-REQUNR
*"     VALUE(I_DSOURCE) TYPE  SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*"     VALUE(I_MAXSIZE) TYPE  SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*"     VALUE(I_INITFLAG) TYPE  SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*"     VALUE(I_READ_ONLY) TYPE  SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*"     VALUE(I_REMOTE_CALL) TYPE  SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*"  TABLES
*"      I_T_SELECT TYPE  SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*"      I_T_FIELDS TYPE  SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*"      E_T_DATA STRUCTURE  ZCUST OPTIONAL
*"      E_T_ZCUST STRUCTURE  ZCUST OPTIONAL
*"  EXCEPTIONS
*"      NO_MORE_DATA
*"      ERROR_PASSED_TO_MESS_HANDLER
*"----------------------------------------------------------------------

* Example: DataSource for table SFLIGHT
*  TABLES: SFLIGHT.
tables: zcust.
* Auxiliary Selection criteria structure
  data: l_s_select type srsc_s_select.

* Maximum number of lines for DB table
  statics: s_s_if type srsc_s_if_simple,

* counter
          s_counter_datapakid like sy-tabix,

* cursor
          s_cursor type cursor.
* Select ranges
*  RANGES: L_R_CARRID  FOR SFLIGHT-CARRID,
*          L_R_CONNID  FOR SFLIGHT-CONNID.
  ranges:r_kunnr for zcust-kunnr.
* Initialization mode (first call by SAPI) or data transfer mode
* (following calls) ?
  if i_initflag = sbiwa_c_flag_on.

************************************************************************
* Initialization: check input parameters
*                 buffer input parameters
*                 prepare data selection
************************************************************************

* Check DataSource validity
    case i_dsource.
      when 'ZTEST_FM'.
      when others.
        if 2. message e009(r3). endif.
* this is a typical log call. Please write every error message like this
        log_write 'E'                  "message type
                  'R3'                 "message class
                  '009'                "message number
                  i_dsource   "message variable 1
                  ' '.                 "message variable 2
        raise error_passed_to_mess_handler.
    endcase.

    append lines of i_t_select to s_s_if-t_select.

* Fill parameter buffer for data extraction calls
    s_s_if-requnr    = i_requnr.
    s_s_if-dsource = i_dsource.
    s_s_if-maxsize   = i_maxsize.

* Fill field list table for an optimized select statement
* (in case that there is no 1:1 relation between InfoSource fields
* and database table fields this may be far from beeing trivial)
    append lines of i_t_fields to s_s_if-t_fields.

  else.                 "Initialization mode or data extraction ?

************************************************************************
* Data transfer: First Call      OPEN CURSOR + FETCH
*                Following Calls FETCH only
************************************************************************

* First data package -> OPEN CURSOR
    if s_counter_datapakid = 0.

* Fill range tables BW will only pass down simple selection criteria
* of the type SIGN = 'I' and OPTION = 'EQ' or OPTION = 'BT'.
      loop at s_s_if-t_select into l_s_select where fieldnm = 'KUNNR'.
        move-corresponding l_s_select to r_kunnr.
        append r_kunnr.
      endloop.

*      LOOP AT S_S_IF-T_SELECT INTO L_S_SELECT WHERE FIELDNM = 'CONNID'.
*        MOVE-CORRESPONDING L_S_SELECT TO L_R_CONNID.
*        APPEND L_R_CONNID.
*      ENDLOOP.

* Determine number of database records to be read per FETCH statement
* from input parameter I_MAXSIZE. If there is a one to one relation
* between DataSource table lines and database entries, this is trivial.
* In other cases, it may be impossible and some estimated value has to
* be determined.
      open cursor with hold s_cursor for
      select kunnr from kna1
                               where kunnr  in r_kunnr .
    endif.                             "First data package ?

* Fetch records into interface table.
*   named E_T_'Name of extract structure'.
    fetch next cursor s_cursor
               appending corresponding fields
               of table e_t_data
               package size s_s_if-maxsize.

    if sy-subrc <> 0.
      close cursor s_cursor.
      raise no_more_data.
    endif.

    s_counter_datapakid = s_counter_datapakid + 1.

  endif.              "Initialization mode or data extraction ?

endfunction.


9,标准数据源增强。使用badi的方式
   RSU5_SAPI_BADI SE19
   RSA6选择增强提取结构。增强字段以ZZ打头(经验证不需要)。
10 数据源增强后,默认为隐藏,需更改为显示。
11,当数据目标有数据时,数据源字段需删除数据后再修改结构。
12,lbwe,lo数据抽取。通讯接口增强。--见文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值