摘要:
以下介绍如何创建一个简单的SAP dialog程序,也就是dynprp程序,并且在屏幕上添加一个text文本,输出‘hello word’。 1, 创建新的dialog程序 SE80, 选择program选项,输入程序名字ZSCREENEXAMPLE,点击创建 点击 YES进入下一屏幕,勾上"Wit 阅读全文
posted @ 2020-03-23 22:31
差劲
阅读(339)
评论(0)
推荐(0)
摘要:
在SAP easy access界面输入S001后,可以看到一个包含ABAP workbench下面全部Tcode的菜单,如下: 其中常用的tcode如下: CMOD(SMOD) SAP增强 OSS1 连接SAP OSS S001 ABAP开发工作台菜单(含多Tcode) SA38 运行程序(SE3 阅读全文
posted @ 2020-03-23 22:30
差劲
阅读(282)
评论(0)
推荐(0)
摘要:
SAP中的事物代码也就是我们常说的tcode,是保存在数据库表TSTC和TSTCT中。 TSTC中保存了tcode的详细信息,包括对应的程序名,屏幕等等。 tcode:se11 TSTCT中保存了tcode文本信息, 可以通过tcode的描述模糊查询到Tcode,比如在TTEXT字段输入ABAP E 阅读全文
posted @ 2020-03-23 22:29
差劲
阅读(665)
评论(0)
推荐(0)
摘要:
1, Plant Maintenance (PM模块) IW32 - Change Plant Maintenance OrderIW33 - Display Plant Maintenance OrderIW34 - Create Notification OrderIW51 - Create S 阅读全文
posted @ 2020-03-23 22:28
差劲
阅读(1391)
评论(0)
推荐(0)
摘要:
1, 问题描述 简单描述一下背景,2个系统,一个是ECC,一个是SRM系统,合同协议在ECC,但是修改是从SRM系统发起的,然后同步到ECC中。 合同中的价格在SRM系统中更改后,在SRM系统中做货源寻源发现价格错误,只能找到老价格,找不到更改后的价格。 在SRM系统中显示,总价确实从81.03变更 阅读全文
posted @ 2020-03-23 22:25
差劲
阅读(212)
评论(0)
推荐(0)
摘要:
SRM中有个配置表 bbp_function_map,从里面可以查询到寻源用到的函数B46B_SOURCEDETER_GETSOS_MULTI,搜索条件 GetSourcesOfSupplyMulti, 在函数B46B_SOURCEDETER_GETSOS_MULTI中就可以加断点了,主要寻源的逻辑 阅读全文
posted @ 2020-03-23 22:24
差劲
阅读(133)
评论(0)
推荐(0)
摘要:
BBP_DOC_SAVE_BADI是SRM系统中单据保存时触发的BADi,这个BADi是过滤期相关的,所以使用这个badi时要注意增加对象类型,比如要想在合同保存时触发就要加上BUS2000113,否则合同保存时并不能进入这个BADi如下: SRM合同保存的触发按钮如下, 一个简单例子,在合同保存时 阅读全文
posted @ 2020-03-23 22:22
差劲
阅读(445)
评论(0)
推荐(0)
摘要:
在SAP中,很多自定义数据库表需要人工维护数据库表中的数据,大多数的情况下通过SE16或SE16N维护,而是为表创建一个表维护视图来维护数据。下面详细介绍一下如果创建表维护视图。 1, 前提条件 首先,在表的‘Delivery and Maintenance’页签里,需要如下维护‘Date Brow 阅读全文
posted @ 2020-03-23 22:21
差劲
阅读(849)
评论(0)
推荐(0)
摘要:
首先通过SE54创建的表维护视图中的Recording routine需要是Standard recording,这才能将表中的数据挂在传输请求中,如下: 然后在SM30中,选中需要传输的数据,然后通过菜单 table view-->Transport挂在相关TR下, 然后点击include in 阅读全文
posted @ 2020-03-23 22:19
差劲
阅读(1196)
评论(0)
推荐(0)
摘要:
下面介绍如何在在表维护视图(maintenance view)的工具栏上添加自定义按钮,如下红框内的眼睛按钮。 步骤如下: 1, 创建表维护视图 SE11,输入自定义表名 ZLM_TEST_MT,通过菜单进入table maintenance generator或者直接SE54进入 如下输入相关信息 阅读全文
posted @ 2020-03-23 22:18
差劲
阅读(754)
评论(0)
推荐(0)
摘要:
1, 视图簇介绍 SAP系统中经常会看到有层次结构的可以维护数据的屏幕,比如Tcode OMT3: 这个其实就是视图簇(View cluster),是通过SE54将多个表维护视图按照一定的关联关系链接起来,形成层次结构,方便维护数据。 用SE93查看OMT3,看到实际上维护视图簇是调用了Tcode: 阅读全文
posted @ 2020-03-23 22:16
差劲
阅读(741)
评论(0)
推荐(0)
摘要:
abap语言中是不能使用select语句直接从维护视图(maintenance view)中抽取数据的,会报错说维护视图在数据字典中不存在,如下: "YEKKO" 没有在 ABAP 字典中定义为表、映射视图或数据库视图。 这时可以通过函数VIEW_GET_DATA来读取维护视图中的数据。 下面通过一 阅读全文
posted @ 2020-03-23 22:14
差劲
阅读(249)
评论(0)
推荐(0)
摘要:
在使用sm30维护表数据时,经常会要求一些字段是不可输入的,它们的值要自动带出来,也就是给一个默认值,比如一些描述字段,表数据的维护人,维护日期以及时间。这些是通过SE54中的“事件(EVENT)”来实现的。 下面以一个小例子详细说一下具体的实现过程。 1,首先要有一个表,咔嚓~~~下面这个表就创建 阅读全文
posted @ 2020-03-23 22:13
差劲
阅读(320)
评论(0)
推荐(0)
摘要:
1, SAP query介绍 QUERY是SAP提供的方便无编程基础用户的报表工具,使用图形化的界面,让用户托托拽拽就能轻松完成报表编写。 我们可以将Query理解成QuickView的高级版本,它在QuickView的基础上增加的功能有:a、能够实现统计、排序等计算功能b、提供标准的图形形式显示列 阅读全文
posted @ 2020-03-23 22:07
差劲
阅读(1557)
评论(0)
推荐(0)
摘要:
1, SQVI介绍 SQVI可以认为是简化版的Query,SQ01,SQ02,SQ03的功能都集中到SQVI中,用SQVI创建的query只能自己查看,别的用户看不到,但是通过挂接事务码可以解决,就是通过SE93给SQVI生成的abap程序挂上Tcode。 2, 创建SQVI query 集团计划总 阅读全文
posted @ 2020-03-23 22:06
差劲
阅读(821)
评论(0)
推荐(0)
摘要:
1, 创建功能区(infoset) 功能区也就是所谓的信息集(infoset),T_CODE为SQ02: 指定连接的基础表 点对勾,继续添加需要连接的表 设置字段 我选择的全部字段 如果在“字段组缺省值”选择中,你选择的是“包括关键字段”或者“创建空字段组”则在这个界面上,我们可以把需要的字段拖到右 阅读全文
posted @ 2020-03-23 22:05
差劲
阅读(1710)
评论(0)
推荐(0)
摘要:
1,业务背景 当我们进行一些网页类程序配置的时候,SAP默认是不报详细消息的,只告诉你是500内部错误或者其他,更加具体的错误原因就无从寻找了。这时我们常规的操作是使用SMICM去查看日志信息,但我们都知道SMICM的日志信息是很多的,并且它不友好的浏览方式加大了我们快速定位错误的难度。本文将为大家 阅读全文
posted @ 2020-03-23 22:03
差劲
阅读(747)
评论(0)
推荐(0)
摘要:
1,问题描述 SAP 调用webservice时发生一个错误ICM_HTTP_SSL_PEER_CERT_UNTRUSTED SRT:Processing error in Internet Communication Framework:("ICM_HTTP_SSL_PEER_CERT_UNTRU 阅读全文
posted @ 2020-03-23 22:01
差劲
阅读(338)
评论(0)
推荐(0)
摘要:
1, webservice简介 关于Webservice的概念和原理,简单来讲,Webservice是一种基于SOAP传输协议,用WSDL描述,用XML封装数据的接口技术。由于其跨平台、跨防火墙、开发成本低、开发周期短等优势而被广泛应用,但也有局限性,包括传输负载大、没有统一的实现模型等。 对于We 阅读全文
posted @ 2020-03-23 22:00
差劲
阅读(861)
评论(0)
推荐(0)
摘要:
1, 业务场景 在项目中,我们需要写一个自定义的Web Dynpro应用程序,以方便用户的业务流程。此业务流程的活动大多是有关批准,与不同层次的审批者。每个审批人(批准/拒绝)后,通过电子邮件发送到相关人士。完全不同的电子邮件将被发送超过10次。我们必须要找到一个有效的方式来发送电子邮件。 2, 解 阅读全文
posted @ 2020-03-23 21:56
差劲
阅读(495)
评论(0)
推荐(0)
摘要:
&symbol& (括号中,小写字母为变量)&symbol+(n)& 屏蔽从第一位开始的N位&symbol (n)& 只显示前N位&symbol (S)& 忽略正负号&symbol (<)& 符号在左边&symbol (>)& 符号在右边&symbol (Z)& 不输出前导零&symbol (C)& 阅读全文
posted @ 2020-03-23 21:52
差劲
阅读(411)
评论(0)
推荐(0)
摘要:
1, 问题描述 创建smartforms打印中文时乱码,但是在smartforms中却显示正常。 测试显示,乱码。。。。。 2, 解决方法 研究了一下发现,只有在中文语言环境下创建的smartforms能打印中文,不出现乱码的情况。重新创建后,就不出现乱码状况了。 当然还有很多其他原因会造成乱码,需 阅读全文
posted @ 2020-03-23 21:51
差劲
阅读(1494)
评论(0)
推荐(0)
摘要:
在smartforms中模板(template)中可以设置行高度,如下: 但是在表(table)中却看不到这个高度设定, 表的行高度是通过样式(style)中的段落空格设置的,如下: 找到段落格式,*号表示用的是默认的段落格式,默认在段落格式在样式的header data中, 段落格式中的行间距(l 阅读全文
posted @ 2020-03-23 21:50
差劲
阅读(904)
评论(0)
推荐(0)
摘要:
, template,table设置背景色 在template或者是table 的属性中,选中单元格可以在shading的选项中设置颜色(color)和透明度(saturation). 注意:在output options tab页中也有个sahding的选项,但是这个选项只针对窗口有效。 2, 窗 阅读全文
posted @ 2020-03-23 21:46
差劲
阅读(230)
评论(0)
推荐(0)
摘要:
在style中的段落格式(paragraph)中可以设置对齐的模式,左对齐,右对齐,居中。 然后在smartform中应用,指定段落格式 显示结果: 以上。 阅读全文
posted @ 2020-03-23 21:45
差劲
阅读(744)
评论(0)
推荐(0)
摘要:
smartforms中的行间距是在style中的段落格式(paragraph format)设置的,下图中的line space就是行间距。 然后在smartform中指定相关的段落格式即可。 以上。 阅读全文
posted @ 2020-03-23 21:44
差劲
阅读(699)
评论(0)
推荐(0)
摘要:
众所周知,在smartforms的loop节点中可以插入一个command node用来强制分页,那么如何在table节点中插入分页的command node呢? 下面简单介绍一下,这要利用到table节点的sort event,如下: 在table节点的data tab页中勾上event on s 阅读全文
posted @ 2020-03-23 21:43
差劲
阅读(497)
评论(0)
推荐(0)
摘要:
可以通过tcode SE63翻译smartform中的text module。 SE63:点击other texts->B5->SSF 输入 object name也就是text module的名字,然后选择source language 和target language,最后点击Edit按钮。 翻 阅读全文
posted @ 2020-03-23 21:42
差劲
阅读(315)
评论(0)
推荐(0)
摘要:
1, 创建一个Smartforms Tcode smartforms创建一个简单的smartform 创建一个import输入参数,用来控制check box是否勾上。 2, 创建alternative 节点 先创建一个alternative, alternative的condition就是输入参数 阅读全文
posted @ 2020-03-23 20:49
差劲
阅读(1007)
评论(0)
推荐(0)
摘要:
1,定义SELECTION-SCREEN 1 2 3 4 5 6 7 8 9 *定义selection screen SELECTION-SCREEN BEGIN OF SCREEN 9001 AS WINDOW TITLE TEXT-001. PARAMETERS:p_ebeln LIKE ekk 阅读全文
posted @ 2020-03-23 17:36
差劲
阅读(627)
评论(0)
推荐(0)
摘要:
1,AT SELECTION-SCREEN AT SELECTION-SCREEN . 用于屏幕输入检验,其扩展语法如下: ...ON <Field>: 该语法用于控制屏幕元素输入时的遇错处理,检查某具体输入字段(SELECT-OPTIONS 或PARAMETERS)是否完整或正确,若输入有错或不满 阅读全文
posted @ 2020-03-23 17:34
差劲
阅读(739)
评论(0)
推荐(0)
摘要:
1, 代码模板介绍 在abap开发的过程中,很多代码或注释在不同的程序中需要反复使用,比如,report程序头的注释,程序修改历史日志注释,另外还有一些常用abap语句。这时如果使用代码模板功能,会大幅度提升开发效率。下面介绍如何创建使用代码模板。 2, 创建代码模板 SE38 进入abap编辑器, 阅读全文
posted @ 2020-03-23 17:32
差劲
阅读(209)
评论(0)
推荐(0)
摘要:
行选择交互事件(AT LINE-SELECTION)是列表事件的一种,当用户双击write输出的报表行时,触发该事件。 例子:用write输出一个人员报表,双击某行,触发AT LINE-SELECTION事件,弹出人员详细信息。 例子程序代码: 1 2 3 4 5 6 7 8 9 10 11 12 阅读全文
posted @ 2020-03-23 17:30
差劲
阅读(186)
评论(0)
推荐(0)
摘要:
1, 涉及到的表 生产订单的状态(PP order status)涉及到数据库表如下: 1,JEST:可以读取生产订单的全部状态(字段STAT),包括系统状态(I开始),用户状态(E开始),以及状态是否有效(字段INACT,X-无效,空-有效) 2,JCDS:状态的修改历史,在前台可以查看,如下: 阅读全文
posted @ 2020-03-23 17:29
差劲
阅读(421)
评论(0)
推荐(0)
摘要:
1, FTP介绍 FTP(File transfer protocol)是一种标准的网络协议,可以用于在互联网上传递文件。SAP系统中提供了一些标准函数,放在函数组SFTP中, 除此之外,sap还提供了一些demo程序: RSFTP001 - SAPFTP Version (Current Vers 阅读全文
posted @ 2020-03-23 17:27
差劲
阅读(653)
评论(0)
推荐(0)
摘要:
1, 数据元素的翻译 a)SE11数据字典, 输入数据元素进入到数据元素界面 菜单:转到->翻译进入到翻译语言选择界面 选择语言后进入翻译界面,修改目标语言对应的描述 修改完后直接保存,保存的过程怎么没有生成请求呢?那怎么传输到其它系统呢?顿时脑子冒出一大串问题,不急,SAP标准针对翻译这块是不会产 阅读全文
posted @ 2020-03-23 17:25
差劲
阅读(600)
评论(0)
推荐(0)
摘要:
通常SAP系统中的表维护视图(sm30)把所有数据都显示在一个屏幕上,没有筛选,如下,左图是sm30,右图是SE11中的表数据显示。 如何要按条件进行筛选,要用到VIEW_RANGETAB_TO_SELLIST创建筛选条件内表, 例子程序如下: 简单介绍: 1, 先创建一个选择画面包含3个range 阅读全文
posted @ 2020-03-23 17:21
差劲
阅读(460)
评论(0)
推荐(0)
摘要:
Tcode:FILE可以查看物理路径和逻辑路径之间的匹配关系。 如下:能查到逻辑路径Z_DIRECTLINK对应的物理路径。 相关的路径信息保存在表PATH中, 下面是简单的例子程序: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 REPORT ztest_file. 阅读全文
posted @ 2020-03-23 17:19
差劲
阅读(2430)
评论(0)
推荐(0)
摘要:
1, SMW0 模板上载 Tcode SMW0选择‘Binary data...'选项 输入package,运行 进入下一屏后,点击创建按钮添加excel文档, 如果出现下面的错误,提示’No MIME type assigned to object',则需要为excel格式的文件创建一个类型, M 阅读全文
posted @ 2020-03-23 17:18
差劲
阅读(411)
评论(0)
推荐(0)
摘要:
调用类cl_abap_structdescr中的方法describe_by_data()和get_ddic_field_list()能得到表或结构的列名字(colomn name). 代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 REPORT ztest_co 阅读全文
posted @ 2020-03-23 17:17
差劲
阅读(217)
评论(0)
推荐(0)
摘要:
SAP提供了一个类CL_ABAP_ZIP来创建.zip扩展名的压缩文件。 代码: 先将文件通过cl_gui_frontend_services=>gui_upload以BIN的文件类型上载,然后通过cl_abap_zip中的方法add() save()压缩,最后下载到本地。 1 2 3 4 5 6 阅读全文
posted @ 2020-03-23 17:15
差劲
阅读(696)
评论(0)
推荐(0)
摘要:
SAP提供了一个XML相关类cl_xml_document_base,通过这个类可以将abap程序中内表中的数据转化成XML格式的数据,然在再下载到本地。 方法create_with_data:转换内表数据到XML格式 方法export_to_file:下载xml文件 代码: 1 2 3 4 5 6 阅读全文
posted @ 2020-03-23 17:13
差劲
阅读(370)
评论(0)
推荐(0)
摘要:
在SAP系统内,不同的货币的小数的位数有可能不一样的,比如:日币和人民币的就不同。 代码: 1 2 3 4 5 REPORT ztest_currency_convert. DATA: l_netwr TYPE p DECIMALS 2. l_netwr = '1.8'. WRITE:/ 'JPY: 阅读全文
posted @ 2020-03-23 17:12
差劲
阅读(3966)
评论(0)
推荐(0)
摘要:
1, F4_DATE 弹出一个小的calendar,只有一个月的日期,能选择年月日。 代码 1 2 3 4 5 6 7 8 REPORT ZTEST_DATE_F4. PARAMETERS: p_date TYPE sy-datum. AT SELECTION-SCREEN ON VALUE-REQ 阅读全文
posted @ 2020-03-23 17:11
差劲
阅读(271)
评论(0)
推荐(0)
摘要:
介绍两个SAP函数FREE_SELECTIONS_DIALOG和FREE_SELECTIONS_INIT,通过这两个函数能生成基于某个数据库表的动态选择屏幕。 比如要根据销售订单抬头表VBAK生成动态屏幕, 对应的完整代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 阅读全文
posted @ 2020-03-23 16:57
差劲
阅读(355)
评论(0)
推荐(0)
摘要:
1, 替换字段内容REPLACE 语法: 1 REPLACE <str1> WITH <str2> INTO <c> [LENGTH <l>]. ABAP/4 搜索字段 <c> 中模式 <str1> 前 <l> 个位置第一 次出现的地 方。如果未 指定长度, 按全长度搜 索模式 <str1>。 然后 阅读全文
posted @ 2020-03-23 16:55
差劲
阅读(1134)
评论(0)
推荐(0)
摘要:
现在SAP系统基本上都是仅仅支持unicode的,只有SAP早期版本(ERP 6.0 SR2之前)支持Unicode及非Unicode字符集(也称Nonunicode)。ERP 6.0 SR3之后则只支持Unicode字符集。 SAP系统使用的Unicode字符集占12个字节;而非Unicode则是 阅读全文
posted @ 2020-03-23 16:53
差劲
阅读(629)
评论(0)
推荐(0)
摘要:
1, 语法 在用wirte语句画出的来的list 报表中可以通过NEW-PAGE命令进行分页。 语法: 1 NEW-PAGE [NO-TITLE|WITH-TITLE] [NO-HEADING|WITH-HEADING]. WITH-TITLE or NO-TITLE:控制NEW-PAGE新开启的页 阅读全文
posted @ 2020-03-23 16:52
差劲
阅读(632)
评论(0)
推荐(0)
摘要:
1, format 可以使用FORMAT来调整输出的颜色,format语法如下: 1 FORMAT <option1> [ON|OFF] <option2> [ON|OFF]........ 一旦通过ON设定,FORMAT语句中设置的格式将适用于所有后续输出的语句,直到再次使用OFF选项关闭,其具体 阅读全文
posted @ 2020-03-23 16:51
差劲
阅读(1575)
评论(0)
推荐(0)
摘要:
下面介绍一个取得字符串最后一位的方法,直接上代码: 1 2 3 4 5 6 7 8 9 10 11 REPORT ztest_shift. DATA:l_number(10) TYPE c VALUE '12345678F', l_len TYPE i, l_off TYPE i, l_ret(10 阅读全文
posted @ 2020-03-23 16:50
差劲
阅读(241)
评论(0)
推荐(0)
摘要:
下面介绍如何通过表HUSSTAT读取包装单元(handling units)的状态。 包装单元状态可以通过tcode:vl03n在前台查看到,包括系统状态和用户状态: 这些状态信息保存在表HUSSTAT中, 其中objnr是前缀 ‘HU' + HU内部号码(vekp-venum)组成的, hu内部号 阅读全文
posted @ 2020-03-23 16:49
差劲
阅读(355)
评论(0)
推荐(0)
摘要:
MARC中可以看到物料对应的特殊采购类型(Special procurement type) 特殊采购类型(Special procurement type)和工厂的对应关系保存在表T460A中。 werks是销售订单中的工厂,vbap-werks 以上。 阅读全文
posted @ 2020-03-23 16:48
差劲
阅读(393)
评论(0)
推荐(0)
摘要:
在ABAP语言中可以使用通配符进行模糊查询,模糊匹配,具体的通配符如下,分字符串和SQL条件两种使用场合。 字符串操作中的通配符: *:多位字符的通配符 +:一位字符的通配符 字符串操作中的转义符:# 代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 REP 阅读全文
posted @ 2020-03-23 16:47
差劲
阅读(3520)
评论(0)
推荐(0)
摘要:
在AT SELECTION-SCREEN ON VALUE-REQUEST事件中,是不能直接取得选择屏幕字段的默认值或输入的值,而是需要通过函数 DYNP_VALUES_READ读取。 例子程序: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 阅读全文
posted @ 2020-03-23 16:46
差劲
阅读(353)
评论(0)
推荐(0)
摘要:
1, 用到的函数,类方法 下面介绍一个能根据所选表字段自动创建动态select-options的例子代码,代码中用到了以下函数和类方法: 1, FREE_SELECTIONS_INIT:初始化动态选择画面 2, FREE_SELECTIONS_DIALOG:弹出生成动态select-options的 阅读全文
posted @ 2020-03-23 16:45
差劲
阅读(348)
评论(0)
推荐(0)
摘要:
不可否认保持一个良好的编程风格会带来很多的好处。而对于“良好”的标准,则众说纷纭,莫衷一是。下面是从网络上摘抄的一部分abap规范准则,供大家参考。 1, 大写与小写 ABAP是一种大小写不敏感的语言。这自然会引起一个问题:使用大写还是小写?SAP给出的ABAP编辑器为我们提供了4种选项: (全部) 阅读全文
posted @ 2020-03-23 16:43
差劲
阅读(698)
评论(0)
推荐(0)
摘要:
在SAP ABAP开发中经常会使用到CHECK、STOP、EXIT、continue、return、reject,这些语句的作用、用法以及相互的区别是什么呢,现在简单汇总如下: 1, stop 使用该命令的程序位置INITIALIZATION, AT SELECTION-SCREEN, START- 阅读全文
posted @ 2020-03-23 16:41
差劲
阅读(1251)
评论(0)
推荐(0)
摘要:
在ABAP中 除法的运算有两种运算符 DIV 和 '/ ' ,它们之间还是有些区别的,如下: 1.把除的结果赋值给整数 DIV 只取结果中的整数部门值; ‘/ ’ 会对结果进行四舍五入 2.把除的结果赋值给小数时 DIV 只取结果中的整数部门值; ‘/ ’就保留小数,取正常的计算结果 以一段程序测试 阅读全文
posted @ 2020-03-23 16:40
差劲
阅读(2606)
评论(0)
推荐(0)
摘要:
1, 简介 整理了一段代码,实现上载本地图片到SAP的数据库表中,并且显示在屏幕上。 其中用到了一下函数: 1, GUI_UPLOAD:上载图片文件 2, SCMS_BINARY_TO_XSTRING:将图片文件转换成xstring 3, SCMS_XSTRING_TO_BINARY:将图片xstr 阅读全文
posted @ 2020-03-23 16:39
差劲
阅读(964)
评论(0)
推荐(0)
摘要:
下面介绍个十分基础的知识点,就是查看abap程序是挂在哪个TR下以及修改的版本历史。 在SE38界面,输入程序名。然后: Utilities->Versions->Version Management 双击TR 查看表的请求号与查看程序的类似,是在建表的T-code下:se11,如图 以上。 阅读全文
posted @ 2020-03-23 16:37
差劲
阅读(667)
评论(0)
推荐(0)
摘要:
1, READ_TEXT参数填写 可以通过函数READ_TEXT读取物料BOM行项目和抬头上的长文本。本文着重介绍如何读取物料BOM行项目上的长文本。 SE37: 读取物料BOM行项目长文本时,函数READ_TEXT的参数如下: ID: 固定值 ‘MPO’ OBJECT:固定值 ‘BOM’ NAME 阅读全文
posted @ 2020-03-23 16:36
差劲
阅读(466)
评论(0)
推荐(0)
摘要:
1, 语法 总的说来从内表中删除行数据有两种方法: 1,通过index删除, 1 DELETE <internal table> [INDEX <index>]. 2,通过where语句删除所有符合条件的数据 1 DELETE <internal table> [FROM <n1>] [TO <n2 阅读全文
posted @ 2020-03-23 16:34
差劲
阅读(774)
评论(0)
推荐(0)
摘要:
只要将ICON的名字或ID传送到SELECTION-SCREEN COMMENT中,就可以在选择画面中显示ICON图标。 ICON的ID和名字可以在type pool ICON中得到: 也可以通过表ICON看到图标的样子 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 阅读全文
posted @ 2020-03-23 16:33
差劲
阅读(531)
评论(0)
推荐(0)
摘要:
函数RS_REFRESH_FROM_SELECTOPTIONS可以取得选择画面中的select-option和parameters的输入值。 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 2 阅读全文
posted @ 2020-03-23 15:43
差劲
阅读(261)
评论(0)
推荐(0)
摘要:
1, 二维码简介 二维码又称QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。 2, 例子代码 网上看到一个关于二维码的abap程序,重新整理了一下,分享给出来,供大家参考。 注 阅读全文
posted @ 2020-03-23 15:42
差劲
阅读(1377)
评论(0)
推荐(0)
摘要:
ABAP语言中的IS SUPPLIED是用来判断function的输入参数是否被实参赋值,简单说来就是判断参数是否传入。 下面用一个例子来说明: SE37创建一个Function,如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 FUNCTION 阅读全文
posted @ 2020-03-23 15:40
差劲
阅读(271)
评论(0)
推荐(0)
摘要:
Tcode su3可以看到用户参数中设置的默认打印机,如下: 这个默认的打印机(output device)保存在表usr01-spld中,如下,可以直接用select语句读取 以上。 阅读全文
posted @ 2020-03-23 15:39
差劲
阅读(190)
评论(0)
推荐(0)
摘要:
有时在进行字符串处理的时候,需要将字符串中的数字提取出来,这个数字可能是金额或者数量。 比如:需要将‘2.5 days’中的2.5提取出来。 通过函数 PREPARE_STRING可以快速实现这个功能。此函数可以用来实现将字符串中非法字符删除的功能,也就是保留字符串中想要的字符。 输入参数: I_V 阅读全文
posted @ 2020-03-23 15:37
差劲
阅读(181)
评论(0)
推荐(0)
摘要:
一段简单的代码,用来实现在abap选择画面中添加一个输入output device的parameter。 代码: 1 PARAMETERS:p_output TYPE rspopname MATCHCODE OBJECT prin. 显示结果如下: 其中,数据元素rspopname是4位的打印机短名 阅读全文
posted @ 2020-03-23 15:36
差劲
阅读(556)
评论(0)
推荐(0)
摘要:
1, 介绍 一般来说可以通过函数CLAF_CLASSIFICATION_OF_OBJECTS读取物料的特性值。 不过有的场合下,需要根据特性值来筛选物料,比如说在SAP系统抽取所有特性A为’5‘的物料,这时就不能利用CLAF_CLASSIFICATION_OF_OBJECTS来便利全部物料了,效率低 阅读全文
posted @ 2020-03-23 15:35
差劲
阅读(535)
评论(0)
推荐(0)
摘要:
tcode:SU3中可以查看SAP登录用户的电话号码,电子邮件以及用户全名,如下: 代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 REPORT ztest_get_user. DATA: l_sname TYPE ad 阅读全文
posted @ 2020-03-23 15:33
差劲
阅读(1302)
评论(0)
推荐(0)
摘要:
1, 前台操作 在前台可以通过tcode:CO03查看生产订单工序。 选择order entered 选项,输入生产订单 进入到工序的详细屏幕: 2, 例子代码 可以通过函数 PM_ORDER_DATA_READ来读取生产订单下的工序(operation),包括子工序(sub-operation), 阅读全文
posted @ 2020-03-23 15:25
差劲
阅读(421)
评论(0)
推荐(0)
摘要:
通过计算机的properties,可以查看到计算机名,如下: 通过cl_gui_frontend_services=>get_computer_name可以取得计算机名称。 代码: 1 2 3 4 5 6 7 8 9 REPORT ztest_get_computer_name. DATA:lv_p 阅读全文
posted @ 2020-03-23 15:20
差劲
阅读(669)
评论(0)
推荐(0)
摘要:
下面介绍一下如何在选择画面中创建下拉列表字段(drop down list box),语法使用到parameter中的as list box,如下: 下拉列表创建完毕后,使用函数VRM_SET_VALUES填入下拉列表值。 例子代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 阅读全文
posted @ 2020-03-23 15:12
差劲
阅读(224)
评论(0)
推荐(0)
摘要:
使用下面ABAP语句可以在选择画面中加入一个空行。 1 SELECTION-SCREEN SKIP. 显示效果如下: 以上。 阅读全文
posted @ 2020-03-23 15:10
差劲
阅读(887)
评论(0)
推荐(0)
摘要:
1, Collect介绍 ABAP编程中,经常会要求对loop循环中的一些数值类型(类型 I、P 或F)的字段进行合计,也可以直接使用collect语句进行合计,当然也可以自定义一个变量用来保存累加结果,然后使用At...endat语句进行合计,。 简单说来,collect就是在loop循环的内表中 阅读全文
posted @ 2020-03-23 15:09
差劲
阅读(532)
评论(0)
推荐(0)
摘要:
偶然发现abap中的write语句还有个可以指定数字输出格式的style选项。 F1中的英文帮助截图如下: 可以通过style指定7种格式,这些格式在class CL_ABAP_FORMAT中的属性界面中找到,如下: 1, O_SIMPLE: 输出和su3中用户设定相同数字显示格式,结尾的0不显示2 阅读全文
posted @ 2020-03-23 15:04
差劲
阅读(412)
评论(0)
推荐(0)
摘要:
在SAP中没有专门的Tcode创建parameter ID,只能通过SM30给表TPARA添加parameter ID记录来实现。 1, SM30输入TPARA表名,然后点击maintain按钮 2, 输入paramterID名字,然后回车 3, 输入描述点击SAVE按钮 以上。 阅读全文
posted @ 2020-03-23 15:02
差劲
阅读(433)
评论(0)
推荐(0)
摘要:
下面ABAP代码实现在选择画面中收起/展开部分字段的功能,供参考。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 阅读全文
posted @ 2020-03-23 14:44
差劲
阅读(205)
评论(0)
推荐(0)
摘要:
介绍一个简单的可输入的值的弹出窗口函数 POPUP_GET_VALUES_USER_HELP,通过调用这个函数能创建如下样子的弹出窗口,可以看到订单数量字段是可输入的。 字段是否能输入,是通过函数输入table参数fields中的字段field_attr来控制 控制的属性如下: 代码如下: 1 2 阅读全文
posted @ 2020-03-23 11:45
差劲
阅读(167)
评论(0)
推荐(0)
摘要:
在ABAP代码中,使用count(*)判断某个字段值是否在表中存在时,是可以不加into的。 比如下面的代码,判断采购订单是否在EKKO中存在,这样少定义一个变量。。。懒就一个字。。。。 1 2 3 4 5 6 7 8 9 10 11 12 REPORT ztest_countlines. PARA 阅读全文
posted @ 2020-03-23 11:44
差劲
阅读(409)
评论(0)
推荐(0)
摘要:
在采购订单屏幕的左上角有个特殊的按钮,可以通过它创建、查看或删除采购订单的附件。这个按钮是使用GOS(Generic Object Service)工具实现的,可以把GOS理解为一个连接文档和SAP内各种对象的一个工具,包括,采购订单(me23n),会计凭证(FB03)等等都用到了GOS。 下面就是 阅读全文
posted @ 2020-03-23 11:25
差劲
阅读(835)
评论(0)
推荐(0)
摘要:
SE38运行程序RSDBTIME,可以查看到SAP系统服务器时间(database),本地电脑的时间(localtime),以及它们之间是否存在差异。 如下图: 以上。 阅读全文
posted @ 2020-03-23 11:24
差劲
阅读(786)
评论(0)
推荐(0)
摘要:
我们知道SE11或SE16N中并不支持物料外部编码的模糊查询,比如:se11中模糊查询64771-062-*找不到符合条件的数据, 但实际上是有一条符合条件的物料。 如果想支持外部编码的模糊查询,就需要使用到函数 MGV_SELOP_AFTER_START_OF_SEL,将select-option 阅读全文
posted @ 2020-03-23 11:10
差劲
阅读(426)
评论(0)
推荐(0)
摘要:
1, LSMW介绍 LSMW是Legacy System Migration Workbench(遗留系统移植平台)的缩写,它在SAP中是一个工具,它被用于移植遗留数据进SAP。 它是一个非常重要的工具,同时它易于学习和掌握它。 进入后新建一个Project、Subject、Object,如果之前曾 阅读全文
posted @ 2020-03-23 11:07
差劲
阅读(921)
评论(0)
推荐(0)
摘要:
没有标准方法能通过Tcode找到基于这个TCode的LSMW,但是可以通过一段小程序来实现。 代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 3 阅读全文
posted @ 2020-03-23 11:06
差劲
阅读(231)
评论(0)
推荐(0)
摘要:
1, 创建Project,SubProject,Object 2, 录制批量输入屏幕 首先要录制批量输入,如下图,就是操作一个事务码,然后录制. 执行MM01以后按照正常的步骤创建一个新的物料,然后保存.保存后界面如下. 就是制作字段模板,指定那些字段需要导入,那些是默认的. 保存退出到平台 3, 阅读全文
posted @ 2020-03-23 11:00
差劲
阅读(508)
评论(0)
推荐(0)
摘要:
1, 读取infotype 0002 SAP HR一般会有很多开发。而这个模块数据的特点也让它的开发和其它模块有些不同。HR的所有数据都是以信息类型来保存的,每个信息类型的数据都和时间段紧密相连。HR开发一般使用sap提供的Logic database pnp.用起来也非常简单。只需要在新建程序时, 阅读全文
posted @ 2020-03-23 10:58
差劲
阅读(342)
评论(0)
推荐(0)
摘要:
由于HR的数据对时间的特殊性,经常需要对数据对基于时间段的一些处理。SAP提供了一些宏来极大的简化了问题。一般数据的处理上,常用到的宏有下面几个: (1) 在满足屏选条件的多个结果中,可以用RP_PROVIDE_FROM_FRST来选择时间最早的一条记录,语法: RP_PROVIDE_FROM_FR 阅读全文
posted @ 2020-03-23 10:57
差劲
阅读(391)
评论(0)
推荐(0)
摘要:
AP HR/HCM模块中,员工信息是保存在infotypes中的,可以通过员工代码(Pernr)进行查询.比如,infotype PA0006是保存员工地址信息的,PA0021是保存员工家庭详细信息。SAP提供了几百个这样的infotypes,同时也提供了方法创建自定义的infotypes。本教程就 阅读全文
posted @ 2020-03-23 10:56
差劲
阅读(1280)
评论(0)
推荐(0)
摘要:
HR开发中会经常用到逻辑数据库,其中PNP逻辑数据最常用的。 人事数据的信息类型数据都存放在PAnnnn这些表中,PNP其实就是从这些表中抓取的数据。现在已经用PNPCE(支持concurrent employment)取代PNP,但是因为PNP已经用得相当普遍而且够用,很多报表还是基于PNP的,这 阅读全文
posted @ 2020-03-23 10:55
差劲
阅读(898)
评论(0)
推荐(0)
摘要:
ABAP中的宏都保存在表TRMAC中,包括HR某块开发中经常用到的一些宏。 进入SE11查看表TRMAC,竟然发现常用的commit work和break也都是宏。。。。 而且表TRMAC还有表维护视图,如果权限够大的话可以直接通过SM30修改宏,好流弊。。。 以上。 阅读全文
posted @ 2020-03-23 10:53
差劲
阅读(402)
评论(0)
推荐(0)
摘要:
1, 问题描述 ABAP程序中,调用函数 BAPI_PRODORDCONF_CREATE_TT确认工序(confirm operations)失败,返回一个错误,提示Personnel master record xxxx not found (check entry),message id:RU, 阅读全文
posted @ 2020-03-23 10:52
差劲
阅读(247)
评论(0)
推荐(0)
摘要:
介绍一个HR的函数RP_CHECK_PERNR用来检查员工号码是否维护完整,主要是检查员工号在infotype 0000和0001中是否维护完整。 SE37,测试 以上。 阅读全文
posted @ 2020-03-23 10:51
差劲
阅读(290)
评论(0)
推荐(0)
摘要:
1, 基本概念 IDOC技术在早起版本的R/3系统就已经集成了,不过国内真正用起来还是05年以后了,其实IDOC是很强大的,在主数据和一些业务数据同步方面,几乎不需要做任何开发就可以配置完成,例如BD11,BD13这些事务就是已经做好的。 但是IDOC的整个配置,涉及了远程连接、ALE、消息控制、t 阅读全文
posted @ 2020-03-23 10:47
差劲
阅读(1112)
评论(0)
推荐(0)
摘要:
1, WE19介绍 WE19是一个十分常用的IDOC测试工具,可以通过它模拟inbound和outbound IDOC进行测试,而不用通过其他系统实际发送一个IDOC来测试。在使用WE19测试时还可以根据需要更改IDOC中的各个字段的值,十分方便。 Tcode:WE19 可以看到WE19界面上有很多 阅读全文
posted @ 2020-03-23 10:45
差劲
阅读(1343)
评论(1)
推荐(0)
摘要:
有时项目上需要移植其他系统中已有的成熟的IDOC解决方案,当前系统中IDOC相关程序已经开发完了,但是还没有配置和其他系统的EDI/ALE连接,这种情况下,如何才能测试一下已完成的开发?本文就详细介绍如何通过WE19将测试IDOC从其他系统导入到当前系统,并测试。 1, 导出IDoc到源系统服务器上 阅读全文
posted @ 2020-03-23 10:44
差劲
阅读(511)
评论(0)
推荐(0)
摘要:
1, 通过WE57 在不知道process code(术语含义参照-->SAP IDOC 开发入门)的场合下,我们可以通过WE57查找相应的function module, Tcode:WE57, 2, 通过WE42 也可以通过precess code查找对应的function module,步骤如 阅读全文
posted @ 2020-03-23 10:43
差劲
阅读(270)
评论(0)
推荐(0)
摘要:
1, WE19创建IDOC Tcode we19进入IDOC测试工具,输入Basic Type:ACC_GL_POSTING01 双击EDIDC输入如下参数: 其中,Partner和Port的配置在WE20和WE21中维护。 然后填入segment:E1BPACHE08 E1BPACGL08:使用复 阅读全文
posted @ 2020-03-23 10:42
差劲
阅读(336)
评论(0)
推荐(0)
摘要:
使用 函数REUSE_ALV_GRID_DISPLAY_LVC显示ALV时,可以通过字段catalog中的LZERO控制前导零是否显示。 LVC_S_FCAT-LZERO = ‘X' :显示前导零 以上。 阅读全文
posted @ 2020-03-23 10:41
差劲
阅读(246)
评论(0)
推荐(0)

浙公网安备 33010602011771号