SAP_ABAP_BDC录屏案例

SAP ABAP顾问能力模型梳理_企业数字化建设者的博客-CSDN博客SAP Abap顾问能力模型https://blog.csdn.net/java_zhong1990/article/details/132469977

一、实施步骤

1.1 SHDB

SHDB --> 新建记录-->输入录制的tcode :BP,-->执行录屏操作-->录制结果封装成函数

1.2 新建记录

SHDB --> 新建记录-->输入录制的tcode :BP,-->执行录屏操作-->录制结果封装成函数 

1.3 输入录制的tcode :BP

SHDB --> 新建记录-->输入录制的tcode :BP,-->执行录屏操作-->录制结果封装成函数 

1.4 执行录屏操作

SHDB --> 新建记录-->输入录制的tcode :BP,-->执行录屏操作-->录制结果封装成函数 

该活动与前台操作区别不大

1.5 录制结果封装成函数

SHDB --> 新建记录-->输入录制的tcode :BP,-->执行录屏操作-->录制结果封装成函数  

1.5.1 ZFM_BP3 - 修改公司代码视图 

FUNCTION ZFM_BP3.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(CTU) LIKE  APQI-PUTACTIVE DEFAULT 'X'
*"     VALUE(MODE) LIKE  APQI-PUTACTIVE DEFAULT 'N'
*"     VALUE(UPDATE) LIKE  APQI-PUTACTIVE DEFAULT 'L'
*"     VALUE(GROUP) LIKE  APQI-GROUPID OPTIONAL
*"     VALUE(USER) LIKE  APQI-USERID OPTIONAL
*"     VALUE(KEEP) LIKE  APQI-QERASE OPTIONAL
*"     VALUE(HOLDDATE) LIKE  APQI-STARTDATE OPTIONAL
*"     VALUE(NODATA) LIKE  APQI-PUTACTIVE DEFAULT '/'
*"     VALUE(SEARCH_TYPE_001) LIKE  BDCDATA-FVAL DEFAULT '1'
*"     VALUE(SEARCH_ID_002) LIKE  BDCDATA-FVAL DEFAULT '8'
*"     VALUE(MAXHIT_003) LIKE  BDCDATA-FVAL DEFAULT '100'
*"     VALUE(OPEN_NUMBER_004) LIKE  BDCDATA-FVAL DEFAULT '100180'
*"     VALUE(PARTNER_ROLE_005) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_006) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_007) LIKE  BDCDATA-FVAL DEFAULT '000000'
*"     VALUE(PARTNER_TIMEDEP_008) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_009) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_010) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_011) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_012) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_013) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_014) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_015) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_016) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(BUKRS_017) LIKE  BDCDATA-FVAL DEFAULT '2010'
*"     VALUE(PARTNER_ROLE_018) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_019) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_020) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_021) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_022) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_023) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(ZTERM_024) LIKE  BDCDATA-FVAL DEFAULT '0055'
*"     VALUE(ZWELS_025) LIKE  BDCDATA-FVAL DEFAULT 'D'
*"     VALUE(PARTNER_ROLE_026) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_027) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(ZTERM_028) LIKE  BDCDATA-FVAL DEFAULT '0055'
*"     VALUE(ZWELS_029) LIKE  BDCDATA-FVAL DEFAULT 'D'
*"  EXPORTING
*"     VALUE(SUBRC) LIKE  SYST-SUBRC
*"  TABLES
*"      MESSTAB STRUCTURE  BDCMSGCOLL OPTIONAL
*"----------------------------------------------------------------------subrc = 0.perform bdc_nodata      using NODATA.perform open_group      using GROUP USER KEEP HOLDDATE CTU.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_OPEN'.
perform bdc_field       using 'BDC_CURSOR''BUS_LOCA_SRCH01-SEARCH_ID'.
perform bdc_field       using 'BUS_LOCA_SRCH01-SEARCH_TYPE'SEARCH_TYPE_001.
perform bdc_field       using 'BUS_LOCA_SRCH01-SEARCH_ID'SEARCH_ID_002.
perform bdc_field       using 'BUS_LOCA_SRCH01-MAXHIT'MAXHIT_003.
perform bdc_dynpro      using 'SAPLBUPA_DIALOG_JOEL' '1600'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.
perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-OPEN_NUMBER'.
perform bdc_field       using 'BUS_JOEL_MAIN-OPEN_NUMBER'OPEN_NUMBER_004.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.
perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_005.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_006.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.
perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_007.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_008.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.
perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_009.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_010.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_MAIN_P02'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_011.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_012.
perform bdc_field       using 'BDC_CURSOR''BUS000FLDS-TITLE_MEDI'.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=FSBP_CC_SWITCH'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_013.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_014.perform bdc_field       using 'BDC_CURSOR''BS001-BUKRS'.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_015.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_016.
perform bdc_field       using 'BDC_CURSOR''BS001-BUKRS'.
perform bdc_field       using 'BS001-BUKRS'BUKRS_017.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1100_TAB_02'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_018.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_019.
perform bdc_field       using 'BDC_CURSOR''BS001-BUKRS'.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_ACTIVITY'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_020.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_021.
perform bdc_field       using 'BDC_CURSOR''BS001-BUKRS'.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_022.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_023.
perform bdc_field       using 'BDC_CURSOR''GS_LFB1-ZTERM'.
perform bdc_field       using 'GS_LFB1-ZTERM'ZTERM_024.
perform bdc_field       using 'GS_LFB1-ZWELS'ZWELS_025.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_SAVE'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_026.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_027.
perform bdc_field       using 'BDC_CURSOR''GS_LFB1-ZTERM'.
perform bdc_field       using 'GS_LFB1-ZTERM'ZTERM_028.
perform bdc_field       using 'GS_LFB1-ZWELS'ZWELS_029.
perform bdc_transaction tables messtab
using                         'BP'CTUMODEUPDATE.
if sy-subrc <> 0.subrc = sy-subrc.exit.
endif.perform close_group using     CTU.ENDFUNCTION.

 1.5.2 ZFM_BP4 - 修改采购视图

FUNCTION ZFM_BP4.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(CTU) LIKE  APQI-PUTACTIVE DEFAULT 'X'
*"     VALUE(MODE) LIKE  APQI-PUTACTIVE DEFAULT 'N'
*"     VALUE(UPDATE) LIKE  APQI-PUTACTIVE DEFAULT 'L'
*"     VALUE(GROUP) LIKE  APQI-GROUPID OPTIONAL
*"     VALUE(USER) LIKE  APQI-USERID OPTIONAL
*"     VALUE(KEEP) LIKE  APQI-QERASE OPTIONAL
*"     VALUE(HOLDDATE) LIKE  APQI-STARTDATE OPTIONAL
*"     VALUE(NODATA) LIKE  APQI-PUTACTIVE DEFAULT '/'
*"     VALUE(SEARCH_TYPE_001) LIKE  BDCDATA-FVAL DEFAULT '1'
*"     VALUE(SEARCH_ID_002) LIKE  BDCDATA-FVAL DEFAULT '8'
*"     VALUE(MAXHIT_003) LIKE  BDCDATA-FVAL DEFAULT '100'
*"     VALUE(OPEN_NUMBER_004) LIKE  BDCDATA-FVAL DEFAULT '100180'
*"     VALUE(PARTNER_ROLE_005) LIKE  BDCDATA-FVAL DEFAULT 'FLVN00'
*"     VALUE(PARTNER_TIMEDEP_006) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_007) LIKE  BDCDATA-FVAL DEFAULT '000000'
*"     VALUE(PARTNER_TIMEDEP_008) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_009) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_010) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_011) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_012) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_013) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_014) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_015) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_016) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(GV_PURCHASING_ORG_017) LIKE  BDCDATA-FVAL DEFAULT '2010'
*"     VALUE(PARTNER_ROLE_018) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_019) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_020) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_021) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_022) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_023) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(PARTNER_ROLE_024) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_025) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(WAERS_026) LIKE  BDCDATA-FVAL DEFAULT 'CNY'
*"     VALUE(ZTERM_027) LIKE  BDCDATA-FVAL DEFAULT '0050'
*"     VALUE(LFABC_028) LIKE  BDCDATA-FVAL DEFAULT 'A'
*"     VALUE(WEBRE_029) LIKE  BDCDATA-FVAL DEFAULT 'X'
*"     VALUE(PARTNER_ROLE_030) LIKE  BDCDATA-FVAL DEFAULT 'FLVN01'
*"     VALUE(PARTNER_TIMEDEP_031) LIKE  BDCDATA-FVAL DEFAULT '000001'
*"     VALUE(WAERS_032) LIKE  BDCDATA-FVAL DEFAULT 'CNY'
*"     VALUE(ZTERM_033) LIKE  BDCDATA-FVAL DEFAULT '0050'
*"     VALUE(LFABC_034) LIKE  BDCDATA-FVAL DEFAULT 'A'
*"     VALUE(WEBRE_035) LIKE  BDCDATA-FVAL DEFAULT 'X'
*"  EXPORTING
*"     VALUE(SUBRC) LIKE  SYST-SUBRC
*"  TABLES
*"      MESSTAB STRUCTURE  BDCMSGCOLL OPTIONAL
*"----------------------------------------------------------------------subrc = 0.perform bdc_nodata      using NODATA.perform open_group      using GROUP USER KEEP HOLDDATE CTU.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_OPEN'.perform bdc_field       using 'BDC_CURSOR''BUS_LOCA_SRCH01-SEARCH_ID'.perform bdc_field       using 'BUS_LOCA_SRCH01-SEARCH_TYPE'SEARCH_TYPE_001.perform bdc_field       using 'BUS_LOCA_SRCH01-SEARCH_ID'SEARCH_ID_002.perform bdc_field       using 'BUS_LOCA_SRCH01-MAXHIT'MAXHIT_003.perform bdc_dynpro      using 'SAPLBUPA_DIALOG_JOEL' '1600'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-OPEN_NUMBER'.perform bdc_field       using 'BUS_JOEL_MAIN-OPEN_NUMBER'OPEN_NUMBER_004.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_005.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_006.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_007.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_008.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=SCREEN_1110_CHG_ROLE'.perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_009.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_010.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_MAIN_P02'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_011.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_012.perform bdc_field       using 'BDC_CURSOR''BUS000FLDS-TITLE_MEDI'.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=CVIV_PORGSWITCH'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_013.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_014.*perform bdc_field       using 'BDC_CURSOR'
*                              'GS_LFM1-WAERS'.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_015.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_016.perform bdc_field       using 'BDC_CURSOR''GV_PURCHASING_ORG'.perform bdc_field       using 'GV_PURCHASING_ORG'GV_PURCHASING_ORG_017.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=SCREEN_1100_TAB_06'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_018.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_019.perform bdc_field       using 'BDC_CURSOR''GV_PURCHASING_ORG'.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1100_TAB_01'.
perform bdc_field       using 'BDC_CURSOR''BUS_JOEL_MAIN-PARTNER_ROLE'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_020.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_021.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=SCREEN_1000_ACTIVITY'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_022.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_023.
perform bdc_field       using 'BDC_CURSOR''GV_PURCHASING_ORG'.
perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.
perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_ENTER'.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_024.
perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_025.*perform bdc_field       using 'GS_LFM1-WAERS'
*                              WAERS_026.perform bdc_field       using 'BDC_CURSOR''GS_LFM1-ZTERM'.perform bdc_field       using 'GS_LFM1-ZTERM'ZTERM_027.*perform bdc_field       using 'GS_LFM1-LFABC'
*                              LFABC_028.
*perform bdc_field       using 'GS_LFM1-WEBRE'
*                              WEBRE_029.perform bdc_dynpro      using 'SAPLBUS_LOCATOR' '3000'.perform bdc_field       using 'BDC_OKCODE''=BUS_MAIN_SAVE'.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_ROLE'PARTNER_ROLE_030.perform bdc_field       using 'BUS_JOEL_MAIN-PARTNER_TIMEDEP'PARTNER_TIMEDEP_031.*perform bdc_field       using 'GS_LFM1-WAERS'
*                              WAERS_032.perform bdc_field       using 'BDC_CURSOR''GS_LFM1-ZTERM'.perform bdc_field       using 'GS_LFM1-ZTERM'ZTERM_033.*perform bdc_field       using 'GS_LFM1-LFABC'
*                              LFABC_034.
*perform bdc_field       using 'GS_LFM1-WEBRE'
*                              WEBRE_035.perform bdc_transaction tables messtab
using                         'BP'CTUMODEUPDATE.
if sy-subrc <> 0.subrc = sy-subrc.exit.
endif.perform close_group using     CTU.ENDFUNCTION.

1.6 屏幕设置

 1.6.1 注意设置,屏幕默认为显示

1.6.1  要反复选择 【按业务伙伴角色】,目的是让功能键显示出来。

1.6.3 可以注释掉,一些无用的录屏

     

二、BDC的概念

2.1 BDC的一些关键信息

SAP BDC(Batch Data Communication)是一种用于在SAP系统中批量处理数据的技术。它通常用于自动化数据输入和数据更新任务,特别是在SAP的传统用户界面(SAP GUI)中执行事务。以下是关于SAP BDC的一些关键信息:

  1. 数据批处理:SAP BDC旨在处理大量数据,通常用于批处理任务。它允许您将数据从外部系统或文件导入到SAP系统中,或者将数据从SAP系统导出到外部系统或文件。

  2. 两种类型的BDC:SAP BDC有两种主要类型:经典BDC和数据转换BDC。经典BDC用于模拟用户在SAP GUI中手动输入数据的行为,而数据转换BDC用于直接更新数据库,绕过了用户界面。

  3. 录制和重放:经典BDC的一种常见方法是通过录制用户在SAP GUI中执行的事务,然后重放录制的操作以处理相似的数据。这样可以节省时间和减少错误。

  4. 事务代码:在SAP BDC中,您需要指定要使用的SAP事务代码。这是一个SAP事务的标识符,它告诉系统要执行哪个事务。

  5. 数据转换BDC:数据转换BDC允许您通过直接操作数据库表来处理数据。这对于大量数据的快速导入和更新非常有用,但需要谨慎使用,以确保数据完整性和一致性。

  6. BDC Session:在SAP BDC中,数据通常会被分组成"会话"(session),然后由系统依次处理。会话包含了数据的输入、校验和提交步骤。

  7. 错误处理:BDC允许您处理数据输入中的错误。如果在处理过程中出现错误,您可以配置BDC以捕获错误并采取适当的措施,如记录错误日志或停止处理。

  8. 安全性和权限:在使用BDC时,请确保具备足够的权限来执行相关事务代码和数据更新,以避免潜在的安全问题。

 三  BDC使用注意实现

3.1 关键的注意事项

在使用SAP BDC(Batch Data Communication)进行数据处理时,有一些重要的注意事项和最佳实践需要考虑,以确保数据的准确性、完整性和安全性。以下是一些关键的注意事项:

  • 数据质量和准备:在执行BDC之前,确保要导入或更新的数据质量高,数据格式正确,且数据已经过充分的验证和清洗。
  • 在BDC之前,进行数据备份,以防止数据丢失或错误。
  • 事务代码和流程:仔细选择要使用的SAP事务代码,并确保它们具有正确的权限设置。
  • 确保了解SAP系统中执行的具体事务的工作流程,以避免不必要的错误或中断。
  • 错误处理和回滚:实施适当的错误处理机制,以便在发生错误时及时捕获和记录错误信息。
  • 考虑实现事务的回滚机制,以便在错误发生时撤销之前的更改,以保持数据一致性。
  • 事务提交:确保在每个BDC会话之后执行事务提交,以确保数据更改得以保存。
  • 考虑使用合适的提交点,以避免在大批量处理中出现性能问题。
  • 权限和安全性:确保执行BDC的用户具备足够的权限来执行相关的事务代码和数据更新操作。
  • 考虑数据敏感性,确保只有经过授权的用户能够访问和处理敏感数据。
  • 监控和日志记录:实施监控机制,以跟踪BDC的执行状态和性能。记录BDC执行的日志,包括成功和失败的操作,以便进行审计和故障排除。
  • 测试:在生产环境之前进行充分的测试,包括功能测试、性能测试和容错测试,以确保BDC工作如预期。
  • 系统升级和变更:在SAP系统升级或配置更改之前,重新评估和测试BDC流程,以确保其适应新环境。
  • 文档和培训:详细记录BDC流程和配置,以便未来的维护和问题解决。
  • 为相关的工作人员提供培训,以确保他们了解如何使用和维护BDC。


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部