`

使用Call Transaction来实现BDC(转)

    博客分类:
  • sap
 
阅读更多
data:

ls_bdc like bdcdata,

lt_bdc like standard table of bdcdata.


data:

w_dis_mode type char1 value 'A',

w_upd_mode type char1 value 'S',

w_session LIKE APQI-GROUPID value 'SESSION1-54' .


start-of-selection.

*1. filling BDC table

  perform fill_bdc_tab.


*2. output the data

  ULINE /5(65).

  WRITE:/5 'Program',

  15 'Screen',

  25 'New Screen',

  40 'Field Name',

  55 'Field Value'.

  LOOP AT lt_bdc into ls_bdc.

    WRITE: /5 ls_bdc-PROGRAM,

    15 ls_bdc-DYNPRO,

    30 ls_bdc-DYNBEGIN,

    40 ls_bdc-FNAM,

    55 ls_bdc-FVAL.

  ENDLOOP.


*3. call transaction to implement BDC

  ULINE /5(65).

  WRITE: / 'call transaction to implement BDC'.

  call transaction 'FK01'

  using lt_bdc

  mode w_dis_mode

  update w_upd_mode.


  IF SY-SUBRC = 0.

    WRITE: / 'Call Transaction: updated successfully!'.

  ELSE.

    WRITE: / 'Call Transaction: updated failed!'.

  ENDIF.



*&———————————————————————*

*& Form fill_bdc_tab

*&———————————————————————*

* Fill BDC data

*———————————————————————-*

FORM fill_bdc_tab .


* clear bdc

  refresh:lt_bdc.


* fill BDC

  perform populate_bdc_tab using:

  '1' 'SAPMF02K' '0105', "initial create vendor screen

  ' ' 'BDC_CURSOR' 'RF02K-KTOKK',

  ' ' 'RF02K-LIFNR' 'TEST2',

  ' ' 'RF02K-BUKRS' '0001', "Company code

  ' ' 'RF02K-KTOKK' 'ZTMM', "Account group

  ' ' 'BDC_OKCODE' '/00',


  '1' 'SAPMF02K' '0110',

  ' ' 'BDC_CURSOR' 'LFA1-LAND1',

  ' ' 'LFA1-NAME1' 'tang',

  ' ' 'LFA1-SORTL' 'can',

  ' ' 'LFA1-LAND1' 'CN',

  ' ' 'LFA1-ANRED' 'Mr.Tang',

' ' 'LFA1-SPRAS' 'EN',

' ' 'BDC_OKCODE' '/00',


'1' 'SAPMF02K' '0120',

' ' 'BDC_OKCODE' '=UPDA',

' ' 'BDC_CURSOR' 'LFA1-KUNNR',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-ST',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-01',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-02',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-03',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-04',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-05',

' ' 'BDC_SUBSCR' 'SAPMF02K 1099ARI-06',


'1' 'SAPMF02K' '0210',

' ' 'BDC_CURSOR' 'LFB1-AKONT',

' ' 'LFB1-AKONT' '197100',

' ' 'BDC_OKCODE' '=UPDA'.


ENDFORM.                    "fill_bdc_tab
" fill_bdc_tab

*&———————————————————————*

*& Form populate_bdc_tab

*&———————————————————————*

* fill data to bdc

*———————————————————————-*

* –>P_0024 text

* –>P_0025 text

* –>P_0026 text

*———————————————————————-*

FORM populate_bdc_tab USING FLAG type char1

VAR1 type any

VAR2 type any.


CLEAR ls_bdc.

if flag = '1'.

  ls_bdc-program = var1.

  ls_bdc-dynpro = var2.

  ls_bdc-dynbegin = 'X'.

else.

  ls_bdc-fnam = var1.

  ls_bdc-fval = var2.

endif.


APPEND ls_bdc to lt_bdc.


ENDFORM.                    "fill_bdc_tab
"populate_bdc_tab
分享到:
评论

相关推荐

    CALL TRANSACTION USING... 参数祥解

    CALL TRANSACTION USING 语句是 ABAP 中提供的一个方便的执行批量输入的语句,使用它可以通过程序代码完成多个事务码的连续执行。BDC_TAB 是批输入任务表,网上有很多例子了,大家用到的时候可以搜索。用事务码 SHDB...

    SAP BDC精华教程

    4. 使用Call Transaction或Call Function命令来commit数据变化。 实践示例 下面是一个使用BDC技术修改物料描述的示例: 1. 创建一个TXT文件,包含物料编号和描述信息。 2. 使用SHDB录制 modify material ...

    ABAP BDC的使用

    最后,使用 call transaction ‘XXXX’ using bdc…… 命令来提交数据,并将执行结果返回给 messtab 这个 internal table。 下面是一个使用 BDC 技术的示例程序。假设我们需要将某些物料的描述都在后面加上指定的...

    BDC介绍BDC介绍BDC介绍

    然后使用`CALL TRANSACTION`或`FUNCTION 'BDC_INSERT'`指令执行事务,从而实现批量数据输入。 **BDC编程步骤** 1. **数据准备**:将外部数据源读取到内部表,例如使用`READ TABLE`或`DO-ENDDO`循环。 2. **脚本...

    BDC技术教程

    接着,使用`CALL TRANSACTION`语句或`BDC_INSERT`函数调用来执行提交动作,从而完成数据的录入。 以一个示例场景来说明BDC的应用:假设公司需要在所有物料描述的末尾添加文本"Group X",可以通过T-code MM02来修改...

    SAP_BDC_举例讲解

    3. 填完 bdcdata 以后,用 call transaction ‘XXXX’ using bdc…… 这个命令来真正的 commit 动作或者 call function 'BDC_INSERT' 在建立一个 session。 4. 并把执行的结果返回给 messtab 这个 Internal Table ...

    SAP BDC技术 录屏

    调用事务码`MM02`并提交变更(`call transaction MM02 using BDC commit`). 3. 调用`BDC_Insert`函数模块,执行批量数据处理。 3. **数据验证**:确保所有数据均正确无误地被录入或更新。 #### 五、BDC技术的具体...

    SAP BDC开发讲解

    - 调用事务:使用`CALL TRANSACTION`语句来调用事务代码,如`'VA42'`。 - 捕获消息:通过`MESSAGES INTO t_bdcmsg`来捕获消息。 - 分析结果:检查`t_bdcmsg`表中的消息类型来判断操作是否成功。 #### 五、注意...

    abap BDC 操作

    最后是调用事物代码:CALL TRANSACTION 'VA42' USING t_bdc MODE v_mode "Background performance" UPDATE 'S' "local update" MESSAGES INTO t_bdcmsg. v_mode 是显示模式: “A”表示显示每一步操作步骤, “N”...

    BDC BATCH INPUT 技术详解 (有图)

    3. 填完 bdcdata 以后,用 call transaction ‘XXXX’ using bdc…… 这个命令来真正的commit 动作或者 call function 'BDC_INSERT' 在建立一个 session。 4. 并把执行的结果返回给 messtab 这个 Internal Table。 ...

    51SAP_ECC_ABAP_Unit 10-BDC .ppt

    其次,在处理批导入时,将准备好的数据组织成内表"BDCData",然后使用CALL TRANSACTION命令提交批导入,重复执行预设的操作。 BDC的执行方式有三种: 1. 前台(A)执行:在用户界面进行,可以实时查看结果,适合...

    SAP_BDC精华教程.docx

    3. 填完 bdcdata 以后,用 call transaction ‘XXXX’ using bdc ……这个命令来真正的commit 动作或者 call function 'BDC_INSERT'在建立一个 session。并把执行的结果返回给 messtab 这个 Internal Table。 实践...

    sap abap BDC程序举例

    - **事务调用**:使用 `CALL TRANSACTION 'MM01' USING IT_BDCDATA` 模拟用户输入,执行物料主数据维护事务。 综上所述,这个示例不仅展示了如何通过 BDC 在后台自动执行事务处理,还详细介绍了从文件读取数据、...

    BDC技术(Batch Data Conversion):

    4. **提交数据**:使用`CALL TRANSACTION`语句或`BDC_INSERT`函数模块,结合BDCData内部表中的数据,执行事务处理,从而完成数据的批量导入。结果会被返回到messtab内部表供后续处理。 以修改物料描述为例,我们...

    SAP中 BDC吧excel数据导入人员培训记录模版

    ABAP代码通常包括`CALL TRANSACTION`语句来调用SAP事务,`BDC_OPEN`、`BDC_INSERT`等函数来处理数据导入,以及`BDC_CLOSE`来结束会话。 6. **运行BDC程序**: 完成程序编写后,可以将其上传到SAP系统并在后台运行...

    SAP_BDC精华版教材.doc

    3. 数据提交:使用`CALL TRANSACTION 'XXXX' USING BDCDATA ...`命令或`CALL FUNCTION 'BDC_INSERT'`来执行实际的数据提交。这两个命令会将BDCData内部表中的数据应用到SAP系统,完成数据的导入或更新。 以一个具体...

    SAP DBC 使用简介

    BDC程序的工作原理是将需要输入的数据预先存储在BDC表中,然后通过调用`CALL TRANSACTION`语句来启动R/3系统的输入屏幕,并从BDC表中按顺序读取数据项填充到相应字段,最后发送按键控制码(如 `/11` 代表按 `<F11>` ...

    ABAP_100_道面试题

    Call Transaction 可以直接调用事务码来处理数据,而不需要创建 Batch Input Session。 六、Background Job 可以使用 SM36 创建背景作业,以便在后台处理 Batch Input Session。在创建背景作业时,需要指定作业...

Global site tag (gtag.js) - Google Analytics