版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、首先OAOR上传模板i_i i EfifH«nt nM 卡 jnifrKH"_34b 由幅 -Kia . an "Swawcs 曲石gEMit 用。/ W * l_3 *值展唯* Xp<¥Efmt grpe 网nt5H uJ *Druvki0s u -Hxm 缸WH&M® Hi Tji _6。-sJl ¥ilT5T_F*E0EBCELEUAEM效果:叵。工在£x。日上显示效据e I-n « a eee cncoiHR iOSdo工在by就上晶示数据牛国廉(U 初用四 脆回 辅别 诵造 薪播出 Enur
2、H)LF也日I方/ISHI6圣匕幻HB号事SAP夷怦U“ 1f 建入 RS布国式 感若由闫哎!EVM-1部©& jIHk|11/n ="一 = = h厘-弱争例式-萨播入'打用c 方 ms fiKitSI w .,嗨*BEU* K二* 事 2* 由于,A,咬*学学冷等 y恚专表喟信式. 与华元T&F ,卢伸医, 区1做臣贴坛 口字律1-二耳hJG这里Excel可以 文件另存为 保存到本地按键F12可以保存Excel到本地。ABAP蛉辑器:程最报告 YBITST_ITAB2EXCELr,用4 *4 X ED T 母.就倒加班、械如 torv 日 wgi
3、r雅告tBTIT4B2EXC0L程序:Y6TE5T_TAB7FXCFI.Deject HamE* YBTEST 1TAB2KCELC>esc.riptian二匚1.三tg匚匚匚匚口 L. IB时常* 0100-taao,直(5W就奇saecn lqqSFI_55FFIJ t(SEPOST ¥SI ES T. I7.-tEZEXC= LDAM;印CCW源丁ONTADO TWE REF TO CLGCLCU5Toice口KHIWRu HJATA GK_StTB_CQNIA15EfLl IYPE fiEF TO CL_GU1_1<1ABOL aDATA CR_SUB_COJIT
4、A15ER_2 TYPE XEF 10 CL_CUI_COlAl?<Sfi,L H)ATA 或二ITfR TYPE KEF FD CL WT SPLITTER COVIAINES,DATA: GIJCOKTATNER TTFE IEF T。GR:SPLinER Tire 贪时 TO CL. : _S?L inEUXMTFA INE RP :R_CONIROL IYFE REF TO I_QI_匚的 1鼻1位。删即1|_.kJLDOaiET TiPE 底. M LCLDOCjMtnjPR5工GK S?EAESR£ET ITPE REF TO J 01 iPF.EASHET.1 M
5、: GR BDS DOCIIUENTS lYE REF TO CL BIT DOC口(国工 G_CLAS5Nr.ME TiPE 5BO51_CLA5SNrME " _CLAnPE. Tik iE二际 _C_51T1E, GHBJEJCILEY TkFE sBOSl-OSJECI.KEl1.G DOC C'?O?TXIS IT?E SBST COMPONENT, CWClSIGNAnfflE TYPE SflOSTjlMIUBE也 trxpljit ir- linr ItMM; GT_BM UfilS ItPE SBO57 URI, GS_fiDS_UHL LI£E
6、LIKE OF GTJJDS_IBIS( GJEKFLAT三 NIL 二 f C.屏幕备份和恢复:直接下载和上传户可苜后 悖刊j7册I眼ID日刖:屏京制作器:YBTEST_TWMs j”,且之闾条分&CQ)- CtrkShft4F5 工作节三匕:程序|YFTFST_rTAHFXCH言甘田) 用的号版*用f。WWF J- 纣后 映/崖:申区03) 其他实用程库迪;<Trk-5brr=4<tmnCtrl十 坪100_黑占 遇娟流Otuec:NMie K) VBTEST rTABSBE斯用证西朝ECtrt+hit+B徐f屏率宿g器:Ei 话行时聃舸即嫁悟样沈任)布笆埠馆CJ-tv
7、 或一:In-srrte SirYtt Tejrpat&PA n现 ,二子间村scrflr 100II - LUlKf bL_M_rtl±H l王fc GUI源程序:Code listing for: YBTEST_ITAB2EXCELDescription: DOI 在 Excel 上显示数据Extracted by Mass Download version 1.4.3 - E.G.Mellodew. 1998-2018. Sap Release700*& output internale table*DATA: BEGIN OF GS_SPFLI,CARRID
8、LIKE SPFLI-CARRID, CONNID LIKE SPFLI-CONNID, CITYFROM LIKE SPFLI-CITYFROM, CITYTO LIKE SPFLI-CITYTO, END OF GSSPFLI.*DATA: GTSPFLI LIKE STANDARD TABLE OF GSSPFLI.* & Report YBTEST008* &* &* &* &* &*REPORT YBTEST_ITAB2EXCEL.DATA: GR_CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_C
9、ONTAINER.* DATA GR_SUB_CONTAINER_1 TYPE REF TO CL_GUI_CONTAINER.* DATA GR_SUB_CONTAINER_2 TYPE REF TO CL_GUI_CONTAINER.* DATA SPLITTER TYPE REF TO CL_GUI_SPLITTER_CONTAINER.DATA: GR_CONTAINER TYPE REF TO CL_GUI_CONTAINER, GR_SPLITTER TYPE REF TO CL_GUI_SPLITTER_CONTAINER, GR_CONTROL TYPE REF TO I_OI
10、_CONTAINER_CONTROL, GR_DOCUMENT TYPE REF TO I_OI_DOCUMENT_PROXY, GRSPREADSHEET TYPE REF TO IOISPREADSHEET.* business document systemDATA: GR_BDS_DOCUMENTS TYPE REF TO CL_BDS_DOCUMENT_SET, g_clAssnAme TYPE SBDST_CLASSNAME, G_CLASSTYPE TYPE SBDST_CLASSTYPE, G_OBJECTKEY TYPE SBDST_OBJECT_KEY, G_DOC_COM
11、PONENTS TYPE SBDST工OMPONENTS, GDOCSIGNATURE TYPE SBDSTSIGNATURE.* template urlDATA: GT_BDS_URIS TYPE SBDST_URI, GS_BDS_URL LIKE LINE OF GT_BDS_URIS, G_TEMPLATE_URL(256) TYPE C.DATA: OK_CODE TYPE SY-UCOMM, SAVEOK LIKE OKCODE.TYPES:BEGIN OF TY_MAIN,COL1 TYPE CHAR10,COL2 TYPE CHAR10,END OF TY_MAIN. |DA
12、TA: GT_MAIN1 TYPE TABLE OF TY_MAIN, gs_mAini LIKE LINE OF GT_MAIN1.DATA: GT_MAIN2 TYPE TABLE Of TY_MAIN, GS_MAIN2 LIKE LINE OF GT_MAIN2.* Required for writing data to ExcelDATA: GT_RANGES TYPE SOI_RANGE_LIST, GS_RANGE TYPE SOI_RANGE_ITEM, GT_CONTENTS TYPE SOI_GENERIC_TABLE, GS_CONTENT TYPE SOI_GENER
13、IC_ITEM.SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-FT1 .PARAMETERS: R1 TYPE C RADIOBUTTON GROUP G1 DEFAULT 'X', R2 TYPE C RADIOBUTTON GROUP G1 .SELECTION-SCREEN END OF BLOCK B1 .INITIALIZATION.G_CLASSNAME = 'HRFPM_EXCEL_STANDARD'.G_CLASSTYPE = 'OT'.G_OBJECTKEY =
14、 'YBTEST_ITAB2EXCEL'.START-OF-SELECTION.PERFORM GET_DATA.CALL SCREEN 100.DEFINE WRITE_CONTENT_CELL.GS_CONTENT-ROW = &1.GS_CONTENT-COLUMN = &2.GS_CONTENT-VALUE = &3.APPEND GS_CONTENT TO GT_CONTENTS.CLEAR GS_CONTENT.END-OF-DEFINITION.* &* * & Form get_data* &二-* -* text
15、 |* *FORM GET_DATA.* SELECT * FROM SPFLI* INTO CORRESPONDING FIELDS OF TABLE GT_SPFLI UP TO 10 ROWS.GS_MAIN1-COL1 = '100'.GS_MAIN1-COL2 = '10'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '400'.GS_MAIN1-COL2 = '40'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '200
16、'.GS_MAIN1-COL2 = '20'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '300'.GS_MAIN1-COL2 = '30'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '500'.GS_MAIN1-COL2 = '50'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '800'.GS_MAIN1-COL2 = '80'.
17、APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '900'.GS_MAIN1-COL2 = '90'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '600'.GS_MAIN1-1COL2 = '60'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN1-COL1 = '700'.GS_MAIN1-COL2 = '70'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN
18、1-COL1 = '1000'.GS_MAIN1-COL2 = '100'. APPEND GS_MAIN1 TO GT_MAIN1.GS_MAIN2-COL1 = '100'. GS_MAIN2-COL2 = '10'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '400'. GS_MAIN2-COL2 = '40'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '200'. GS_MAIN2-COL2 = '
19、;20'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '300'. GS_MAIN2-COL2 = '30'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '500'. GS_MAIN2-COL2 = '50'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '800'. GS_MAIN2-COL2 = '80'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 =
20、9;900'. GS_MAIN2-COL2 = '90'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '600'. GS_MAIN2-COL2 = '60'. APPEND GS_MAIN2 TO GT_GS_MAIN2-COL1 = '700'. GS_MAIN2-COL2 = '70'. APPEND GS_MAIN2 TO GT_ GS_MAIN2-COL1 = '1000'. GS_MAIN2-COL2 = '100'. APPEND
21、 GSMAIN2 TO GTENDFORM. "get_dataEXPORTINGCONTAINER_NAME = 'CONTAINER1'.ENDFORM. "get_containerFORM CREATE_CONTAINER_CONTROL.* create container controlCALL METHOD C_OI_CONTAINER_CONTROL_CREATOR=>GET_CONTAINER_CONTR OLIMPORTINGCONTROL = GR_CONTROL.* initialize control IF R1 = '
22、;X'.CALL METHOD GR_CONTROL->INIT_CONTROLEXPORTINGINPLACE_ENABLED = 'X 'INPLACE_SCROLL_DOCUMENTS = 'X'REGISTER_ON_CLOSE_EVENT = 'X'REGISTER_ON_CUSTOM_EVENT = 'X'R3_APPLICATION_NAME = 'DOI演示文件名'* parent= gr_container.PARENT= GR_CUSTOM_CONTAINER."&quo
23、t;固定大小生成的容器 ELSE. CALL METHOD GR_CONTROL->INIT_CONTROLEXPORTINGINPLACE_ENABLED = 'X 'INPLACE_SCROLL_DOCUMENTS = 'X'REGISTER_ON_CLOSE_EVENT = 'X'REGISTER_ON_CUSTOM_EVENT = 'X'R3_APPLICATION_NAME = 'DOI演示文件名'PARENT= GR_CONTAINER. ""动态大小生成的容器 * paren
24、t= gr_custom_container.ENDIF.CALL METHOD GR_CONTROL->INIT_CONTROL EXPORTINGINPLACEENABLED='X '演示文件名INPLACE_SCROLL_DOCUMENTS = 'X' REGISTER_ON_CLOSE_EVENT = 'X' REGISTER_ON_CUSTOM_EVENT = 'X' R3APPLICATIONNAME = 'DOI* parent PARENT=gr_container.=GRCUSTOMCONTAINE
25、R.ENDFORM. "createcontainercontrol*&*& Form get_template_url*&二二* text |* *FORM GET_TEMPLATE_URL.DATA: LS_DOC_SIGNATURE LIKE LINE OF G_DOC_SIGNATURE.DATA: G_PROP_VALUE TYPE BAPISIGNAT-PROP_VALUE VALUE 'YBTEST_ITAB2EXCEL'.CREATE OBJECT GR_BDS_DOCUMENTS.CALL METHOD CL BDS DOCU
26、MENT SET=>GET INFOEXPORTINGCLASSNAME = G_CLASSNAMECLASSTYPE = G_CLASSTYPEOBJECT_KEY = G_OBJECTKEYCHANGING |COMPONENTS = G_DOC_COMPONENTSSIGNATURE = G_DoC_sTgNATURE.* 用来确定节点下的 EXCEL模板LS_DOC_SIGNATURE-中的属性PROP_NAME = 'DESCRIPTION'."signatureDESCRIPTION 属性LS_DOC_SIGNATURE-1PROP_VALUE =
27、G_PROP_VALUE."DESCRIPTION的值APPEND LS_DOC_SIGNATURE TO G_DOC_SIGNATURE.CALL METHOD CL_BDS_DOCUMENT_SET=>GET_WITH_URL EXPORTINGCLASSNAME = G_CLASSNAMECLASSTYPE = G_CLASSTYPEOBJECT_KEY = G_OBJECTKEYCHANGINGURIS = GT_BDS_URISSIGNATURE = G_DOC_SIGNATURE.FREE GR_BDS_DOCUMENTS.READ TABLE GT_BDS_URI
28、S INTO GS_BDS_URL INDEX 1.G_TEMPLATE_URL = GS_BDS_URL-URI.ENDFORM. "get_template_url *&* 获取内表的行列数PERFORM READ_ITAB_STRUCTURE USING ITAB_NAME LINE_COUNT COL* & Form open_excel_doc* &二二* * text |* *FORM OPEN_EXCEL_DOC USING PV_SHEET.一CALL METHOD GR_CONTROL->GET_DOCUMENT_PROXY EXPOR
29、TINGDOCUMENT_TYPE = 'Excel.Sheet' NO_FLUSH = 'X'REGISTER_CONTAINER = 'X'IMPORTING DOCUMENT_PROXY = GR_DOCUMENT.CALL METHOD GR DOCUMENT->OPEN DOCUMENT EXPORTINGOPEN_INPLACE = 'X'* open_inplace = 弹出Excel 显示DOcUmENT_URL = G_TEMPLATE_URL.DATA: AVAILABLE TYPE I.CALL MET
30、HOD GR_DOCUMENT->HAS_SPREADSHEET_INTERFACEEXPORTINGNO_FLUSH = 'X'IMPORTINGIS_AVAILABLE = AVAILABLE.CALL METHOD GR_DOCUMENT->GET_SPREADSHEET_INTERFACE EXPORTINGNO_FLUSH = 'X'IMPORTINGSHEET_INTERFACE = GR_SPREADSHEET.CALL METHOD GR_SPREADSHEET->SELECT_SHEET EXPORTINGNAME = PV_
31、SHEET ""Sheet名称NO_FLUSH = 'X'.EZENDFORM. "open_excel_doc* &* & Form fill_ranges* &二* * text |* *FORM FILL_RANGES USING ITAB_NAME.COUNDATA: LINE_COUNT TYPE I VALUE 0, COL_COUNT TYPE I VALUE 0.T.* fill gt_rangesCLEAR GS_RANGE.CLEAR GT_RANGES.GS_RANGE-NAME = 'CELL
32、'.GS_RANGE-ROWS = LINE_COUNT.GS_RANGE-COLUMNS = COL_COUNT.GS_RANGE-CODE = 4.APPEND GS_RANGE TO GT_RANGES.ENDFORM. "fill_rangesFORM FILL_CONTENTS USING ITAB_NAME.DATA: ROW_INDEX TYPE I.ROW_INDEX = 1.IF ITAB_NAME = 'GT_MAIN1'.LOOP AT GT_MAIN1 INTO GS_MAIN1. CLEAR GS_CONTENT.WRITE_CONT
33、ENT_CELL ROW_INDEX 1 GS_MAIN1-COL1.WRITE_CONTENT_CELL ROW_INDEX 2 GS_MAIN1-COL2.* writE_contenT_cell roWjndex 3 gS_spfli-cityfrom.* WRITE_CONTENT_CELL ROW_INDEX 4 GS_SPFLI-CITYTO.ROW_INDEX = ROW_INDEX + 1. ENDLOOP.ELSEIF ITAB_NAME = 'GT_MAIN2'. LOOP AT GT_MAIN2 INTO GS_MAIN2.CLEAR GS_CONTENT
34、.WRITE_CONTENT_CELL ROW_INDEX 1 GS_MAIN2-COL1.WRITE_CONTENT_CELL ROW_INDEX 2 GS_MAIN2-COL2.* WRITE_CONTENT_CELL ROW_INDEX 3 GS_SPFLI-CITYFROM.* WRITE_CONTENT_CELL ROW_INDEX 4 GS_SPFLI-CITYTO.ROW_INDEX = ROW_INDEX + 1.ENDLOOP.ENDIF.ENDFORM. "fill_contents* get internal number of rows and number
35、of columns of itab *FORM READ_ITAB_STRUCTURE USING P_TABNAME P_ROWCOUNT P_COLCOUNT.DATA: L_ROWCOUNT TYPE I, L_COLCOUNT TYPE I.FIELD-SYMBOLS: <FS1>.* DATA: LS_ITAB LIKE LINE OF GT_MAIN1.* DATA: LS_SPFLI LIKE LINE OF gT_SPFLI.* Line countIF P_TABNAME = 'GT_MAIN1'.daTa: LS_ITAB1 LIKE LINE
36、 OF GT_MAIN1. DESCRIBE TABLE GT_MAIN1 LINES L_ROWCOUNT.ELSEIF P_TABNAME = 'GT_MAIN2'.DATA: LS_ITAB2 LIKE LINE OF GT_MAIN2.|DESCRIBE TABLE GT MAIN2 LINES L ROWCOUNT.ENDIF.* DESCRIBE TABLE GT_MAIN1 LINES L_ROWCOUNT.* Row countDO.IF P_TABNAME = 'GT_MAIN1'.1ASSIGN COMPONENT SY-INDEX OF S
37、TRUCTURE LS_ITAB1 TO <FS1>.ELSEIF P_TABNAME = 'GT_MAIN2'.ASSIGNCOMPONENT SY-INDEX OF STRUCTURE LS ITAB2 TO <FS1>.ENDIF.IF SY-SUBRC IS INITIAL.L_COLCOUNT = L_COLCOUNT + 1.ELSE.EXIT.ENDIF.ENDDO.P_ROWCOUNT = L_ROWCOUNT.P_COLCOUNT = L_COLCOUNT.ENDFORM. "read_itab_structureFORM W
38、RITE_DATA_TO_EXCEL USING ITAB_NAME. DATA: LINE_COUNT TYPE I VALUE 0, COL_COUNT TYPE I VALUE 0.CHECK NOT ITAB_NAME IS INITIAL.*获取内表的行列数PERFORM READ_ITAB_STRUCTURE USING ITAB_NAME LINE_COUNT COL_COUN T.CALL METHOD GR SPREADSHEET->INSERT RANGE DIM EXPORTINGNAME = 'CELL'NO_FLUSH = 'X'
39、TOP = 2LEFT = 1ROWS = LINE_COUNTCOLUMNS = COL_COUNT.* populate tow internal tables required for 'set_range_data' PERFORM FILL_RANGES USING ITAB_NAME. 一 PERFORM FILL_CONTENTS USING ITAB_NAME.CALL METHOD GR_SPREADSHEET->SET_RANGES_DATA EXPORTINGRANGES = GT_RANGESCONTENTS = GT_CONTENTSNO_FLU
40、SH = 'X'.ENDFORM. "write_data_to_excelIF NOT GR_DOCUMENT IS INITIAL.CALL METHOD GR_DOCUMENT->CLOSE DOCUMENT.FREE GRDOCUMENT.ENDIF.IF NOT GR_CONTROL IS INITIAL. "|CALL METHOD GR_CONTROL->DESTROY CONTROL.FREE GR CONTROL.ENDIF.IF GR_CONTAINER IS NOT INITIAL.CALL METHOD GR_CONTAINER->FREE. ENDIF.ENDFORM. "release_objects*&*& Form main*&* text |* *FORM MAIN.IF R1 = 'X'.PERFORM GET_CONTAINER.""固定大小生成容器ELSE.PERFORM GET
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工业厂房推拉门窗施工方案
- 建筑节水管理方案
- 道路标线更新施工方案
- 充电桩设备安装专项方案
- 桥梁伸缩缝伸缩体安装工艺方案
- 施工管理方案环境保护
- 泥浆护壁成孔灌注桩施工技术方案
- 二次结构施工方案范本下载
- 2026年游戏开发项目管理主任的招聘与选拔问题解析
- 2026年技能鉴定考务管理员考试考务工作风险防控措施含答案
- 航空运输合同纠纷起诉状
- 有序则安之现场定置管理技术
- V型滤池设计计算书2021
- 多晶硅还原炉内壁抛光装置的设计
- 医院护理培训课件:《老年患者静脉输液的治疗与护理》
- 虚拟交互设计课程标准6
- 中医治疗“气淋”医案15例
- 富顺县职教中心教学楼BC栋二职中迁建工程施工组织
- LY/T 1690-2017低效林改造技术规程
- GB/T 24139-2009PVC涂覆织物防水布规范
- 教师幽默朗诵节目《我爱上班》
评论
0/150
提交评论