sapabap面试知识点总结Word格式.docx
《sapabap面试知识点总结Word格式.docx》由会员分享,可在线阅读,更多相关《sapabap面试知识点总结Word格式.docx(13页珍藏版)》请在冰豆网上搜索。
BEGINOFIT_XILEIOCCURS0,
XILEILIKEZSFQ10-XILEI,
ENDOFIT_XILEI.
SELECTXILEIINTOCORRESPONDINGFIELDSOFTABLEIT_XILEIFROMZSFQ10.
CALLFUNCTION'
F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD='
XILEI'
DYNPPROG=SY-REPID
DYNPNR=SY-DYNNR
DYNPROFIELD='
S_XILEI-LOW'
VALUE_ORG='
S'
CALLBACK_PROGRAM=SY-REPID
TABLES
VALUE_TAB=IT_XILEI
RETURN_TAB=RT_TAB
EXCEPTIONS
PARAMETER_ERROR=1
NO_VALUES_FOUND=2
OTHERS=3
.
IFSY-SUBRC<
>
0.
*MESSAGEIDSY-MSGIDTYPESY-MSGTYNUMBERSY-MSGNO
*WITHSY-MSGV1SY-MSGV2SY-MSGV3SY-MSGV4.
ENDIF.
ENDFORM."
FRM_XILEI_SELECT
3.保存,激活程序后,即可在屏幕上使用搜帮助了.
此方法不是太直观,但是不用在数据字典中建立相关的数据,只需在程序中动态提取显示.
方法三:
固定值。
我们在Domain中可以定义valuerange,在valuerange中定义的值,就可以出现在f4帮助中。
这是最简单的实现f4帮助的方法
方法四:
数据类型关联。
加入我们在选择屏幕上定义一个dats类型的参数,她就自动调用了日期类型的f4帮助。
6)如何实现事务码分配给程序
Se93
7)sap中如何实现数据的批量录入
a.lsmw-----事务码lsmw
b.bdc----事务码shdb(bdc调用的时候一般自动生成的程序对于一个BDC程序来说,
有两个固定的internaltable需要声明:
bdcdata和messtab,名称可以变,但是声明时一定要
*Batchinputdataofsingletransaction
data:
abclikebdcdataoccurs0withheaderline.
*messagesofcalltransaction
deflikebdcmsgcolloccurs0withheaderline.
Like后面的tabletype(这里是一个structure)是不能改变的。
有两个固定功能的form:
bdc_dynapro和bdc_field
名称同样是任意的,但是程序代码应该是相同的,
(强烈建议不要改动,因为会给自己添加麻烦)
另个还有一个InternalTable或者workarea是用来放从外部读进来的数据的,结构应该和你的外部文件的有相关的字段结构。
一次读进全部的记录然后循环处理loopat[internaltable]……process……endloop。
或者一条一条读进并处理,然后循环读下一条do……process……enddo。
其中Process分为两个部分:
1.填充bdcdata表。
2.CalltransactionorCallFunction‘BDC_Insert’返回消息放入Messtab.
Bdc的运行方式:
N---后台更新;
A-----表示显示所有bdc录制屏幕执行过程及数据;
E-----仅显示出错事务屏幕
更新模式:
L------本地更新;
A------异步更新模式S-----异同步更新模式
b.bapi函数
c.catt或是ecatt现在多用ecatt取代catt
8)sap创建类的步骤
1.声明类并定义类的使用方法
2.使用data语句中的typerefto来表示引用某一具体类以声明新的对象
3.使用createobject语句创建类实例化对象。
4.通过“->
”或“=>
”运算符访问类对象或组件,可以通过变量对方法名进行指定,实现动态调用。
Class<
class>
definition
Publicsection.
…..
Protextedsection.
…….
Privatesection.
……..
Method….Endmethod.
Endclass.
当所声明的类中包含方法时,需要通过下列代码对方法的实现行为进行定义
Class<
implementation
Method…endmethod.
9)sap实现增强的几种方式:
方式有:
表增强、屏幕变式和事务变式、程序增强(用户出口和客户定制出口、业务增强badi、业务事件bte、增强点、img后台配置)、菜单增强。
10)sapquery
创建步骤:
1、创建用户组usergroup(SQ03)
2、创建infoset,即设定列表关联的数据表及字段(SQ02)
3、Basiclist的创建
Sq01是创建query的事务码
11)Alv通过标准函数调用,它通过程序传递数据内表的方式来显示数据。
Alv输出的方式有两种grid和list。
Alv中的layout主要用于设定alv的输出格式,而fieldcat主要用于alv结构定义,包括具体的字段名称、类型、格式等属性。
Layout和fieldcat同属于类型池slis。
Alv调用主要是通过以下几个函数实现:
REUSE_ALV_FIELDCATALOG_MERGE(根据内表结构返回fieldcat字段结构信息)、REUSE_ALV_GRID_DISPLAY/REUSE_ALV_LIST_DISPLAY:
输出alv报表、
12)数据分析方法:
(找表的18种方法)--------包括F1字段分析方法、ST05数据追踪方法、where-usedlist方法、数据词典分析方法、调试分析方法、文本方法等。
13)。
Sap工作流构建步骤:
查找、创建触发事件;
构建业务对象;
构建程序/屏幕;
构建工作流引擎;
构建规则;
测试
创建任务(事务码pftc)、业务工作台(事务码SW11)
工作流系统的配置----事务码SWU3
工作流设计器-------事务码swdd
14)smartform
其工具主要分为三大部分,分别用于创建form(板式)、style(样式)、textmodule(文本模块).
如果想要实现系统可以直接打印出来自己配置的smartform,需要通过nace(事务码)进行后台配置。
Scriptform:
格式绘制器-----se71;
标准文本--------SO10;
style体例设计--------se72
Sapscript与abap连接通过三个function实现:
OPEN_FORM;
WRITE_FORM;
CLOSE_FORM
事务码se78是对sap系统上传图片和文本的事务码。
Scriptform无法直接复制,需要先使用工具将相关scriptform导出为本地文件,在开启的需求系统中将文件导入,由此实现scriptform的复制。
(通过se38,输入程序名RSTXSCRP,)
步骤复杂,见书步骤复杂见书。
。
15)屏幕程序开发
精通Dialog屏幕标准元素实现的界面,主要包括:
TABLECTROL,TABSTRIP,DropdownList,F1功能、F4功能等。
精通CLASS方式实现复杂的界面,包括:
Container控件(CustomContainer、SplitterContainer、DockingContainer等;
ALVTree控件;
ALVGRID控件(该控件可以通过调用ALVClass中的方法和属性实现对ALV的复杂控制(如增加用户按钮,双击事件,对话框显示详细等);
以及Picture控件,TEXTEDIT控件等的实现;
熟练掌握CollapsibleArea技术实现界面可折叠的复杂屏幕设计。
16)接口开发:
RFC
关于ABAP利用OLE连接外部数据库的范例参见程序ZPRG_CONNET_SQL_BY_OLE_ADO
17)业务总结
SD常用命令集合
客户主数据
XD01--创建
XD02-修改
XD03--显示
销售订单
VA01--创建
VA02--修改
VA03--显示
对销售订单交货
VL01N--创建
VL02N--修改
VL03N--显示
VL09取消发货
MBST(取消凭证)
对销售订单开票
一种参照销售订单开票
参照交货单开票
VF01--开票
VF02--修改
Vf03-显示
VF11冲销发票
表:
交货
LIKP
LIPO
销售订单:
VBAK
VBAP
发票
MKPF
MSEG
客户余额
FD10N
销售定价过程(客户信息记录)
VK31--创建
VK32-修改
VK33-显示
财务简介
做凭证
F-02
凭证类型
RV--销售发票凭证
DZ-收款凭证
PP模块常用命令集合
BOM:
CS01--创建
CS02-修改
CS03-查看
BOM展开
CS12--BOM展开
CS13--展开汇总
CS14--BOM比较
CSMB--按树状展开
CS15-BOM反查
工作中心
CR01--创建工作中心
CR02--修改
CR03--查看
工艺路线
CA01--创建
CA02--修改
CA03-查看
手工创建生产订单
CO01--创建
CO02--修改
CO03--查看
对生产订单发货
MIGO
MB26
MB1A
MMSC--扩充库位
对生产订单报工
CO11
CO11N
CO13-冲销报工
CO14--查询报工
对生产订单收货
MB31
对生产订单关闭
CO02---技术实现TECO
订单状态:
REL---下达
CNF--PCNF
DLV--PDLV
TECO--技术实现
CLSD--关闭
预留表--RESB
通过生产订单号查询到预留单号,再查找物料
在制品----针对自制件不在DLV
在途----采购件--(未清采购订单)
查询作业类型价格
KP26
作业类型
KL01--创建
KL02--维护
KL03--显示
MRP运算代码
M61--创建物料主计划
MD01--运行MRP
18)屏幕元素
Parameters的用法
…..ascheckbox:
创建checkbox对象
…….obligatry:
限制该select-options为必输项,执行中系统会提示
……radiobuttongroupradi:
建立分组单选框
……visiblelengthvlen:
定义显示长度
……aslistboxvisiblelengthvlen:
创建一个下拉列表,并指定输出长度
Selection-screen对象:
Select-screen语句用于创建屏幕的框架结构,主要包括屏幕元素的创建、子屏幕的创建等。
子屏幕主要分两种,一种为includescreen,可以通过report端程序直接调用;
另一种为subscreen,需要通过screenpainter所创建的屏幕引用。
具体语法如下:
1)selection-screenbeginofscreenscr.
Selection-screenendofscreenscr.
该语法用于定义一个includescreen,可以通过call方法在report程序中引用,call屏幕窗体时加入staringat…endingat…参数可以将所定义屏幕窗体作为一个新的对话框窗体来引用,并指定其创建的具体大小及位置。
当从一个主屏幕中来调用其程序中的另一窗体时,必须使用callselection-screen的方法。
2)selection-screenbeginofscreenscrassubscreen。
该语法用于定义一个subscreen。
3)selection-screenbeginofblockblock。
………
Selection-screenendofblock.
该语法在屏幕中定义一个block,其扩展语法如下:
……withframe:
创建一个框架
……Titletitle:
创建一个带标题的框架
…….NOINTERVALS:
所创建的框架中限制select只有一个输入项。
4)selection-screeninclude
参照某一个已经定义的屏幕元素来创建。
屏幕事件的中止:
1)exit:
中止某一事件模块,但不影响其他事件的执行。
2)reject:
功能与exit基本一致。
3)stop:
强制中止所有事件。
内表的清空:
Clear<
itab>
:
仅清空headerline,对内表数据存储空间不影响。
Refresh<
清空内表数据存储空间,对headerline不影响
iab>
fromtable<
dbtab>
清空内表存储空间,填空从数据库表所获数据。
FREE<
:
Message
Messagew000(mid).----------语法,mid为类名
Pbo用于控制屏幕输出前的事件,如数据初始化、赋值等。
PAI用于控制屏幕输出后的事件。
包括相关控件操作以及数据处理等。
下拉列表框:
步骤
1)在屏幕新增一文本控件,设置其属性dropdown为listbox
2)在flowlogicPAI中增加下列代码
PROAFTERINPUT.
PROCESSONVALUE-REQUEST.“定义调用F4帮助或单击该栏位时触发事件
FIELDLANGMODULESET_VALUE.
3)定义set_value模块,编辑abap代码。
下拉列表的原理是先将列表中需要的数据保存在内表,再将内表的值传递给屏幕中的文本字段。
对列表赋值需要调用功能函数F4IF_INT_TABLE_VALUE_REQUEST
屏幕工具条和菜单栏的设计可以通过事务码se41实现
Picturecontrol的构造思想:
上传图片的事务码是smw0,
CALL
FUNCTION
'
DP_PUBLISH_WWW_URL'
“长传图片的位置函数
EXPORTING
OBJID
=
ZTEXT1'
“这个是你上传图片的名字
LIFETIME
cndp_lifetime_transaction
IMPORTING
URL
url
OTHERS
1.
详见自己的程序————ZWSCR_PIC
子屏幕相关问题
Subscreen
START-OF-SELECTION.--------------------------在单击执行按钮后触发该事件
END-OF-SELECTION------------------------------该事件应用于所有数据处理完成,即START-OF-SELECTION相关事件执行完成,但输出屏幕还未显示之前。