Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Multiple selection screens

Former Member
0 Likes
541

Hi Gurus ,

Is it possible to have more than one selection screen in a program , I am talking about the selection screen usually numbered as screen 1000 . If so then how.

Thanks

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
463

Krish,

You can solve your problem with a tabbed screen and hide tabs based on your condtions.

In this example, I activate tabs based on first page selection of check boxes, but you can adjust it to your needs


*----------------------------------------------------------------------*
*   INCLUDE ZLMI_LEADS_QUERY_S01                                       *
*----------------------------------------------------------------------*
SELECTION-SCREEN:
  BEGIN OF TABBED BLOCK tabs FOR 36 LINES,
    TAB (20) pbase   USER-COMMAND push1 DEFAULT SCREEN 1010,
    TAB (20) plead   USER-COMMAND push2 DEFAULT SCREEN 1020,
    TAB (20) pcont   USER-COMMAND push3 DEFAULT SCREEN 1030,
    TAB (20) pfin    USER-COMMAND push4 DEFAULT SCREEN 1040,
    TAB (20) pprop   USER-COMMAND push5 DEFAULT SCREEN 1050,
    TAB (20) pmodel  USER-COMMAND push6 DEFAULT SCREEN 1060,
    TAB (20) pact    USER-COMMAND push7 DEFAULT SCREEN 1070,
    TAB (20) pfol    USER-COMMAND push8 DEFAULT SCREEN 1080,
    TAB (20) pref    USER-COMMAND push9 DEFAULT SCREEN 1090,
    TAB (20) pstath  USER-COMMAND pusha DEFAULT SCREEN 1100,
    TAB (20) ppers   USER-COMMAND pushb DEFAULT SCREEN 1110,
  END OF BLOCK tabs.
*----------------------------------------------------------------------*
* Base Options            S E L E C T I O N    S C R E E N S    Tab 01 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1010 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
   pdiv      FOR cepc-prctr MATCHCODE OBJECT zdivjwh,
   psbrch    FOR zlmlead-branch,
   pbbrch    FOR zlmlead-buildbranch,
   pltype    FOR zlmltyp-ltype,
   pstat     FOR zlmstyp-status,
   photcold  FOR zlmlead-hotcold,
   pleadid   FOR zlmlead-leadid,
   pspnum    FOR zlmlead-spnum,
   pkunnr    FOR zlmlead-kunnr,
   pcredt    FOR zlmlead-erdat.
SELECTION-SCREEN: END OF BLOCK blk1.
SELECTION-SCREEN: BEGIN OF BLOCK bl10 WITH FRAME TITLE text-010.
PARAMETERS:
*  cblead   AS CHECKBOX DEFAULT 'X' USER-COMMAND sel,
*  cbcont   AS CHECKBOX DEFAULT 'X' USER-COMMAND sel,
  cbfin    AS CHECKBOX USER-COMMAND sel,
  cbprop   AS CHECKBOX USER-COMMAND sel,
  cbref    AS CHECKBOX USER-COMMAND sel,
  cbpers   AS CHECKBOX USER-COMMAND sel,
  cbmodi   AS CHECKBOX USER-COMMAND sel,
  cbact    AS CHECKBOX USER-COMMAND sel,
  cbfol    AS CHECKBOX USER-COMMAND sel,
  cbstath  AS CHECKBOX USER-COMMAND sel.

*SELECTION-SCREEN: BEGIN OF BLOCK bl11 WITH FRAME TITLE text-011.
*SELECTION-SCREEN SKIP.
*PARAMETERS:
*  cbnone   RADIOBUTTON GROUP gr10 USER-COMMAND sel DEFAULT 'X'.
*SELECTION-SCREEN SKIP.
*SELECTION-SCREEN BEGIN OF LINE.
*SELECTION-SCREEN COMMENT 1(73)   text-012.
*SELECTION-SCREEN END OF LINE.
*SELECTION-SCREEN BEGIN OF LINE.
*SELECTION-SCREEN COMMENT 1(73)   text-013.
*SELECTION-SCREEN END OF LINE.
**SELECTION-SCREEN BEGIN OF LINE.
**SELECTION-SCREEN COMMENT 1(73)   text-014.
**SELECTION-SCREEN END OF LINE.
*SELECTION-SCREEN SKIP.
*PARAMETERS:
*  cbpers   RADIOBUTTON GROUP gr10,
*  cbmodi   RADIOBUTTON GROUP gr10,
*  cbact    RADIOBUTTON GROUP gr10,
*  cbfol    RADIOBUTTON GROUP gr10,
*  cbstath  RADIOBUTTON GROUP gr10.
*SELECTION-SCREEN: END OF BLOCK bl11.
SELECTION-SCREEN: END OF BLOCK bl10.
SELECTION-SCREEN: BEGIN OF BLOCK bl11 WITH FRAME TITLE text-011.
*PARAMETERS:
*  cb_1line AS CHECKBOX.
SELECTION-SCREEN: END OF BLOCK bl11.

SELECTION-SCREEN END OF SCREEN 1010.
*----------------------------------------------------------------------*
* Lead General             S E L E C T I O N    S C R E E N S   Tab 02 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1020 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
SELECT-OPTIONS:
   pctype      FOR zlmlead-ctype,
   pprfcnt     FOR zlmlead-prefcont,
   pheard      FOR zlmlead-heard,
   pbld_tm     FOR zlmlead-bld_tm.
SELECTION-SCREEN SKIP.
INCLUDE zlmi_donotmail.

SELECTION-SCREEN: END OF BLOCK blk2.
SELECTION-SCREEN: BEGIN OF BLOCK bl20 WITH FRAME TITLE text-020.
PARAMETERS:
  cbbldbr   AS CHECKBOX,
  cbspnum   AS CHECKBOX DEFAULT 'X',
  cbspname  AS CHECKBOX DEFAULT 'X',
  cbltype   AS CHECKBOX DEFAULT 'X',
  cbstat    AS CHECKBOX DEFAULT 'X',
  cbhotcld  AS CHECKBOX DEFAULT 'X',
  cbctype   AS CHECKBOX,
  cbprfcnt  AS CHECKBOX,
  cbheard   AS CHECKBOX,
  cbbld_tm  AS CHECKBOX,
  cbdnmail  AS CHECKBOX,
  cbdncall  AS CHECKBOX,
  cbdnemai  AS CHECKBOX,
  cbnotes   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl20.
SELECTION-SCREEN END OF SCREEN 1020.
*----------------------------------------------------------------------*
* Contacts               S E L E C T I O N    S C R E E N S     Tab 03 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1030 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk3 WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(15)   text-301.
SELECTION-SCREEN COMMENT 17(03)  text-302. " All
SELECTION-SCREEN POSITION 21.
PARAMETERS: pcnt_all AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 25(9)  text-303. " Applicant
SELECTION-SCREEN POSITION 35.
PARAMETERS: pcnt_a1 AS CHECKBOX DEFAULT 'X' MODIF ID cnt
                        USER-COMMAND sel.
SELECTION-SCREEN COMMENT 39(13)  text-304. " CoApplicants
SELECTION-SCREEN POSITION 53.
PARAMETERS: pcnt_a2 AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 57(9)  text-305. " Relatives
SELECTION-SCREEN POSITION 68.
PARAMETERS: pcnt_r  AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN END   OF LINE.
SELECT-OPTIONS:
   pbest_tm      FOR zlmcont-best_tm.

SELECTION-SCREEN: END OF BLOCK blk3.

SELECTION-SCREEN: BEGIN OF BLOCK bl30 WITH FRAME TITLE text-030.
PARAMETERS:
  cbcname    AS CHECKBOX DEFAULT 'X',
  cbcrelat   AS CHECKBOX,
  cbcaddr    AS CHECKBOX,
  cbchmph    AS CHECKBOX DEFAULT 'X',
  cbcceph    AS CHECKBOX DEFAULT 'X',
  cbcwkph    AS CHECKBOX,
  cbcfxph    AS CHECKBOX,
  cbcemail   AS CHECKBOX,
  cbcbirth   AS CHECKBOX,
  cbccresd   AS CHECKBOX,
  cbcown     AS CHECKBOX,
  cbcrentv   AS CHECKBOX,
  cbclandl   AS CHECKBOX,
  cbcllphn   AS CHECKBOX,
  cbcmthpy   AS CHECKBOX,
  cbcbsttm   AS CHECKBOX,
  cbccurtm   AS CHECKBOX,
  cbcprvtm   AS CHECKBOX,
  cbcpradd   AS CHECKBOX,
  cbcuscit   AS CHECKBOX,
  cbcgendr   AS CHECKBOX,
  cbcmarit   AS CHECKBOX,
  cbcethn    AS CHECKBOX,
  cbcnbdep   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl30.

SELECTION-SCREEN END OF SCREEN 1030.
*----------------------------------------------------------------------*
* Financial              S E L E C T I O N    S C R E E N S     Tab 04 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1040 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk4 WITH FRAME TITLE text-004.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(15)   text-301.
SELECTION-SCREEN COMMENT 17(03)  text-302. " All
SELECTION-SCREEN POSITION 21.
PARAMETERS: pfin_all AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 25(9)  text-303. " Applicant
SELECTION-SCREEN POSITION 35.
PARAMETERS: pfin_a1 AS CHECKBOX DEFAULT 'X' MODIF ID cnt
                        USER-COMMAND sel.
SELECTION-SCREEN COMMENT 39(13)  text-304. " CoApplicants
SELECTION-SCREEN POSITION 53.
PARAMETERS: pfin_a2 AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 57(9)  text-305. " Relatives
SELECTION-SCREEN POSITION 68.
PARAMETERS: pfin_r  AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN END   OF LINE.

SELECT-OPTIONS:
   pfintyp      FOR zlmprop-fintype.

SELECTION-SCREEN: END OF BLOCK blk4.

SELECTION-SCREEN: BEGIN OF BLOCK bl40 WITH FRAME TITLE text-040.
PARAMETERS:
*  cbfssn     AS CHECKBOX,
  cbpfinty   AS CHECKBOX DEFAULT 'X',
  cbpdownp   AS CHECKBOX,
  cbfemtyp   AS CHECKBOX,
  cbfemply   AS CHECKBOX,
  cbfbutyp   AS CHECKBOX,
  cbfeaddr   AS CHECKBOX,
  cbfempph   AS CHECKBOX,
  cbfcurtm   AS CHECKBOX,
  cbflowtm   AS CHECKBOX,
  cbfmthic   AS CHECKBOX,
  cbfothic   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl40.

SELECTION-SCREEN END OF SCREEN 1040.
*----------------------------------------------------------------------*
* Property               S E L E C T I O N    S C R E E N S     Tab 05 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1050 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk5 WITH FRAME TITLE text-005.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pownland   FOR zlmprop-ownland.
SELECTION-SCREEN: END OF BLOCK blk5.

SELECTION-SCREEN: BEGIN OF BLOCK bl50 WITH FRAME TITLE text-050.
PARAMETERS:
  cbpownln   AS CHECKBOX DEFAULT 'X',
  cbpaddr    AS CHECKBOX,
  cbpcnty    AS CHECKBOX,
  cbpdeed    AS CHECKBOX,
  cbpleins   AS CHECKBOX,
  cbplsize   AS CHECKBOX,
  cbpwater   AS CHECKBOX,
  cbpelect   AS CHECKBOX,
  cbpsewer   AS CHECKBOX,
  cbpsetbk   AS CHECKBOX,
  cbpexstr   AS CHECKBOX,
  cbprdacc   AS CHECKBOX,
  cbproad    AS CHECKBOX,
  cbpgftpu   AS CHECKBOX,
  cbpgftwh   AS CHECKBOX,
  cbppurpr   AS CHECKBOX,
  cbpyrpuf   AS CHECKBOX,
  cbpexmor   AS CHECKBOX,
  cbpinten   AS CHECKBOX,
  cbpdrive   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl50.

SELECTION-SCREEN END OF SCREEN 1050.
*----------------------------------------------------------------------*
* Model               S E L E C T I O N    S C R E E N S        Tab 06 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1060 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk6 WITH FRAME TITLE text-006.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

SELECT-OPTIONS:
   ppbedrm    FOR zlmprop-bedrm,
   ppbaths    FOR zlmprop-bath,
   ppcompl    FOR zlmprop-complevel.

SELECTION-SCREEN: END OF BLOCK blk6.

SELECTION-SCREEN: BEGIN OF BLOCK bl60 WITH FRAME TITLE text-060.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbpbedrm   AS CHECKBOX DEFAULT 'X',
  cbpbath    AS CHECKBOX DEFAULT 'X',
  cbpsqft    AS CHECKBOX,
*  cbpmodel   AS CHECKBOX,
  cbpgarag   AS CHECKBOX,
  cbpreqs    AS CHECKBOX,
  cbpmthpy   AS CHECKBOX,
  cbpprice   AS CHECKBOX,
  cbpcompl   AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF BLOCK bl60.

SELECTION-SCREEN END OF SCREEN 1060.
*----------------------------------------------------------------------*
* Action              S E L E C T I O N    S C R E E N S        Tab 07 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1070 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk7 WITH FRAME TITLE text-007.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pacontyp   FOR zlmact-cont_ty,
   pacrdate   FOR zlmact-cont_dt.
SELECTION-SCREEN SKIP.
PARAMETERS:
   pactcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: END OF BLOCK blk7.

SELECTION-SCREEN: BEGIN OF BLOCK bl70 WITH FRAME TITLE text-070.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbaconty   AS CHECKBOX DEFAULT 'X',
  cbadttm    AS CHECKBOX,
  cbacrslt   AS CHECKBOX,
  cbafucdt   AS CHECKBOX,
  cbanotes   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl70.

SELECTION-SCREEN END OF SCREEN 1070.
*----------------------------------------------------------------------*
* Follow Up           S E L E C T I O N    S C R E E N S        Tab 08 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1080 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk8 WITH FRAME TITLE text-008.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pfcontyp   FOR zlmfoll-cont_ty,
   pfudate    FOR zlmfoll-folldt,
   pfcrdate   FOR zlmfoll-cont_dt.
SELECTION-SCREEN SKIP.
PARAMETERS:
   pfolcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: END OF BLOCK blk8.

SELECTION-SCREEN: BEGIN OF BLOCK bl80 WITH FRAME TITLE text-080.

PARAMETERS:
  cbfconty   AS CHECKBOX DEFAULT 'X',
*  cbfdttm    AS CHECKBOX,
  cbffucdt   AS CHECKBOX,
  cbfnotes   AS CHECKBOX.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

*PARAMETERS:
*  cbrtype   AS CHECKBOX,
*  cbrname   AS CHECKBOX,
*  cbraddr   AS CHECKBOX,
*  cbrtel1   AS CHECKBOX,
*  cbrtel2   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl80.

SELECTION-SCREEN END OF SCREEN 1080.

*----------------------------------------------------------------------*
* Referral               S E L E C T I O N    S C R E E N S     Tab 09 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1090 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk9 WITH FRAME TITLE text-009.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
  prreftyp   FOR zlmref-reftype,
  pcustref   for zlmref-custreffer,
  popenhse   for zlmref-openhousesponser.
SELECTION-SCREEN: END OF BLOCK blk9.

SELECTION-SCREEN: BEGIN OF BLOCK bl90 WITH FRAME TITLE text-090.
PARAMETERS:
  cbrtype   AS CHECKBOX DEFAULT 'X',
  cbrname   AS CHECKBOX,
  cbraddr   AS CHECKBOX,
  cbrtel1   AS CHECKBOX,
  cbrtel2   AS CHECKBOX,
  cbcstref  AS CHECKBOX,
  cbopnhse  AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl90.

SELECTION-SCREEN END OF SCREEN 1090.

*----------------------------------------------------------------------*
* Status History      S E L E C T I O N    S C R E E N S        Tab 10 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1100 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blka WITH FRAME TITLE text-00a.
SELECTION-SCREEN SKIP.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
PARAMETERS:
   pstcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.

SELECTION-SCREEN: END OF BLOCK blka.

SELECTION-SCREEN: BEGIN OF BLOCK bla0 WITH FRAME TITLE text-100.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
PARAMETERS:
  cbsltype   AS CHECKBOX,
  cbsstat    AS CHECKBOX,
  cbsdate    AS CHECKBOX,
  cbstime    AS CHECKBOX,
  cbsuser    AS CHECKBOX,
  cbcredt    AS CHECKBOX DEFAULT 'X',
  cbcrenm    AS CHECKBOX,
  cbchgdt    AS CHECKBOX,
  cbchgnm    AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bla0.

SELECTION-SCREEN END OF SCREEN 1100.
*----------------------------------------------------------------------*
* Personal            S E L E C T I O N    S C R E E N S        Tab 11 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1110 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blkb WITH FRAME TITLE text-00b.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   ppbirth   FOR zlmpers-birthdat.

SELECTION-SCREEN: END OF BLOCK blkb.

SELECTION-SCREEN: BEGIN OF BLOCK blb0 WITH FRAME TITLE text-110.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbpname    AS CHECKBOX,
  cbpbirth   AS CHECKBOX DEFAULT 'X',
  cbphobby   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK blb0.

SELECTION-SCREEN END OF SCREEN 1110.

This is the hide/unhide routine.


*____________________________________________ Screen Actions
AT SELECTION-SCREEN OUTPUT.
  PERFORM what_tab_am_i_on.
  CASE curr_screen_tab.
    WHEN '1010'.   " Base Options
      PERFORM contact_options_changed.
    WHEN '1030'.   " Contact
      PERFORM contact_options_changed.
*      PERFORM protect_contact_cb.
    WHEN '1040'.   " Finance
      PERFORM finance_options_changed.
*      PERFORM protect_contact_cb.
    WHEN OTHERS.
  ENDCASE.
  PERFORM tab_hide_unhide.
*___________________________________________  Initialization
INITIALIZATION.
* Tab Text
  pbase  = 'Base Options'.
  plead  = 'Lead General'.
  pcont  = 'Contacts'.
  pfin   = 'Financial'.
  pprop  = 'Property'.
  pmodel = 'Model of Intr'.
  pact   = 'Actions'.
  pfol   = 'Follow Ups'.
  pref   = 'Referral'.
  pstath = 'Statis Hist.'.
  ppers  = 'Personal'.
*&---------------------------------------------------------------------*
*&      Form  tab_hide_unhide
*&---------------------------------------------------------------------*
FORM tab_hide_unhide.

  LOOP AT SCREEN.
    CHECK screen-group3 = 'TAB'.
    CASE screen-name.
      WHEN 'PFIN'.
        IF cbfin = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pfintyp, pfintyp[].
        ENDIF.
      WHEN 'PPROP'.
        IF cbprop = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pownland, pownland[].
        ENDIF.
      WHEN 'PMODEL'.
        IF cbmodi = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: ppbedrm, ppbedrm[],
                 ppbaths, ppbaths[],
                 ppcompl, ppcompl[].
        ENDIF.
      WHEN 'PACT'.
        IF cbact = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pacontyp, pacontyp[],
                 pacrdate, pacrdate[].
        ENDIF.
      WHEN 'PFOL'.
        IF cbfol   = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pfcontyp, pfcontyp[],
                 pfudate, pfudate[],
                 pfcrdate, pfcrdate[].
        ENDIF.
      WHEN 'PREF'.
        IF cbref = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: prreftyp, prreftyp[].
        ENDIF.
      WHEN 'PSTATH'.
        IF cbstath = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
        ENDIF.
      WHEN 'PPERS'.
        IF cbpers = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
        ENDIF.
    ENDCASE.
    MODIFY SCREEN.
  ENDLOOP.
ENDFORM.                    " tab_hide_unhide
*&---------------------------------------------------------------------*
*&      Form  what_tab_am_i_on
*&---------------------------------------------------------------------*
FORM what_tab_am_i_on.
  LOOP AT SCREEN.
    IF     screen-name CS 'BLOCK_1010'.
      curr_screen_tab = '1010'.
    ELSEIF screen-name CS 'BLOCK_1020'.
      curr_screen_tab = '1020'.
    ELSEIF screen-name CS 'BLOCK_1030'.
      curr_screen_tab = '1030'.
    ELSEIF screen-name CS 'BLOCK_1040'.
      curr_screen_tab = '1040'.
    ELSEIF screen-name CS 'BLOCK_1050'.
      curr_screen_tab = '1050'.
    ELSEIF screen-name CS 'BLOCK_1060'.
      curr_screen_tab = '1060'.
    ELSEIF screen-name CS 'BLOCK_1070'.
      curr_screen_tab = '1070'.
    ELSEIF screen-name CS 'BLOCK_1080'.
      curr_screen_tab = '1080'.
    ELSEIF screen-name CS 'BLOCK_1090'.
      curr_screen_tab = '1090'.
    ELSEIF screen-name CS 'BLOCK_1100'.
      curr_screen_tab = '1100'.
    ENDIF.
  ENDLOOP.

ENDFORM.                    " what_tab_am_i_on

2 REPLIES 2
Read only

Former Member
0 Likes
463

Hi,

It is possible.

We can give any number to screens.

like,

call screen 100.

call screen 1.

Regards,

Read only

Former Member
0 Likes
464

Krish,

You can solve your problem with a tabbed screen and hide tabs based on your condtions.

In this example, I activate tabs based on first page selection of check boxes, but you can adjust it to your needs


*----------------------------------------------------------------------*
*   INCLUDE ZLMI_LEADS_QUERY_S01                                       *
*----------------------------------------------------------------------*
SELECTION-SCREEN:
  BEGIN OF TABBED BLOCK tabs FOR 36 LINES,
    TAB (20) pbase   USER-COMMAND push1 DEFAULT SCREEN 1010,
    TAB (20) plead   USER-COMMAND push2 DEFAULT SCREEN 1020,
    TAB (20) pcont   USER-COMMAND push3 DEFAULT SCREEN 1030,
    TAB (20) pfin    USER-COMMAND push4 DEFAULT SCREEN 1040,
    TAB (20) pprop   USER-COMMAND push5 DEFAULT SCREEN 1050,
    TAB (20) pmodel  USER-COMMAND push6 DEFAULT SCREEN 1060,
    TAB (20) pact    USER-COMMAND push7 DEFAULT SCREEN 1070,
    TAB (20) pfol    USER-COMMAND push8 DEFAULT SCREEN 1080,
    TAB (20) pref    USER-COMMAND push9 DEFAULT SCREEN 1090,
    TAB (20) pstath  USER-COMMAND pusha DEFAULT SCREEN 1100,
    TAB (20) ppers   USER-COMMAND pushb DEFAULT SCREEN 1110,
  END OF BLOCK tabs.
*----------------------------------------------------------------------*
* Base Options            S E L E C T I O N    S C R E E N S    Tab 01 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1010 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:
   pdiv      FOR cepc-prctr MATCHCODE OBJECT zdivjwh,
   psbrch    FOR zlmlead-branch,
   pbbrch    FOR zlmlead-buildbranch,
   pltype    FOR zlmltyp-ltype,
   pstat     FOR zlmstyp-status,
   photcold  FOR zlmlead-hotcold,
   pleadid   FOR zlmlead-leadid,
   pspnum    FOR zlmlead-spnum,
   pkunnr    FOR zlmlead-kunnr,
   pcredt    FOR zlmlead-erdat.
SELECTION-SCREEN: END OF BLOCK blk1.
SELECTION-SCREEN: BEGIN OF BLOCK bl10 WITH FRAME TITLE text-010.
PARAMETERS:
*  cblead   AS CHECKBOX DEFAULT 'X' USER-COMMAND sel,
*  cbcont   AS CHECKBOX DEFAULT 'X' USER-COMMAND sel,
  cbfin    AS CHECKBOX USER-COMMAND sel,
  cbprop   AS CHECKBOX USER-COMMAND sel,
  cbref    AS CHECKBOX USER-COMMAND sel,
  cbpers   AS CHECKBOX USER-COMMAND sel,
  cbmodi   AS CHECKBOX USER-COMMAND sel,
  cbact    AS CHECKBOX USER-COMMAND sel,
  cbfol    AS CHECKBOX USER-COMMAND sel,
  cbstath  AS CHECKBOX USER-COMMAND sel.

*SELECTION-SCREEN: BEGIN OF BLOCK bl11 WITH FRAME TITLE text-011.
*SELECTION-SCREEN SKIP.
*PARAMETERS:
*  cbnone   RADIOBUTTON GROUP gr10 USER-COMMAND sel DEFAULT 'X'.
*SELECTION-SCREEN SKIP.
*SELECTION-SCREEN BEGIN OF LINE.
*SELECTION-SCREEN COMMENT 1(73)   text-012.
*SELECTION-SCREEN END OF LINE.
*SELECTION-SCREEN BEGIN OF LINE.
*SELECTION-SCREEN COMMENT 1(73)   text-013.
*SELECTION-SCREEN END OF LINE.
**SELECTION-SCREEN BEGIN OF LINE.
**SELECTION-SCREEN COMMENT 1(73)   text-014.
**SELECTION-SCREEN END OF LINE.
*SELECTION-SCREEN SKIP.
*PARAMETERS:
*  cbpers   RADIOBUTTON GROUP gr10,
*  cbmodi   RADIOBUTTON GROUP gr10,
*  cbact    RADIOBUTTON GROUP gr10,
*  cbfol    RADIOBUTTON GROUP gr10,
*  cbstath  RADIOBUTTON GROUP gr10.
*SELECTION-SCREEN: END OF BLOCK bl11.
SELECTION-SCREEN: END OF BLOCK bl10.
SELECTION-SCREEN: BEGIN OF BLOCK bl11 WITH FRAME TITLE text-011.
*PARAMETERS:
*  cb_1line AS CHECKBOX.
SELECTION-SCREEN: END OF BLOCK bl11.

SELECTION-SCREEN END OF SCREEN 1010.
*----------------------------------------------------------------------*
* Lead General             S E L E C T I O N    S C R E E N S   Tab 02 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1020 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
SELECT-OPTIONS:
   pctype      FOR zlmlead-ctype,
   pprfcnt     FOR zlmlead-prefcont,
   pheard      FOR zlmlead-heard,
   pbld_tm     FOR zlmlead-bld_tm.
SELECTION-SCREEN SKIP.
INCLUDE zlmi_donotmail.

SELECTION-SCREEN: END OF BLOCK blk2.
SELECTION-SCREEN: BEGIN OF BLOCK bl20 WITH FRAME TITLE text-020.
PARAMETERS:
  cbbldbr   AS CHECKBOX,
  cbspnum   AS CHECKBOX DEFAULT 'X',
  cbspname  AS CHECKBOX DEFAULT 'X',
  cbltype   AS CHECKBOX DEFAULT 'X',
  cbstat    AS CHECKBOX DEFAULT 'X',
  cbhotcld  AS CHECKBOX DEFAULT 'X',
  cbctype   AS CHECKBOX,
  cbprfcnt  AS CHECKBOX,
  cbheard   AS CHECKBOX,
  cbbld_tm  AS CHECKBOX,
  cbdnmail  AS CHECKBOX,
  cbdncall  AS CHECKBOX,
  cbdnemai  AS CHECKBOX,
  cbnotes   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl20.
SELECTION-SCREEN END OF SCREEN 1020.
*----------------------------------------------------------------------*
* Contacts               S E L E C T I O N    S C R E E N S     Tab 03 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1030 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk3 WITH FRAME TITLE text-003.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(15)   text-301.
SELECTION-SCREEN COMMENT 17(03)  text-302. " All
SELECTION-SCREEN POSITION 21.
PARAMETERS: pcnt_all AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 25(9)  text-303. " Applicant
SELECTION-SCREEN POSITION 35.
PARAMETERS: pcnt_a1 AS CHECKBOX DEFAULT 'X' MODIF ID cnt
                        USER-COMMAND sel.
SELECTION-SCREEN COMMENT 39(13)  text-304. " CoApplicants
SELECTION-SCREEN POSITION 53.
PARAMETERS: pcnt_a2 AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 57(9)  text-305. " Relatives
SELECTION-SCREEN POSITION 68.
PARAMETERS: pcnt_r  AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN END   OF LINE.
SELECT-OPTIONS:
   pbest_tm      FOR zlmcont-best_tm.

SELECTION-SCREEN: END OF BLOCK blk3.

SELECTION-SCREEN: BEGIN OF BLOCK bl30 WITH FRAME TITLE text-030.
PARAMETERS:
  cbcname    AS CHECKBOX DEFAULT 'X',
  cbcrelat   AS CHECKBOX,
  cbcaddr    AS CHECKBOX,
  cbchmph    AS CHECKBOX DEFAULT 'X',
  cbcceph    AS CHECKBOX DEFAULT 'X',
  cbcwkph    AS CHECKBOX,
  cbcfxph    AS CHECKBOX,
  cbcemail   AS CHECKBOX,
  cbcbirth   AS CHECKBOX,
  cbccresd   AS CHECKBOX,
  cbcown     AS CHECKBOX,
  cbcrentv   AS CHECKBOX,
  cbclandl   AS CHECKBOX,
  cbcllphn   AS CHECKBOX,
  cbcmthpy   AS CHECKBOX,
  cbcbsttm   AS CHECKBOX,
  cbccurtm   AS CHECKBOX,
  cbcprvtm   AS CHECKBOX,
  cbcpradd   AS CHECKBOX,
  cbcuscit   AS CHECKBOX,
  cbcgendr   AS CHECKBOX,
  cbcmarit   AS CHECKBOX,
  cbcethn    AS CHECKBOX,
  cbcnbdep   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl30.

SELECTION-SCREEN END OF SCREEN 1030.
*----------------------------------------------------------------------*
* Financial              S E L E C T I O N    S C R E E N S     Tab 04 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1040 AS SUBSCREEN.
SELECTION-SCREEN: BEGIN OF BLOCK blk4 WITH FRAME TITLE text-004.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(15)   text-301.
SELECTION-SCREEN COMMENT 17(03)  text-302. " All
SELECTION-SCREEN POSITION 21.
PARAMETERS: pfin_all AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 25(9)  text-303. " Applicant
SELECTION-SCREEN POSITION 35.
PARAMETERS: pfin_a1 AS CHECKBOX DEFAULT 'X' MODIF ID cnt
                        USER-COMMAND sel.
SELECTION-SCREEN COMMENT 39(13)  text-304. " CoApplicants
SELECTION-SCREEN POSITION 53.
PARAMETERS: pfin_a2 AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN COMMENT 57(9)  text-305. " Relatives
SELECTION-SCREEN POSITION 68.
PARAMETERS: pfin_r  AS CHECKBOX MODIF ID cnt USER-COMMAND sel.
SELECTION-SCREEN END   OF LINE.

SELECT-OPTIONS:
   pfintyp      FOR zlmprop-fintype.

SELECTION-SCREEN: END OF BLOCK blk4.

SELECTION-SCREEN: BEGIN OF BLOCK bl40 WITH FRAME TITLE text-040.
PARAMETERS:
*  cbfssn     AS CHECKBOX,
  cbpfinty   AS CHECKBOX DEFAULT 'X',
  cbpdownp   AS CHECKBOX,
  cbfemtyp   AS CHECKBOX,
  cbfemply   AS CHECKBOX,
  cbfbutyp   AS CHECKBOX,
  cbfeaddr   AS CHECKBOX,
  cbfempph   AS CHECKBOX,
  cbfcurtm   AS CHECKBOX,
  cbflowtm   AS CHECKBOX,
  cbfmthic   AS CHECKBOX,
  cbfothic   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl40.

SELECTION-SCREEN END OF SCREEN 1040.
*----------------------------------------------------------------------*
* Property               S E L E C T I O N    S C R E E N S     Tab 05 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1050 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk5 WITH FRAME TITLE text-005.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pownland   FOR zlmprop-ownland.
SELECTION-SCREEN: END OF BLOCK blk5.

SELECTION-SCREEN: BEGIN OF BLOCK bl50 WITH FRAME TITLE text-050.
PARAMETERS:
  cbpownln   AS CHECKBOX DEFAULT 'X',
  cbpaddr    AS CHECKBOX,
  cbpcnty    AS CHECKBOX,
  cbpdeed    AS CHECKBOX,
  cbpleins   AS CHECKBOX,
  cbplsize   AS CHECKBOX,
  cbpwater   AS CHECKBOX,
  cbpelect   AS CHECKBOX,
  cbpsewer   AS CHECKBOX,
  cbpsetbk   AS CHECKBOX,
  cbpexstr   AS CHECKBOX,
  cbprdacc   AS CHECKBOX,
  cbproad    AS CHECKBOX,
  cbpgftpu   AS CHECKBOX,
  cbpgftwh   AS CHECKBOX,
  cbppurpr   AS CHECKBOX,
  cbpyrpuf   AS CHECKBOX,
  cbpexmor   AS CHECKBOX,
  cbpinten   AS CHECKBOX,
  cbpdrive   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl50.

SELECTION-SCREEN END OF SCREEN 1050.
*----------------------------------------------------------------------*
* Model               S E L E C T I O N    S C R E E N S        Tab 06 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1060 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk6 WITH FRAME TITLE text-006.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

SELECT-OPTIONS:
   ppbedrm    FOR zlmprop-bedrm,
   ppbaths    FOR zlmprop-bath,
   ppcompl    FOR zlmprop-complevel.

SELECTION-SCREEN: END OF BLOCK blk6.

SELECTION-SCREEN: BEGIN OF BLOCK bl60 WITH FRAME TITLE text-060.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbpbedrm   AS CHECKBOX DEFAULT 'X',
  cbpbath    AS CHECKBOX DEFAULT 'X',
  cbpsqft    AS CHECKBOX,
*  cbpmodel   AS CHECKBOX,
  cbpgarag   AS CHECKBOX,
  cbpreqs    AS CHECKBOX,
  cbpmthpy   AS CHECKBOX,
  cbpprice   AS CHECKBOX,
  cbpcompl   AS CHECKBOX DEFAULT 'X'.

SELECTION-SCREEN: END OF BLOCK bl60.

SELECTION-SCREEN END OF SCREEN 1060.
*----------------------------------------------------------------------*
* Action              S E L E C T I O N    S C R E E N S        Tab 07 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1070 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk7 WITH FRAME TITLE text-007.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pacontyp   FOR zlmact-cont_ty,
   pacrdate   FOR zlmact-cont_dt.
SELECTION-SCREEN SKIP.
PARAMETERS:
   pactcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: END OF BLOCK blk7.

SELECTION-SCREEN: BEGIN OF BLOCK bl70 WITH FRAME TITLE text-070.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbaconty   AS CHECKBOX DEFAULT 'X',
  cbadttm    AS CHECKBOX,
  cbacrslt   AS CHECKBOX,
  cbafucdt   AS CHECKBOX,
  cbanotes   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl70.

SELECTION-SCREEN END OF SCREEN 1070.
*----------------------------------------------------------------------*
* Follow Up           S E L E C T I O N    S C R E E N S        Tab 08 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1080 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk8 WITH FRAME TITLE text-008.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   pfcontyp   FOR zlmfoll-cont_ty,
   pfudate    FOR zlmfoll-folldt,
   pfcrdate   FOR zlmfoll-cont_dt.
SELECTION-SCREEN SKIP.
PARAMETERS:
   pfolcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN: END OF BLOCK blk8.

SELECTION-SCREEN: BEGIN OF BLOCK bl80 WITH FRAME TITLE text-080.

PARAMETERS:
  cbfconty   AS CHECKBOX DEFAULT 'X',
*  cbfdttm    AS CHECKBOX,
  cbffucdt   AS CHECKBOX,
  cbfnotes   AS CHECKBOX.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

*PARAMETERS:
*  cbrtype   AS CHECKBOX,
*  cbrname   AS CHECKBOX,
*  cbraddr   AS CHECKBOX,
*  cbrtel1   AS CHECKBOX,
*  cbrtel2   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl80.

SELECTION-SCREEN END OF SCREEN 1080.

*----------------------------------------------------------------------*
* Referral               S E L E C T I O N    S C R E E N S     Tab 09 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1090 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blk9 WITH FRAME TITLE text-009.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
  prreftyp   FOR zlmref-reftype,
  pcustref   for zlmref-custreffer,
  popenhse   for zlmref-openhousesponser.
SELECTION-SCREEN: END OF BLOCK blk9.

SELECTION-SCREEN: BEGIN OF BLOCK bl90 WITH FRAME TITLE text-090.
PARAMETERS:
  cbrtype   AS CHECKBOX DEFAULT 'X',
  cbrname   AS CHECKBOX,
  cbraddr   AS CHECKBOX,
  cbrtel1   AS CHECKBOX,
  cbrtel2   AS CHECKBOX,
  cbcstref  AS CHECKBOX,
  cbopnhse  AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bl90.

SELECTION-SCREEN END OF SCREEN 1090.

*----------------------------------------------------------------------*
* Status History      S E L E C T I O N    S C R E E N S        Tab 10 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1100 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blka WITH FRAME TITLE text-00a.
SELECTION-SCREEN SKIP.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
PARAMETERS:
   pstcnt(3)    TYPE n DEFAULT 999.
SELECTION-SCREEN SKIP.

SELECTION-SCREEN: END OF BLOCK blka.

SELECTION-SCREEN: BEGIN OF BLOCK bla0 WITH FRAME TITLE text-100.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
PARAMETERS:
  cbsltype   AS CHECKBOX,
  cbsstat    AS CHECKBOX,
  cbsdate    AS CHECKBOX,
  cbstime    AS CHECKBOX,
  cbsuser    AS CHECKBOX,
  cbcredt    AS CHECKBOX DEFAULT 'X',
  cbcrenm    AS CHECKBOX,
  cbchgdt    AS CHECKBOX,
  cbchgnm    AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK bla0.

SELECTION-SCREEN END OF SCREEN 1100.
*----------------------------------------------------------------------*
* Personal            S E L E C T I O N    S C R E E N S        Tab 11 *
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF SCREEN 1110 AS SUBSCREEN.

SELECTION-SCREEN: BEGIN OF BLOCK blkb WITH FRAME TITLE text-00b.
*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.
SELECT-OPTIONS:
   ppbirth   FOR zlmpers-birthdat.

SELECTION-SCREEN: END OF BLOCK blkb.

SELECTION-SCREEN: BEGIN OF BLOCK blb0 WITH FRAME TITLE text-110.

*SELECTION-SCREEN SKIP 2.
*SELECTION-SCREEN COMMENT 10(50)   text-999.

PARAMETERS:
  cbpname    AS CHECKBOX,
  cbpbirth   AS CHECKBOX DEFAULT 'X',
  cbphobby   AS CHECKBOX.

SELECTION-SCREEN: END OF BLOCK blb0.

SELECTION-SCREEN END OF SCREEN 1110.

This is the hide/unhide routine.


*____________________________________________ Screen Actions
AT SELECTION-SCREEN OUTPUT.
  PERFORM what_tab_am_i_on.
  CASE curr_screen_tab.
    WHEN '1010'.   " Base Options
      PERFORM contact_options_changed.
    WHEN '1030'.   " Contact
      PERFORM contact_options_changed.
*      PERFORM protect_contact_cb.
    WHEN '1040'.   " Finance
      PERFORM finance_options_changed.
*      PERFORM protect_contact_cb.
    WHEN OTHERS.
  ENDCASE.
  PERFORM tab_hide_unhide.
*___________________________________________  Initialization
INITIALIZATION.
* Tab Text
  pbase  = 'Base Options'.
  plead  = 'Lead General'.
  pcont  = 'Contacts'.
  pfin   = 'Financial'.
  pprop  = 'Property'.
  pmodel = 'Model of Intr'.
  pact   = 'Actions'.
  pfol   = 'Follow Ups'.
  pref   = 'Referral'.
  pstath = 'Statis Hist.'.
  ppers  = 'Personal'.
*&---------------------------------------------------------------------*
*&      Form  tab_hide_unhide
*&---------------------------------------------------------------------*
FORM tab_hide_unhide.

  LOOP AT SCREEN.
    CHECK screen-group3 = 'TAB'.
    CASE screen-name.
      WHEN 'PFIN'.
        IF cbfin = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pfintyp, pfintyp[].
        ENDIF.
      WHEN 'PPROP'.
        IF cbprop = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pownland, pownland[].
        ENDIF.
      WHEN 'PMODEL'.
        IF cbmodi = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: ppbedrm, ppbedrm[],
                 ppbaths, ppbaths[],
                 ppcompl, ppcompl[].
        ENDIF.
      WHEN 'PACT'.
        IF cbact = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pacontyp, pacontyp[],
                 pacrdate, pacrdate[].
        ENDIF.
      WHEN 'PFOL'.
        IF cbfol   = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: pfcontyp, pfcontyp[],
                 pfudate, pfudate[],
                 pfcrdate, pfcrdate[].
        ENDIF.
      WHEN 'PREF'.
        IF cbref = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
          CLEAR: prreftyp, prreftyp[].
        ENDIF.
      WHEN 'PSTATH'.
        IF cbstath = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
        ENDIF.
      WHEN 'PPERS'.
        IF cbpers = 'X'.
          screen-active = 1.
        ELSE.
          screen-active = 0.
        ENDIF.
    ENDCASE.
    MODIFY SCREEN.
  ENDLOOP.
ENDFORM.                    " tab_hide_unhide
*&---------------------------------------------------------------------*
*&      Form  what_tab_am_i_on
*&---------------------------------------------------------------------*
FORM what_tab_am_i_on.
  LOOP AT SCREEN.
    IF     screen-name CS 'BLOCK_1010'.
      curr_screen_tab = '1010'.
    ELSEIF screen-name CS 'BLOCK_1020'.
      curr_screen_tab = '1020'.
    ELSEIF screen-name CS 'BLOCK_1030'.
      curr_screen_tab = '1030'.
    ELSEIF screen-name CS 'BLOCK_1040'.
      curr_screen_tab = '1040'.
    ELSEIF screen-name CS 'BLOCK_1050'.
      curr_screen_tab = '1050'.
    ELSEIF screen-name CS 'BLOCK_1060'.
      curr_screen_tab = '1060'.
    ELSEIF screen-name CS 'BLOCK_1070'.
      curr_screen_tab = '1070'.
    ELSEIF screen-name CS 'BLOCK_1080'.
      curr_screen_tab = '1080'.
    ELSEIF screen-name CS 'BLOCK_1090'.
      curr_screen_tab = '1090'.
    ELSEIF screen-name CS 'BLOCK_1100'.
      curr_screen_tab = '1100'.
    ENDIF.
  ENDLOOP.

ENDFORM.                    " what_tab_am_i_on