![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
ABAP
yf_sap
这个作者很懒,什么都没留下…
展开
-
替代和规则
后台路径:IMG----财务会计(新)——工具——会计凭证中的替代替代的逻辑:1, 凭证生成的时候,将某字段根据某规则替换为另外一数值或字符。 2, 比如我们在凭证输入时,前台只需输入A,如果我们在后台定义了,A替代为"成本",那么凭证保存后就自动变成"成本" ;3, 举个例子:比如你们公司定义的业务范围和利润中心是完全一致,业务范围有:BA1,BA2;利润中心有A1原创 2008-07-29 16:36:00 · 1047 阅读 · 0 评论 -
如何获取sap标准表的相关的锁(lock)
1.sap锁的概念sap为了同步同时多个用户操作同一数据,防止数据出现不一致性而采用了锁机制。一般 sap会在操作数据前设置锁,防止第二个用户进行修改操作,当操作结束后系统在释放锁。2.SAP锁的类型Exclusive lockThe locked data can be read or processed by one user only. A request for another exclu转载 2009-08-02 18:14:00 · 444 阅读 · 0 评论 -
设备和功能位置主数据屏幕增强
对设备或者功能位置做屏幕增强,可以使用同样的USER-EXIT:ITOB0001,这个增强是对PM模块的技术对象主记录做屏幕增强的,应该一共可以做5个子屏幕吧,目前我只过了一个设备的增强,增强屏幕1000. 如果是设备增强,则要把自定义的字段添加到结构CI_EQUI_U和结构CI_EQUI里面,这两个结构要一一对应。其他主数据类似。在函数EXIT_SAPLITO0_001里面写如下代码原创 2009-08-20 19:20:00 · 977 阅读 · 0 评论 -
屏幕中如何做script文本
在很多功能开发中,要开发人员自己画屏幕,有时候有这样的需求,就是用户要输入文本,就要做一个类似script的控件,做法如下: 1、屏幕上先做一个‘定制控制’的控件,名字是ZRXM2、定义变量如下: DATA: customer_zrxm TYPE REF TO cl_gui_custom_container.DATA: edit_zrxm TYPE REF TO cl原创 2009-08-20 19:28:00 · 599 阅读 · 0 评论 -
How to download graphics from se78
使用如下代码最方便:REPORT ZDOWN_LOGO.********************************************************************** Variable declaration*********************************************************************DATA: V原创 2009-08-24 17:12:00 · 1073 阅读 · 0 评论 -
IW31/IIW32/IW33的屏幕增强
通过SMOD:IWO10018可以对工单进行屏幕增强,增加一个增强页,输出自定义的字段。首先要增强结构COCI_AUFK,将自定义的字段添加到结构COCI_AUFK中,然后画到屏幕SAPLXWOC-0900上,然后根据自己的需要做一些PBO和PAI的代码,或者在增强里面的函数写上相应的代码即可原创 2009-08-20 19:02:00 · 1651 阅读 · 0 评论 -
table maintenatance 自定义 status
自建的table做了table maintenatance以后,想在标准的status里面自定义一些自己需要的按钮,如何做呢?1、environment——modification——user interface2、切换到individual interface3、到 function group里面找到对应的status4、这个时候就可以修改标准的status了,自定义自己的按钮原创 2009-08-31 08:58:00 · 454 阅读 · 0 评论 -
通知单IW21/IW22/IW23屏幕增强
对通知单做屏幕增强步骤:1、找到USER-EXIT:QQMA0001,QM/PM/SM:通知标题的用户子屏幕2、这个增强里面包含很多增强的子屏幕,一般情况下也用不了那么多,我这里用到两个,0100,01013、在视图VIQMEL对应的表里append自己的结构,加上自定义的字段,我这里是增强的表QMEL4、在屏幕0100和屏幕0101上加上自己的字段5、在函数EXIT_SAP原创 2009-09-02 09:35:00 · 2577 阅读 · 1 评论 -
导出表字段和字段描述
有个函数可以导出表的属性,包括表字段和字段描述DDIF_FIELDINFO_GET原创 2009-09-18 14:45:00 · 744 阅读 · 0 评论 -
显示登录用户并发消息
*&---------------------------------------------------------------------**& Report ZTEST*&*&---------------------------------------------------------------------**&*&*&--------------------------------原创 2009-09-25 16:15:00 · 494 阅读 · 0 评论 -
BTE
BTE全称是Business Transaction Event,业务交易事件,它不同于我们常用的CMOD或者BADIs,BTE提供了RFC调用其它产品的可能。它的步骤分为以下3步:第一步:建立附加产品(Tcode:BF24),产品的名字是自己随便建立的,一定要记得激活第二步:连接事件到产品(Tcode:BF34).在这一步,要选中一个事件,根据自己不同的需求选中不同的事件,原创 2009-10-15 09:42:00 · 842 阅读 · 0 评论 -
report painter create tcode
To create a TCode, follow the steps below.1) Go to Transaction code SE93, Enter TCode Name and Press Create.2) Give short Description and select Parameter Transaction, Press Enter3) Select Transation原创 2009-12-02 14:52:00 · 608 阅读 · 0 评论 -
ABAP Memory/SAP Memory/Shared Buffer/Database
ABAP提供了IMPORT/EXPORT 和 SET/GET PARAMETER语句,可对用户内存/服务器内存/数据库进行存储和访问。不过可能很多人对此还不是很了解,下面我们通过实例来测试它们的区别和联系。 1. ABAP Memory用户登陆后,最多一个系统可以开6个窗口,这在SAP中称为External Mode。而同一个窗口中,运行某程序后,可以通过CALL TRANSACT转载 2010-03-11 16:30:00 · 782 阅读 · 0 评论 -
Smartforms常见问题
1、使用SFSY-FORMPAGES显示总页数的时候,如果页数大于9,将会在前10页显示成星号*法一:3ZC中的3表示输出的长度,所以最大是999,也可以指定4ZC,那就是9999了。其中的Z表示去掉前导零,C表示压缩空格,ZC要大写。法二:把页码所在的窗口的类型设置为最终窗口(final window)即可。2、有多页时候显示页码,仅一页时候不显示页码把页码所在的窗口的类型设置为转载 2010-03-11 16:45:00 · 1764 阅读 · 0 评论 -
ABAP常用字符串操作收集整理
1. 字符串连接CONCATENATE dobj1 dobj2 ... INTO result[IN { BYTE | CHARACTER } MODE][SEPARATED BY sep].2.字符串分隔, split 一个string的部分到一个内表或一系列的变量SPLIT dobj AT sep INTO{ {result1 result2 ...} | {TABLE result_tab}转载 2010-03-14 22:04:00 · 826 阅读 · 0 评论 -
如何修改 SAP 登录界面的文字
首先:输入事务码 SE61,然后:填写下列必要参数 Document Class(文档类):选择 General Text(常规文本),选择时的 ID 为“TX”。 Language(语言):这里需要一定注意,语言必须选择登录页面显示的语言,而不是用户个人设置里面指定的登录后使用的语言。这个语言是 BASIS 在系统参数里面设置的。如果语言不对,界面上就无法显示。 Name(名称原创 2010-03-22 10:31:00 · 1119 阅读 · 0 评论 -
如何把自建表数据做成可传输
通常自建数据表,我们只需要给它建立一个表维护程序既可,供用户手动维护,用户只能维护自己client下的数据。但也有一些情况,不让用户在自己的client随意修改数据,而是这些数据只能从别的client传输过来,就类似于一些系统的配置表,事实上自建表要做到数据可传输的也一般都是起到配置或推导替代的作用。那么怎样设置一个表是数据可传输的呢,鉴于我多次忘掉这些具体步骤的情况,这次我决定写在我的原创 2010-05-07 15:22:00 · 1370 阅读 · 1 评论 -
Internationalization(I18N)
项目上遇到一个问题,就是用smartforms划表格的时候,发现编辑器是WORD格式的,很不方便,查了很多资料,发现是设置问题,如下设置:TCODE:I18N I18N——I18N Customizing——MS Word as Editor 把SAPScript 和 Smartforms的勾去掉 就可以了原创 2009-08-03 17:24:00 · 419 阅读 · 0 评论 -
集的取数
项目中经常会用到一个集,下面就来介绍一个集的几个TCODE和集的取数方法 创建集:GS01,创建集的时候要设定集要用到的表和字段修改集和显示集:GS02和GS03 下面介绍集的两种取数方法:1、SELECT valsign valoption valfrom valto FROM setleaf INTO TABLE lr_fkber WHERE setname = 集的原创 2009-07-29 13:50:00 · 544 阅读 · 0 评论 -
CJ30的BAPI
要实现CJ30更新或者追加项目(WBS)的预算,可以使用如下函数: KBPP_EXTERN_UPDATE_CO 我现在要实现的是修改年度预算和增加总体的预算,如下步骤可以实现需要的功能: 1、 DATA: lt_bpak TYPE STANDARD TABLE OF bpak WITH HEADER LINE. DATA:lt_bpak_n TY原创 2009-07-29 13:34:00 · 2229 阅读 · 0 评论 -
年月的F4
DATA: BEGIN OF MF_DYNPFIELDS OCCURS 1. INCLUDE STRUCTURE DYNPREAD. DATA: END OF MF_DYNPFIELDS. DATA: MF_RETURNCODE LIKE SY-SUBRC, MF_MONAT LIKE ISELLIST-MONTH, MF原创 2008-07-29 20:58:00 · 426 阅读 · 0 评论 -
MM01 BASIC DATA1 增强
Create the append structure on the MARA table. The SAP note 44410 describes how to add the new fields to the screen and how the updating will work. 1. Make a copy of function group MGD1to ZMGDI as st原创 2008-07-29 21:05:00 · 535 阅读 · 0 评论 -
GUI_DOWNLOAD遇到的问题
今天用到GUI_DOWNLOAD这个程序,遇到了一些问题,特总结一下:问题一:导出的EXCEL如何带表头?解决: DATA:BEGIN OF T_FIELDNAMES OCCURS 0, NAME TYPE CHAR20, END OF T_FIELDNAMES. T_FIELDNAMES-NAME = 公司代码. AP原创 2008-08-01 15:17:00 · 1963 阅读 · 0 评论 -
ALV参数
在网上看到一些ALV的参数,还有平时用到的一些参数,做个汇总,不断更新中: RS_SELFIELD-COL_STABLE = X.RS_SELFIELD-ROW_STABLE = X.RS_SELFIELD-REFRESH = X. 这3行就可以实现自动刷新,并且返回时鼠标回到原来的位置 RS_SELFIELD-HOTSPOT = X 定义为热点(可响原创 2008-07-31 20:36:00 · 748 阅读 · 0 评论 -
Table Control 的一些控制
一、Table Control 响应双击事件 第一步:属性选择‘响应双击 第二步:在STATUS里面F2要写成PICK,这样双击的UCOMM就是PICK了 第三步:加上如下代码就可以得到双击的行和列 data: l_row type i.data: l_field type char30. CASE OK_COD原创 2008-08-21 22:17:00 · 900 阅读 · 0 评论 -
SAP如何根据表名或视图名寻找相应后台配置路径
一般来说,以T开头的表中的内容都是可以配置的,但是有时我们可能只知道表名,不知道后台配置的路径,对于大家来说,找一个自己不熟悉的路径是比较困难的。此时我们或许可以采用下面的方面。举例:我们知道库存地点的表是T001L,然后我们进tcode:SM30(维护表视图)在sm30中有个按钮:customzing,我们将T001L输入后点此按钮,系统会弹出一个小框,我们点跳过(ski原创 2008-08-24 16:38:00 · 1136 阅读 · 1 评论 -
SPAD如何建立页格式
一、 输入TCODE:SPAD二、完全管理——设备类型——页格式根据自己的需要建立一个Z开头的页格式,填入长度和宽度,横向或者纵向,不能写小数点,如果是23.4CM,那就写成234MM三、格式类型新建一个格式类型,也是Z开头的,选择刚刚建立的页格式,方向选择横向和纵向,保存。四、设备类型选择你使用的设备类型,点格式,把你刚刚建立的格式类型添加进入,保存 注意的一个就原创 2008-09-05 23:10:00 · 1065 阅读 · 1 评论 -
ALV的布局管理
欲保存布局,须在REUSE_ALV_GRID_DISPLAY函数中添加I_SAVE参数。I_SAVE定义为C数据类型,值如下:‘ ‘ = display variants cannot be savedDefined display variants (e.g. delivered display variants) can be selected for presentation indep原创 2008-09-06 17:43:00 · 565 阅读 · 0 评论 -
增强的一些技巧
做增强,大家很容易遇到这样的问题:找到一个增强,可惜没有自己想要的字段或者表或者结构,而另外一个增强呢,有这样的字段或者表或者结构,但是又不是自己需要增强的地方,这个时候有一个技巧可以使用: 在找到的增强里面写如下代码: CONSTANTS: C_KOMP_INT TYPE CHAR20 VALUE (SAPLCOMK)KOMP_INT[].原创 2008-09-12 16:26:00 · 674 阅读 · 0 评论 -
选择屏幕上做TABSTRIP
REPORT ZTEST123.SELECTION-SCREEN BEGIN OF TABBED BLOCK TABB1 FOR 9 LINES. "9 LINE 代表屏幕的长度 SELECTION-SCREEN TAB (15) TEXT-001 USER-COMMAND UCOMM1 "tab (15) 代表 tab titles 长度 DEFAULT SCREEN原创 2008-09-17 16:51:00 · 520 阅读 · 0 评论 -
项目中用到的增强合集
MM模块:采购订单增强:BADI:ME_GUI_PO_CUST ME_PROCESS_PO_CUST 物料凭证增强:BADI:MB_DOCUMENT_BADI 实现功能1、一个物料凭证中不允许出现2个移动类型 2、冲销的凭证不能再被冲销 3、参照预留原创 2009-01-07 15:51:00 · 3936 阅读 · 0 评论 -
VA41,VA01屏幕增强
对于VA41和VA01行项目的屏幕增强,有一个标准的屏幕和一个标准的增强程序可以用来增强使用。行项目标准屏幕是SAPMV45A的8459屏幕,这个屏幕对应就是VA41和VA01行项目的‘附件数据B这个tabpage,抬头的是SAPMV45A 0309,在这个屏幕上画你想要增强的字段就可以,当然你要先建一个表来存这些自定义字段。标准的增强程序是MV45AFZZ,这个程序就是给你增强用的,原创 2009-01-11 19:47:00 · 2194 阅读 · 0 评论 -
AS01屏幕增强
如何找到增强的步骤就不说了,可用的USER EXIT是EXIT_SAPLAIST_002 和EXIT_SAPLAIST_003,包含的表结构是CI_ANLU,这个结构就是SAP留给用户用来创建自己所需要的用户字段的,然后将用户数据更新到表ANLU里。 一、根据用户出口,我们可以看到函数组是XAIS,我们从这个函数组下手,输入TCODE:SE80,找到该函数组,如下图: 二、创建原创 2009-01-11 14:44:00 · 2996 阅读 · 2 评论 -
TEXT长文本的编写
大家在编程过程中,一定经常用到READ_TEXT这个函数来读取长文本,下面我介绍的是如果自己定义一个长文本object和ID,自己储存长文本。 在项目中,做了很多功能性开发,用户要写一些备注或者是审批意见和建议,自定义表里面储存字段的长度是有限的,这个时候能自定义长文本就很实用了。 第一步:建长文本的OBJECT,TCODE SE75,选择‘文本对象和识别码原创 2009-03-21 11:19:00 · 1676 阅读 · 0 评论 -
项目中用到的BAPI合集,不断更新中
在项目中做了一些接口和功能开发,把用到的BAPI整理一下 MM模块1、 BAPI_MATERIAL_SAVEDATA 创建物料主数据 注意参数EXTENSIONIN的使用,可以创建自定义字段例如WA_BAPI_TE_MARA-MATERIAL = ITAB_UP-MATNR. T_EXTENSIONIN-STRUCTURE = BAPI_TE_MAR原创 2009-03-21 11:35:00 · 3961 阅读 · 1 评论 -
例程开发TCODE:VOFM
SAP ERP 实施中,经常会用到例程开发(TCODE:VOFM)。这个开发目前我用到的是影响SD和MM的定价过程。创建例程需要ACCESS KEY,这个可以通过申请得到,创建后例程会被包含在一个REQUEST下。写好代码以后,在SPRO里面的‘条件计算方案’将你写的代码编号配置进去,就可以影响到这个定价了。 例程工作原理:例程,即Fomula,是使用在销售、采原创 2009-04-29 09:51:00 · 2034 阅读 · 0 评论 -
SE16限制表名的权限
因为公司上了HR模块,很多敏感的表不希望运维的顾问能看到,因此希望对TCODE:SE16进行权限控制,本来SE16可以对权限组进行权限控制,但是目前希望能控制到具体的表名,具体实现方法有这么几种:1、COPY SE16出来生成一个ZSE16,加上权限检查,标准的权限对象:S_DEVELOP,把SE16权限去掉,给ZSE16的权限2、增强SE16,目前R3 4.6只有一个BADI可以做增强:原创 2011-11-29 16:18:35 · 1603 阅读 · 0 评论