当前位置:好职网>职场指南>面试>ABAP面试问题及答案

ABAP面试问题及答案

时间:2022-05-05 18:15:18 面试 我要投稿
  • 相关推荐

ABAP面试问题及答案

问题一:锁对象(Lock Object)和 FM(Function Module)
激活锁定对象时,产生的 FM 的名字是什么?
答案:首先要在 ABAp 字典中创建锁对象,然后才能在 ABAp 程序中设锁。创建锁对象时,系统会自动生成两个 FM 来进行锁管理。
用于设锁的 FM 为: ENQUEUE_<锁对象名>。它用于在锁表(Lock Table)中生成一个锁项(Lock Entry)。若设锁不成功的话,就会在 Return 中反映出来。 用于释放锁的 FM 为:DEQUEUE_<锁对象名>。它用于从锁表中删除一个锁项。 在 ABAp 程序中,只需使用 \"CALL FUNCITION ...\" 语句就可以调用它们。 这两个锁 FM 是在 SAp 系统的一个特殊工作进程中执行的,专门进行锁管理。它运行在一个单独的服务器上,而该服务器专门用于维护整个 SAp 系统的主锁表(Central Locak Table)。 有两种锁类型: 共享锁——只读锁,一个用户正在读数据时,阻止其他用户更改该数据。

独占锁——可写锁,一个用户正在修改数据时,阻止其他用户更改该数据。

ABAP面试问题及答案

问题二:更新方面的 FM 更新 FM 分为 V1 和 V2,那么首先会执行哪一种更新类型呢?每种类型又是以哪种模式(异步、同步或本地)执行的呢?

答案:V1 更新类型比 V2 更新类型的优先级高,因此,V1 比 V2 行执行。V1 的执行模式可以为异步、同步或本地;V2 只能为异步执行。

问题三:ABAp 内存(ABAp Memory)交换 在使用 ABAp 内存的程序间进行数据交换时用到的两个语句是什么? 答案:EXpORT to MEMORY ID <id> 用于将数据复制到 ABAp 内存,IMpORT from MEMORY ID <id> 用于将数据从 ABAp 内存复制到程序中。

在 ABAp 内存间进行交换的数据必须在两个程序中都进行声明,并包含同样的数据声明。

问题四:授权对象(Authorization Objects)
什么是授权对象?在 ABAp 程序中使用哪条语句进行授权检查?
答案:授权对象由一组字段组成,这些字段中的值将被用于进行授权检查。ABAp 程序中使用 AUTHORITY-CHECK 语句根据授权对象进行授权检查。
在 AUTHORITY-CHECK 语句中,必须指明授权对象的所有字段,但有一个例外,可以用 DUMMY 关键字来绕过某个字段的检查。
一个授权对象中最多可以定义 10 个字段。

问题五:修改(Modifications)
在 SAp 系统中是怎样定义\"修改\"的?它们对更新(upgrade)有怎样的影响?
答案:修改是指用户对 SAp 发布的库对象(Repository Object)进行的更改。
必须在更新期间对修改进行评审(Review),来决定是否应该使用新的 SAp 对象,以及将来使用时是否需要进一步修改该对象。

问题六:修改助手(Modification Assistant)
什么是修改助手?
答案:修改助手是 4.5 版中引入的一个工具,用于简化更新过程。可以通过 ABAp 编辑器触发修改助手,它会记录对系统进行的修改。修改助手支持通过 ABAp 编辑器、Screen painter、Menu painter、文本元素维护、Function Builder 和 ABAp 字典进行的修改。


问题七:功能模块出口(Function Module Exit)
实现功能模块出口时 SAp 应用程序中应使用哪条语句?
答案:某些 SAp 应用程序中存在功能模块出口,它使用户能够向 SAp 程序中添加一些功能。通过搜索 \"CALL CUSTOMER\" 可以发现是否存在功能模块出口。

问题八:事务变式(Transaction Variants)
什么是事务变式?为何要使用它?
答案:事务变式是一组屏幕变式,用于预定义屏幕行为和默认值。通过使用变式功能,可以将用户不需要的字段、子屏幕及全屏幕从用户视图中取消。可以给任何输入字段设置默认值,字段也可以不用带 \"Ready for Input\" 状态。
只能为对话和报表事务创建事务变式;变式中只能包含普通屏幕、子屏幕及对话屏幕。
开发人员可以使用 GuiXT 脚本语言通过事务变式维护对屏幕进行修改。修改屏幕布局的方式有:插入按钮、值帮助(Value Helps)、移动对象、插入屏幕等等。

问题九:更改 SAp (Changing SAp)
请列出用户修改 SAp 标准功能的不同方式。
答案:SAp Standard 可以通过 personalization、Customizing、Modifications、Enhancements 及自定义 ABAp 程序进行更改。这些方式的示例如下:
personalization——personalization 技术包含创建变式、设置/获取参数及活动组(Activity Groups)。
Customizing ——是最常用的使用 SAp 工具(如 R/3 Reference Model and Implementation Guide)更改 SAp Standard 的方式。可以认为 Customizing 是实施 R/3 所必需的,通常由 Functional Team 来执行。
Enhancements——常由开发 Team 执行,包含的活动有:字典增强、Funciton Module Exits、菜单和屏幕出口及 Business Add-ins (BADI)。

自定义 ABAp 程序——可以与 SAp 对象或自定义开发的对象一起工作。
Modifications——不建议对 SAp 对象使用 Modifications。使用 SSCR (SAp Software Change Registration)注册所有对 SAp 对象的手动修改。

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

问题十一:什么是 BADI?
答案:BADI 是 Business Add-in 的缩写。它是一种新的功能增强概念,使用 ABAp 对象技术。这是一种使用面向对象的方法来进行 SAp 增强。实现 BADI 要用到类、接口及方法等面向对象的概念。
要对一个 SAp 应用程序进行增强,必须首先定义 BADI。为 BADI 创建一个接口,接着创建一个适配器类(Adapter Class)来实现这个接口, 然后创建这个适配器类的实例。


问题十二:
三:簇表和pOOL TABLE 的概念
答案:
pools和Cluster table;他们已经不是各种数据库常规的表了,也不能够被数据库直接访问。只能通过SAp自己的工具来直接访问。
透明表:
每个透明表在数据库中有一个相应的物理表。物理表的名称和数据字典中的逻辑表定义的名称一致。所有事务和应用数据存贮在透明表中。
结构:
结构在数据库不存在数据记录。结构用于在程序之间或程序与屏幕之间的接口定义。
附加结构:
附加结构定义字段的子集,该字段属于其他表格或结构,但是在修正管理中作为单独的对象。
存贮表:
存储表可以用来存贮控制数据(例如:屏幕顺序,程序参数或临时数据)。几个存储表可以组合成一个表库。该表库和数据库中的一物理表库相一致。它包含了各组合库分派给它的所有记录。
簇表:
连续的文本如文档之类可以存贮在簇表中。几个簇表可以组合成一个表簇。对这种表类型,不同表中的几个逻辑行组合到一物理记录。这可以实现一对象接一对象地存贮或访问,访问簇中

【ABAP面试问题及答案】相关文章:

面试法务面试的问题及答案03-14

面试问题答案04-09

英文面试的问题及答案05-11

小升初面试问题及答案12-12

大学面试问题及答案05-11

高考面试问题及答案02-28

采购面试问题答案02-23

面试问题大全及答案07-22

医院面试问题及答案05-11

采购面试问题及答案05-26