面试问题集
1. 数据效率?
尽量使用 Select( max,min,sum,avg )和 select single ,for all enteris ,二分法,append 和 collect
loop 里不能套 select ;避免使用 select distinct ,代替先 sort ,再 delete ;
① 抽取数据时,避免使用 SELECT *, 尽量使用 SELECT A B INTO TABLE ITAB 这样的语句。
② 不要使用 SELECT...ENDSELECT语句。
③ 尽量避免在 LOOP中访问数据库。 可以在之前先把数据取到内表, 在 LOOP中用 READ TABLE WITH
KEY ... BINARY SEARCH. 进行读取对应的数据。
④ 用 SORT代替 ORDER BY。
⑤ 使用二分查找法。 READ TABLE的之前使用 SORT TABLE BY对内表进行排序 , 然后使用 READ TABLE
WITH KEY ...BINARY SEARCH.
⑥ 避免使用 SELECT DISTINCT 语句。在抽取数据到内表后用
DELETE ADJACENT DUPLICATES语
句来消除重复行。
⑦ 尽量多指定 WHERE语句条件。
⑧ 在 WHERE 语句指定查询条件时,在同等条件下把包含等号的查询条件放到前边。
2. 什么时候使用 For all entries 命令及其使用时的注意事项?
当需要在 LOOP 中使用查询语句时,一般使用 For all entries 。
注意事项:
① IN 条件所在的内表不能为空(如为空将取出全部的数据)
;
② 数据库字段与内表中的关联比较字段必须具有相同的类型和长度,
且不能在比较中使用操作
符 LIKE 、BETWEEN 和 IN ,同时不能使用 ORDER BY 子句。
③ 为避免删除并不重复的纪录,在定义内表时应尽可能多的指定关键字。
3. 如何设置 AL V 的鼠标双击事件。如何设置 ALV 的页眉和页脚?
ALV 的鼠标双击事件:构造 LS_LAYOUT 的 F2CODE 属性设置为 ‖&ETA ‖即可。
ALV 的页眉:利用 Function “REUSE_ALV_COMMENTAR
Y_WRITE ”来进行设置。
4.
FTP 文件上传,下载,在哪句中需要做异常捕获?
5. SQL 文的性能举例?
① 对同一数据库表存取的场合,能一次把多条记录放到内表中进行处理,不要多次反复存取;
② 只选择必要的字段,应避免使用” SELECT *”;
③ 在 WHERE 语句指定查询条件时,要写全查询条件;
④ 在 WHERE 语句指定查询条件时,应把包含数据库关键字段的条件列在前边。
1
⑤ 在 WHERE 语句指定查询条件时,在同等条件下把包含等号的查询条件放到前边。
6. 怎样理解 Dynpro 的 PAI , PBO 事件?
Dynpro 程序运行时, 首先触发 PBO 事件, 然后显示 Dynpro 画面, 当在 Dynpro 画面触发
一个功能键时, 这时会触发 PAI 事件,当 PAI 事件执行完毕, 重新显示 Dynpro 画面时又将执行
PBO 事件。当不断触发功能键时, PBO 和 PAI 事件会不断交替执行。
pov poh
7. 按顺序举例说明 Report 各事件及其作用?
① LOAD-OF-PROGRAM
② INITIALIZTION
③ AT SELECTION-SCREEN OUTPUT
④ AT SELECTION-SCREEN
⑤ START-OF-SELECTION
⑥ END-OF-SELECTION
⑦ TOP-OF-P AGE
⑧ END-OF-P AGE
⑨ AT LINE-SELECTION
⑩ AT USER-COMMAND
程序执行时,自动触发该 EVENT
对程序变量进行初始化
选择屏幕 PBO 事件,显示选择屏幕之前触发
选择屏幕 PAI 事件,用户在选择屏幕上执行某些功能
选择开始事件
选择结束事件,一般在该事件中输出列表
页眉控制
页角控制
行选择控制,用户选择某列表行时触发
用户交互控制,用户选择某个 GUI 功能时触发
8. 能否自行创建 SD、 MM 、 FI 模块相关数据并说明其过程?
9. 是否使用过 Query ,说明其创建过程?用到过哪些 T-CODE ? meng
10. BDC 执行出错时,为查看设置错误处,显示模式应怎样设置,
A 、 E、 N 分别代表什么含义?
显示模式 DISMODE 应设置为“ A ”或“ E”。
A :代表无论出错与否每个画面都显示;
E :只是在出错时显示;
N :代表无论出错与否每个画面都不显示。
11. 是否做过数据库表维护? meng
12. 删除内表重复数据前应该做什么,如果要按照给定字段如何删除?
meng
应该对内表进行排序。
13. Job 管理?
14. SAP 有哪些外部接口及其内容?
RFC ,BAPI , IDOC 。
RFC :RFC 是 SAP 系 统和其他( SAP 或非 SAP )系 统间 的一个重要而常用的双向接口技 术 ,也被
视为 SAP 与外部通信的基本 协议 。 简单 地 说 , RFC 过程就是系 统调 用当前系 统 外的程序模 块 ,从而 实现
2
某个功能,而且 调用系 统 和被 调 用系 统 中至少有一个必 须是 SAP ABAP 系统 。 这种远 程功能 调 用也可在
同一系 统 内部 进 行(如本地 SAP 系 统内的 远 程调 用);但通常情况下, 调 用程序和被 调 用程序 处 于不同系
统 。
BAPI :BAPI 全称 Business Application Programming Interfaces
,即业务应用编成接口,在
SAP 内部组件及 SAP 与非 SAP 组件之间的技术整合和业务数据交换过程中起着非常重要的作用。
( BAPI 是基于 RFC 实现的)
IDOC : IDOC 是 SAP 系统之间或 SAP 系统与外部系统之间电子数据交换的标准数据格式。在
事务处理过程中,随时会生成 IDOC 。
15. 在什么时候触发 Top of page 语句?
在 3 种情况下可以触发 Top of page 语句。
① 遇到第一个 WRITE语句时;
② 当页面行数超过 LINE-COUNT里定义的行数时;
③ 遇到 NEW-PAGE 命令时。
16. 本地文件上传成 CSV 文件 的 function ?
17. H ash table 和 Sort table 的注意事项?
Hashed 表 的除了数字字段以外, 其余字段必须指定为 key 字段,不能使用 APPEND语句,Sort 为
non-unique 时不能使用 INSERT语句。
18. Report 的跳转语句是什么? pick 是什么?怎么用?
Report 的跳转语句是“ HIDE 和 AT LINE-SELECTION ”。 ―pick ‖是在 Report 一览画面双击
或按 F2 键时触发的功能键键值。
19. FTP 文件的上传下载操作是什么?
FTP 程序大致流程为: FTP_CONNECT , FTP_COMMAND , FTP_DISCONNECT 。
FTP_COMMAND 中输入标准的 FTP 命令。如:更改 FTP 目录 "cd dir" , 更改本地目录 "lcd
localdir" ,上传文件 "put file" 。
FTP_CONNECT – 打开并登陆 FTP 服务器的连接。
FTP_COMMAND – 在 FTP 服务器上执行一个命令。
FTP_DISCONNECT –关闭指向 FTP 服务器的连接。
20. 加锁,解锁的 2 种方式是什么?
加锁的 2 种方式:
① E 模式。同一个 terminal session 的不同 external session 之间不受上锁的影响, 可以使用锁住的对象;
② X 模式。上锁的对象只能由 external session 中的 一个 internal session 使用。
21. MM 、 PP 、 SD、 FI 、HR 模块的主要流程, MM 、 PP 、 SD、 FI 、HR 模块主要数据库表?
MM 模块的主要流程:
①
接到客户的采购订单后,由营业员进行库存确认,如果库存不足则由其提出采购申请。
3
②
③
④
购买担任者接到采购申请经审查合格后,向供应商下达采购订单。
入库等相关管理人员对供应商送达的商品进行入库确认。
由购担任者对供应商提出支付请求进行确认, 经确认无误后, 向财务部门提出支付申请,
财务部门对支付申请进行审核合格后,进行支付处理。
SD 模块的主要流程:
① 销售担任者接到客户寻价后,在系统中登录客户的寻价信息。
② 相关人员对登录的寻价信息进行价格确认,并在系统中登录报价信息。
③ 客户对收到的报价信息审核合格后,提出采购申请。销售担任者接到采购申请后,在系
统中登录采购订单。
④ 相关人员对客户所订购的商品进行筹措完毕后,进行出库处理,
并在系统中登录出库单。
⑤ 相关人员向客户提出支付请求,客户支付后,给客户出具红头发票,在系统中登录开票
信息。
22. update ,delete 数据库时的注意事项?
① 正确指定数据库表的 KEY字段,防止更改了不应更改的记录,同时要正确指定要更改纪录的
中需要变更的字段;
② 要注意保持关联表的数据一致性;
③ 变更前要注意上锁,变更后要注意解锁。
23. 怎样做带按钮的选择画面?
① TABLES SSCRFIELDS.
② SELECTION-SCREEN
].
③ INITIALI ZATION.
PUSHBUTTON
/[/]
[MODIF
ID
MOVE 'My text' TO .
④ AT SELECTION-SCREEN
⑤ IF SSCRFIELDS-UCOMM = .
.
ENDIF.
上述代码的描述:
① 定义构造 SSCRFIELDS ;
② 使用命令 Selection-screen pushbutton
③ 在事件 Initialization 中定义 pushbutton 的文本;
④ 在事件 At Selection-Screen
定义 Push Button ;
中定义 pushbutton 按下后,所执行的处理。
24. 求和函数( Collect )的注意事项?
① 要填充没有重复条目的内表,应该使用
② COLLECT语句无法用于带深层结构的内表(组件中不可以包含内表)
③ 为 COLLECT指定的工作区域必须与内表的行类型兼容, (不仅仅是可互相转换) 。
COLLECT
。
④ 所有的非表关键字段必须是数字类型。
4
25. 举例说明 MM 、 SD、 FI 、PP 模块的主要 t-code ?
MM 模块的主要 t-code :
MMBE 库存总览
ME51N 采购申请
ME21N 采购订单
MIGO 收货
MIRO 后勤发票校验
SD 模块的主要 t-code :
VA11 询价
VA21 报价
VA01 销售订单
VL01N 出库
VF01 开具发票
FI 模块的主要 t-code :
总账:
FS00 创 建科目
F.10 查 看会 计科目表
F.01 查 看会 计 科目余 额 表
FB50 制 总账 凭 证
FB08 冲 销 凭 证
FS10N 科目余 额查询
FBV0 成批 过账
FBV3 显 示 预制凭 证
OBR2 删 除会 计 科目
KOB1 查 看 订单 明 细
KB31 统计 指 标赋值
F-04 过账 并清 账
FAGL_FC_V AL 外 币评 估
FB70 输 入客 户发 票( 员 工借款)
F-22 输入客 户发 票
F-30 过账 并清 账 (客 户 )
F-53 付款 记账
F-42 输入 结转过账
F-43 输 入供 应商 发 票
F-51 过账 并清 账(供 应 商)
应付 会计:
5
FB01 输入凭证分录
F-53 银行付款清 账(支付 货款、 银兑 到期付款、信用 证 到期付款)
F-51 带 清 账 的转账业务 (如需 调整的 业务 或凭 证 、退回客 户 多付 货 款、上 线 前的 发票校 验 )
F-48 预付定金
F-43 输入供 应 商 发票(不通 过 采 购订单 形成的 应付 账 款)
F-42 不带 清 账 的 转账业务 (如需 进 期初差异的 发票校 验 )
F-40 应付票据清 账
F-57 开 立信用 证 、信用 证 到期冲 销
F-32 应收票据背 书清 应 付 账款
F-44 供 应 商 预付与 应 付账 款 对 冲
FB50 付 银兑 保证 金、信用 证 保 证 金、支票重 开 、 电汇 退回重付
FB03 显 示凭 证
FB08 冲 销 未清 账 凭 证
FBRA 冲销 已清 账凭 证
MIRO 后勤发 票校 验
MR8M 冲 销发 票
FK10N 查 供 应 商余 额
FBL1N 供 应 商行 项 目 显示
F.42 供应 商明 细账显 示
应收 会 计:
F -21 预 收 银兑
F-28 收款、 银兑 到期托收
F-29 预收款
F-30 银兑 清 账
F-32 应收 预 收清 账
FB50 总账 科目 过账
FB70 手工 开发 票
FB75 手工 开贷 方 发 票 (红 字 )
资产 会 计
AR01 调 用 资产 清单
AS01 资产 主数据 创 建
ABZON 资产购 置- 损赠 等、增 值
F-90 资产购 置
ABGL 资产 减值 ( 本年 )
ABGF 资产 减 值 (上年 )
AIAB 在建工程 资本化
6
ABA VN 资产报废
AS93 显 示 遗产 数据
信贷 管理
FD32 信用 风险 、例外信用 额 度的建立及信用 时间 的控制,另取消信 贷 也在此 处 理
FD33 查询 信用 风险 、例外信用 额 度及信用 时间
VKM1 在信 贷额 度之内取消 销 售 订单
F-49 制作在途 资 金虑拟 凭 证
FB08 在途 资 金到 账 后冲 销制作的在途 资 金 虑拟 凭 证
VK13 查 看 冻结销 售 订单 的 单 价、金 额
FBL5N 客 户 行 项 目 显 示
FBL3N 总账 科目行 项 目 显 示
F .23 查询 以本 币计 的客 户余 额
VA05 出具 发 票凭 证 清 单
FD10N 客 户 余 额显 示
开票 员
FB03 查 看凭 证
VF01 开 具 发 票
VF02 修改 发 票
VF03 查 看发 票
VF04 查 看已 发货 未 开 票清 单
VL03N 查 看交 货单
F-22 客 户发 票(一般)
FB75 客 户贷项发 票
FB08 冲 销 凭 证
FD03 查 看客 户 主数据
FB70 客 户发 票
VA03 查 看 销售 订单
VF05 查 看 销 售订单 清 单
MB51 查 看物料移 动记录
VK13 查 看定价
PP 模块的主要 t-code :
CS01 创建 BOM
CS07 将 BOM 分配给工厂
CR01 创建 工作中心
CA01 创建工艺路线
MD61 创建独立需求计划
7
MD05 显示 MRP清单
MD04 库存需求订单
MD02 运行物料需求计划
COOIS 显示生产订单清单
CO02 更改生 产订单 (下达生 产订单 )
MD42 对成品的生产计划
PM 模块的主要 t-code :
CO01 创建生产订单
CO11N 工序确 认 ( 生 产订单 确认 )
( MPS 是确定 每一具体的最 终产品在每一具体 时间段内生 产数量的 计划 )
26. SAP R/3 包含哪些模块?
FInancial management
COst management and controlling
Material Management
Production Planning
Sales and Distribution
Production Planning
Quality Management
Project Management
Human Resource
Enterprise Control
Treasury
Investment Management
( FI ,财务会计 )
(CO ,管理会计)
( MM ,物料管理 )
( PP ,生产计划和控制)
(SD ,销售和分销)
( PP ,工程 /项目管理)
( QM ,质量管理)
( PM ,工厂维护与管理)
( HR ,人力资源)
( EC ,企业控制)
(TR ,财务管理)
(IM ,投资管理)
27. 什么是 batchinput ( bdc)并简单介绍其流程? BDC 调查有哪些方式? BDC 有几种,分别是什
么?
流程:
① 进行 BDC 调查(使用事务 SHDB );
② 提炼数据;
③ 把提炼的数据转换到内表‘ BDCDAT A ’中;
④ 调用 call transaction 把数据导入系统。
BDC 类型:
① 通过 call transaction 形式执行;
② 通过 session 方式形式执行,如果 session 执行成功,数据将被传送成功。
BDC 调查方式:
8