《ABAP技术知识大全之二.docx》由会员分享,可在线阅读,更多相关《ABAP技术知识大全之二.docx(36页珍藏版)》请在第一文库网上搜索。
1、目录1 .报表知识61.1 基础知识61.1.1 报表事件,有哪些?61.1.2 报表选择画面71.2 A1V报表81.2.1A1V报表实现的流程81.2.2 显示A1V常用的两个FM81.2.3 如何设置A1V中的热键81.2.4 A1V显示中的小计81. 2.5FMA1V和OOA1V的比较81.3WRITE1IST82.数据库知识92. 1基础知识92.1.1ABAP数据字典有哪些对象或元素?92.1.2据库提交确认和数据库回滚取消语句92.1.3什么是1UW92.1.4简述modify、insertUPdatC对数据库表做操作时的影响92.1.5要描述域、数据元素、表字段之间的关系92.
2、16数据字典有几种缓冲方式,适用范围?92.2ABAP和数据库102.2.1ABAP数据表的主索引是什么?索引的好处与坏处?与建索引的注意事项!102.2.2ABAP透明表有哪几种数据类(datac1ass)?对数据的存储有什么影响?102.2.3SAP中有几种表,他们的区别是什么?102. 2.6如何建立数据库锁对象,激活锁对象产生的FUnCtiOnModUIe的名字为什么,在何处查看锁表的情况?102.2.7更新FM分为V1和V2,那么首先会执行哪一种更新类型呢?每种类型又是以咖种模式(异步、同步或本地)执行的呢?112.2.7使用OPENSQ1注意原则112.3与表相关112.3.1 M
3、M模块有哪些常用表格112.3.2 HR模块知识:HR里面存储HR主数据主要用到了哪些表?112. 3.3HR模块知识:HR程序在开发中常用的两个逻辑数据库是什么?分别对其进行描述123. 3.4HR模块知识:HR模块里面,如何修改HR的信息类型,具体如何实现124. 3.5财务模块:财务模块开发中常用的表有哪些,简单举例说明:125. 3.6PM常用的TAB1E126. 3.6innerjoin与1eft-outerjoin的区别?133.权限相关143. 1什么是权限对象(AuthorizationObjects)?在ABAP程序中使用明B条语句进行授权检查?147. 2与权限对象有关的事
4、务代码有哪些?148. DIA1OG154. 1DIA1OG中的几个事件154. 2何在TAB1ECONTRO1中实现选中一行或多行的效果154. 3DIA1OG开发的常用几个控件是什么?155. BDC165. 1BDC录屏的事务代码165. 2BDC与BAPI之间的区别165. 3BDC录屏的注意事项165. 4谈谈BDC的运行模式和更新模式166. 增强176.1 什么叫增强?有哪些方式进行增强?176.1.1UserEXIT176.1.2Customerexit176.1.3BADI176.1.4EnhancementSpot176.2如何建立增强?176.3与增强相关的事务代码有哪些
5、186.4如何进行数据库表字段的增强?Append和Inc1ude的方式有何区别?187.SMARTFORMS197.1谈谈SmartForm中,Temp1ate和Tab1e表格的区别197.2SMARTFORM如何实现公司1oG打印,其步骤是什么?197.3smartform中如何控制段落、单个字符输出格式?198.RFC和BAPI208.1RFC208.11什么是RFC,有哪些通信模式?208.1.2RFC中涉及到常用的事务代码有哪些?208.1.3根据调用方式的不同,RFC接口提供了什么样的服务?208.14RFC接口的具体功能包括哪些?208.1.5在通过CA11FUNCTION语句进
6、行远程功能调用的基本模式有哪些208.1.6怎么创建一个支持远程调用的RFC218.1.7怎么调用一个SAP标准RFC218.18怎样建立RFC程序?RFC程序传递的参数都是传递值还是引用?如何建立函数组?218.19怎么来维护这个DESTINAT1oN(远程目标)218.2BAPI218.2.3如何创建一个BAPI?228.2.4编写BAP1的注意事项有哪些?228. 2.5谈谈与BAP1相关的事务代码。229. 3RFC和BAP1的相同之处和不同之处2210. 3.1RFC和BAP1的区别?229.其他239. 1基础知识239. 1.1CHECK.EXIT、RETURN命令的区别?231
7、1. 1.2初始化内表有几种方式?2311.1. 3一个程序如何调用另外一个程序2311.2. 4在一个程序中如何调用其他事物代码249.1.5在进行画面跳转时,CA11SCREEN与1EAVETOSCREEN的区别?249.1.61OOP循环和系统字段?249.1.7MESSAGE消息有哪些类型,含义?如何自定义MESSAGE消息类?249.1.8ABAP中,如何自定义异常类?如何捕捉异常?249.19什么是事物变式?事务变式有什么用?259.1.10RANGE259.1.11对于FIE1DSYMBO1赋值将使用269.1.12Perform调用子程序时,using,tab1es,chang
8、ing3个参数分别有什么影响?269.113如何在程序间传送数据?269.2延伸279.2.1自定义搜索帮助有几种方式?如何实现279.2.2怎么创!建numberrange279.2.5前导零的处理方式279.2.6程序事件和系统事件279.2.7如何建立一个外部数据库的连接289.2.8怎样从文件服务器上读取文件?和写文件到文件服务器上?289.2.9SAP包括哪些传输技术289.2.10如何将内表数据转换成一个XM1文件?289.2.11怎么导出一个WSD1文件?289.2.12怎么导入一个WSD1文件?299.2.13创建后台程序的TCODE是什么,如何在程序里面调用后台程序299.2
9、.14webservice299.2.15什么叫BTE(BusinessTransactionEvent),BTE的两种类型?299.2.16现阶段接口开发使用的技术291. 2.17将一个RFM(RemOte-Enab1edModUIe)创建一个WEBSERVICE都有什么相关的事务代码?299. 2.18esb使用2910. 常用T-CODE301 .报表知识1.1 基础知识1.1.1 报表事件,有哪些?过程化事件INITIA1IZATIONStart-Of-Se1ectionend-of-se1ection1.1.1.2选择屏幕事件ATSE1ECT1oN-SCREENoUTPUT选择屏幕
10、PBo事件,每次选择屏幕调用之前触发,在其中进行选择屏幕输出之前的准备工作,如确定屏幕各元素的输出状态,ATSE1ECTIoN-SCREEN选择屏幕最后被触发的事件,用户在选择屏幕上回车、选择某个GU1按钮、功能键或者菜单项时触发ATSE1ECTION-SCREENONfie1dATSE1ECTION-SCREENONB1OCKb1ockATSE1ECTION-SCREENONRADIOBUTTONGROUPgroup1ATSE1ECTION-SCREENONse1tabATSE1ECTION-SCREENONENDOFse1tab,ATSE1ECTION-SCREENoNHE1P-REQUE
11、STFoRfie1d选择屏幕的Pc)H事件,F1事件,定义字段帮助ATSE1ECTION-SCREENONVA1UE-REQUESTFORfie1d选择屏幕的POV事件,F4事件,定义字段输入帮助1.1.13在使用到逻辑数据库时,比如HR报表,涉及到的逻辑数据库事件:GETnodeGETnode1ATE1.1.1.4 列表事件TOP-OF-PAGEEND-OF-PAGEAT-1INE-SE1ECTIONAT-USER-COMMAND用户交互控制,选择某个GU1功能出发,用于交互式报表1.1.1.5 AT事件ATFIRST功能循环时第一条记录时调用AT1AST功能循环中最后一条记录时调用ATNE
12、W功能循环中当指定字段之前(包括指定字段)的组合和上一条记录不一样的时候调用ATENDOF功能循环中当指定字段之前(包括指定字段)的组合和下一条记录不一样的时候调用AT事件的注意点AT事件中的工作区不同于1OOP循环的工作区该工作区中位于指定字段后面的值将不会被读取如果需要用到则需重新抽取一次1.1.1.6 交互式报表事件ATUSER-COMMAND.AT1INE-SE1ECTIONATPF-FNCTIONKEY(设置功能键)1.1.2报表选择画面1.1.2.1 报表的选择画面上能否添加自定义工具栏?能够添加,通过语句SE1ECTION-SCREENFUNCTIONKEYn(n为1至5,最多定
13、义5个)。1.1.2.2 如何对报表的选择画面元素进行分组?在PARAMETERS或SE1ECT-OPT1oNS后使用附加语句“MODIFID+组名”1.1.23如何更改屏幕各元素的状态?举例一些比较常用的屏幕属性在报表ATSE1ECTION-SCREENOUTPUT事件中或PBO(PROCESSBEFOREOUTPUT)中,1OOPATSCREEN.MODIFYSCREEN.END1OOP.SCREEN-NAME画面元素的名称Screen-Groupiscreen-group4对画面元素的分组SCREEN-INPUT能否输入SCREEN-INVISIB1E是否可见SCREEN-1ENGTH可
14、见长度SCREEN-ACTIVE是否是可用的状态1.2A1V报表1.2.1A1V报表实现的流程声明数据对象一定义选择画面一从数据库取数一处理数据一显示数据1.2.2显示A1V常用的两个F11REUSE_A1V_GRID_DISP1AY,REUSE_A1V_1IST_DISP1AY,REUSE_A1V_GRID_DISP1AY_1VC1.2.3如何设置A1V中的热键setparameteridBESfie1dgwjtab-ebe1n.ca11transactionME23N,andskipfirstscreen.1.2.4A1V显示中的小计(1)使用SUBTOTa1v可以实现自动小计,首先fie
15、1dcat参数中添加DO_SUM=X,然后传入SOrttabIe,可以在sorttab1e中指定需要小计的列(2)使用AT语句在1OOP循环中使用ATENDOFFIE1D1.2.5FMA1V和OoA1V的比较FMa1v和00a1v都能够实现按钮自定义、数据修改、按钮处理自定义等操作,通常情况下FMa1v主要用于报表数据展示及简单交互,00a1v主要用于dia1og程序开发,可以进行复杂的控制,比如单元格的修改控制(FM只能控制到列修改性)、自定义F4等,OoaIv可以根据容器排列很方便的定义布局,一个屏幕可以放多个a1v,但是FMa1v只能一屏显示一个a1v。1.3WRITE1ISTWRITE1IST可以输出一些比