`
Daniel_Fang
  • 浏览: 46298 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

LSMW/eCATT/BDC

阅读更多

LSMW
Legacy System Migration Workbench (T-code: LSMW)

      LSMW, 是SAP推荐用来从旧的系统或非SAP系统把大批量或周期性的数据迁移到SAP的主力工具,类似于eCATT/sCATT,其优点可以在一个Session中处理大批量数据,并灵活易学易用。如果用BDC和eCATT只能根据定制好的画面输入参数。一旦没有这个值系统就会报错。比喻我们根据业务对FI Account Document或者主数据一些参数作了扩展,一旦参数缺失或者不匹配,不得不终止Session,通过SM35手动去更正或者重新录屏。LSMW具有一般的通用性,他导入模板的设计过程包括15个步骤,每个都是独立的单元并可进行单独的更新和修改,而不影响其它的模块只需作一些调整作出相应mapping,将必要的数据指定对应的字段就可行了,无需额外的编码。
      当然,LSMW局限在于只能导入固定类型的主数据,如Customer/Vendor Master,Material Master,Financial Document, G/L Account。如果是自定义的ABAP程序来导入主数据就行不通了。同样做了一个FI Account Document的例子,对出现重复的统计的Line Item时显得也不是特别得心应手。

 

eCATT
extended Computer Aided Test Tool(T-code:SECATT)

      eCATT是SAP自带的功能测试工具,主要目标用来作SAP业务流程的自动化测试,每个测试都会生成一个详细的日志来显示测试流程和测试结果。和CATT相比,CATT操作简单,类似于BDC的录屏功能,用于常用的简单业务数据导入,基本已被eCATT完全取代。除了CATT功能之后,eCATT主要应用于基于GUI Windows/Gui Java自动化测试,同时也为外部工具提供了第三方接口(获BC-eCATT授权)。所有的测试脚本,无能是eCATT自已生成的还是外部工具的他们都应该具有相同的数据对象类型,与SAP结合在一起并保存在相同的位置。在R/3的功能测试中,eCATT录屏功能简单实用,测试脚本、测试数据、系统数据分别存放,可重复使用,并附有详细测试报告以及纠错功能,作为自带工具简单实用。对于WEB方面的测试的话就要借用第三方的测试软件,如知名的Mercury的QTP。

 

BDC

Batch Data Conversion (T-code: SHDB)

BDC同样是通过SHDB把用户一次性的业务操作记录全部记录下,然后供用户使用。开发人员可以生成程序构建数据源。只要存在重复的业务操作,自然会想到BDC录屏。

 

实事上无论上面几种可供重复业务操作的技术,每次只能根据录屏的定制,作为开发人员只要在项目的前期分析明确,下面的SAP自带程序其灵活性比BDC来得更为直接。例如创建FI Account Document:

1, RFBIBL00

 submit rfbibl00 and   return
                  with  ds_name  = v_bdcfile
                  with  fl_check = space
                  with  os_xon   = space
                  with  callmode =  lv_mode
                  with  max_comm = '1000'
                  with  pa_xprot = space
                  with  xlog     = 'X'. " xpop/xlog/xinf

  if lv_mode = 'B' and sy-batch = 'X'.
    submit  rsbdcsub with mappe  = c_sessn
                     with von    = sy-datum
                     with bis    = sy-datum
                     with fehler = space
                     and return.
  endif.

 

2,POSTING_INTERFACE_DOCUMENT

  call function 'POSTING_INTERFACE_DOCUMENT'
    exporting
      i_tcode  = 'FB01'
    importing
      e_subrc  = lv_subrc
      e_msgid  = lv_msgid
      e_msgty  = lv_msgty
      e_msgno  = lv_msgno
      e_msgv1  = lv_msgv1
      e_msgv2  = lv_msgv2
      e_msgv3  = lv_msgv3
      e_msgv4  = lv_msgv4
    tables
      t_ftpost =  it_ftpost
      t_fttax   =  it_fttax
      t_blntab =  it_xblntab
    exceptions
      others   = 1.

  call function 'FORMAT_MESSAGE'
    exporting
      id        = lv_msgid
      lang      = sy-langu
      no        = lv_msgno
      v1        = lv_msgv1
      v2        = lv_msgv2
      v3        = lv_msgv3
      v4        = lv_msgv4
    importing
      msg       = lv_msg
    exceptions
      not_found = 1
      others    = 2.

*   Posting successfully
    if sy-subrc = 0 and lv_msgty = 'S'.
      it_success_list-docno        = lv_msgv1.
      it_success_list-message     = lv_msg.
      append it_success_list.
*   Failed Posting
    elseif  not lv_msgty is initial .
      it_error_list-message    =  lv_msg.
      append it_error_list.
    endif.

  refresh:  it_ftpost,
              it_fttax,
              it_xblntab.

POSTING_INTERFACE_START用于FI FM的开始,可以设置Session名称

POSTING_INTERFACE_END 提交FI FM,遇错则可以通过SM35纠正。

 

3 IDOC

通过配制ALE运用SAP自带的生成IDOC数据的FM也可实现

 call function 'IDOC_CREATE_ON_DATABASE'
      exporting
        idoc_status                 = wa_edids
        error_occured             = l_error_occured
      tables
        idoc_data                    = it_edidd
      changing
        idoc_control               = wa_edidc
      exceptions
        idoc_input_inconsistent   = 1
        others                           = 2 .

实事上LSMW与RFBIBL00, BDC与POSTING_INTERFACE_DOCUMENT如果看其实现代码,你会发现他们是相似的。当然,写这样的代码大部分时间主要是花费在数据转换上面。

FWOS_CURRENCY_DECIMALS_READ: 货币的小数点位数确认

CONVERT_DATE_TO_EXTERNAL:           转换成外部日期格式

USR01-DCPFM:                                       用户数据小数点(英文句号/逗号)

2
0
分享到:
评论

相关推荐

    sap数据批量导入教程、BDC实例详细讲解步骤.docx

    LSMW、BDC、CATT都是SAP提供的数据批量导入工具,但它们有不同的特点和应用场景。LSMW适用于大批量数据迁移,BDC适用于批量数据处理,CATT适用于自动化测试。从数据导入速度来看,LSMW=BDC>CATT;从制作难度来看,...

    SAP批导入处理教程

    SAP批导入是企业数据迁移和系统集成的重要技术手段,主要包括ECATT(Extended Computer Aided Test Tool)、LSMW(Legacy System Migration Workbench)和BDC(Batch Data Conversion)。这些工具各有特点,适用于...

    SAP批导入处理培训教程.doc

    ECATT 适合自动化测试,LSMW 提供了全面的数据导入解决方案,BDC 则适用于简单的重复性数据导入。理解这些工具的特性和使用方法,对于提升 SAP 系统的数据管理和维护效率至关重要。在实际工作中,根据具体需求选择...

    SAP系统及开发技术介绍.pptx

    3. **SAP批处理技术**:主要用于数据导入、批量操作、接口程序和测试工具,如CATT/eCATT、LSMW(Legacy System Migration Workbench)和BDC(Batch Data Communication)、BAPI(Business Application Programming ...

    SAP_恶魔_ABAP_Batch Input应用_狂套

    通过上述章节的详细介绍,我们可以看到ECATT、LSMW以及BDC在处理批量数据时各有优势。选择合适的工具取决于具体的应用场景和个人喜好。无论采用哪种方法,都需要仔细规划和实施,以确保数据的准确性和完整性。

    ABAP开发工具和技术概览

    - **LSMW**:适用于大规模数据录入,步骤详尽,确保数据完整性。 综上所述,ABAP不仅是一门语言,更是集成了多种开发工具和技术的生态系统,覆盖了从简单报表到复杂数据交互,以及跨系统数据交换和数据管理的全方位...

    SAP_FICO面试题

    LSMW Legacy System Migration Workbench、CATT 和 ECATT 以及 BDC 批量数据导入程序等都是常用的方法。在实际业务过程中,我们可能需要从 EXCEL 或 FLAT 文件中批量导入数据,而这些方法可以帮助我们快速实现数据的...

    SAP-FICO面试题内含科目题目和答案

    批量导入数据,如从Excel或平文件导入总账科目主数据,可以选择LSMW(Legacy System Migration Workbench)、CATT(Computer-Aided Test Tool,从ECC 5.0版本后由ECATT取代)、BDC(Batch Data Communication)等...

    SAPFICO_问题分类汇总.doc

    - ECATT(Enterprise Central Component Automated Test Tool):自动化测试工具,也可用于数据导入,尤其适用于测试场景。 - BDC(Batch Data Communication):批量数据输入程序,通常由程序员编写脚本实现。 -...

    SAP-FICO-问题分类汇总.docx

    - LSMW(Legacy System Migration Workbench):用于从旧系统迁移数据至SAP。 - ECATT(以前的CATT):自动化测试和数据迁移工具。 - BDC(Batch Data Communication):编程实现批量数据导入。 - BAPI...

Global site tag (gtag.js) - Google Analytics