abap三月通(2)

2019-04-01 22:40

ABAP,你必须安装一套SAP(可选择R/3,miniSAP,或IDES),而通常的情况是安装光盘渠道比较难找(只有一些大企业实施了SAP才可能有,而且还必须注意版权问题,其他开发工具随便都可找到安装程序),对想学习ABAP的程序员这是个主要门槛. 掌握基本的ABAP开发环境对ABAPer是有益的,似乎多数ABAPer对底层并不感兴趣,

3.获得Access Key .

4.ABAP workbench和ABAP dictionary

5.第一个程序-Hello World.

如何进行ABAP开发呢?本节使用老套的做法,介绍如何建立一个”Hello World”的ABAP程序, 为了让读者尽快掌握ABAP开发熟悉ABAP开发环境是必须的,请看图1.5-1. 程序的原代码如下: Report ZHELLO. Write ‘Hello World!’. 按F8运行,运行成功在屏幕上显示Hello World!的字样,恭喜你,第一个程序运行成功.

6.ABAP语法简介 数据类型 控制流程

文本摘要 输出格式 程序调试

7.Open SQL和Native SQL 8.内表和工作区 9.使用字段符号 10.模块化程序 11.文件处理

12.簇数据库和逻辑数据库 13.消息和错误处理

尽管消息这词还用在其他地方比如PO,SO打印传真等所谓的output message(请看ABAP百夜谈),系统出现异常,在这里消息只谈在程序运行逻辑异常处理时的消息.

1定义消息(参考图7-7).

使用Tcode SE91可自定义包含多消息号的消息类,在图7-7中就定义了一个消息类ZFIMSG,同时消息号017 中使用了俩&消息变量 2运用消息. 1.可在程序Title中使用MESSAGE-ID加入消息类. REPORT ZMSGTEST MESSAGE-ID ZFIMSG . MESSAGE I017. 使用消息IMG有这样的画面,[1][2]的appl和work area实际上对应的就是程序的message_id(SE91:message class). 2.在程序Title中定义直接在语句中使用. REPORT ZMSGTEST . MESSAGE I017(ZFIMSG). 1. 将变量赋给消息. REPORT ZMSGTEST .

MESSAGE I017(ZFIMSG) with ‘Var1’ ‘Var2’ ‘Var3’ . 或者

MESSAGE ID ' ZFIMSG ' TYPE 'I' NUMBER '0171' with ‘Var1’ ‘Var2’ ‘Var3’ .

尽管017只定义了两消息变量,但是可With多个值,当然只有前俩生效. 4.SAP程序消息类型有下列几种.

I:信息窗口 W:警告 E:错误 S:成功 A:终止程序或Tcode X:未知.

5.和标准SAP一样,你可配置消息,比如你需要由用户决定消息类型,使用下面程序. PROGRAM ZMSGTEST .

CALL FUNCTION 'READ_CUSTOMIZED_MESSAGE' EXPORTING

I_ARBGB = 'ZFIMSG' I_DTYPE = '' I_MSGNR = '017' IMPORTING

E_MSGTY = SY-MSGTY.

假设你做了Tcode和OBA5一样可配置消息类型,在程序中你就可根据返回值SY-MSGTY判断下步工作,E停止处理,A退出程序等.

在标准程序中,接下来会PERFORM MESSAGE_SEND来决定发送消息类型.

3常用消息表格和各模块常用消息配置Tcode.

在消息配置中,Application Area和SE91的Message Class实际上是同一概念.

1消息相关最常用的table:

T100: SAP能用到的消息都应该在此表中找到.

T160M :MM模块相关消息表,此表可完全直接维护.就是说只要记住它,MM的消息配置直接使

用SE16就可以.

T100C: FI模块中用户自定义的消息,比如使用OBA5, OFMG等自定义的消息会写入此表,CO配

置消息不在此表.

T100S: 此表保存着允许用户更改的应用区域和消息号,举例假设你删除了KI 005则在OBA5

中再不能配置此消息.(对MM模块有些例外,M7不在此表,使用OMCQ依旧可设置,M3不在此表,OMT4依旧可设置)

此表也可直接维护.和T160M不同的是,你必须在SE16输入T100S按新建按钮

才可维护.查询时只可Display. T100U: 哪个用户最后更改了消息,从此表能找到. T100W: For Workflow 2常用Tcode(部分): FI: OBA5|OFMG|OFPM

MM: OMRM|OKZZ|OMT4|OMCQ |O04C| SD: OVAH

CO: OPR4_ACT|OPR4_CK|OPR4_CKML|OPR4_CKPF|OPR4_KKA|OPR4_KKP|OPR4_KKS|

OPR4_KKS1|OPR4_PPCOPP Others:

OPR5|OPR1|OPR3|OPR6|OPR7|OPR8|OPR9|OPRCMFE|MSW1|MSW2 3应用举例.

物料价格维护问题

[Case 1]如何在物料价格未维护时依旧可估算成本.

比如在CK11N(CK40N)计算成品标准成本时,其中有一些Component没维护价格.就可使用 OPR4_CK将默认的错误消息Switch Off掉(从Tcode OKKN->Misc.->Error Management按钮也可).

***另外临时处理方法一是将相关component的物料Cost 1 View选上Do not Costing. 对需要计算标准成本的材料选上它就不再允许计算标准成本,不妥,但是对原材料无所谓,因为系统会这样处理,如此材料没维护价格,BOM用到它的成品不计算其成本,但是如此物料维护了价格后,还是以物料价格为先的.(当然CK11N去估算此原材料是不行的,用户也不需如此做).二是按SAP推荐的如果将price设成0.01,price unit设置成100. [Case 2]如何限定物料价格必须维护.

(1)对采用S price control的.SAP默认是Warning(Tcode :OMT4 M3-132,如需要限定必须维护价格,将其改成W就可.

(2)对采用V price control的,OMT4找不到其消息号M3-131,但系统默认是Warning,如果用户认为也有相关配置就有犯了认为SAP万能的错误,再次强调SAP只是一堆代码并不神秘.好让我们看看其逻辑.

***实际上直接使用SE16:T160M可直接配置MM相关.

如图:[1]SE38找到程序LMG11F01 [2]在此处设置断点 [3]如价格为0(空格) 写死的,当然配置无效.

再看S Price control(如下图,显然从T160M表读了IMG数据).


abap三月通(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2012课程设计模板

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: