请选择 进入手机版|继续访问电脑版
SAP桔子学院 首页 SAP培训资料 查看内容

sap abap中广核面试题

2017-1-23 12:33| 发布者: admin| 查看: 2440| 评论: 0|原作者: sap桔子

摘要: sap abap中广核技术面试题目:1、ABAP中三种基本的数据对象是什么?答案:内表、结构、基本数据对象2、下面的语句中,哪一个语句编译会报错(假设XXX 和结构sflight都已经定义). ( B)A)write sy-datum+3.B)data ...
sap abap中广核技术面试题目:

sap abap面试场景

1、ABAP中三种基本的数据对象是什么?
答案:内表、结构、基本数据对象

2、下面的语句中,哪一个语句编译会报错(假设XXX 和结构sflight都已经定义). ( B)
A)write sy-datum+3.
B)data type type sflight.(原因变量名不能和关键字同名)
C)if 'a'=1.
    'a'=2.
   endif.
D)write sy-vline.

3、程序中执行了这么一段代码
DATA it_sflight type sflight with header line.
Loop at it_sflight.
it_sflight-carrid = 'AA'.
Modify it_sflight.
Endloop.
该段语法中出现了四次it_sflight,其中后四次分别代表的是内表还是结构. (A)
A)内表 内表 结构 内表
B)内表 内表 内表 内表
C)内表 结构 结构 内表
D)内表 内表 结构 结构

4、选择事件的执行顺序正确的一组. (A)
A)INITIALIZATION / START-OF-SELECTION / TOP-OF-PAGE / AT LINE-SELECTION
B)INITIALIZATION / TOP-OF-PAGE / START-OF-SELECTION / AT LINE-SELECTION
C)START-OF-SELECTION/ INITIALIZATION / TOP-OF-PAG / AT LINE-SELECTION
D)INITIALIZATION / TOP-OF-PAGE / AT LINE-SELECTION / START-OF-SELECTION
补充:按顺序举例说明Report各事件及其作用?
LOAD-OF-PROGRAM              程序执行时,自动触发该EVENT
INITIALIZTION                    对程序变量进行初始化
AT SELECTION-SCREEN OUTPUT 选择屏幕PBO事件,显示选择屏幕之前触发
AT SELECTION-SCREEN           选择屏幕PAI事件,用户在选择屏幕上执行某些功能
START-OF-SELECTION             选择开始事件
END-OF-SELECTION               选择结束事件,一般在该事件中输出列表
TOP-OF-PAGE                      页眉控制
END-OF-PAGE                      页角控制
AT LINE-SELECTION               行选择控制,用户选择某列表行时触发
AT USER-COMMAND               用户交互控制,用户选择某个GUI功能时触发

5、如果屏幕A 的下一个屏幕仍然是A , 那么当执行程序时,对于屏幕的主要事件,下面哪种顺序是正确的. (D)
A)A 的 PAI A  的 PBO A  的 PAI A  的 PBO
B)A 的 PBO A  的 PAI A  的 PAI A  的 PBO
C)A 的 PAI A  的 PAI A  的 PBO A  的 PBO
D)A 的 PBO A  的 PAI A  的 PBO A  的 PAI
补充:怎样理解Dynpro的PAI,PBO事件?
Dynpro程序运行时,首先触发PBO事件,然后显示Dynpro画面,当在Dynpro画面触发一个功能键时,这时会触发PAI事件,当PAI事件执行完毕,重新显示Dynpro画面时又将执行PBO事件。当不断触发功能键时,PBO和PAI事件会不断交替执行

6、屏幕编程中一个屏幕所使用的工具栏应如何设计. (A)
A) 先设计一个Gui Status,再在程序中绑定
B) 先设计一个Gui Titles,再在程序中绑定
C) 在程序中用Add button 语法添加
D)在屏幕设计格式的界面上添加工具栏及其按钮

7、以下四种系统变量,各是什么含意. (D)
SY-UCOMM SY-DATUM SY-SUBRC SY-TABIX
A)用户触发的屏幕上的功能码当前日期当前时间循环次数
B)当前日期当前时间 循环次数 用户触发的屏幕上的功能码
C)用户触发的屏幕上的功能码循环次数语句执行结果返回值当前日期
D)用户触发的屏幕上的功能码当前日期语句执行结果返回值循环次数

8、ABAP的OPEN SQL的取数语句是否可以实现数据库无关性,其原因是什么. (A)
A)不可以,数据库的SQL格式不同
B)可以,因为它的名字叫做OPEN SQL
C)可以,因为中间有一层DB Interface做转换
D)不可以,各种数据库的版本不同

9、对ABAP的OPEN SQL语句的两个返回系统变量,描述正确的是. ()
A)Sy-dbcnt表示执行结果是否正确,sy-subrc表示执行影响到的数据条数
B)Sy-dbcnt表示执行影响到的数据条数,sy-subrc表示执行结果是否正确
C)Sy-dbamt表示执行结果是否正确,sy-sudnc表示执行影响到的数据条数
D)Sy-dbamt表示执行影响到的数据条数,sy-sudnc表示执行结果是否正确
注意:要记住各种系统的这种变量代表的含义

10、一个表TA有三个字段,其中第一个字段是主键,目前有一条记录是1 /‘first’/ 19,结构wa_result是和表相同类型的,当前值是2 / ‘second’ / 20 .执行OPEN SQL语句:modify TA from wa_result.执行后对系统的影响为. (B)
A)没有任何影响
B)TA有两条记录1 / ‘first’/ 19 和 2 / ‘second’ / 20(注意modify的使用语法以及达到的效果)
C)TA有一条记录2 / ‘second’ / 20
D)系统出错退出,对表没有任何影响

11、具体题目我没有记住,但考察的要点是:要知道系统表和自定义表的命名规则(一般自定义表都是以Z或Y开头)

12、SAP的三层架构,以及具体实现方式是怎样?(自己查查标准答案,我当时是根据自己的理解答的)

13、常用的T-CODE要记住:
    se11:数据字典(显示、编辑、变更)
    se12:数据字典(显示)
    se24:Class维护
    sm35:Batch Input Session OverView
    sm36:定义后台Job
    sm37:Simple Job Selection
    se37:创建Function 
    se38:Abap编辑器
    se80:对象导航器
    se91:message维护
    se93:Transcation维护
    smartforms:smartforms维护

14、sap memory 和 abap memory的区别?
 ① 读法和使用方法不同。
      Sap内存: set parameter /get parameter
      Abap内存:export to memory / import from memory
 ② 共享范围不同。
      Sap内存可以被所有的主session访问,内存数据可以同一个session中不同程序之间或不同session之间。
      Abap内存只能在同一个session的不同程序之间共享数据。
 ③ 作用范围不同。
      Sap内存在整个终端session时间内有效。
      Abap内存只在一个session时间内存放。
 ④ 使用一般原则。
      Sap内存用于屏幕默认值输入。
      Abap内存用于模块之间传递数据。

15、Doman,data element,table之间的关系,为什么要分三层?
 domain是对字段的类型、长度等的封装,而data element是对domain的再一次封装,可以说数据元素是字段与域之间的链接桥梁,而table是存储这些元素的一个存储区间。

16、具体题目忘了,主要考查的是append和sy-tabix的具体用法,问sy-tabix在每一次append执行后的输出值。(自己可以做做相关题目感受下)

17、向 SAP 表中添加字段的方法是哪两种?
    这两种方法是:Append 结构(Append Structure)和自定义 Include(Customizing Include)。Append 结构是在向表尾添加字段时创建的,自定义 Include 由 SAP 开发人员指定,以使用户可以创建新字段。

18、锁对象(Lock Object)和 FM(Function Module),激活Lock Object时,产生的 FM 的名字是什么?
   首先要在 ABAP 字典中创建锁对象,然后才能在 ABAP 程序中设锁。创建锁对象时,系统会自动生成两个 FM 来进行锁管理。 
用于设锁的 FM 为: ENQUEUE_<锁对象名>。它用于在锁表(Lock Table)中生成一个锁项(Lock Entry)。若设锁不成功的话,就会在 Return 中反映出来。
用于释放锁的 FM 为:DEQUEUE_<锁对象名>。它用于从锁表中删除一个锁项。在 ABAP 程序中,只需使用 "CALL FUNCITION ..." 语句就可以调用它们。
这两个锁 FM 是在 SAP 系统的一个特殊工作进程中执行的,专门进行锁管理。它运行在一个单独的服务器上,而该服务器专门用于维护整个 SAP 系统的主锁表(Central Lock Table)。

19、SELECT SINGLE 和SELECT UP TO 1 ROWS 的区别是什么?
   在指定数据库表中所有选择KEY字段(指定查询条件时要用“=”号)时,使用“SELECT SINGLE”;在没有指定数据库表中所有选择KEY字段,且只取一条记录时使用“SELECT UP TO 1 ROWS”,其后要使用语句“ENDSELECT”结束。

20、清空内表命令clear和refresh的区别?
  当为带表头的内表时,Clear清空的是表头,refresh清空的是表体。当为不带表头的内表时,Clear和refresh都可以清空表体

21、AT FIRST, AT NEW, AT END OF 有什么区别?
    AT FIRST:当前循环内表的第一行,即当第一次循环操作时,系统会执行控制语句块。
    AT NEW:如果行组(对象字段及其前面的全部字段)中的任何字段内容不同于上一行,执行语句块中的内容。
    AT END OF:如果下一行行组中的任何字段内容不同于上一行,执行语句块中的内容

22、数据库中内连接、左连接以及右连接的区别举例说明?(这个自己看书就可以弄明白,数据库书上说的很清楚)

23、对内表操作collect和append之间的区别,以及collect的用法的考虑是什么?
要逐行填充内表,可以使用APPEND、COLLECT或INSERT语句
Collect用于添加无相同表关键字的内表行
Append可以添加相同表关键字的内表行
Collect命令的限制事项:
①要填充没有重复条目的内表,应该使用COLLECT
② COLLECT语句无法用于带深层结构的内表(组件中不可以包含内表)。
③为COLLECT指定的工作区域必须与内表的行类型兼容,(不仅仅是可互相转换)。
④所有的非表关键字段必须是数字类型。

24、什么时候使用For all entries命令及其使用时的注意事项?
  当需要在LOOP中使用查询语句时,一般使用For all entries。
  注意事项:
①IN条件所在的内表不能为空(如为空将取出全部的数据);
②数据库字段与内表中的关联比较字段必须具有相同的类型和长度,且不能在比较中使用操作符LIKE、BETWEEN和IN,同时不能使用ORDER BY子句。
③为避免删除并不重复的纪录,在定义内表时应尽可能多的指定关键字。

25、给表中添加字段结构的两种方法:append和include

26、在屏幕流程中,pai是指process after input,pbo是指process before output

27、内表的三种形式:标准表、排序表、哈希表

28、还有两道编程题:一道是用form来编写一个把一个浮点类型的数据处理成只带有两个小数点的数据
    另一道是:让编写一个子程序,实现字符串的倒序输出(这两道题还是让老师讲讲吧,我当时是根据自己的想法做的)

29、有关功能函数等相关定义问题

30、with header line和 with header out line的区别?(这个题目自己查查资料,我觉着我回答的不是很清楚)

柯莱特面试题目:
1、parameters和select-option区别?
2、loop中长使用的,如:at new/at end of一般什么时候使用?
3、常用的事件?
4、内表的几种定义方法的区别?
5、debug调试的几个常用功能键?
6、dialogue中的常用按钮?
7、常用功能代码?
8、function创建的相关知识?
9、功能模块出口(Function Module Exit)
实现功能模块出口时 SAP 应用程序中应使用哪条语句?
答案:某些 SAP 应用程序中存在功能模块出口,它使用户能够向 SAP 程序中添加一些功能。通过搜索 "CALL CUSTOMER" 可以发现是否存在功能模块出口。
10、总结一下自己所编过的程序?


更多行业内容,关注SAP培训桔子学院,由20多名高级顾问和项目经理共同组建。以自身的项目案例带领大家,手把手教授,进行弯道超车,零基础快速拥有3年行业经验,入职SAP领域。









收藏 邀请

相关阅读

关于我们
关于我们
培训课程
SAP培训课程
SAP培训视频
SAP培训入门
SAP培训资料
SAP培训资料
SAP讲师
返回顶部