zoukankan      html  css  js  c++  java
  • ABAP-折叠窗口

    1.测试

    2.代码

      1 *&---------------------------------------------------------------------*
      2 *& Report  ZRICO_TEST24
      3 *&
      4 *&---------------------------------------------------------------------*
      5 *&
      6 *&
      7 *&---------------------------------------------------------------------*
      8 report zrico_test24.
      9 
     10 tables:  sscrfields.
     11 data:  g_code type sscrfields-ucomm.  "FUNCTION CODE
     12 
     13 
     14 parameters: p_cb0(1) type c no-display,   "Close Block 0
     15             p_cb1(1) type c no-display.   "Close Block 1
     16 
     17 selection-screen function key 1."expand all blocks
     18 selection-screen function key 2. "collapse all blocks
     19 
     20 ***************** Block 00 *** Description data file
     21 selection-screen: pushbutton /1(60) pushb_o0         "Open Block 00
     22                     user-command ucomm_o0 modif id mo0,     "#EC NEEDED
     23                   pushbutton /1(60) pushb_c0         "Close Block 00
     24                     user-command ucomm_c0 modif id mc0.     "#EC NEEDED
     25 selection-screen begin of block b0 with frame title text-000.
     26 parameters: p_down00 type downloadx as checkbox modif id mc0.
     27 selection-screen end of block b0.
     28 
     29 ***************** Block 01 *** Report 01
     30 selection-screen: pushbutton /1(60) pushb_o1         "Open Block 01
     31                     user-command ucomm_o1 modif id mo1,     "#EC NEEDED
     32                   pushbutton /1(60) pushb_c1         "Close Block 01
     33                     user-command ucomm_c1 modif id mc1.     "#EC NEEDED
     34 selection-screen begin of block b1 with frame title text-001.
     35 parameters: p_rep01 as checkbox modif id mc1."DEFAULT 'X'.
     36 parameters: p_var01 like varid-variant modif id mc1.
     37 selection-screen end of block b1.
     38 
     39 initialization.
     40 
     41 * Close Selection-Screen
     42   p_cb0 = 'X'. p_cb1 = 'X'.
     43 * Set Text & Icon for application bar
     44   concatenate icon_expand: 'Expand all blocks' into sscrfields-functxt_01.
     45   concatenate icon_collapse: 'Collapse all blocks' into sscrfields-functxt_02.
     46 
     47 * Set Text & Icon for Pushbutton
     48   concatenate icon_collapse: 'Block 00' into pushb_c0,
     49                              'Block 01' into pushb_c1 .
     50 
     51   concatenate icon_expand: 'Block 00' into pushb_o0,
     52                            'Block 01' into pushb_o1.
     53 
     54 at selection-screen.
     55   g_code = sscrfields-ucomm.
     56   case g_code.
     57 *Expand all blocks
     58     when 'FC01'.
     59       perform expand_all_blocks.
     60 *Collapse all blocks
     61     when 'FC02'.      "Collapse all blocks
     62       perform collapse_all_blocks.
     63 *Open/close individual block functions
     64     when 'UCOMM_O0'.                   "Open Block 0
     65       clear p_cb0.
     66     when 'UCOMM_C0'.                   "Close Block 0
     67       p_cb0 = 'X'.
     68     when 'UCOMM_O1'.                   "Open Block 1
     69       clear p_cb1.
     70     when 'UCOMM_C1'.                   "Close Block 1
     71       p_cb1 = 'X'.
     72   endcase.
     73 
     74 
     75 at selection-screen output.
     76 *modify screen according predefined screen group
     77   loop at screen.
     78     case screen-group1.
     79       when 'MC0'.
     80         perform close_block using: p_cb0 'MC0' space.
     81       when 'MO0'.
     82         perform close_block using: p_cb0 'MO0' 'X'  .
     83       when 'MC1'.
     84         perform close_block using: p_cb1 'MC1' space.
     85       when 'MO1'.
     86         perform close_block using: p_cb1 'MO1' 'X'  .
     87       when others.
     88         continue.
     89     endcase.
     90   endloop.
     91 
     92 
     93 *&---------------------------------------------------------------------*
     94 *&      Form  close_block
     95 *&---------------------------------------------------------------------*
     96 form close_block using  value(i_close_block) like p_cb1
     97                         value(i_modify_id) like screen-group1
     98                         value(i_convert) type char1.
     99   if not i_convert is initial.
    100     if i_close_block is initial.
    101       i_close_block = 'X'.
    102     else.
    103       clear i_close_block.
    104     endif.
    105   endif.
    106 
    107   if ( screen-group1 = i_modify_id )
    108   and ( not i_close_block is initial ).
    109     screen-active = '0'.
    110     modify screen.
    111   endif.
    112 
    113 endform.                    "close_block
    114 
    115 *&---------------------------------------------------------------------*
    116 *&      Form  collapse_all_blocks
    117 *&---------------------------------------------------------------------*
    118 form collapse_all_blocks.
    119   p_cb0 = 'X'.p_cb1 = 'X'.
    120 endform.                    "collapse_all_blocks
    121 
    122 *&---------------------------------------------------------------------*
    123 *&      Form  expand_all_blocks
    124 *&---------------------------------------------------------------------*
    125 form expand_all_blocks.
    126   clear: p_cb0,p_cb1  .
    127 endform.
    View Code
  • 相关阅读:
    三角形外接圆与内切圆
    不等式证明
    不等式证明
    被 6 整除
    被 6 整除
    从切比雪夫不等式到大数定理
    JAVA轻量级文件监控
    Windows应用程序的消息处理机制
    JUnit中@Test的运行顺序
    MyReport报表引擎2.2.0.0新功能
  • 原文地址:https://www.cnblogs.com/ricoo/p/10184244.html
Copyright © 2011-2022 走看看