自建屏幕字段双击功能1详解编程语言

—恢复内容开始—

业务背景:

       有时候我们可能对自建屏幕上的字段要进行双击操作,要触发自建屏幕的双击需要设置一些东西,本文将介绍一种触发自建屏幕字段双击的例子。

解决步骤

  1. 新建一个程序,然后再新建一个屏幕,注意勾选回应双击 
     自建屏幕字段双击功能1详解编程语言
  2. 处理屏幕的PBO和PAI,设置STATUS和USER_COMMOND.
  3.  1 PROCESS BEFORE OUTPUT. 
     2 *&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'ZTAB_CTRL' 
     3   MODULE ZTAB_CTRL_INIT. 
     4 *&SPWIZARD: MODULE ZTAB_CTRL_CHANGE_TC_ATTR. 
     5 *&SPWIZARD: MODULE ZTAB_CTRL_CHANGE_COL_ATTR. 
     6   LOOP AT   G_ZTAB_CTRL_ITAB 
     7        INTO G_ZTAB_CTRL_WA 
     8        WITH CONTROL ZTAB_CTRL 
     9        CURSOR ZTAB_CTRL-CURRENT_LINE. 
    10 *&SPWIZARD:   MODULE ZTAB_CTRL_CHANGE_FIELD_ATTR 
    11     MODULE ZTAB_CTRL_MOVE. 
    12     MODULE ZTAB_CTRL_GET_LINES. 
    13   ENDLOOP. 
    14  
    15  MODULE STATUS_0100. 
    16  
    17 PROCESS AFTER INPUT. 
    18 *&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'ZTAB_CTRL' 
    19   LOOP AT G_ZTAB_CTRL_ITAB. 
    20     CHAIN. 
    21       FIELD ZTIF_LOG-ZIFID. 
    22       FIELD ZTIF_LOG-ZIFNO. 
    23       FIELD ZTIF_LOG-TYPE. 
    24       FIELD ZTIF_LOG-CRDAT. 
    25       FIELD ZTIF_LOG-CRTIM. 
    26       FIELD ZTIF_LOG-ZBZNO. 
    27       MODULE ZTAB_CTRL_MODIFY ON CHAIN-REQUEST. 
    28     ENDCHAIN. 
    29   ENDLOOP. 
    30   MODULE ZTAB_CTRL_USER_COMMAND. 
    31 *&SPWIZARD: MODULE ZTAB_CTRL_CHANGE_TC_ATTR. 
    32 *&SPWIZARD: MODULE ZTAB_CTRL_CHANGE_COL_ATTR. 
    33  
    34  MODULE USER_COMMAND_0100.

    其中模块STATUS_0100和USER_COMMAND_0100是需要我们完成的,其他字段皆是TAB_CTRL向导模式生成的。

  4. 设置STATUS,注意设置F2(鼠标双击,这是一个SAP预设的功能)的功能码(其实我们注意观察的话,可以看到标准的SAP STATUS都是设置了F2的功能码的)
    自建屏幕字段双击功能1详解编程语言
  5. 编写逻辑代码
      1 *&---------------------------------------------------------------------* 
      2 *& Report ZTEST016 
      3 *&---------------------------------------------------------------------* 
      4 *& 
      5 *&---------------------------------------------------------------------* 
      6 REPORT ztest016. 
      7  
      8 ***&SPWIZARD: DATA DECLARATION FOR TABLECONTROL 'ZTAB_CTRL' 
      9 *&SPWIZARD: DEFINITION OF DDIC-TABLE 
     10 TABLES:   ztif_log. 
     11  
     12 *&SPWIZARD: TYPE FOR THE DATA OF TABLECONTROL 'ZTAB_CTRL' 
     13 TYPES: BEGIN OF t_ztab_ctrl, 
     14          zifid LIKE ztif_log-zifid, 
     15          zifno LIKE ztif_log-zifno, 
     16          type  LIKE ztif_log-type, 
     17          crdat LIKE ztif_log-crdat, 
     18          crtim LIKE ztif_log-crtim, 
     19          zbzno LIKE ztif_log-zbzno, 
     20        END OF t_ztab_ctrl. 
     21  
     22 *&SPWIZARD: INTERNAL TABLE FOR TABLECONTROL 'ZTAB_CTRL' 
     23 DATA: g_ztab_ctrl_itab TYPE t_ztab_ctrl OCCURS 0, 
     24       g_ztab_ctrl_wa   TYPE t_ztab_ctrl. "work area 
     25 DATA:     g_ztab_ctrl_copied.           "copy flag 
     26  
     27 *&SPWIZARD: DECLARATION OF TABLECONTROL 'ZTAB_CTRL' ITSELF 
     28 CONTROLS: ztab_ctrl TYPE TABLEVIEW USING SCREEN 0100. 
     29  
     30 *&SPWIZARD: LINES OF TABLECONTROL 'ZTAB_CTRL' 
     31 DATA:     g_ztab_ctrl_lines  LIKE sy-loopc. 
     32  
     33 DATA:     ok_code LIKE sy-ucomm. 
     34  
     35 *&---调用屏幕 
     36 CALL SCREEN 100. 
     37 *&---------------------------------------------------------------------* 
     38 *& Module STATUS_0100 OUTPUT 
     39 *&---------------------------------------------------------------------* 
     40 *& 
     41 *&---------------------------------------------------------------------* 
     42 MODULE status_0100 OUTPUT. 
     43   SET PF-STATUS 'STATUS'. 
     44 * SET TITLEBAR 'xxx'. 
     45 ENDMODULE. 
     46  
     47 *&---------------------------------------------------------------------* 
     48 *&      Module  USER_COMMAND_0100  INPUT 
     49 *&---------------------------------------------------------------------* 
     50 *       text 
     51 *----------------------------------------------------------------------* 
     52 MODULE user_command_0100 INPUT. 
     53   DATA: lv_okcode  TYPE sy-ucomm, 
     54         lv_sfield  TYPE screen-name,     "屏幕字段 
     55         lv_vfield1 TYPE char30,          "值字段 
     56         lv_vfield2 TYPE char30, 
     57         lv_line    TYPE i, 
     58         lv_msg     TYPE string. 
     59  
     60   FIELD-SYMBOLS: <fs> TYPE any. 
     61  
     62   lv_okcode = sy-ucomm. 
     63  
     64   CASE lv_okcode. 
     65     WHEN '&IC1'. 
     66       GET CURSOR FIELD lv_sfield LINE lv_line. 
     67       SPLIT lv_sfield AT '-' INTO lv_vfield1 lv_vfield2. 
     68  
     69       READ TABLE g_ztab_ctrl_itab INTO g_ztab_ctrl_wa INDEX lv_line. 
     70       IF sy-subrc = 0. 
     71         ASSIGN COMPONENT lv_vfield2 OF STRUCTURE g_ztab_ctrl_wa TO <fs>. 
     72         IF <fs> IS ASSIGNED. 
     73           lv_msg = '我被双击了! Give Me Five!我的值是:' && <fs>. 
     74           MESSAGE lv_msg TYPE 'I'. 
     75         ENDIF. 
     76       ENDIF. 
     77     WHEN '&F03'. 
     78       LEAVE TO SCREEN 0. 
     79     WHEN '&F04' OR '&F05'. 
     80       LEAVE PROGRAM. 
     81     WHEN OTHERS. 
     82   ENDCASE. 
     83 ENDMODULE. 
     84  
     85 *&SPWIZARD: OUTPUT MODULE FOR TC 'ZTAB_CTRL'. DO NOT CHANGE THIS LINE! 
     86 *&SPWIZARD: COPY DDIC-TABLE TO ITAB 
     87 MODULE ztab_ctrl_init OUTPUT. 
     88   IF g_ztab_ctrl_copied IS INITIAL. 
     89 *&SPWIZARD: COPY DDIC-TABLE 'ZTIF_LOG' 
     90 *&SPWIZARD: INTO INTERNAL TABLE 'g_ZTAB_CTRL_itab' 
     91     SELECT * FROM ztif_log 
     92        INTO CORRESPONDING FIELDS 
     93        OF TABLE g_ztab_ctrl_itab. 
     94     g_ztab_ctrl_copied = 'X'. 
     95     REFRESH CONTROL 'ZTAB_CTRL' FROM SCREEN '0100'. 
     96   ENDIF. 
     97 ENDMODULE. 
     98  
     99 *&SPWIZARD: OUTPUT MODULE FOR TC 'ZTAB_CTRL'. DO NOT CHANGE THIS LINE! 
    100 *&SPWIZARD: MOVE ITAB TO DYNPRO 
    101 MODULE ztab_ctrl_move OUTPUT. 
    102   MOVE-CORRESPONDING g_ztab_ctrl_wa TO ztif_log. 
    103 ENDMODULE. 
    104  
    105 *&SPWIZARD: OUTPUT MODULE FOR TC 'ZTAB_CTRL'. DO NOT CHANGE THIS LINE! 
    106 *&SPWIZARD: GET LINES OF TABLECONTROL 
    107 MODULE ztab_ctrl_get_lines OUTPUT. 
    108   g_ztab_ctrl_lines = sy-loopc. 
    109 ENDMODULE. 
    110  
    111 *&SPWIZARD: INPUT MODULE FOR TC 'ZTAB_CTRL'. DO NOT CHANGE THIS LINE! 
    112 *&SPWIZARD: MODIFY TABLE 
    113 MODULE ztab_ctrl_modify INPUT. 
    114   MOVE-CORRESPONDING ztif_log TO g_ztab_ctrl_wa. 
    115   MODIFY g_ztab_ctrl_itab 
    116     FROM g_ztab_ctrl_wa 
    117     INDEX ztab_ctrl-current_line. 
    118 ENDMODULE. 
    119  
    120 *&SPWIZARD: INPUT MODULE FOR TC 'ZTAB_CTRL'. DO NOT CHANGE THIS LINE! 
    121 *&SPWIZARD: PROCESS USER COMMAND 
    122 MODULE ztab_ctrl_user_command INPUT. 
    123   ok_code = sy-ucomm. 
    124   PERFORM user_ok_tc USING    'ZTAB_CTRL' 
    125                               'G_ZTAB_CTRL_ITAB' 
    126                               'FLAG' 
    127                      CHANGING ok_code. 
    128   sy-ucomm = ok_code. 
    129 ENDMODULE. 
    130  
    131 *----------------------------------------------------------------------* 
    132 *   INCLUDE TABLECONTROL_FORMS                                         * 
    133 *----------------------------------------------------------------------* 
    134  
    135 *&---------------------------------------------------------------------* 
    136 *&      Form  USER_OK_TC                                               * 
    137 *&---------------------------------------------------------------------* 
    138 FORM user_ok_tc USING    p_tc_name TYPE dynfnam 
    139                          p_table_name 
    140                          p_mark_name 
    141                 CHANGING p_ok      LIKE sy-ucomm. 
    142  
    143 *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------* 
    144   DATA: l_ok     TYPE sy-ucomm, 
    145         l_offset TYPE i. 
    146 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    147  
    148 *&SPWIZARD: Table control specific operations                          * 
    149 *&SPWIZARD: evaluate TC name and operations                            * 
    150   SEARCH p_ok FOR p_tc_name. 
    151   IF sy-subrc <> 0. 
    152     EXIT. 
    153   ENDIF. 
    154   l_offset = strlen( p_tc_name ) + 1. 
    155   l_ok = p_ok+l_offset. 
    156 *&SPWIZARD: execute general and TC specific operations                 * 
    157   CASE l_ok. 
    158     WHEN 'INSR'.                      "insert row 
    159       PERFORM fcode_insert_row USING    p_tc_name 
    160                                         p_table_name. 
    161       CLEAR p_ok. 
    162  
    163     WHEN 'DELE'.                      "delete row 
    164       PERFORM fcode_delete_row USING    p_tc_name 
    165                                         p_table_name 
    166                                         p_mark_name. 
    167       CLEAR p_ok. 
    168  
    169     WHEN 'P--' OR                     "top of list 
    170          'P-'  OR                     "previous page 
    171          'P+'  OR                     "next page 
    172          'P++'.                       "bottom of list 
    173       PERFORM compute_scrolling_in_tc USING p_tc_name 
    174                                             l_ok. 
    175       CLEAR p_ok. 
    176 *     WHEN 'L--'.                       "total left 
    177 *       PERFORM FCODE_TOTAL_LEFT USING P_TC_NAME. 
    178 * 
    179 *     WHEN 'L-'.                        "column left 
    180 *       PERFORM FCODE_COLUMN_LEFT USING P_TC_NAME. 
    181 * 
    182 *     WHEN 'R+'.                        "column right 
    183 *       PERFORM FCODE_COLUMN_RIGHT USING P_TC_NAME. 
    184 * 
    185 *     WHEN 'R++'.                       "total right 
    186 *       PERFORM FCODE_TOTAL_RIGHT USING P_TC_NAME. 
    187 * 
    188     WHEN 'MARK'.                      "mark all filled lines 
    189       PERFORM fcode_tc_mark_lines USING p_tc_name 
    190                                         p_table_name 
    191                                         p_mark_name   . 
    192       CLEAR p_ok. 
    193  
    194     WHEN 'DMRK'.                      "demark all filled lines 
    195       PERFORM fcode_tc_demark_lines USING p_tc_name 
    196                                           p_table_name 
    197                                           p_mark_name . 
    198       CLEAR p_ok. 
    199  
    200 *     WHEN 'SASCEND'   OR 
    201 *          'SDESCEND'.                  "sort column 
    202 *       PERFORM FCODE_SORT_TC USING P_TC_NAME 
    203 *                                   l_ok. 
    204  
    205   ENDCASE. 
    206  
    207 ENDFORM.                              " USER_OK_TC 
    208  
    209 *&---------------------------------------------------------------------* 
    210 *&      Form  FCODE_INSERT_ROW                                         * 
    211 *&---------------------------------------------------------------------* 
    212 FORM fcode_insert_row 
    213               USING    p_tc_name           TYPE dynfnam 
    214                        p_table_name             . 
    215  
    216 *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------* 
    217   DATA l_lines_name       LIKE feld-name. 
    218   DATA l_selline          LIKE sy-stepl. 
    219   DATA l_lastline         TYPE i. 
    220   DATA l_line             TYPE i. 
    221   DATA l_table_name       LIKE feld-name. 
    222   FIELD-SYMBOLS <tc>                 TYPE cxtab_control. 
    223   FIELD-SYMBOLS <table>              TYPE STANDARD TABLE. 
    224   FIELD-SYMBOLS <lines>              TYPE i. 
    225 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    226  
    227   ASSIGN (p_tc_name) TO <tc>. 
    228  
    229 *&SPWIZARD: get the table, which belongs to the tc                     * 
    230   CONCATENATE p_table_name '[]' INTO l_table_name. "table body 
    231   ASSIGN (l_table_name) TO <table>.                "not headerline 
    232  
    233 *&SPWIZARD: get looplines of TableControl                              * 
    234   CONCATENATE 'G_' p_tc_name '_LINES' INTO l_lines_name. 
    235   ASSIGN (l_lines_name) TO <lines>. 
    236  
    237 *&SPWIZARD: get current line                                           * 
    238   GET CURSOR LINE l_selline. 
    239   IF sy-subrc <> 0.                   " append line to table 
    240     l_selline = <tc>-lines + 1. 
    241 *&SPWIZARD: set top line                                               * 
    242     IF l_selline > <lines>. 
    243       <tc>-top_line = l_selline - <lines> + 1 . 
    244     ELSE. 
    245       <tc>-top_line = 1. 
    246     ENDIF. 
    247   ELSE.                               " insert line into table 
    248     l_selline = <tc>-top_line + l_selline - 1. 
    249     l_lastline = <tc>-top_line + <lines> - 1. 
    250   ENDIF. 
    251 *&SPWIZARD: set new cursor line                                        * 
    252   l_line = l_selline - <tc>-top_line + 1. 
    253  
    254 *&SPWIZARD: insert initial line                                        * 
    255   INSERT INITIAL LINE INTO <table> INDEX l_selline. 
    256   <tc>-lines = <tc>-lines + 1. 
    257 *&SPWIZARD: set cursor                                                 * 
    258   SET CURSOR LINE l_line. 
    259  
    260 ENDFORM.                              " FCODE_INSERT_ROW 
    261  
    262 *&---------------------------------------------------------------------* 
    263 *&      Form  FCODE_DELETE_ROW                                         * 
    264 *&---------------------------------------------------------------------* 
    265 FORM fcode_delete_row 
    266               USING    p_tc_name           TYPE dynfnam 
    267                        p_table_name 
    268                        p_mark_name   . 
    269  
    270 *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------* 
    271   DATA l_table_name       LIKE feld-name. 
    272  
    273   FIELD-SYMBOLS <tc>         TYPE cxtab_control. 
    274   FIELD-SYMBOLS <table>      TYPE STANDARD TABLE. 
    275   FIELD-SYMBOLS <wa>. 
    276   FIELD-SYMBOLS <mark_field>. 
    277 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    278  
    279   ASSIGN (p_tc_name) TO <tc>. 
    280  
    281 *&SPWIZARD: get the table, which belongs to the tc                     * 
    282   CONCATENATE p_table_name '[]' INTO l_table_name. "table body 
    283   ASSIGN (l_table_name) TO <table>.                "not headerline 
    284  
    285 *&SPWIZARD: delete marked lines                                        * 
    286   DESCRIBE TABLE <table> LINES <tc>-lines. 
    287  
    288   LOOP AT <table> ASSIGNING <wa>. 
    289  
    290 *&SPWIZARD: access to the component 'FLAG' of the table header         * 
    291     ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>. 
    292  
    293     IF <mark_field> = 'X'. 
    294       DELETE <table> INDEX syst-tabix. 
    295       IF sy-subrc = 0. 
    296         <tc>-lines = <tc>-lines - 1. 
    297       ENDIF. 
    298     ENDIF. 
    299   ENDLOOP. 
    300  
    301 ENDFORM.                              " FCODE_DELETE_ROW 
    302  
    303 *&---------------------------------------------------------------------* 
    304 *&      Form  COMPUTE_SCROLLING_IN_TC 
    305 *&---------------------------------------------------------------------* 
    306 *       text 
    307 *----------------------------------------------------------------------* 
    308 *      -->P_TC_NAME  name of tablecontrol 
    309 *      -->P_OK       ok code 
    310 *----------------------------------------------------------------------* 
    311 FORM compute_scrolling_in_tc USING    p_tc_name 
    312                                       p_ok. 
    313 *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------* 
    314   DATA l_tc_new_top_line     TYPE i. 
    315   DATA l_tc_name             LIKE feld-name. 
    316   DATA l_tc_lines_name       LIKE feld-name. 
    317   DATA l_tc_field_name       LIKE feld-name. 
    318  
    319   FIELD-SYMBOLS <tc>         TYPE cxtab_control. 
    320   FIELD-SYMBOLS <lines>      TYPE i. 
    321 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    322  
    323   ASSIGN (p_tc_name) TO <tc>. 
    324 *&SPWIZARD: get looplines of TableControl                              * 
    325   CONCATENATE 'G_' p_tc_name '_LINES' INTO l_tc_lines_name. 
    326   ASSIGN (l_tc_lines_name) TO <lines>. 
    327  
    328  
    329 *&SPWIZARD: is no line filled?                                         * 
    330   IF <tc>-lines = 0. 
    331 *&SPWIZARD: yes, ...                                                   * 
    332     l_tc_new_top_line = 1. 
    333   ELSE. 
    334 *&SPWIZARD: no, ...                                                    * 
    335     CALL FUNCTION 'SCROLLING_IN_TABLE' 
    336       EXPORTING 
    337         entry_act      = <tc>-top_line 
    338         entry_from     = 1 
    339         entry_to       = <tc>-lines 
    340         last_page_full = 'X' 
    341         loops          = <lines> 
    342         ok_code        = p_ok 
    343         overlapping    = 'X' 
    344       IMPORTING 
    345         entry_new      = l_tc_new_top_line 
    346       EXCEPTIONS 
    347 *       NO_ENTRY_OR_PAGE_ACT  = 01 
    348 *       NO_ENTRY_TO    = 02 
    349 *       NO_OK_CODE_OR_PAGE_GO = 03 
    350         OTHERS         = 0. 
    351   ENDIF. 
    352  
    353 *&SPWIZARD: get actual tc and column                                   * 
    354   GET CURSOR FIELD l_tc_field_name 
    355              AREA  l_tc_name. 
    356  
    357   IF syst-subrc = 0. 
    358     IF l_tc_name = p_tc_name. 
    359 *&SPWIZARD: et actual column                                           * 
    360       SET CURSOR FIELD l_tc_field_name LINE 1. 
    361     ENDIF. 
    362   ENDIF. 
    363  
    364 *&SPWIZARD: set the new top line                                       * 
    365   <tc>-top_line = l_tc_new_top_line. 
    366  
    367  
    368 ENDFORM.                              " COMPUTE_SCROLLING_IN_TC 
    369  
    370 *&---------------------------------------------------------------------* 
    371 *&      Form  FCODE_TC_MARK_LINES 
    372 *&---------------------------------------------------------------------* 
    373 *       marks all TableControl lines 
    374 *----------------------------------------------------------------------* 
    375 *      -->P_TC_NAME  name of tablecontrol 
    376 *----------------------------------------------------------------------* 
    377 FORM fcode_tc_mark_lines USING p_tc_name 
    378                                p_table_name 
    379                                p_mark_name. 
    380 *&SPWIZARD: EGIN OF LOCAL DATA-----------------------------------------* 
    381   DATA l_table_name       LIKE feld-name. 
    382  
    383   FIELD-SYMBOLS <tc>         TYPE cxtab_control. 
    384   FIELD-SYMBOLS <table>      TYPE STANDARD TABLE. 
    385   FIELD-SYMBOLS <wa>. 
    386   FIELD-SYMBOLS <mark_field>. 
    387 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    388  
    389   ASSIGN (p_tc_name) TO <tc>. 
    390  
    391 *&SPWIZARD: get the table, which belongs to the tc                     * 
    392   CONCATENATE p_table_name '[]' INTO l_table_name. "table body 
    393   ASSIGN (l_table_name) TO <table>.                "not headerline 
    394  
    395 *&SPWIZARD: mark all filled lines                                      * 
    396   LOOP AT <table> ASSIGNING <wa>. 
    397  
    398 *&SPWIZARD: access to the component 'FLAG' of the table header         * 
    399     ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>. 
    400  
    401     <mark_field> = 'X'. 
    402   ENDLOOP. 
    403 ENDFORM.                                          "fcode_tc_mark_lines 
    404  
    405 *&---------------------------------------------------------------------* 
    406 *&      Form  FCODE_TC_DEMARK_LINES 
    407 *&---------------------------------------------------------------------* 
    408 *       demarks all TableControl lines 
    409 *----------------------------------------------------------------------* 
    410 *      -->P_TC_NAME  name of tablecontrol 
    411 *----------------------------------------------------------------------* 
    412 FORM fcode_tc_demark_lines USING p_tc_name 
    413                                  p_table_name 
    414                                  p_mark_name . 
    415 *&SPWIZARD: BEGIN OF LOCAL DATA----------------------------------------* 
    416   DATA l_table_name       LIKE feld-name. 
    417  
    418   FIELD-SYMBOLS <tc>         TYPE cxtab_control. 
    419   FIELD-SYMBOLS <table>      TYPE STANDARD TABLE. 
    420   FIELD-SYMBOLS <wa>. 
    421   FIELD-SYMBOLS <mark_field>. 
    422 *&SPWIZARD: END OF LOCAL DATA------------------------------------------* 
    423  
    424   ASSIGN (p_tc_name) TO <tc>. 
    425  
    426 *&SPWIZARD: get the table, which belongs to the tc                     * 
    427   CONCATENATE p_table_name '[]' INTO l_table_name. "table body 
    428   ASSIGN (l_table_name) TO <table>.                "not headerline 
    429  
    430 *&SPWIZARD: demark all filled lines                                    * 
    431   LOOP AT <table> ASSIGNING <wa>. 
    432  
    433 *&SPWIZARD: access to the component 'FLAG' of the table header         * 
    434     ASSIGN COMPONENT p_mark_name OF STRUCTURE <wa> TO <mark_field>. 
    435  
    436     <mark_field> = space. 
    437   ENDLOOP. 
    438 ENDFORM.                                          "fcode_tc_mark_lines

  6. 效果展示
    自建屏幕字段双击功能1详解编程语言

—恢复内容结束—

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/19348.html

(0)
上一篇 2021年7月19日 22:07
下一篇 2021年7月19日 22:07

相关推荐

发表回复

登录后才能评论