🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# SAP ABAP 面试的前 35 个问题&答案 > 原文: [https://www.guru99.com/sap-abap-interview-questions.html](https://www.guru99.com/sap-abap-interview-questions.html) **1)什么是 SAP ABAP?** SAP 是一种称为 ERP(企业资源计划)的软件,大型公司用来管理其日常事务。 ABAP(高级业务应用程序编程)是 SAP 开发 RICEFW 对象的编码语言。 (报表,界面,扩展,表单和工作流)。 **2)ABAP 数据字典是什么意思?** 为了描述在应用程序开发中使用的对象的逻辑结构,使用了 ABAP 4 数据字典。 它还用于在表中显示基础关系数据库。 **3)解释池表和透明表之间的区别吗?** 透明表:它与数据库中的表具有一对一关系。 其结构对应于单个数据库字段。 池表:它与数据库中的表具有多对一关系。 池表存储在数据库级别。 a)基本列表:用于简单报告 b)统计数据:百分比,平均值等 c)排名列表:用于分析报告 **4)BDC(批处理数据通信)编程是什么意思?** 这是将大型或外部数据传输到 SAP 系统的自动过程。 “队列文件”是传输的中心组件,它通过与“会话”相关联的批输入程序和组接收数据。 **5)描述数据类别?** 数据类别分为以下类别 **主数据**:此类中的数据很少更改 **交易数据**:此类中的数据可以经常更改 **组织数据**:此数据是自定义数据,在配置系统后输入到系统中。 它很少更改。 **系统数据**:该数据由 R / 3 系统本身使用 **6)什么是内部表?** 内部表仅在程序运行时存在。 它用于对数据库表的子集执行表计算,还用于根据用户需要重新组织数据库表的内容。 **7)列出在 BDC 中按顺序使用的功能模块?** 有 3 个功能模块,依次使用 BDC 编程成功执行数据传输。 他们是 a)BDC_OPEN_GROUP b)BDC_INSERT c)BDC_CLOSE_GROUP **8)什么是外键关系?** 为了确保数据的一致性,使用了外键。 在表之间建立的关系,必须在字段级别明确定义。 应对照现有数据检查输入的数据,以确保没有矛盾。 在定义外键关系时必须指定基数。 **9)在 ABAP 中,数据字典中的表和结构之间有什么区别?** 结构和表的区别是 a)数据可以物理存储在表中,但是结构不能 b)结构没有主键,但是表可以有 c)表可以具有技术属性,但结构不具有 **10)什么是智能表格?** 智能表单使您可以使用图形设计工具来创建表单。 **11)SAP 脚本由什么组成?** 对于 SAP,SAP 脚本是文字处理工具。 它具有类似于标准文本和布局集的功能。 其布局集包括:Windows 和页面,字符格式,段落格式等**。** **12)如何创建“表集群”?** a)在 ABAP 词典中,选择对象类型表格,输入表格名称并选择创建 b)显示该表的现场维护屏幕。 表类型透明表,将其设置为默认表 c)在“属性”页面上分类的简短描述和交付中进行必要的输入。 然后定义表的字段。 d)与创建透明表时相同。 现在保存您的输入 e)现在选择 EXTRASà更改表类别 f)出现对话框时,必须选择表类型“池表”或“集群表” g)选择表格后,返回表格的现场维护屏幕。 除标准字段外,字段池或群集名称还显示在“属性”选项卡页面上。 h)现在输入要向其分配集群表的表集群或表池的名称。 **13)如何在报表中的写入语句之前格式化数据?** 通过使用循环事件,可以格式化报告输出 a)首先 b)。新 c。最后 **14)请解释模板和表格之间的区别?** 表和模板之间的区别在于,表是动态的,模板是静态的。 **15)提一下 ABAP 中的 ALV 编程是什么? ABAP 何时使用此网格?** ALV 代表应用程序列表查看器。 为了增强报告的输出,SAP 提供了一组可以使用的 ALV 功能模块,并且还提高了任何报告输出的功能和可读性。 它是用于在报表输出中排列列的有效工具。 **16)我们什么时候使用选择结束?** 当我们编写 HR-ABAP 代码时,通常会使用选择事件的结尾。 在 HR-ABAP 代码中,数据是在选择事件开始时检索的,并打印在列表上,所有操作都将在选择事件结束时进行。 **17)提及 ABAP 和 OOABAP 之间的区别? 您在哪种情况下使用 OOABAP?** ABAP 用于开发 R / 3 中的传统程序,而 OOABAP 用于开发 BSP / PCUI 应用程序以及与对象有关的任何对象,例如 BADI 和 SmartForms 等。 **18)什么是表缓冲区? 哪种类型的表使用了此缓冲区?** 在这里,缓冲区表示内存区域,表缓冲区表示表信息在应用程序服务器上可用。 当您从数据库表调用数据时,它将来自应用程序服务器。 透明表和池表被缓冲,而群集表不能被缓冲。 **19)“漂亮打印机”的用途是什么?** 为了格式化 ABAP 代码,使用了“漂亮打印机”。 **20)“类型”和“喜欢”之间有什么区别?** '类型':在声明时直接将数据类型分配给数据对象。 '赞':您将另一个对象的数据类型分配给声明数据对象。 “类型”是指现有数据类型,而“喜欢”是指现有数据对象。 **21)ABAP / 4 编辑器有哪些不同? 有什么区别?** 这两个编辑器分别是 SE38 和 SE80,并且都具有 ABAP 编辑器。 在 SE38 中,您可以创建程序和查看在线报告,并基本上在此编辑器中进行对象的所有开发。 在 SE80 中,还有其他功能,例如创建程序包,功能组,模块池,类,程序和 BSP 应用程序。 **22)解释对话程序和报告之间的区别?** 报告是一个可执行程序; 对话框是一个模块池程序。 它只能通过事务执行。 对话框编程用于屏幕的自定义。 **23)什么是锁对象?** 为了同步使用相同数据的几个用户的访问,使用了 Lock 对象。 **24)数据如何存储在群集表中?** 群集表包含来自多个 DDIC 表的数据。 它将数据存储为名称值对。 **25)如何调试脚本表单?** 要调试脚本表单,您必须遵循 SE71-- >的格式名称->实用程序->激活调试器 **26)有哪些不同类型的数据字典对象?** 数据字典对象的不同类型是: a)桌子 b)意见 c)域名 d)数据元素 e)类型组 f)搜索帮助/匹配码对象 g)锁定对象 h)结构 i)表格类型 **27)您可以通过哪些方式进行调音? 您将使用哪些主要步骤?** 可以通过磁盘 I / O,[,SQL](/sql.html) 和存储器的三种方式完成调试。 调试之前,必须使用名为 statpack 和 tkprof 的 oracle 实用程序获取数据库的状态。 **28)在“选择”语句中,“分组依据”是什么?** 要通过指定的字段从表中获取数据,请使用 Group by Clause。 **29)什么是调度程序?** 称为 SAP 调度程序的控制代理程序管理 R / 3 应用程序的资源。 **30)提及修改 SAP 标准表的两种方法是什么?** 有两种修改 SAP 标准表的方法 a)追加结构 b)定制包括 **31)“数据库索引”和“匹配代码”之间有什么区别?** “数据库索引”包含来自一个表的字段,而“匹配代码”包含来自多个表的字段。 可以在群集表,透明表和池表上构建匹配代码对象。 **32)解释模块化技术的好处?** 通过使用模块化技术,如果程序包含相同或相似的语句块,或者需要多次处理相同的函数,则可以避免冗余。 通过模块化 ABAP / 4 程序,我们使它们易于阅读并改善了结构。 模块化程序也更易于维护和更新。 **33)如何在一个 ABAP / 4 程序中创建程序代码的可调用模块?** a)通过定义宏 b)通过在库中创建包含程序。 **34)有哪些不同类型的参数? 您如何区分不同类型的参数?** 不同类型的参数是 a)形式参数:在子程序的定义过程中使用“ FORM”语句定义 b)实际参数:在子程序调用期间使用“ PERFORM”语句指定 您可以通过功能区分不同种类的参数。 输入参数用于将数据传递到子例程,而输出参数用于将数据从子例程传递。 **35)什么是数据库完整性?** a)语义完整性 b)关系完整性 c)主键完整性 d)价值集的完整性 e)外键完整性 f)运营诚信