ABAP 面试及答案 Interview+Questions.docx

上传人:b****5 文档编号:5382537 上传时间:2022-12-15 格式:DOCX 页数:29 大小:43.62KB
下载 相关 举报
ABAP 面试及答案 Interview+Questions.docx_第1页
第1页 / 共29页
ABAP 面试及答案 Interview+Questions.docx_第2页
第2页 / 共29页
ABAP 面试及答案 Interview+Questions.docx_第3页
第3页 / 共29页
ABAP 面试及答案 Interview+Questions.docx_第4页
第4页 / 共29页
ABAP 面试及答案 Interview+Questions.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

ABAP 面试及答案 Interview+Questions.docx

《ABAP 面试及答案 Interview+Questions.docx》由会员分享,可在线阅读,更多相关《ABAP 面试及答案 Interview+Questions.docx(29页珍藏版)》请在冰豆网上搜索。

ABAP 面试及答案 Interview+Questions.docx

ABAP面试及答案Interview+Questions

面试问题集

1.数据效率?

尽量使用Select(max,min,sum,avg)和selectsingle,forallenteris,二分法,append和collect

loop里不能套select;避免使用selectdistinct,代替先sort,再delete;

1抽取数据时,避免使用SELECT*,尽量使用SELECTABINTOTABLEITAB这样的语句。

2不要使用SELECT...ENDSELECT语句。

3尽量避免在LOOP中访问数据库。

可以在之前先把数据取到内表,在LOOP中用READTABLEWITHKEY...BINARYSEARCH.进行读取对应的数据。

4用SORT代替ORDERBY。

⑤使用二分查找法。

READTABLE的之前使用SORTTABLEBY对内表进行排序,然后使用READTABLEWITHKEY...BINARYSEARCH.

6避免使用SELECTDISTINCT语句。

在抽取数据到内表后用DELETEADJACENTDUPLICATES语句来消除重复行。

7尽量多指定WHERE语句条件。

8在WHERE语句指定查询条件时,在同等条件下把包含等号的查询条件放到前边。

2.什么时候使用Forallentries命令及其使用时的注意事项?

当需要在LOOP中使用查询语句时,一般使用Forallentries。

注意事项:

1IN条件所在的内表不能为空(如为空将取出全部的数据);

2数据库字段与内表中的关联比较字段必须具有相同的类型和长度,且不能在比较中使用操作符LIKE、BETWEEN和IN,同时不能使用ORDERBY子句。

3为避免删除并不重复的纪录,在定义内表时应尽可能多的指定关键字。

3.如何设置ALV的鼠标双击事件。

如何设置ALV的页眉和页脚?

ALV的鼠标双击事件:

构造LS_LAYOUT的F2CODE属性设置为”&ETA”即可。

ALV的页眉:

利用Function“REUSE_ALV_COMMENTARY_WRITE”来进行设置。

4.FTP文件上传,下载,在哪句中需要做异常捕获?

5.SQL文的性能举例?

1对同一数据库表存取的场合,能一次把多条记录放到内表中进行处理,不要多次反复存取;

2只选择必要的字段,应避免使用”SELECT*”;

3在WHERE语句指定查询条件时,要写全查询条件;

4在WHERE语句指定查询条件时,应把包含数据库关键字段的条件列在前边。

5在WHERE语句指定查询条件时,在同等条件下把包含等号的查询条件放到前边。

6.怎样理解Dynpro的PAI,PBO事件?

Dynpro程序运行时,首先触发PBO事件,然后显示Dynpro画面,当在Dynpro画面触发一个功能键时,这时会触发PAI事件,当PAI事件执行完毕,重新显示Dynpro画面时又将执行PBO事件。

当不断触发功能键时,PBO和PAI事件会不断交替执行。

povpoh

7.按顺序举例说明Report各事件及其作用?

1LOAD-OF-PROGRAM程序执行时,自动触发该EVENT

2INITIALIZTION对程序变量进行初始化

3ATSELECTION-SCREENOUTPUT选择屏幕PBO事件,显示选择屏幕之前触发

4ATSELECTION-SCREEN选择屏幕PAI事件,用户在选择屏幕上执行某些功能

5START-OF-SELECTION选择开始事件

6END-OF-SELECTION选择结束事件,一般在该事件中输出列表

7TOP-OF-PAGE页眉控制

8END-OF-PAGE页角控制

9ATLINE-SELECTION行选择控制,用户选择某列表行时触发

10ATUSER-COMMAND用户交互控制,用户选择某个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过程就是系统调用当前系统外的程序模块,从而实现某个功能,而且调用系统和被调用系统中至少有一个必须是SAPABAP系统。

这种远程功能调用也可在同一系统内部进行(如本地SAP系统内的远程调用);但通常情况下,调用程序和被调用程序处于不同系统。

BAPI:

BAPI全称BusinessApplicationProgrammingInterfaces,即业务应用编成接口,在SAP内部组件及SAP与非SAP组件之间的技术整合和业务数据交换过程中起着非常重要的作用。

(BAPI是基于RFC实现的)

IDOC:

IDOC是SAP系统之间或SAP系统与外部系统之间电子数据交换的标准数据格式。

在事务处理过程中,随时会生成IDOC。

15.在什么时候触发Topofpage语句?

在3种情况下可以触发Topofpage语句。

1遇到第一个WRITE语句时;

2当页面行数超过LINE-COUNT里定义的行数时;

3遇到NEW-PAGE命令时。

16.本地文件上传成CSV文件的function?

17.Hashtable和Sorttable的注意事项?

Hashed表的除了数字字段以外,其余字段必须指定为key字段,不能使用APPEND语句,Sort为non-unique时不能使用INSERT语句。

18.Report的跳转语句是什么?

pick是什么?

怎么用?

Report的跳转语句是“HIDE和ATLINE-SELECTION”。

“pick”是在Report一览画面双击或按F2键时触发的功能键键值。

19.FTP文件的上传下载操作是什么?

FTP程序大致流程为:

FTP_CONNECT,FTP_COMMAND,FTP_DISCONNECT。

FTP_COMMAND中输入标准的FTP命令。

如:

更改FTP目录"cddir",更改本地目录"lcdlocaldir",上传文件"putfile"。

FTP_CONNECT–打开并登陆FTP服务器的连接。

FTP_COMMAND–在FTP服务器上执行一个命令。

FTP_DISCONNECT–关闭指向FTP服务器的连接。

20.加锁,解锁的2种方式是什么?

加锁的2种方式:

①E模式。

同一个terminalsession的不同externalsession之间不受上锁的影响,可以使用锁住的对象;

②X模式。

上锁的对象只能由externalsession中的一个internalsession使用。

21.MM、PP、SD、FI、HR模块的主要流程,MM、PP、SD、FI、HR模块主要数据库表?

MM模块的主要流程:

1接到客户的采购订单后,由营业员进行库存确认,如果库存不足则由其提出采购申请。

2购买担任者接到采购申请经审查合格后,向供应商下达采购订单。

3入库等相关管理人员对供应商送达的商品进行入库确认。

4由购担任者对供应商提出支付请求进行确认,经确认无误后,向财务部门提出支付申请,财务部门对支付申请进行审核合格后,进行支付处理。

SD模块的主要流程:

①销售担任者接到客户寻价后,在系统中登录客户的寻价信息。

2相关人员对登录的寻价信息进行价格确认,并在系统中登录报价信息。

3客户对收到的报价信息审核合格后,提出采购申请。

销售担任者接到采购申请后,在系统中登录采购订单。

4相关人员对客户所订购的商品进行筹措完毕后,进行出库处理,并在系统中登录出库单。

5相关人员向客户提出支付请求,客户支付后,给客户出具红头发票,在系统中登录开票信息。

22.update,delete数据库时的注意事项?

1正确指定数据库表的KEY字段,防止更改了不应更改的记录,同时要正确指定要更改纪录的中需要变更的字段;

2要注意保持关联表的数据一致性;

3变更前要注意上锁,变更后要注意解锁。

23.怎样做带按钮的选择画面?

1TABLESSSCRFIELDS.

2SELECTION-SCREENPUSHBUTTON/[/][MODIFID].

3INITIALIZATION.

MOVE'Mytext'TO.

4ATSELECTION-SCREEN.

5IFSSCRFIELDS-UCOMM=.

ENDIF.

上述代码的描述:

①定义构造SSCRFIELDS;

②使用命令Selection-screenpushbutton定义PushButton;

③在事件Initialization中定义pushbutton的文本;

④在事件AtSelection-Screen中定义pushbutton按下后,所执行的处理。

24.求和函数(Collect)的注意事项?

①要填充没有重复条目的内表,应该使用COLLECT

②COLLECT语句无法用于带深层结构的内表(组件中不可以包含内表)。

③为COLLECT指定的工作区域必须与内表的行类型兼容,(不仅仅是可互相转换)。

④所有的非表关键字段必须是数字类型。

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_VAL外币评估

FB70 输入客户发票(员工借款)

F-22 输入客户发票

F-30   过账并清账(客户)

F-53 付款记账

F-42 输入结转过账

F-43  输入供应商发票

F-51 过账并清账(供应商)

应付会计:

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 在建工程资本化

ABAVN资产报废

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创建独立需求计划

MD05显示MRP清单

MD04库存需求订单

MD02运行物料需求计划

COOIS显示生产订单清单

CO02更改生产订单(下达生产订单)

MD42对成品的生产计划

PM模块的主要t-code:

CO01创建生产订单

CO11N工序确认(生产订单确认)

(MPS是确定每一具体的最终产品在每一具体时间段内生产数量的计划)

26.SAPR/3包含哪些模块?

FInancialmanagement(FI,财务会计)

COstmanagementandcontrolling(CO,管理会计)

MaterialManagement(MM,物料管理)

ProductionPlanning(PP,生产计划和控制)

SalesandDistribution(SD,销售和分销)

ProductionPlanning(PP,工程/项目管理)

QualityManagement(QM,质量管理)

ProjectManagement(PM,工厂维护与管理)

HumanResource(HR,人力资源)

EnterpriseControl(EC,企业控制)

Treasury(TR,财务管理)

InvestmentManagement(IM,投资管理)

27.什么是batchinput(bdc)并简单介绍其流程?

BDC调查有哪些方式?

BDC有几种,分别是什么?

流程:

①进行BDC调查(使用事务SHDB);

②提炼数据;

③把提炼的数据转换到内表‘BDCDATA’中;

④调用calltransaction把数据导入系统。

BDC类型:

①通过calltransaction形式执行;

②通过session方式形式执行,如果session执行成功,数据将被传送成功。

BDC调查方式:

①使用事务SHDB调查;

②把光标置到需要调查的事务的项目上:

通过按F1键→技术设定→项目名来进行调查。

29.请列举abap程序的运行方式?

它们一般表现为什么类型的程序?

①可以分配事务代码并通过事务代码运行,用于完成一项系统功能,可以添加到最终用户的系统定制菜单中。

可执行程序(report),模块池程序。

②不能直接通过事务代码运行的程序。

功能组,ABAP类库,ABAP接口库,子程序,类型组包含程序。

30.alv是什么,能简单介绍一下alv的作用吗?

ALV是abaplistview.是ABAP的报表显示工具。

它把内表中的内容以设定的格式,显示出来,附加一些功能,如下载为本地文件等。

31.下拉式报表(下钻式报表)做过吗,介绍一下下拉列表多用到的技术?

Hide,

atline-selection定义用户双击列表某行时触发的事件,

atuser-command定义用户按下某按钮,菜单项或输入命令后触发的事件,

atPF用户按下功能代码,(p307BCDWBDIC.HLP)

32.sap文件操作都有哪几种?

分别有什么操作?

版本有什么限制?

顺次文件(服务器文件)

本地文件(客户端文件)

顺次文件的操作包括:

打开,读取,写入,关闭,删除

本地文件的操作:

4、7版本

GUI_DOWNLOAD

GUI_UPLOAD

4、6版本以前的,性能不好。

WS_DOWNLOAD

WS_UPLOAD

DOWNLOAD

UPLOAD

33.dynpro程序结构以及运行机制,介绍一下。

逻辑上分为PBO,PAI以及POV,POH

建立程序时物理上TOP,O01,I01,F01.

运行机制:

T-CODE->PBO->PAI……………

34.如果bdc出错时我们应该如何处理?

可以设置“出错时转前台运行”。

有机会输入修正数据。

如果不想马上转前台,用insert_group插入一个session。

35.如果我们想把一个batch的程序定义为零点开始启动应该怎么做?

在sm36下,通过给出job名称,job类,和jobsteps创建一个后台job。

36.alv的处理需要2小时或者更长的时间才能显示出来,应该怎么处理?

①把标准表改称sorted表或hash表;

②检查取数逻辑,特别是数据库取数逻辑是否有影响效率的地方而加以改进;

③判断在选择画面上增加查询条件;

37.如果发现报表性能问题,应如何去处理?

首先要检查代码,检查代码是不是有误,看看能不能进行常做的代码优化。

查找耗费资源的原因。

如果是数据太多,可以增加筛选数据的条件,如在画面上增加查询条件。

se30定位错误。

有一个运行分析图示,找到瓶颈:

是数据库操作还是代码运行的问题。

如果是代码运行的时间较长,把标准内表类型改成sorted或者hash的内表

38.经常暴露的性能问题一般体现的什么语句上,举例说明?

Select和selectsingle,forallenteris,二分法,append和collect,loop里不能套select,where条件,避免使用selectdistinct,代替先sort,delete。

39.sorted内表在使用时,有什么注意的地方?

read时可否删除内表的记录?

不能删除。

40.在什么情况下要用forallentries,用应该注意什么?

类似外连接的时候,用一个表的某一字段为条件,从另一数据库中表的数据。

Loop套select的时候用,2个表,forallentries。

forallentries,用它应该注意什么:

使用前要检查内表是否为空,否则会查询出全部数据。

要尽可能多的用关键字,否则会把重复的删掉。

41.打印报表时,想实现直接打印不显示在屏幕上应如何处理?

可以通过new-pageprinton语句,将生成的列表直接发送到spool,系统进行打印处理,不再屏幕中进行显示。

在write语句之前,打印函数之后。

42.解释一下pbopaipovpoh?

PBO:

ProcessBeforeOutput(显示前处理过程)

在向用户显示屏幕GUI之前进行触发,一般作画面初始化和设定status,title,动态设定画面属性,清空变量

PAI:

ProcessAfterInput(输入后处理过程)在用户进行某些屏幕行为后触发,对应一些用户操作,画面check。

POV:

ProcessOnValue-request对应功能键F4用户对画面上某个字段按F4,类似检索help值table

POH:

ProcessOnHelp-request对应功能键F1

43.在dynpro想实现双击,取出对应屏幕上的字段的名字的值,如何处理?

44.dynpro的动态属性,有哪些举例说明?

NAME屏幕字段名称

GROUP1,2,3,4,屏幕字段属于哪个组

ACTIVE1克用,0不可用

REQUIRED1必入力,0非必入力

INPUT1可入力,0不可入力

OUTPUT1可显示,0不可显示

INTENSIFIED1强调显示,0非强调显示

INVISIBLE1为*,0为输入即可见

LENGTH字段输出长度

DISPLAY_3D以三维框架显示字段

VALUE_HELP 有查询帮助的字段

45.在pov中,如果数据的选择条件为屏幕上的值的时候如何处理?

46.dynpro逻辑块中,field的作用是什么?

进行字段输入检查。

(防止所有控件都变灰)

47.列举abap数据字典中的对象及作用?

三层结构?

数据字典中的对象:

①Tables

②Views

③Dataelements

④Structure

⑤Domains

⑥SearchHelps

⑦LocalObjects

三层结构:

Domains、Dataelements、Tables(Views)。

48.Function所涉及到的参数及其作用

Se37功能组添加FM

Attribute:

设定功能模块类型,名称等通用属性

Import:

定义输入参数,从程序传递到功能模块。

Export:

定义输出参数,从功能模块传递到程序中的参数

Tables:

定义内表参数,将内表整体输入输出

Exceptions:

定义可能出现的异常

Changing:

定义输入输出参数。

49.使用Calltransaction进行BDC处理时,定义项目名、实行参数、处理结果的构造分别是什么,bdctable所用的构造包含哪些字段?

项目名构造:

BDCDDATA。

实行参数构造:

CTU_PARAMS。

处理结果构造:

BDCMSGCOLL。

BDCDATA构造:

FieldNAME

Type

Description

Program

Char(8)

ProgramnameofTransaction

Dynpro

Char(4)

ScreennumberofTransaction

Dynbegin

Char

(1)

IndicatorfornewScreen

Fnam

Char(35)

Name

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1