abap bdc 导入例子 *---------------------------------------------------------------------* * Program ID : PP0018 * * Program Name : ZTFPPDCI0001 * * T-CODE : ZTFPPDCI0001 * * Program Type: 对话模块 * * Description : 周计划的批量导入 ### ABAP BDC 导入例子解析 #### 知识点一:ABAP BDC (Business Data Cooperative) 技术概述 ABAP BDC(Business Data Cooperative)是SAP系统中用于模拟用户输入的一种技术,它允许开发人员通过程序来控制前台的屏幕交互流程,从而实现自动化数据录入或修改等操作。在SAP开发环境中,BDC常被用于批量导入数据、创建或更新大量业务对象等场景。 #### 知识点二:ABAP BDC 导入的例子详解 本例中展示的是一个名为 `ZTFPPDCI0001` 的ABAP程序,该程序主要用于周计划的批量导入。 ##### 1. 程序基本信息 - **Program ID** (程序ID): PP0018 - **Program Name** (程序名称): ZTFPPDCI0001 - **T-CODE** (事务代码): ZTFPPDCI0001 - **Program Type** (程序类型): 对话模块 - **Description** (描述): 周计划的批量导入 ##### 2. 程序结构与定义 程序首先定义了几个类型池(Type-Pools),这些类型池中包含了用于数据传输的数据结构。 - **Type-Pools**: 定义了多个类型池,如 `slis`, `icon` 等。 - **Types**: 在类型定义部分,定义了多个数据结构,包括 `tps_weekp`, `tps_dl_head`, `tps_dl_info`, `tps_marc`, `tps_plaf`, `tps_afko` 等,每个数据结构包含了具体的字段,如 `chk`, `plnum`, `matnr`, `maktx` 等。 ##### 3. 数据结构解析 - **tps_weekp**: - `chk`: 类型为 `C`,可能是检查标志。 - `plnum`: 计划编号。 - `matnr`: 物料编号。 - `maktx`: 物料描述。 - `gsmng`: 总量。 - `meins`: 单位。 - `numvr`: 数量版本。 - `text1`: 描述文本。 - `plgrp`: 计划组。 - `pwwrk`: 工厂编号。 - `psttr`: 开始日期。 - `pedtr`: 结束日期。 - `pstti`: 开始时间。 - `pedti`: 结束时间。 - `sernr`: 序列号。 - `psttr_s`: 开始日期(短格式)。 - `pedtr_e`: 结束日期(短格式)。 - `dauat`: 创建日期。 - **tps_dl_head**: - `headname`: 头部名称,长度为30。 - **tps_dl_info**: - 定义了与 `tps_weekp` 相同的部分字段,用于数据导入时的信息传递。 - **tps_marc**: - `werkst`: 工厂。 - `fevoro`: 费用对象。 - `matnr`: 物料编号。 - **tps_plaf**: - 定义了与 `tps_weekp` 和 `tps_dl_info` 相同的部分字段,用于计划相关的数据存储。 - **tps_afko**: - `aufnr`: 任务单号。 - 其他字段未完全展示。 ##### 4. 报告定义 - **Report**: `ZTFPPDCI0001` - **Line-Count**: 65(每行字符数) - **Line-Size**: 160(每行宽度) - **No Standard Page Heading**: 不使用标准页面标题。 #### 知识点三:ABAP BDC 实现原理及应用场景 - **原理**: - BDC 技术通过模拟用户的交互行为来完成特定的业务处理过程,其核心是将用户界面的交互步骤转化为可以由程序控制的数据流。 - 开发人员可以通过编写特定的逻辑来控制 BDC 过程中的数据流向,以及如何在 SAP 系统中进行数据的提交和验证。 - **应用场景**: - 批量数据导入:如本例中的周计划批量导入。 - 数据迁移项目:在新旧系统切换过程中,使用 BDC 可以快速地将数据从旧系统迁移到新系统。 - 自动化测试:BDC 可以用于自动化的回归测试,模拟用户在系统中的操作过程。 本例通过一个具体的 ABAP 程序示例介绍了如何利用 BDC 技术来实现周计划的批量导入功能,并对该程序的基本结构、定义的数据结构进行了详细的解析,同时也对 BDC 的实现原理及常见应用场景进行了概述。这不仅有助于理解 ABAP BDC 技术的工作机制,也为开发类似功能提供了参考模板。
* Program ID : PP0018 *
* Program Name : ZTFPPDCI0001 *
* T-CODE : ZTFPPDCI0001 *
* Program Type: 对话模块 *
* Description : 周计划的批量导入 *
*---------------------------------------------------------------------*
* Date Created : 2012/01/05 *
* Created By : 1111 *
*---------------------------------------------------------------------*
* Edit Log : *
* Version Date Author Remark *
* <YYYYMMDDnnn> <YYYY/MM/DD> <修改人> <修改理由/内容> *
*---------------------------------------------------------------------*
report ztfppdci0001 line-count 65(2)
line-size 160
no standard page heading.
*TYPE-POOLS(类型池定义)
type-pools: slis,
icon.
*TYPES(数据类型定义)
types: begin of tps_weekp, "alv 展示内表
chk(1) type c,
plnum type plaf-plnum, "计划订单号
matnr type plaf-matnr, " 计划物料
gsmng type plaf-gsmng, " 全部的计划订单数量
meins type plaf-meins,
numvr type plaf-numvr, " 版本号
text1 type mkal-text1, "版本描述
plgrp type plaf-plgrp, "生产调度员
pwwrk type plaf-pwwrk, " 计划订单中的生产工厂
psttr type plaf-psttr, " 计划订单上的订单开始日期
pedtr type plaf-pedtr, " 计划订单中的订单结束日期
pstti type plaf-pstti,
pedti type plaf-pedti,
sernr type objk-sernr, " 序列号,
psttr_s type plaf-psttr, " 生产订单开始日期
pedtr_e type plaf-pedtr, " 生产订单结束日期
dauat type afpo-dauat, " 订单类型
end of tps_weekp,
begin of tps_dl_head, "导出列标题
headname(30) type c,
end of tps_dl_head,
begin of tps_dl_info, "download内表
plnum type plaf-plnum, "计划订单号
matnr type plaf-matnr, " 计划物料
maktx type makt-maktx ,"物料描述(短文本)
gsmng type plaf-gsmng, " 全部的计划订单数量
numvr type plaf-numvr, " 版本号
text1 type mkal-text1, "版本描述
plgrp type plaf-plgrp, "生产调度员
pwwrk type plaf-pwwrk, " 计划订单中的生产工厂
psttr type plaf-psttr, " 计划订单上的订单开始日期
剩余42页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助