SAP ABAP

SAP ABAP programming language and development skills, supporting custom function development to enhance the flexibility and adaptability of SAP systems. SAP ABAP Tutorial, ABAP Programming Guide, ABAP Performance Optimization SAP各种技术.SAP ABAP编程语言与开发技巧,支持自定义功能开发,提升SAP系统的灵活性和适应性。

SAP跨时区日期时间如何操作?

娃娃闹别捏睡不着。起来写会儿博客。 想要做时间的好朋友~ 在之前的一个GLOBAL的项目中。 测试过程中发现了1个问题。就是各个国家的用户设置的时间不一样。本来的时区也不一样。 这就需要SAP时区转换函数的调节。按照需要来进行转换。 已经封装了一部分。大体如下: *———————————————————————-* FORM FRM_GET_USA_DAY CHANGING CV_DAY TYPE SY-DATUM CV_TIME TYPE SY-UZEIT.   DATA : TIMESTAMP LIKE TZONREF-TSTAMPS, TIME LIKE SY-UZEIT, DATE LIKE SY-DATUM.   CALL FUNCTION ‘IB_CONVERT_INTO_TIMESTAMP’ EXPORTING I_DATLO = SY-DATUM I_TIMLO = SY-UZEIT I_TZONE = ‘UTC+8’ IMPORTING E_TIMESTAMP = TIMESTAMP. CALL FUNCTION ‘IB_CONVERT_FROM_TIMESTAMP’ EXPORTING I_TIMESTAMP = TIMESTAMP I_TZONE =

使用SAP IDOC IDOC_INPUT_DEBITOR DEBMAS DEBMAS07创建客户主数据没返回消息解决方案

最近大家喜欢用IDOC来同步客户主数据到sap ecc系统。 没有什么太多特殊的。都是标准配置。消息类DEBMAS 基本类型DEBMAS07 。可是却死活都收不到状态消息。 经过DEBUG调试跟踪,也是头痛欲裂。确实没有抛出异常的地方。 于是想到会不会是官方问题? 然后搜索sap标准note。果不其然。   2678496 – Status message is no longer issued in batch input 2655937 – Status message is no longer displayed 事务代码SNOTE打上后,完美解决~【解决方案代码】   CONSTANTS: *   XML data *  lc_fk_stc2(20)        TYPE c  VALUE ‘FHK01_CCFCGD_STC2’,         “Sold-to Code *  lc_fk_cn(8)           TYPE c  VALUE ‘FHK01_CCFCGD_CN’,            “Ship-to Code *  lc_fk_cna(40)         TYPE c  VALUE ‘FHK01_CCFCGD_CNA’,           “Ship-to Name *  lc_fk_a(40)           TYPE c  VALUE ‘FHK01_CCFCGD_A’,        “Address *  lc_fk_a2(40)          TYPE c  VALUE ‘FHK01_CCFCGD_A2’,        “Address 2 *  lc_fk_a3(40)          TYPE c  VALUE ‘FHK01_CCFCGD_A3’,      “Address 3 *  lc_fk_ccn(30)         TYPE c  VALUE ‘FHK01_CCFCGD_CCN’,            “Customer Contact Name *  lc_fk_ccp(8)          TYPE c  VALUE ‘FHK01_CCFCGD_CCP’,        “Customer Contact Phone *  lc_fk_f(8)            TYPE c  VALUE ‘FHK01_CCFCGD_F’,        “Fax *  lc_fk_cg3(3)          TYPE c  VALUE ‘FHK01_CUSTOMER_GROUP_3’, “Customer Group 1 *  lc_fk_cg4(3)          TYPE c  VALUE ‘FHK01_CUSTOMER_GROUP_4’,      “Customer Group 2 *  lc_fk_sgsg(30)        TYPE c  VALUE ‘FHK01_CCFCGD_SGSG’, “Ship-to-Group *  lc_fk_cce(50)         TYPE c  VALUE ‘FHK01_CCFCGD_CCE’,                “Email Address *  lc_fk_ag(4)           TYPE c  VALUE ‘FHK01_CCFCGD_AG’,             “Account Group *  lc_fk_st(20)          TYPE c  VALUE ‘FHK01_CCFCGD_ST’,        “Search Term *  lc_fk_so(4)           TYPE c  VALUE ‘FHK01_CCFCGD_SO’,             “Sales Organization *  lc_fk_dc(2)           TYPE c  VALUE ‘FHK01_CCFCGD_DC’,         “Distribution Channel *  lc_fk_d(2)            TYPE c  VALUE ‘FHK01_CCFCGD_D’,            “Division *  lc_fk_ck(3)           TYPE c  VALUE ‘FHK01_CCFCGD_CK’,            “Country Key *  lc_fk_sof(4)          TYPE c  VALUE ‘FHK01_CCFCGD_SOF’,            “Sales Office *  lc_fk_ab(2)           TYPE c  VALUE ‘FHK01_CCFCGD_AB’,            “Areas Block lc_fk_stc2            TYPE string  VALUE ‘FHK01_CCFCGD_STC2’,         “Sold-to Code lc_fk_cn              TYPE string  VALUE ‘FHK01_CCFCGD_CN’,            “Ship-to Code

如何删除SMQ2中的数据 SAP一点小技巧

最近,看到SMQ2里面有很多需要删除的行。 1行1行的删除不是很方便。 查询了SAP note也没有批量的方法。 于是想起了开发小伙伴SAP ABAP。 传输验证后,成功解决。   FORM f_get_data. DATA:errmess TYPE natxt. DATA:qname TYPE trfcqnam. qname = ‘LTK%’. errmess = ‘为交货的发货已经计帐/’. SELECT * FROM trfcqin INTO CORRESPONDING FIELDS OF TABLE it_trfcqin WHERE qname LIKE qname. DELETE it_trfcqin WHERE errmess NS errmess. ENDFORM. ” F_GET_DATA *&———————————————————————* *& Form F_PROCESS *&———————————————————————* * text *———————————————————————-* * –>

SAP导出-本地文件-含标签的文本-文件名称不为XLS,却为TXT解决方案

在SAP升级之后,用户测试良好。各个流程ok,数据准确无误,性能好。 上线后却发现了一个问题。 即在所有ALV的【导出】–>【本地文件】–>【含标签的文本】–>时, 弹出的窗口却是TXT的。用户表示不接受。只愿意接受EXCEL的导出格式。 怎么办呢?   经过调试DEBUG跟踪,发现了内存参数LIST_CONVERT_TO_DAT是主管默认格式的。 解决方案: 事务代码SU3进入维护用户参数界面。 点击【参数】页签 在【set/get参数标识】列输入【LIST_CONVERT_TO_DAT】 在【参数值】列输入【XLS】File Name Extension in the Spreadsheet Download 保存,退出SAP GUI 登录(重要)   这个时候,重新登录SAP GUI,下最低导出本地文件,可以看到默认的就是EXCEL下载了。 开心~ SAP导出-本地文件-含标签的文本-文件名称不为XLS,却为TXT解决方案 本文为作者原创,如果这篇文章对您有用,欢迎转载, 转载请务必注明来源《今日热点在看》http://www.hot583.com/ 我的微信公众号hot583或者在这个链接联系我 《全文完》

除了配置GUI外,为什么不建议SAP顾问使用苹果电脑?

春暖花开,不久即将迎接毕业生实习生的到来。 由于很多公司都提供笔记本电脑给员工。员工可以自行采购。 在学校学了JAVA等前后端的同学们。 不少人在选择采购报销笔记本电脑时会选择MAC BOOK或者MAC BOOK PRO。 可是个人却不怎么推荐。原因有如下:   如果您将要从事SAP顾问,要用到SAP GUI,配置这个比较麻烦。 WINDOWS系统的电脑配置SAP GUI很简单。应用服务器配置SAP IP地址:如10.1.0.1 实例编号配置实例:如00/01 系统标识随意:一般配置DEV/QAS/PRD,分别对应开发、测试、生产机三套环境。 SAP Router字符串配公网ROUTER ip:如/H/101.47.149.28/H/ 但是如果您使用的是MAC BOOK,这个配置就要麻烦一些。体现在这个逻辑端口这里。 需要在macbook的GUI里,先点击Advanced,勾Expert mode选,然后文本框中输入: conn=/H/101.47.149.28/H/10.1.0.1/S/3200 或者conn=/H/101.47.149.28/H/10.1.0.1/S/3201 3200和3201取决于【实例编号配置实例:如00/01】,很多人不知道怎么配置这里。 如果没有SAP ROUTER的时候,就直接配置成【conn=/H/10.1.0.1/S/3200】或者 【conn=/H/10.1.0.1/S/3201】 不支持SMARTFORMS打印 砍柴人也是很差异,SAP和苹果这么强大的2个公司,居然不能够相互兼容。 确实是一个遗憾~ 不支持WOR FLOW配置 作为1个虽然古老却实用的技术,在SAP生涯中肯定是会用到的。 如果您的电脑不支持,岂不是遗憾,所以砍柴人也不建议sap顾问使用评估电脑。 硬件兼容性不是很好。 作为飞来飞去动不动就在工厂或者宿舍或者会议室进行演示、讲演、测试的SAP顾问。 苹果电脑可能会碰到没有合适匹配的转接线,或者客户的投影仪比较古董,或者接口设备匹配不上。 很有可能就会比较尴尬而浪费了大家(尤其是客户方大领导)的宝贵时间。对你的讲标效果什么的, 会产生负面影响。 部分软件还找不到合适的苹果版本,欲哭无泪。 综上所述,不建议SAP顾问用苹果电脑哦。 对于我来说主要是苹果电脑太贵了。哈哈~ 如何选择,还是看您自己咯~   本文为作者原创,如果这篇文章对您有用,欢迎转载, 转载请务必注明来源《今日热点在看》http://www.hot583.com/ 我的微信公众号hot583或者在这个链接联系我 《全文完》

外围系统如何用JAVA获取SAP PA30人事主数据的相片?SAP ABAP开发技巧

客户这几天搞了个考勤展示外挂系统。 在公司的进门口搞了几块电子大屏幕。 显示每个员工的相片、到岗外出勤快、请假相关信息。 号称数据库仓储驾驶舱展现。老板喜欢~ 销售也喜欢。   每到春天,客户就带着他们潜在的客户来参观考察。 展示各种电子显示屏。看起来确实高大上。 所有PA30的人事数据都同步过去了,就剩下头像相片信息没过去。 JAVA小哥哥想了很久,总算实现了~这里分享一下实现思路和解决方案。 SAP系统中,相片的存储格式为流文件,需要使用函数下载。   JAVA实现代码方案: package com.ibm.ibmwriteback.util; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.util.Iterator; import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.PostMethod; import org.apache.commons.httpclient.methods.StringRequestEntity; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; import sun.misc.BASE64Decoder; public class SAPPhotoSync { public static void getSAPEmployeePhoto(){ try{ HttpClient httpClient = new HttpClient(); System.out.println(“start visiting webservice!”); PostMethod

如何使用增强在SAP会计凭证中打开扫描附件发票或者对账单等图片?ABAP入门,学以致用

上周,客户提了1个需求。 需要在F-02事务代码中上传发票/对账单地址,然后在SAP系统中查看的时候,能够真正查找到。 即FB03下面点击增强出来的【查看】按钮,可以自动跳转打开附件的详细图片/扫描件。 需求分析完毕后。就剩下思考如何实现了。 经过考虑,可以使用SAP的BTE来实现。   详细步骤如下: 1、打开事务代码FIBF 2、点击【设置】-》P/S函数模块-》一个客户的。 3、新建客户函数模块。 4、在事件1120模块中写入打开附件的ABAP逻辑代码; 5、在事件1130模块中写入增强按钮图标的ABAP代码; 6、在事件1135模块中写入附件影响系统/扫描件的逻辑代码。   测试运行,没问题了就释放请求上线~   如果这篇文章对您有用,欢迎转载, 转载请务必注明来源《今日热点在看》http://www.hot583.com/ 详细实现代码见微信公众号hot583或者在这个链接联系我哦~

多个EXCEL SHEET页如何自动生成目录sheet页?快速写功能说明书FS的SAP小技巧

在我们日常的SAP工作生涯中。有的时候交付给客户的文档是EXCEL的。 1个EXCEL通常有多个SHEETS页面。有时候,公司要求要提交1个目录页面。 随着说明书的不断变动,增加或者删除excel sheet页面是非常常见的事情。 而一个一个查看、复制、校验、粘贴去比对目录和页码是否准确, 肯定不是我们专业人员想要做的事情。 下面介绍一个自动化生成目录sheet页的方法。就是使用excel的自带代码实现, 非常简单哦。   首先:在excel文件的最前面追加一个sheet,命名为“目录”   接着,按Alt+F11在谈出的对话框中点插入选择【模块】然后把下面的代码复制到模块中 最后F5执行。   Sub mulu() On Error GoTo Tuichu Dim i As Integer Dim ShtCount As Integer Dim SelectionCell As Range ShtCount = Worksheets.Count If ShtCount = 0 Or ShtCount = 1 Then Exit Sub Application.ScreenUpdating = False For i = 1 To ShtCount