1.首先在https://sites.google.com/site/sapxlwb/home里下载NUGG_ZXLWB_V.4.11.nugg(目前最新版)

 2.通过sap link执行导入包的操作,如果导入报错,缺少一些对象或者类,需要通过sap link先导入一些插件,比如

 3.再导入之后,如果没有查询到ZXLWB这个程序,那么需要我们手动创建这个程序,可以分配事务码等操作,比如ZXLWB_WORKBENCH

   代码如下:

  1 *&---------------------------------------------------------------------*
  2 *& Report  ZXLWB
  3 *&
  4 *=======================================================================
  5 *=======================================================================
  6 * Copyright 2016 Igor Borodin
  7 * Licensed under the Apache License, Version 2.0 (the "License");
  8 * you may not use this file except in compliance with the License.
  9 * You may obtain a copy of the License at
 10 *     http://www.apache.org/licenses/LICENSE-2.0
 11 * Unless required by applicable law or agreed to in writing, software
 12 * distributed under the License is distributed on an "AS IS" BASIS,
 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 14 * See the License for the specific language governing permissions and
 15 * limitations under the License.
 16 *=======================================================================
 17 *=======================================================================
 18 *
 19 * XLSX-Workbench(XLWB) components                         [Version 4.00]
 20 * Documentation is available at:
 21 *                             https://sites.google.com/site/sapxlwb/home
 22 *=======================================================================
 23 * Forms design tool starter
 24 *=======================================================================
 25
 26 REPORT  zxlwb .
 27
 28 *======================================================================
 29 *======================================================================
 30 * D A T A    D E C L A R A T I O N
 31 *======================================================================
 32 *======================================================================
 33 TYPE-POOLS:
 34   icon ,
 35   abap .
 36 TABLES:
 37   sscrfields .
 38 DATA:
 39   gv_action         TYPE sy-ucomm ,
 40   gs_dynpread       TYPE dynpread ,
 41   gt_dynpread       TYPE STANDARD TABLE OF dynpread ,
 42   gv_repid          TYPE syrepid VALUE sy-repid .
 43
 44 INCLUDE zxlwb_include .
 45
 46
 47 *======================================================================
 48 *======================================================================
 49 * S E L E C T I O N   S C R E E N
 50 *======================================================================
 51 *======================================================================
 52 SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE cm_ttl  .
 53
 54 SELECTION-SCREEN BEGIN OF LINE .
 55 SELECTION-SCREEN COMMENT 1(23) cm_form FOR FIELD pv_form .
 56 PARAMETERS pv_form TYPE lvc_fname MEMORY ID zxlwb_formname .
 57 SELECTION-SCREEN END   OF LINE .
 58
 59 SELECTION-SCREEN SKIP .
 60
 61 SELECTION-SCREEN BEGIN OF LINE .
 62 SELECTION-SCREEN PUSHBUTTON  1(13) import USER-COMMAND import .
 63 SELECTION-SCREEN PUSHBUTTON 25(20) edit   USER-COMMAND edit .
 64 SELECTION-SCREEN END   OF LINE .
 65
 66 SELECTION-SCREEN BEGIN OF LINE .
 67 SELECTION-SCREEN PUSHBUTTON  1(13) export USER-COMMAND export .
 68 SELECTION-SCREEN PUSHBUTTON 25(20) create USER-COMMAND create .
 69 SELECTION-SCREEN PUSHBUTTON 47(8)  crea_t USER-COMMAND crea_t .
 70 SELECTION-SCREEN END   OF LINE .
 71
 72 SELECTION-SCREEN BEGIN OF LINE .
 73 SELECTION-SCREEN PUSHBUTTON  1(13) preset USER-COMMAND preset .
 74 SELECTION-SCREEN PUSHBUTTON 25(20) copy   USER-COMMAND copy .
 75 SELECTION-SCREEN END   OF LINE .
 76
 77 SELECTION-SCREEN BEGIN OF LINE .
 78 SELECTION-SCREEN PUSHBUTTON  1(13) help   USER-COMMAND help .
 79 SELECTION-SCREEN PUSHBUTTON 25(20) delete USER-COMMAND delete .
 80 SELECTION-SCREEN END   OF LINE .
 81
 82 SELECTION-SCREEN END   OF BLOCK bl1 .
 83
 84
 85
 86 *======================================================================
 87 *======================================================================
 88 * E V E N T S
 89 *======================================================================
 90 *======================================================================
 91
 92 *======================================================================
 93 INITIALIZATION .
 94 *======================================================================
 95   cm_ttl  = lcl_workbench=>v_title .
 96   cm_form = lcl_workbench=>v_text-t219 .                              " text: Form name
 97   CONCATENATE:
 98   icon_change               lcl_workbench=>v_text-t114  INTO edit   , " text: Edit
 99   icon_create               lcl_workbench=>v_text-t115  INTO create , " text: Create
100   icon_linked_document      lcl_workbench=>v_text-t116  INTO crea_t , " text: Tmpl.
101   icon_copy_object          lcl_workbench=>v_text-t117  INTO copy   , " text: Copy
102   icon_delete               lcl_workbench=>v_text-t118  INTO delete , " text: Delete
103   icon_import               lcl_workbench=>v_text-t210  INTO import , " text: Import
104   icon_export               lcl_workbench=>v_text-t211  INTO export , " text: Export
105   icon_system_extended_help lcl_workbench=>v_text-t212  INTO help   , " text: Help
106   icon_tools                lcl_workbench=>v_text-t206  INTO preset . " text: Presets
107
108   DATA  gt_exclude TYPE TABLE OF sy-ucomm.
109   CLEAR gt_exclude[] .
110   APPEND  'ONLI' TO gt_exclude.
111   APPEND  'PRIN' TO gt_exclude.
112   APPEND  'SPOS' TO gt_exclude.
113   APPEND  'NONE' TO gt_exclude.
114   CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
115     EXPORTING
116       p_status  = space
117     TABLES
118       p_exclude = gt_exclude.
119
120   CALL FUNCTION 'SAPGUI_SET_FUNCTIONCODE'
121     EXCEPTIONS
122       OTHERS = 0.
123
124
125 *======================================================================
126 AT SELECTION-SCREEN OUTPUT .
127 *======================================================================
128   LOOP AT SCREEN .
129     IF  screen-name EQ 'CREA_T'
130     AND lcl_workbench=>s_presets_dt-popup_im IS INITIAL .
131       screen-active = 0 .
132       MODIFY SCREEN .
133     ENDIF .
134   ENDLOOP .
135
136
137 *======================================================================
138 AT SELECTION-SCREEN .
139 *======================================================================
140   CHECK sy-ucomm IS NOT INITIAL .
141
142   CASE sy-ucomm .
143     WHEN 'EDIT'   . gv_action = lcl_workbench=>c_action-edit .
144     WHEN 'CREA'   . gv_action = lcl_workbench=>c_action-create .
145     WHEN 'CREATE' . gv_action = lcl_workbench=>c_action-create .
146     WHEN 'CREA_T' . gv_action = lcl_workbench=>c_action-crea_t .
147     WHEN 'COPY'   . gv_action = lcl_workbench=>c_action-copy .
148     WHEN 'DELETE' . gv_action = lcl_workbench=>c_action-delete .
149     WHEN 'IMPORT' . gv_action = lcl_workbench=>c_action-import .
150     WHEN 'EXPORT' . gv_action = lcl_workbench=>c_action-export .
151     WHEN 'HELP'   . gv_action = lcl_workbench=>c_action-help .
152     WHEN 'PRESET' . gv_action = lcl_workbench=>c_action-preset .
153     WHEN 'PRESE2' . gv_action = lcl_workbench=>c_action-prese2 .
154     WHEN OTHERS   . EXIT .
155   ENDCASE .
156
157   CALL FUNCTION 'ZXLWB_WORKBENCH'
158     EXPORTING
159       iv_formname        = pv_form
160       iv_action          = gv_action
161     EXCEPTIONS
162       process_terminated = 1
163       OTHERS             = 2.
164   IF sy-subrc NE 0 .
165     MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
166             WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4 .
167   ENDIF .
168
169
170 *======================================================================
171 AT SELECTION-SCREEN ON VALUE-REQUEST FOR pv_form .
172 *======================================================================
173   CLEAR gt_dynpread .
174   CLEAR gs_dynpread .
175   gs_dynpread-fieldname = 'PV_FORM' .
176   APPEND gs_dynpread TO gt_dynpread .
177
178   CALL FUNCTION 'DYNP_VALUES_READ'
179     EXPORTING
180       dyname     = sy-repid
181       dynumb     = sy-dynnr
182     TABLES
183       dynpfields = gt_dynpread
184     EXCEPTIONS
185       OTHERS     = 8.
186   CHECK sy-subrc EQ 0.
187   READ TABLE gt_dynpread INTO gs_dynpread INDEX 1 .
188   CHECK sy-subrc EQ 0 .
189   CATCH SYSTEM-EXCEPTIONS OTHERS = 0 .
190     pv_form = gs_dynpread-fieldvalue .
191   ENDCATCH .
192
193   lcl_workbench=>popup_formname_f4( CHANGING cv_formname = pv_form ) .
12-29 13:54
查看更多