SmartForms Barcode 打印设置步骤
1. 设置系统条码:SE73 (1)进入SE73后选择系统条码。 (2)点击更改按钮。 (3)点击新建按钮。 (4)选择已New方式建立条码。 (5)输入Barcode Name和Short Text。 (6)选择条码类型:例Code39。 (7)设置Barcode Alignment: 选Normal。 (8)设置Barcode parameters:在设置39码的Mod-43 Check Digit时,如果勾选该项,则打印出来的条码会自动在后面增加一位检查码。 (9)Save。2. 设置SmartFom样式(Style):SmartForms。 (1)进入SmartForms后选择样式(Style)
SAP中的一些FUNCTION应用
单位转换 CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT' EXPORTING input = g_t_result-gmein* LANGUAGE = SY-LANGU IMPORTING* LONG_TEXT = output = g_t_result-gmein* SHORT_TEXT = EXCEPTIONS unit_not_found = 1 OTHERS = 2. 判断某个字段里是否含有非数字字符DATA:BB TYPE I.*PARAMETERS P_CHAR(20) TYPE C.CATCH SYSTEM-EXCEPTIONS CONVERSION_ERRORS =
下载内表数据到excel
FORM excel_data .DATA:l_filename TYPE string,l_path TYPE string,l_fullpath TYPE string,l_title TYPE string.l_title = '开票信息下载'.CALL METHOD cl_gui_frontend_services=>file_save_dialogEXPORTINGwindow_title = l_titledefault_extension = 'xls'default_file_name = l_titlefile_filter = '(电子表格EXCEL)'CHANGINGfilename = l_filenamepath = l_pathfullpath = l_fullpathEXCEPTIONScntl_error = 1error_no_gui = 2not_supported_by_gui = 3OTHERS = 4.IF sy-subrc <> 0.STOP.ENDIF.DATA x_filename LIKE rlgr
Upload & Download internal table to excel
上传Excel文件到SAP内表REPORT z_upload_excel.TYPE-POOLS: truxs.TYPES: BEGIN OF t_datatab,col1(30) TYPE c,col2(30) TYPE c,col3(30) TYPE c,END OF t_datatab.DATA: it_datatab TYPE STANDARD TABLE OF t_datatab,wa_datatab TYPE t_datatab.DATA: it_raw TYPE truxs_t_text_data.PARAMETERS: p_file TYPE rlgrap-filename.AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.CALL FUNCTION 'F4_FILENAME'EXPORTINGfield_name = 'P_FILE'IMPORTINGfile_name = p_file.START-OF-SELECTION.CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'EXPO
关于自定义程序的效能优化
关于自定义程序的效能优化说明:本文档是参照sap程序优化标准培训教材BC490。程序优化宗旨:1.正确运用索引,尽量避免以全表扫描的方式提取数据,这是程序效能的最主要影响因素。2.尽量减少数据的传输(例如,利用buffer,无用列不要传,数据的过滤尽量放在数据库层等)。3.批处理优于逐笔处理。4.让代码少作无用功,摈弃无用程序代码。一、实现方式的优化:1.检查系统标准报表,察看有没有功能相同,相似的报表,以标准报表,或标准报表的增强版代替自定义开发程序。2.低效率的query程序,如果问题出在无法优化的infoset 则应该考虑abap开
PM-功能位置特性值批量更新程序
一个比较实用的程序,特性值的导入,此程序主要用在PM的功能位置(IL02)特性值导入,只要把对应的TABLE改一下,还可以用在物料等特性值的导入上。导入模板:PM000023PM000024PM000025PM000026PM000027PM000028PM00002933250001-W1-0002345322233250001-W1-00013453222到内表以后有作转换,变成如下模板:功能位置类别特性特性值33250001-W1-0002EAMSD001PM000028133250001-W1-0002EAMSD001PM000029233250001-W1-0002EAMSD001PM000030333250001-W1-0002EAMSD001PM0000314因为第一个模板是之前导入的模块,如果要人工整理成第二种标准模板,
非法修改系统中的程式
今天给大家提供两个非法修改系统程式的方法,比较实用。对于ABAPer,有时在写程式时总会遇到反复测试的问题,可是在DEV中,数据会不全,测不出效果。在QAS上测每次都要请BASIS传请求号到QAS,反反复复大家都不方便。用下面的两种方法就不用请BASIS就可以自己在QAS中改程式了,在PRD(有一点风险,个人负责哦~~~)中也可以直接改代码NO.1(要有DEBUG权限)进入SE37,找到TR_EDIT_CHECK_OBJECTS_KEYS,在第429行下断点,429行的代码如下:*---keys without objects------------------------------------------------IF wt_e071[] IS INIT
ABAP-内表
1. 内表的类型及定义: ( 1 ) .ANY TABLE :即任意表类型,此种定义方式只能在传递参数的时候定义。 例如: FORM XXX USING/CHANGING TYPE ANY TABLE . ( 2 ) .ANY TABLE 包括了两种类型: INDEX TABLE 和 HASHED TABLE 。 《 1 》 .INDEX TABLE :包括了 STANDARD TABLE 和 SORTED TABLE A. STANDARD TABLE :其实就是一个线性表,通过 key 访问内表是线性查找的,也就是说,随着表中记录的增加,对表的操作的时间开销也相应的增加。 定义方法: TYPES/DATA : LIKE/TYPE STANDARD TABLE OF . B. SORTED TAB
The event of ABAP Report
一,一, 首先介绍一下ABAP的程序的类型: Program type(程序类型)Introductory statement(类型描述) 1 REPORT(报表) M PROGRAM(屏幕程序) F FUNCTION-POOL(函数组) K CLASS-POOL(类组) J CLASS-POOL(接口组) T TYPE-POOL(类型池) 二, 下面介绍报表中用到的事件以及作用: 1. LOAD-OF-PROGRAM:程序开始执行时候自动调用 这个事件在SUBMIT,CALL TRANSACTION,PERFORM等执
转:ABAP Performance Examples
ABAP Performance Examples 本文章的内容根据SAP系统所带的教程整理而来,查看该性能教程的步骤为:SE38事物代码-> Environment菜单 ->Examples -> Performance Examples.一、 SQL Interface1. Select ... Where vs. Select + Check用Select … Where语句效率比Select + Check语句要高,例如:SELECT * FROM SBOOK INTO SBOOK_WAWHERE CARRID = 'LH' ANDCONNID = '0400'.ENDSELECT.SELECT * FROM SBOOK INTO SBOOK_WA.CHECK: SBOOK_WA-CARRID = 'LH' ANDSBOOK_WA-CONNID = '0400'.ENDSELECT.[@more@]2. Test Existence检查满足某
ABAP对字符的一些基础操作
1.对字符串的操作 1).SHIFT:截断字符串 SHIFT {c} [BY {n} PLACES] [{mode}].: 作用:去掉字符串的前n个位置的字符,如果n未指定,默认为1,如果指定的n小于等于0,则字符串不变。如果n超出字符串的长度,则字符串变空,所以在做此操作的时候要注意n的指定。可以首先获得该字符串的长度,方法:len=STRLEN(C)。 Mode:指定字符串截断的方向。 LEFT:从左边截断 RIGHT:从右边截断 CIRCULAR:把左边的字符放到右边。 SHIFT {c} UP
ENDAT 实例
又一个实用的小例子,用在作加总上。REPORT demo_int_tables_at_1.DATA: BEGIN OF line, col1(1) TYPE c, col2 TYPE i, col3 TYPE i, END OF line.DATA itab LIKE HASHED TABLE OF line WITH UNIQUE KEY col1 col2.line-col1 = 'A'.DO 3 TIMES. line-col2 = sy-index. line-col3 = sy-index ** 2. INSERT line INTO TABLE itab.ENDDO.line-col1 = 'B'.DO 3 TIMES. line-col2 = 2 * sy-index. line-col3 = ( 2 * sy-index ) ** 2. INSERT line INTO TABLE itab.ENDDO.SORT itab.LOOP AT itab
ABAP 技术小结
自从作了外部顾问,好久没有发文章上来了,感觉水平有所下降,天天都是在敢任务,也没注意过程式的性能。今天上来发些实用的东东,认为有用的就看看吧。DATA: it_po LIKE it_alv OCCURS 0 WITH HEADER LINE.********************************************************************************************TSTC SAP 事务代码表********************************************************************************************CENTERED********************************************************************************************合并
二篇关于SAP项目经验的生活文章
在blogchina看到了这二篇文章, 很有感触,在过10来天,自己也将面对另一种生活方式,有些期待,有些胆怯...转自《独行漫记》Professional 真幸福 这是几年独立顾问经验给我留下的最深体会,做一个好的Professional很爽。记得2000年底,开始在北加州葡萄酒王国Sonoma County为一家跨国酿酒公司实施SAP。我作为客户直接聘请的两名咨询顾问之一,加入到该项目的咨询承包商PLAUT公司组建的项目组中,与他们合作。因为客户对该公司的实施服务不太满意,希望派些"自己人"进入实施队伍,掌握主动权。但刚刚开始工作没几天,我们两人就都发现
在ABAP中將負號提前的方面
第一種:PERFORM change_qty USING l_srqty CHANGING it_inv-srqty. FORM change_qty USING p_qty CHANGING p_qty1. p_qty1 = p_qty. SHIFT p_qty1 LEFT DELETING LEADING ' '. SHIFT p_qty1 UP TO '-' LEFT CIRCULAR. CONDENSE p_qty1 NO-GAPS.ENDFORM. " change_qty第二種:目的:将字符串尾的负号放在字符串首 CALL FUNCTION 'CLOI_PUT_SIGN_IN_FRONT' CHANGING value = itab-amunt.[@more@]
實用且常用的FN:Upload Excel File Into Internal Table
调用主體:FORM upload_data_to_it_excel . CALL FUNCTION 'ZIEB_UPLOAD_EXCEL_INTO_ITAB' EXPORTING filename = p_path i_begin_col = 1 i_begin_row = 4 i_end_col = 17 i_end_row = 30000 TABLES itab = it_excel.ENDFORM. " UPLOAD_DATA_TO_IT_EXCELFN中的import項參數FILENAME LIKE RLGRAP-FILENAME Local file for upload/downloadI_BEGIN_COL TYPE II_BEGIN_ROW TYPE II_END_COL TYPE II_END_ROW TYPE I FN中的TABLES項參數ITABFN的Source co
abap 示范实例
abap 示范实例 超好的东东---申明:这文章不是我写的在这里我给初学者示范一个实例,讲讲abap开发报表的简单过程。程序的正确与否我们不与讨论,我们只关心这个程序的编写过程。首先,在任何程序的开始阶段,我们都要确定将会用到的表。我们所讲的这个程序是查询采购订单是否完成的。将会用到以下三个表:EKKO,EKPO,EKET。程序的开头为:REPORT TEST.TABLES: EKKO,EKET,EKPO.现在我们已经定义了所要用到的表,接下来的工作就是定义内表和数据。内表是用来存储我们从上述三个表中查询到的数据。相关定义如下:DATA: BEGIN OF ITAB OCCURS 0,
利用Visual Basic开发SAP接口程序初探-RFC
SAP R/3系统是业界最先进、最稳定的ERP系统,国际和国内大型企业采用该系统的比例遥遥领先于其它ERP系统的总和。SAP R/3内建了二次开发平台,使用的开发语言叫做ABAP,是一种类似于COBOL的编程语言。ABAP在报表输出方面功能相对较弱(只能按行打印在屏幕上或者导出到Excel中处理),所以日常工作中经常需要在外部开发程序。通过程序接口自动读取SAP R/3的数据表(视图),在外部进行处理和利用水晶报表等工具生成符合中国人习惯的报表样式。 SAP R/3的接口方式主要有RFC、IDOC、BAPI三种,本文要介绍的是相对比较简单的RFC(Romote
根据事务代码找User exit
TABLES : tstc, "SAP Transaction Codes(SAP 事务代码) tadir, "Directory of Repository Objects(资源库对象的目录) modsapt, "SAP Enhancements - Short Texts(SAP增强-短文件) modact, "Modifications(修正) trdir, "System table TRDIR(系统表 TRDIR) tfdir, "Function Module(功能模块) enlfdir, "Additional Attributes for Function Modules(功能模块的附加属性) tstct. "Transaction Code Texts(事务代码文
RFC 同步异步调用实例
CALL RFC synchronize and asychronize Examples 同步调用RFC 示例*&---------------------------------------------------------------------**& Report sapbc415_rfcsync_s1 **& **&---------------------------------------------------------------------*REPORT SAPBC415_RFCSYNC_S1 MESSAGE-ID BC415.TABLES SPFLI.PARAMETERS: ICARR LIKE SFLIGHT-CARRID DEFAULT 'LH', ICONN LIKE SF