Comment, Radio Button - Underline

Hej,
I didn't work for a long time with Selection Screens - neither my colleagues.. .)
Does anybody know how to get an underline for the comment, coding:
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 1(33) FOR FIELD s_le.
PARAMETERS: s_le RADIOBUTTON GROUP abc.
SELECTION-SCREEN END OF LINE.
We have no clue how to get a line below the comment that looks like you were doing it by using SELECT-OPTIONS or simple PARAMETER.
thanks in advance

Hi Boris,
To place underlines on the selection screen use:
SELECTION-SCREEN ULINE [[/]pos(len)] [MODIF ID key].
This statement generates an underlining line. If you do not use the pos(len) addition, a new underline is generated for the line below the current line, and the underline has the same length as the line. If you use the pos(len) addition, the underline begins at position pos in the current line and continues for a length of len characters. With several elements in one line, you can also specify (len) without pos. A slash (/) produces a line feed.
For pos you can specify a number, or one of the expressions pos_low or pos_high. pos_low and pos_high are the positions of the two input fields of a selection criterion.
http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/dba7a135c111d1829f0000e829fbfe/content.htm

Similar Messages

  • Disable an Input field with the help of a radio button selection.

    Hi Guys,
    I know it is a very basic question and also has many threads for the mentioned query. None of the threads gave me a real clue about the problem. It is as follows:
    Simply, I have an input field and there are two more radio buttons on the screen, say rd1, and rd2.
    Initially Rb_gtgr is active and input field is blank and disabled, and when i select Rb_selgr, input field should be active and mandatory. It means when i try to execute the code with out entering any value after it is enabled, an error message should appear. For this the code is as follows:
    AT SELECTION-SCREEN OUTPUT.
      PERFORM screen_grace_on.
    AT SELECTION-SCREEN ON p_grace.
      PERFORM check_grace_days.
    FORM screen_grace_on .
      DATA: l_v_grace TYPE char2.
      CONSTANTS: l_c_grace TYPE char7 VALUE 'P_GRACE'.
    l_v_grace = p_grace.
    CLEAR p_grace.
      IF rb_selgr EQ c_x.
        LOOP AT SCREEN.
          IF screen-group1 = 'ABC'.
            screen-required = 1.
           screen-active = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ELSE.
        LOOP AT SCREEN.
          IF screen-group1 = 'ABC'.
            screen-input = 0.
            screen-active = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
    ENDFORM.                    " SCREEN_GRACE_ON
    FORM check_grace_days.
      IF rb_selgr EQ c_x AND  p_grace EQ 0.
        PERFORM screen_grace_on.
        MESSAGE e492(/ams/ramfcmess1).          " Enter the number of Grace days
      ELSEIF rb_selgr EQ c_x AND p_grace GE 0.
        PERFORM screen_grace_on.
      ENDIF.
    ENDFORM.
    Ideally this code should work since in the PBO i.e., At selection screen output i am enabling the fields, and also when i select the second radio button i am also checking for the value too..
    I am working on 4.7 version of SAP. The Most interesting observation is it works fine for few variants, and not with others.
    Thank you

    Hi,
    Go through this following code,
    selection-screen begin of block B2 with frame title TEXT-005.
    selection-screen begin of line.
    parameters:     P_BIRPT type C radiobutton group RAD1 default 'X' user-command UCOMM.
    selection-screen comment 3(20) TEXT-002 for field P_BIRPT.
    selection-screen end of line.
    selection-screen begin of line.
    parameters:     P_COLRPT type C radiobutton group RAD1.
    selection-screen comment 3(20) TEXT-003 for field P_COLRPT.
    selection-screen end of line.
    selection-screen begin of line.
    parameters:     P_PAYRPT type C radiobutton group RAD1.
    selection-screen comment 3(20) TEXT-004 for field P_PAYRPT.
    selection-screen end of line.
    selection-screen end   of block B2.
    selection-screen begin of block B1 with frame title TEXT-001.
    select-options: SO_KTOKD for  KNA1-KTOKD modif id M4,
              SO_BLART for  BSIS-BLART modif id M2.
    parameters:     P_PAID   type ZCLEAR     modif id M3 as listbox visible length 20.
    selection-screen end   of block B1.
    at selection-screen output.
      loop at screen.
        if P_BIRPT eq 'X'.
          if SCREEN-GROUP1   = 'M2' or SCREEN-GROUP1 = 'M3' .
            SCREEN-INVISIBLE = '1'.
            SCREEN-ACTIVE    = '0'.
            modify screen.
          endif.
        elseif P_COLRPT eq 'X'.
          if SCREEN-GROUP1   = 'M3'.
            SCREEN-INVISIBLE = '1'.
            SCREEN-ACTIVE    = '0'.
            modify screen.
          endif.
        elseif P_PAYRPT eq 'X'.
          if SCREEN-GROUP1   = 'M2'.
            SCREEN-INVISIBLE = '1'.
            SCREEN-ACTIVE    = '0'.
            modify screen.
          endif.
          if SCREEN-GROUP1   = 'M4'.
            SCREEN-INVISIBLE = '1'.
            SCREEN-ACTIVE    = '0'.
            modify screen.
          endif.
        endif.
      endloop.
    Thanks
    Anil D

  • Radio button in three column in a single selection-screen

    Hi,
    I am trying to create radio buttons with three column within a single selection-screen.
    I.e.
    Column 1:
    radio1
    Column2:
    radio2
    radio3
    column3:
    radio4
    radio5
    radio6
    Also I wish to give three names(as headers) to each columns.Is is possible?If yes how?

    Hi,
    write as :
    SELECTION-SCREEN COMMENT /1(50) text-001.
    PARAMETERS: r1 RADIOBUTTON GROUP rad1.
    SELECTION-SCREEN COMMENT /1(30) text-002.
    PARAMETERS: r2 RADIOBUTTON GROUP rad1,
                r3 RADIOBUTTON GROUP rad1.
    SELECTION-SCREEN COMMENT /1(30) text-003.
    PARAMETERS: r4 RADIOBUTTON GROUP rad1,
                             r5 RADIOBUTTON GROUP rad1,
                             r6 RADIOBUTTON GROUP rad1.
    Regards,
    Srini.

  • Multiple sets of radio buttons no longer working

    Hello All:
    My first post so I apologize in advance if I don't do it
    properly.
    I have a few web forms that have multiple groups of radio
    buttons on them that are suddenly errorring out since we moved to
    CF 7. I started tinkering with the one form that I have posted the
    code for and kept cutting it down to the simplest code that begins
    to produce the error. If I just use 1 radio button group everything
    works fine, but the minute I add the second one, the whole thing
    throws a "Syntax error (missing operator) in query expression"
    message. Each radio button group has it's own group name and a
    checked value. It is very simple code and very frustrating why it
    has suddenly stopped working so any assistance is welcome.
    Here's the form code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
    Transitional//EN" "
    http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="
    http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html;
    charset=iso-8859-1" />
    <title>Untitled Document</title>
    </head>
    <body background="white" marginheight="0"
    marginwidth="0">
    <cfform action="testSub.cfm" method="POST">
    <table width="95%" border="0" cellpadding="0">
    <tr>
    <td width="24%"><img src="survey.jpg"
    border="0"></td>
    <td width="76%"><p>It is our desire to assure
    that MID is meeting the needs of
    our clients. xxxxxxx
    <p> </p>
    <p>*****************************************************<br>
    </p></td>
    </tr>
    <tr>
    <td colspan="2"><p>Please answer questions 1
    through 4 with a 1 - 5 rating, with 1 being POOR and 5 being
    EXCELLENT.</p>
    <p> You are not obligated to provide this
    information.</p>
    <p><font face="Arial, Helvetica, sans-serif"
    size="2">My Name (First &amp;
    Last):</font> <font face="Arial, Helvetica,
    sans-serif" size="2">
    <cfinput type="Text" name="poc" required="no" size="50"
    maxlength="50">
    <br>
    <b>1. Was
    your service technician polite and
    courteous?</b><br>
    <cfinput type="radio" name="polite" value="1">
    1
    <cfinput type="radio" name="polite" value="2">
    2
    <cfinput type="radio" name="polite" value="3" checked>
    3
    <cfinput type="radio" name="polite" value="4">
    4
    <cfinput type="radio" name="polite" value="5">
    5     </p>
    <p><br>
    <br>
    2. Was
    your service technician polite and
    courteous?</b><br>
    <cfinput type="radio" name="know" value="1">
    1
    <cfinput type="radio" name="know" value="2">
    2
    <cfinput type="radio" name="know" value="3" checked>
    3
    <cfinput type="radio" name="know" value="4">
    4
    <cfinput type="radio" name="know" value="5">
    5     </p>
    <input type="submit" name="btnSubmit" value="Submit My
    Comments!">
    <input type="reset" name="reset" value="Reset
    Form"><br>
    <br>
    </cfform>
    <tr>
    <td> </td>
    <td> </td>
    </tr>
    </table>
    </body>
    </html>
    The ACTION code
    <html>
    <head>
    <title>test</title>
    </head>
    <body>
    <CFIF IsDefined("FORM.btnSubmit")>
    <CFQUERY NAME="Add" datasource="newMID">
    INSERT INTO survey(
    poc,
    polite,
    know
    VALUES (
    '#poc#',
    '#polite#'
    '#know#',
    </CFQUERY>
    </CFIF>
    <cfoutput>
    Thank you. Your IT survey has been forwarded to our NHCPR IT
    mailbox.
    </cfoutput>
    <cfmail to="[email protected]"
    FROM="[email protected]"
    SUBJECT="IT Survey Form">
    Polite: #polite#
    Know: #know#
    POC (opt.): #poc#
    </cfmail>
    </body>
    </html>

    OK. I took out the extra comma. Put a space in after *survey*
    and put "form" in front of the variables in order to scope them. I
    got it to work just then and decided to add the next radio button
    and once again, the error message keeps coming up.
    Here's what it looks like now.
    ACTION
    code***********************************************************
    <html>
    <head>
    <title>test</title>
    </head>
    <body>
    <CFIF IsDefined("FORM.btnSubmit")>
    <CFQUERY NAME="Add" datasource="newMID">
    INSERT INTO survey (
    poc,
    polite,
    know,
    time
    VALUES (
    '#form.poc#',
    '#form.polite#',
    '#form.know#',
    '#form.time#'
    </CFQUERY>
    </CFIF>
    <cfoutput>
    Thank you. Your IT survey has been forwarded to our NHCPR IT
    mailbox.
    </cfoutput>
    <cfmail to="[email protected]"
    FROM="[email protected]"
    SUBJECT="IT Survey Form">
    Polite: #polite#
    Know: #know#
    POC (opt.): #poc#
    Timely: #time#
    </cfmail>
    </body>
    </html>
    The ERROR msg
    Error Executing Database Query.
    [Macromedia][SequeLink JDBC Driver][ODBC
    Socket][Microsoft][ODBC Microsoft Access Driver] Syntax error in
    INSERT INTO statement.
    The error occurred in
    C:\Inetpub\wwwroot\PaxNew\chiefOscar\testSub.cfm: line 20
    18 : '#form.polite#',
    19 : '#form.know#',
    20 : '#form.time#'
    21 : )
    22 :
    SQL INSERT INTO survey ( poc, polite, know, time ) VALUES (
    'kennedi', '3', '5', '3' )
    DATASOURCE newMID
    VENDORERRORCODE -3502
    SQLSTATE 42000
    Resources:
    Check the ColdFusion documentation to verify that you are
    using the correct syntax.
    Search the Knowledge Base to find a solution to your problem.
    Browser Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;
    SV1; InfoPath.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
    Remote Address 10.249.6.81
    Referrer
    http://205.115.107.22/chiefoscar/tsurvey.cfm
    Date/Time 29-Jan-08 02:05 PM
    Stack Trace (click to expand)

  • Win 7 Pro updates to Internet Explorer 11 every web page has blank frames and radio buttons. Updates show only IE11.

    This entry frame on your page has radio buttons, giving me some editing functions - Bold, Italic, Underline, Insert unordered List, Insert Ordered List, Insert Hyperlink, Remove Hyperlink, Insert HTML, etc... but
    I cannot see them.  Ever since updating Internet Explorer to ver 11, there is no going back to IE8.  Your Tech forum monitors keep rehashing the same links that do not answer this snafu.  Your Monitors suggest that the web sites are not running
    because they are not compatible with the newer versions of Internet Explorer - well, even Microsoft's websites?  When you create a new web interface, why would your coding team make it incompatible with your own company's sites? 
    The Monitors suggest our cards can't handle GPU and we should turn to software rendering.  My card is a GeForce GTX 50 TI and has, according to the manufacturer web site: "Microsoft®  DirectX® 11 Support
    DirectX 11 GPU with  Shader Model 5.0 support designed for ultra high performance in the new API’s  key graphics feature, GPU-accelerated tessellation."
    I have tried uninstalling and reinstalling IE and Microsoft must realize no customer wants to have the technical side string them along with pointless and futile misdirection to a garble of automatic chat responses that offer incomplete and unrelated fixes
    and then expect to gain points in the voting buttons that "this fixed my problem". 
    Microsoft: you are ignoring compatibility problems with your coding and pretending it is arises from hardware incompatibility or user stupidity.  Your code should be running seamlessly, should accommodate existing technologies, and be flexible enough
    to accept limitations of older hardware, older websites, and your monitors should march into Microsoft's development offices and demand answers ---- and fixes.  Has Microsoft gone into hiding when the latest technology show-piece isn't working for the
    rest of the world?  We do not exist in a research bubble.  We are here in the real world, with aging equipment and tight budgets, and we expect better from Microsoft.

    Hi ohernova,
    Sorry for the annoying issue you encountered and our develop team are trying our best to improve the performance of MS products, As I know, IE 11 was published after many technical tests, thus I suspect that it might be an individual case. I used to run
    IE 11 in my win7, and it works perfectly,    
    Here’re some test you may take into consideration:
    Make sure that you’ve installed all latest updates.
    Since your Monitors keeps suggesting that the web sites are not running because it’s a compatibility issue, I suggest you add one site to the compatibility view list for a test, (if you can find the settings in Tools>Compatibility view settings)
    Or click Win+F12, launch the F12 developer tool, click the last option, change the user agent string and document string to “10”, check whether the page can revert to normal.
    Regards
    Yolanda
    TechNet Community Support

  • Report should executed based on the radio buttons on the selection screen

    Hi everyone,
    Greets....................
    My scenario is I have 2 selection screen blocks on same screen..
    One selection screen block contains input parameters as follows
    Company Code  -  S_BUKRS
    Business Area -  S_GSBER
    Customer Code -  S_KUNNR
    Fiscal Area  -   S_GJAHR
    GL Account - S_HKONT
    Posting Date  -S_ZFBDT
    Ledger Type  -P_RLDNR
    Open Item Key Date -  P_ZFBDT
    Another selection screen block contains 2 radio buttons with the option as follows
    Collection Plan
    *Credit days summary.
    If i click Collection plan the report output should come based on the input parameters in first selection-screen block.
    If i click Credit days summary the report output should come based on the input parameters in first selection-screen block.
    Pls send me the sample code for this.
    Thanks in Advance
    Regards
    Raj kumar

    See the below folling example : it will have radio buttons and depends on radio button it will show output.
    REPORT ZPPR_BOM_INFOL_REPORT no standard page heading
                     line-size 160
                     line-count 60.
    ======================================================================
    Program Name : ZPPR_BOM_INFOL_REPORT
    Description  : This Program would be used for BOM List for a material*
                   and the component's where used list                   *
    Author       : Seshu                                                 *
    Date         : 07/24/2006                                            *
    MODIFICATION HISTORY                                                 *
    DATE    | AUTHOR   | CHANGE #   | DESCRIPTION OF MODIFICATION        *
    |----
    |----
    |----
    *12/04/06 | Seshu    | DEVK921821 | Removed new page for each material *
    ======================================================================
    Table definition                                                    *
    TABLES: mast,
            stko,
            stpo,
            T418,
            makt.
    TYPE - POOLS
    TYPE-POOLS: slis.
    Constants
    constants : c_tcode(4) type c value 'CS03',
                gc_formname_top_of_page TYPE slis_formname
                VALUE 'TOP_OF_PAGE'.
    Variables
    data : v_maktx like makt-maktx,
           wa_stko like stko.
    DATA:
    Objekttyp 'Material'
       otyp_mat(1) TYPE c VALUE '1',
       ootyp_mat(1) TYPE c VALUE 'M',
    Objekttyp 'kein Objekt'
       otyp_noo(1) TYPE c VALUE '2',
    Objekttyp 'Dokument'
       otyp_doc(1) TYPE c VALUE '3',
    Objekttyp 'Klasse'
       otyp_kla(1) TYPE c VALUE '4',
    Objekttyp 'Intramaterial'
       otyp_ntm(1) TYPE c VALUE '5'.
    maximal anzeigbare Menge
    data:   max_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999',
            ueberl_kz(1) TYPE c VALUE '*',
            min_num(7)  TYPE p DECIMALS 3 VALUE '9999999999.999-',
            b_flag(1) TYPE c VALUE 'X',
            ecfld(250) TYPE c,
            v_flag type c.
    ALV Variables
    DATA: gt_fieldcat TYPE slis_t_fieldcat_alv,
          gs_layout   TYPE slis_layout_alv,
          gs_keyinfo  TYPE slis_keyinfo_alv,
          gt_sp_group TYPE slis_t_sp_group_alv,
          gt_events   TYPE slis_t_event.
    DATA: g_repid LIKE sy-repid.
    DATA: gt_list_top_of_page TYPE slis_t_listheader,
                g_tabname_header TYPE slis_tabname,
                g_tabname_item   TYPE slis_tabname,
                g_save(1) TYPE c,
                gx_variant LIKE disvariant,
                g_variant LIKE disvariant,
                g_default(1) TYPE c,
                g_exit(1) TYPE c.
    Includes                                                             *
    INCLUDE .
    Internal Table Declaration                                           *
    DATA: t_mast LIKE STANDARD TABLE OF mast WITH HEADER LINE.
    *DATA: t_makt LIKE STANDARD TABLE OF makt WITH HEADER LINE.
    BOM Function module Related
    DATA: t_matcat  LIKE cscmat OCCURS 0 WITH HEADER LINE.
    Internal Table for Level by Level Function module
    DATA: t_stb  LIKE stpox OCCURS 0 WITH HEADER LINE.
    Get the Relevant data from FM
    DATA: BEGIN OF hd_tab OCCURS 0,
             stufe LIKE stpox-stufe,
             vwegx LIKE stpox-vwegx,
          END OF hd_tab.
    Final Output
    DATA: BEGIN OF alv_stb OCCURS 0.
            INCLUDE STRUCTURE stpox_alv.
    DATA:   info(3)   TYPE c,
          END OF alv_stb.
    DATA: BEGIN OF stb_orig.
            INCLUDE STRUCTURE stpox.
    DATA: END OF stb_orig.
    DATA: BEGIN OF stb_add.
            INCLUDE STRUCTURE stpol_add.
    DATA: END OF stb_add.
    Internal Table for STPO
    *-- BOM Line item
    TYPES: BEGIN OF ty_stpo,
           stlty TYPE stpo-stlty,
           stlnr TYPE stpo-stlnr,
           stlkn TYPE stpo-stlkn,
           stpoz TYPE stpo-stpoz,
           idnrk TYPE stpo-idnrk,
           meins TYPE stpo-meins,
           menge TYPE stpo-menge, "Component Qty
           END OF ty_stpo.
    DATA: t_stpo TYPE STANDARD TABLE OF ty_stpo WITH HEADER LINE.
    *-- BOM Header
    TYPES: BEGIN OF ty_stko,
           stlty TYPE stko-stlty,
           stlnr TYPE stko-stlnr,
           stlal TYPE stko-stlal,
           stkoz TYPE stko-stkoz,
           bmein TYPE stko-bmein,
           bmeng TYPE stko-bmeng,
           END OF ty_stko.
    DATA: t_stko TYPE STANDARD TABLE OF ty_stko WITH HEADER LINE .
    data : t_makt like makt occurs 0 with header line.
    DATA: BEGIN OF cl_clstab OCCURS 0,                          "YHG079407
             class LIKE klah-class,                             "YHG079407
             klart LIKE klah-klart,                             "YHG079407
             chked LIKE csdata-xfeld,                           "YHG079407
             noobj LIKE csdata-xfeld,                           "YHG079407
             dsply LIKE csdata-xfeld,                           "YHG079407
          END OF cl_clstab.
    *-- Header table
    TYPES: BEGIN OF ty_main_material,
           matnr TYPE mast-matnr, "Material
           werks TYPE mast-werks, "Plant
           maktx TYPE makt-maktx, "Description
           stlal TYPE mast-stlal, "Alternative BOM
           stlnr TYPE stko-stlnr, "BOM Number
           bmein TYPE stko-bmein, "UOM
           bmeng TYPE stko-bmeng, "Base Qty
           expand(1) TYPE c,      "Expanding Field
           END OF ty_main_material.
    DATA: t_main_material TYPE STANDARD TABLE OF ty_main_material WITH
          HEADER LINE.
    *-- Item (Component) Table
    TYPES: BEGIN OF ty_item_material,
           matnr TYPE mast-matnr, "Material
           werks TYPE mast-werks, "Plant
           idnrk TYPE stpo-idnrk, "Component (Material)
           maktx TYPE makt-maktx, "Description
           stlal TYPE mast-stlal, "Alternative BOM
           stlnr TYPE stpo-stlnr, "BOM Number
           meins TYPE stpo-meins, "UOM
           menge TYPE stpo-menge, "Base Qty
           END OF ty_item_material.
    DATA: t_item_material TYPE STANDARD TABLE OF ty_item_material WITH
          HEADER LINE.
    Selection Screen                                                     *
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    PARAMETERS: p_werks LIKE marc-werks DEFAULT '1000' OBLIGATORY.
    SELECT-OPTIONS s_stlal FOR mast-stlal .
    SELECT-OPTIONS s_stlan FOR mast-stlan DEFAULT '1'.
    SELECTION-SCREEN SKIP.
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    SELECTION-SCREEN SKIP.
    PARAMETERS: p_bomlst RADIOBUTTON GROUP g1 DEFAULT 'X'.
    SELECT-OPTIONS s_matnr FOR mast-matnr.
    SELECTION-SCREEN SKIP.
    PARAMETERS: p_compon RADIOBUTTON GROUP g1.
    SELECT-OPTIONS: s_idnrk FOR stpo-idnrk.
    SELECTION-SCREEN END OF BLOCK b2.
    SELECTION-SCREEN END OF BLOCK b1.
    selection-screen begin of block b03 with frame title text-b03.
    selection-screen begin of line.
    selection-screen comment 1(40) text-005.
    parameters: p_all radiobutton group r1 default 'X'.
    selection-screen end of line.
    selection-screen begin of line.
    selection-screen comment 1(40) text-006.
    parameters: p_one radiobutton group r1 .
    selection-screen end of line.
    selection-screen end of block b03.
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-003.
    PARAMETERS: p_vari LIKE disvariant-variant.
    SELECTION-SCREEN END OF BLOCK b3.
    At slection screen events                                            *
    *-- Process on value request
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_vari.
      PERFORM f4_for_variant.
    Intitialisation
    INITIALIZATION.
      g_repid = sy-repid.
      g_tabname_header = 'T_MAIN_MATERIAL'.
      g_tabname_item   = 'T_ITEM_MATERIAL'.
    *-- define keyinformation
      CLEAR gs_keyinfo.
      gs_keyinfo-header01 = 'MATNR'.
      gs_keyinfo-item01   = 'MATNR'.
      PERFORM e03_eventtab_build USING gt_events[].
      PERFORM e04_comment_build  USING gt_list_top_of_page[].
      PERFORM e07_sp_group_build USING gt_sp_group[].
      PERFORM e08_layout_build   USING gs_layout.
    Set Options: save variants userspecific or general
      g_save = 'A'.
      PERFORM variant_init.
    Get default variant
      gx_variant = g_variant.
      CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
           EXPORTING
                i_save     = g_save
           CHANGING
                cs_variant = gx_variant
           EXCEPTIONS
                not_found  = 2.
      IF sy-subrc = 0.
        p_vari = gx_variant-variant.
      ENDIF.
    S T A R T - O F - S E L E C T I O N *******************
    start-of-selection.
      if p_all = 'X'.
    Get the data from MAST and MAKT Table
        if p_bomlst = 'X'.
      Get the data Based On Material #
          perform get_data.
        else.
      Get the data Based On Component
          perform get_data_component.
        endif.
      else.
    Get the Single Level Report
    *-- Moved the fiedl catalog here inorder to change the layout based on
    *-- Selection
        PERFORM e01_fieldcat_init  USING gt_fieldcat[].
        PERFORM select_data.
      endif.
    E N D - O F - S  E  L  E  C  T  I  O  N *******************
    end-of-selection.
      if p_one = 'X'.
        perform alv.
      endif.
    User Command
    at line-selection.
    Interactive to CS03 Transaction
      case sy-ucomm.
        when 'PICK' or 'F2'.
          if not alv_stb-idnrk is initial .
            if not alv_stb-werks is initial.
              if not alv_stb-objty is initial.
                SET PARAMETER ID 'MAT' FIELD alv_stb-idnrk.
                SET PARAMETER ID 'WRK' FIELD alv_stb-werks.
                SET PARAMETER ID 'CSV' FIELD alv_stb-OBJTY.
                call transaction c_tcode and skip first screen.
              endif.
            endif.
          endif.
          clear alv_stb.
      endcase.
    *&      Form  get_data
          Get data from MAST and MAKT Table
    FORM get_data.
      data : wa_lines type sy-index.
      REFRESH : T_MAST,
                t_STB,
                t_MATCAT,
                alv_STB.
      CLEAR : T_MAST,
                t_STB,
                t_MATCAT,
                alv_STB.
    Get the data from MAST Table
    Get all the information from MAST - BOM Table
      SELECT * FROM mast INTO TABLE t_mast WHERE matnr IN s_matnr AND
                                                 werks = p_werks  AND
                                                 stlan IN s_stlan AND
                                                 stlal IN s_stlal.
      describe table t_mast lines  wa_lines.
      if wa_lines is initial.
        Write:/2 'List contains no data'.
        stop.
      endif.
      loop at t_mast.
        clear : v_maktx.
    Start of change  Seshu
    Reason - Remove the new page option
        if sy-tabix ne 1.
          skip 1.
        endif.
    End of Change  Seshu
    Get the material Description
        select single maktx from makt into  v_maktx
                                 where matnr = t_mast-matnr
                                 and   spras = 'E'.
    Get the material details from STKO Table
        select single * from stko into wa_stko
                        where STLTY = 'M'
                        and   STLNR = t_mast-stlnr
                        and   STLAL = t_mast-stlal.
    Main Header for Each Material
        format color 5 on.
        write:/2 'Material',20 'Material Description',65 'Alternative BOM',
             90 'Base Qty', 115 'Base Unit'.
        format color 5 off.
        format color 1 on.
        write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,
               115 wa_stko-BMEIN.
        format color 1 off.
    Use the Function Module and get the format level by level
        perform get_level_level.
      endloop.
    ENDFORM.                    " get_data
    Top of page                                                  *
    top-of-page.
      perform report_header .
    *&      Form  report_header
          text
    -->  p1        text
    <--  p2        text
    FORM report_header.
      new-page line-size 160 .
      format color col_heading intensified on.
      write:/ sy-uline(160) .
    *--- Write Company Name.
      perform calc_col_and_write using    text-h00
                                          sy-linsz.
    *--- Write Report Title.
      perform calc_col_and_write using    sy-title
                                          sy-linsz.
    *--- Write User Id, Date / Time, Program Id, Page etc.
      perform write_other_hdr_details.
      write:/ sy-uline(160) .
    ENDFORM.                    " report_header
    *&      Form  calc_col_and_write
          text
         -->P_TEXT_H00  text
         -->P_SY_LINSZ  text
    FORM calc_col_and_write USING    P_TEXT
                                     P_LINSZ.
      data: col1 type i,
             col2 type i,
              len  type i,
              str  type i.
      str  = strlen( p_text ).
      col1 = ( p_linsz / 2 ) - ( str / 2 ) .
      len  = p_linsz - col1 - 2.
      write: at  /1  '|'.
      write: at  col1 p_text,
             at  sy-colno(len) space.
      write  at  160 '|'.
    ENDFORM.                    " calc_col_and_write
    *&      Form  write_other_hdr_details
          text
    -->  p1        text
    <--  p2        text
    FORM write_other_hdr_details.
      data: col1 type i,
              col2 type i,
              len  type i.
      col1 = 3.
      write:/1 '|'.
      write: at  col1 'UserId  : ',
                      sy-uname.
      len = sy-linsz - 1.
      write at sy-colno(len) space.
      col2 = sy-linsz - 18.
      write: at col2 'Date: ',
                     sy-datum mm/dd/yyyy.
      write: at sy-linsz '|'.
      write:/1 '|'.
      write: at  col1 'ReportId: ',
                      sy-repid.
      write at sy-colno(len) space.
      col2 = sy-linsz - 18.
      write: at col2 'Page: ',
                      sy-pagno.
      write: at sy-linsz '|'.
    ENDFORM.                    " write_other_hdr_details
    *&      Form  get_data_component
          Get the data based on Component level
    FORM get_data_component.
      data wa_lines type i.
    *-- Get the BOM item details
      SELECT  stlty stlnr stlkn stpoz idnrk meins menge
              FROM stpo
              INTO TABLE t_stpo
      WHERE   idnrk IN s_idnrk.
      IF sy-subrc = 0.
        CLEAR wa_lines.
        DESCRIBE TABLE t_stpo LINES wa_lines.
        IF wa_lines > 0.
          SELECT  stlty stlnr stlal stkoz bmein bmeng
                  FROM stko
                  INTO TABLE t_stko
                  FOR ALL ENTRIES IN t_stpo
          WHERE stlnr = t_stpo-stlnr.
          CLEAR wa_lines.
          DELETE ADJACENT DUPLICATES FROM t_stko COMPARING ALL FIELDS.
          DESCRIBE TABLE t_stko LINES wa_lines.
          IF wa_lines > 0.
    *-- Get the BOM item details
            SELECT * FROM mast INTO TABLE t_mast FOR ALL ENTRIES IN t_stko
                                                WHERE werks = p_werks  AND
                                                  stlnr = t_stko-stlnr
                                                  and stlal in s_stlal.
          ENDIF.
        ENDIF.
      else.
        Write:/2 'List contains no data'.
        stop.
      endif.
      loop at t_mast.
        clear : v_maktx.
    Start of change  Seshu
    Reason - Remove the new page option
        if sy-tabix ne 1.
          skip 1.
        endif.
    End of change    Seshu
    Get the material Description
        select single maktx from makt into  v_maktx
                                 where matnr = t_mast-matnr
                                 and   spras = 'E'.
    Get the material details from STKO Table
        select single * from stko into wa_stko
                        where STLTY = 'M'
                        and   STLNR = t_mast-stlnr
                        and   STLAL = t_mast-stlal.
    Main Header for Each Material
        format color 5 on.
        write:/2 'Material',20 'Material Description',65 'Alternative BOM',
             90 'Base Qty', 115 'Base Unit'.
        format color 5 off.
        format color 1 on.
        write:/2 t_mast-matnr,20 v_maktx,65 wa_stko-STLAL, 85 wa_stko-BMENG,
               115 wa_stko-BMEIN.
        format color 1 off.
    Use the Function Module and get the format level by level
        perform get_level_level.
        clear : t_mast.
      endloop.
    ENDFORM.                    " get_data_component
    *&      Form  obj_ident
          text
    FORM obj_ident.
    weder Mat noch Doc
      CHECK: T_stb-objty NE otyp_mat,
             T_stb-objty NE ootyp_mat,
             T_stb-objty NE otyp_doc,
             T_stb-objty NE otyp_ntm.
    ?T418-WA schon ok
    nein
      IF T_stb-postp NE t418-postp.
        T418 einlesen
        PERFORM t418_lesen USING T_stb-postp.
      ENDIF.
      PERFORM cl_clstab_maint.
    ?MatNr-Eingabe bei diesem PosTyp moeglich
      und keine Textposition
    trifft zu
      IF     t418-matin NE '-'
         AND t418-txpos IS INITIAL.
        aktuelles Objekt ist Material NLAG
        T_stb-objty = '1'.
        PosKurztext in ObjKurztext uebernehmen.
        T_stb-ojtxp = T_stb-potx1.
        MODIFY T_stb.
      ELSE.
        IF T_stb-objty IS INITIAL.
          T_stb-objty = '2'.
          MODIFY T_stb.
        ENDIF.
      ENDIF.
    ENDFORM.                    " obj_ident
    *&      Form  t418_lesen
          text
         -->P_T_STB_POSTP  text
    FORM t418_lesen USING   lkl_postp LIKE stpo-postp.
    T418-WA initialisieren
      CLEAR:
         t418.
    Key angeben
      t418-postp = lkl_postp.
    PosTypDefinition lesen
      READ TABLE t418.
    ENDFORM.                    " t418_lesen
    *&      Form  cl_clstab_maint
          text
    FORM cl_clstab_maint.
    nur fuer Klassenpositionen
      CHECK t_STB-OBJTY EQ OTYP_KLA.
    Teilkey der Klassenpositionentabelle
      CL_CLSTAB-CLASS = t_STB-CLASS.
      CL_CLSTAB-KLART = t_STB-KLART.
    Klassenpositionentabelle lesen
      READ TABLE CL_CLSTAB
         WITH KEY CL_CLSTAB(21)
         BINARY SEARCH.
    aktuelle Klassenposition bereits in Klassenpositionentabelle
    nein
      IF SY-SUBRC <> 0.
        Klassenposition in Klassenpositionentabelle hinzufuegen
        INSERT CL_CLSTAB INDEX SY-TABIX.
      ENDIF.
    ENDFORM.                    " cl_clstab_maint
    *&      Form  alv_stb_prep
          Printing the data as LEVEL BY LEVEL
    FORM alv_stb_prep.
      CLEAR:
          alv_stb,
          stb_orig,
          stb_add.
      IF t_stb-hdnfo IS INITIAL.
        stb_orig = t_stb.
        IF t_stb-mngko >= max_num.
          stb_add-ovfls = ueberl_kz.
        ELSE.
          IF t_stb-mngko <= min_num.
            stb_add-ovfls = ueberl_kz.
          ELSE.
            CLEAR: stb_add-ovfls.
          ENDIF.
        ENDIF.
        IF NOT t_stb-xtlnr IS INITIAL.
          stb_add-bomfl = b_flag.
        ENDIF.
        IF    NOT t_stb-knobj IS INITIAL
           OR NOT t_stb-class IS INITIAL
           OR NOT t_stb-kzclb IS INITIAL.
          stb_add-knofl = 'X'.
        ENDIF.
      ELSE.
        CHECK t_stb-stufe > 1.
        alv_stb-info = 'C30'.
        IF t_stb-ttidx <> t_matcat-index.
          READ TABLE t_matcat INDEX t_stb-ttidx.
        ENDIF.
        stb_orig-hdnfo = t_stb-hdnfo.
        stb_orig-stufe = t_stb-stufe - 1 .
        stb_orig-ojtxp = t_stb-ojtxb.
        IF NOT t_stb-altst IS INITIAL.
          stb_orig-stlal = t_stb-stlal.
          IF stb_orig-stlal(1) EQ '0'.
            stb_orig-stlal(1) = ' '.
          ENDIF.
        ENDIF.
        stb_orig-idnrk = t_matcat-matnr.
      ENDIF.
      CLEAR:
        stb_add-dobjt,
        stb_add-objic.
      CASE t_stb-objty.
        WHEN otyp_mat.
          WRITE: stb_orig-idnrk TO ecfld.
          stb_add-objic = '@A6@'.
        WHEN 'M'.
          WRITE: stb_orig-idnrk TO ecfld.
          stb_add-objic = '@A6@'.
        WHEN otyp_noo.
          WRITE: stb_orig-potx1 TO ecfld.
          stb_add-objic = '@0Q@'.
        WHEN otyp_doc.
          write stb_orig-doknr to ecfld.                        "note 489354
          IF ecfld CP '*# '. ENDIF.                             "note 489354
          sy-fdpos = sy-fdpos + 1.                              "note 489354
          CONCATENATE
    *d      stb_orig-doknr                                      "note 489354
            stb_orig-dokar
            stb_orig-doktl
            stb_orig-dokvr
    *d      INTO ecfld                                          "note 489354
            INTO ecfld+sy-fdpos                                 "note 489354
            SEPARATED BY space.
          stb_add-objic = '@AR@'.
        WHEN otyp_kla.
          CONCATENATE
            stb_orig-class
            stb_orig-klart
            INTO ecfld
            SEPARATED BY space.
          stb_add-objic = '@7C@'.
        WHEN otyp_ntm.
          WRITE: stb_orig-intrm TO ecfld.
        WHEN OTHERS.
      ENDCASE.
    *d CONDENSE ecfld.                                          "note 515408
      stb_add-dobjt = ecfld(40).
      CLEAR: ecfld.
      WRITE stb_orig-stufe TO stb_add-dstuf NO-SIGN.
    *d  MOVE-CORRESPONDING stb_orig TO alv_stb.                 "note 331962
      MOVE-CORRESPONDING stb_add TO alv_stb.
      MOVE-CORRESPONDING stb_orig TO alv_stb.                   "note 331962
      APPEND alv_stb.
    ENDFORM.                    " alv_stb_prep
    *&      Form  get_level_level
          text
    FORM get_level_level.
      REFRESH : T_STB,
                T_MATCAT,
                ALV_STB.
      CLEAR : T_STB,
              T_MATCAT,
              ALV_STB.
      CALL FUNCTION 'CS_BOM_EXPL_MAT_V2'
           EXPORTING
                capid                 = 'PP01'
                datuv                 = sy-datum
                mktls                 = 'X'
                mehrs                 = 'X'
                mtnrv                 = t_mast-matnr
                stlal                 = '01'
                stlan                 = '1'
                stpst                 = 0
                svwvo                 = 'X'
                werks                 = p_werks
                vrsvo                 = 'X'
           TABLES
                stb                   = t_stb
                matcat                = t_matcat
           EXCEPTIONS
                alt_not_found         = 1
                call_invalid          = 2
                material_not_found    = 3
                missing_authorization = 4
                no_bom_found          = 5
                no_plant_data         = 6
                no_suitable_bom_found = 7
                conversion_error      = 8
                OTHERS                = 9.
      IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      CLEAR: hd_tab.
            Entry der KlassenstatusTab. initialisieren
             cl_clstab,
            Entry 'Objekte von Klassen' initialisieren
             cl_objmemo.
      REFRESH: hd_tab.
      SORT t_matcat BY index ASCENDING.
    Get the All levels
      loop at t_stb.
        IF NOT t_stb-hdnfo IS INITIAL.
          EXIT.
        ENDIF.
    Object Identification
        PERFORM obj_ident.
        READ TABLE hd_tab
            WITH KEY stufe = t_stb-stufe
                     vwegx = t_stb-vwegx
            BINARY SEARCH
            TRANSPORTING NO FIELDS.
        ?gibt es diesen Satz schon
        nein
        IF sy-subrc <> 0.
           dann in SFP-Infosatzverweistab. aufnehmen
    *d       APPEND HD_TAB.                                       "HGH054648
          hd_tab-stufe = t_stb-stufe.
                                                                "HGH054648
          hd_tab-vwegx = t_stb-vwegx.
                                                                "HGH054648
          INSERT hd_tab                                         "HGH054648
            INTO hd_tab                                         "HGH054648
            INDEX sy-tabix.                                     "HGH054648
           PosNr initialisieren
          CLEAR: t_stb-posnr.
           SFP-InfosatzKz setzen
          t_stb-hdnfo = 'X'.
            stb-objty = otyp_mat.
                                                                "HGE246532
           als SFP-Infosatz in die STB aufnehmen
          append t_stb.
        ENDIF.
    *del  ENDIF.
        clear t_stb.
      endloop.
      SORT t_stb ASCENDING BY stufe
                  index ASCENDING
    *del        POSNR ASCENDING.                                  "HGC062735
                  posnr ASCENDING                               "HGC062735
                  hdnfo DESCENDING.
      LOOP AT t_stb.
        T_stb-index = sy-tabix.
        MODIFY T_stb.
        PERFORM alv_stb_prep.
      ENDLOOP.
    Displays the Value as Level by Level
      loop at ALV_stb.
        if sy-tabix = 1.
          format color 3 on.
          write:/2 'Level',12 'Item',22 'Component',
          42 'Material Description',82 'Base Qty',
          107 'Base Unit',120 'Assembly Indicator'.
          format color 3 on.
        endif.
        if alv_stb-MEINs is initial.
          v_flag = 'X'.
        endif.
        if v_flag = 'X'.
          format color 5 on.
          write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                 42 alv_stb-OJTXP.
          format color 1 off.
        else.
          if alv_stb-STUFE = '1'.
            format color 1 on.
            write:/2 ALV_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs, 120 alv_stb-bomfl .
            format color 1 off.
          elseif alv_stb-STUFE = '2'.
            format color 2 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl.
            format color 2 off.
          elseif alv_stb-STUFE = '3'.
            format color 3 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 3 off.
          elseif alv_stb-STUFE = '4'.
            format color 4 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 4 off.
          elseif alv_stb-STUFE = '5'.
            format color 5 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color 5 off.
          elseif alv_stb-STUFE = '6'.
            format color 7 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl.
            format color 6 off.
          elseif alv_stb-STUFE = '7'.
            format color 7 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                   42 alv_stb-OJTXP,72 alv_stb-mngko,
                   107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color  7 off.
          else.
            format color 1 on.
            write:/2 alv_stb-STUFE,12 alv_stb-posnr,22 alv_stb-idnrk,
                    42 alv_stb-OJTXP,72 alv_stb-mngko,
                    107 alv_stb-MEINs,120 alv_stb-bomfl .
            format color  1 off.
          endif.
        endif.
        hide: alv_stb.
        clear : alv_stb.
        clear v_flag.
      endloop.
    ENDFORM.                    " get_level_level
    *&      Form  f4_for_variant
          text
    FORM f4_for_variant.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
             EXPORTING
                  is_variant          = g_variant
                  i_save              = g_save
                  i_tabname_header    = g_tabname_header
                  i_tabname_item      = g_tabname_item
              it_default_fieldcat =
             IMPORTING
                  e_exit              = g_exit
                  es_variant          = gx_variant
             EXCEPTIONS
                  not_found = 2.
      IF sy-subrc = 2.
        MESSAGE ID sy-msgid TYPE 'S'      NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        IF g_exit = space.
          p_vari = gx_variant-variant.
        ENDIF.
      ENDIF.
    ENDFORM.                    " f4_for_variant
          FORM E03_EVENTTAB_BUILD                                       *
    -->  E03_LT_EVENTS                                                 *
    FORM e03_eventtab_build USING e03_lt_events TYPE slis_t_event.
      DATA: ls_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                i_list_type = 0
           IMPORTING
                et_events   = e03_lt_events.
      READ TABLE e03_lt_events WITH KEY name = slis_ev_top_of_page
                               INTO ls_event.
      IF sy-subrc = 0.
        MOVE gc_formname_top_of_page TO ls_event-form.
        APPEND ls_event TO e03_lt_events.
      ENDIF.
    ENDFORM.
          FORM E04_COMMENT_BUILD                                        *
    -->  E04_LT_TOP_OF_PAGE                                     

  • NO-DISPLAY option for Radio buttons

    Hi All,
    I want to hide the 2 radio buttons on the selection screen using the NO-DISPLAY option. when i worked with that its giving an error like 'no-display and radio button group can be specified together'.
    my question was is it possible to use NO-DISPLAY option with radio buttons?
    Thanks
    Kumar.

    See this sample code
    SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-h01.
    *Radio button for Process PO invoice
    PARAMETERS :   rb_po   RADIOBUTTON GROUP inv USER-COMMAND rad.
    " PO Invoice
    *Radio button for FI Invoice
    PARAMETERS :   rb_fi   RADIOBUTTON GROUP inv.
    " FI Invoice
    *Radio button for Process PO & FI Invoice
    PARAMETERS :     rb_pofi   RADIOBUTTON GROUP inv.
    " PO & FI Invoice
    SELECTION-SCREEN END OF BLOCK b3.
    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
    SELECTION-SCREEN SKIP.
    SELECT-OPTIONS:
                    s_bukrs   FOR  rbkp-bukrs,       "Company Code
                    s_ekorg   FOR  ekko-ekorg NO INTERVALS MODIF ID md2,
                                                 "Purchasing Org.
                s_ekgrp   FOR  ekko-ekgrp NO INTERVALS MODIF ID md2,
                                                     "Purchasing Group
                s_werks   FOR  rseg-werks NO INTERVALS MODIF ID md2,
                                           "Plant
                    s_lifnr   FOR  rbkp-lifnr NO INTERVALS,
                                                     "Vendor
                s_matkl   FOR  ekpo-matkl NO INTERVALS
                                              MODIF ID md1,
                                                     "Material Group
                s_belnr   FOR  rbkp-belnr NO INTERVALS,
                                                     "Invoice Number
                    s_ebeln   FOR  rseg-ebeln NO INTERVALS MODIF ID md2,
                                                     "Purchasing Document No
                    s_gjahr   FOR  rbkp-gjahr NO INTERVALS,
                                                    "Fiscal year
                s_budat   FOR  rbkp-budat NO INTERVALS,
                                                    "Posting date
                    s_blart   FOR  bkpf-blart NO INTERVALS,
                                                    " Document Type
                    s_bldat   FOR  bkpf-bldat NO INTERVALS,
                                                    " Invoice Date
                s_usnam   FOR  rbkp-usnam NO INTERVALS.
    "User
    *Report type
    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.
    SELECTION-SCREEN BEGIN OF LINE.
    *Radio button for User Report
    PARAMETERS :     rb_user  RADIOBUTTON GROUP za DEFAULT 'X' <b>USER-COMMAND rad MODIF ID md2.</b>"User report
    SELECTION-SCREEN COMMENT 3(20) text-003 FOR FIELD rb_user MODIF ID md2.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    *Radio button for Managing Report
    PARAMETERS :     rb_man   RADIOBUTTON GROUP za
                                          <b>MODIF ID md2.</b>
    "Management Report
    SELECTION-SCREEN COMMENT 3(20) text-004 FOR FIELD rb_man
                                            MODIF ID md2.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN END  OF BLOCK b2.
    SELECTION-SCREEN END  OF BLOCK b1.
    AT SELECTION-SCREEN OUTPUT.
    * Checking Radiobuttons and modifing Material Group field  .
      PERFORM f13000_check_radio.
    FORM f13000_check_radio.
    * When the FI button is selected hide the fields under group md1 and MD2
      LOOP AT SCREEN.
        IF screen-group1 = 'MD2'
        OR screen-group1 = 'MD1'.
          IF rb_fi  = c_x
          OR rb_pofi = c_x.
            screen-active = 0.
          ELSE.
            screen-active = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    * If the user output radiobutton is checked then make the screen
    * input of Material Group off
    <b>  LOOP AT SCREEN.
        IF screen-group1 = 'MD1'.
          IF rb_user = 'X'.
            screen-active = 0.
          ELSE.
            screen-active = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.</b>
      IF rb_user = 'X'.
    *   When display for material group is off
    *   then refresh the select option for material
    *   group
        REFRESH s_matkl.
      ENDIF.
    ENDFORM.      " f13000_check_radio
    hope this helps.

  • Radio button and select option in one line

    Hi,
    I have an requirement in which i need to display the radio button and select option in one line in an report program.
    How can i do it? 
    Regards,
    Arun.

    Hi,
    Try this code.
    TABLES: bkpf.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS: p_r1 RADIOBUTTON GROUP a.
    SELECTION-SCREEN COMMENT 4(20) text-001 FOR FIELD p_r1.
    SELECTION-SCREEN COMMENT 30(12) text-002 FOR FIELD p_date.
    SELECTION-SCREEN POSITION 39.
    SELECT-OPTIONS: p_date FOR bkpf-budat OBLIGATORY.
    SELECTION-SCREEN END OF LINE.
    PARAMETERS: p_r2 RADIOBUTTON GROUP a.
    text-001 = " Radio button"
    text-002 = "Posting date"

  • Radio buttons in a single line

    hi all,
    how to get more than one radio buttons in a single line in a selection screen?
    please give the solution as it is urgent.
    i will surely reward ur efforts.
    thanks
    sanjeev

    Hi,
    check this this will be helpful for u.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS:WIP_ONLY RADIOBUTTON GROUP RAD1.
    SELECTION-SCREEN COMMENT 2(15) WIP FOR FIELD WIP_ONLY.
    PARAMETERS:HIS_ONLY RADIOBUTTON GROUP RAD1 default 'X'.
    SELECTION-SCREEN COMMENT 20(15) HIS FOR FIELD HIS_ONLY.
    PARAMETERS:BOTH RADIOBUTTON GROUP RAD1.
    SELECTION-SCREEN COMMENT 40(15) WIP_HIS FOR FIELD BOTH.
    SELECTION-SCREEN END OF LINE.
    at selection-screen output.
    WIP = 'Work-in-Process Only'.
    HIS = 'History Only'.
    WIP_HIS = 'Both WIP & HIS'.
    regards,
    bharat.

  • Creating a form with radio buttons that users can fill, save, and e-mail back

    Hi all,
    I am new here, so please forgive me if this answer has already been answered. I have been looking around and still have not been able to find an answer.
    I have created a pdf in InDesign and opened it in Acrobat to create a form out of that existing PDF. The form needs to contain radio buttons and text fields. When I save it to test it out on Adobe Reader (for the typical user), it says that I am only allowed to save it in its original form (without any of the changes) thereby making this form useless (I do not want users to print it out; I'd like them to email the entire PDF back to me).
    I've looked online and found some answers saying that I would just need to enable commenting, but when I tried that, I could no longer select any of the radio buttons in Adobe Reader.
    Any suggestions?
    Thanks in advance.
    I'm on a Mac using Adobe Acrobat 7 Professional.

    You won't see that in 7. It didn't exist until Acrobat 8. Though It would work with PDF's opened by Reader 7.
    The only choice you have is connacting someone at Adob coporate and finding out how to sign up to a Service they have that will llow you to do that.
    Caution: its very, very expensive and unless  your fortune 1000 company you can't afford it.
    OR you could upgrade to Acrobat 10 (if you have a Machine capable of running it - Intel Only) or Acrobat 9 (PPC and INTEL).
    Note the feature they speak of only allows for 500 instances of any one PDF set up to do so.

  • Ampersand in a radio button text

    Please, can somebody tell me how do I get an ampersand (&) in a radio button text using screen painter.
    Thanks

    On the Element list/General attr. tab I have:
    Name     Type     Line     Column     Format
    G_PRJ     Radio     21     30     CHAR
    G_PRJ     Radio     21     32     
    On the Element list/Texts/ I/O templates tab I have:
    Name     Type     Text
    G_PRJ     Radio     _
    G_PRJ     Radio     P&S
    With these settings, I am getting a fullstop instead of &, so adding the text in the element list didn't work for me. BTW The text where it says _ (underline) is read-only.
    Thanks.

  • Radio Buttons on Selection Screen

    Hi,
    I have four radio buttons on selection screen in a frame, all belonging to the same group.
    When the program is called using transaction 1, first two radio buttons are displayed. When the program is called using transaction 2, bottom two radio must be displayed.
    I am doing this using the following code.
    The problem is : When last two are displayed, there is empty space left on the top and first two are displayed there is empty space left in the bottom of the frame. How can this be taken care of such there are no empty spaces in the box frame?
    Code:
    Radio Buttons for Table Name
    SELECTION-SCREEN BEGIN OF BLOCK bl1 WITH FRAME TITLE text-005.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : p_ot   RADIOBUTTON GROUP grp1 MODIF ID one.
    SELECTION-SCREEN COMMENT 5(31) text-001 FOR FIELD p_ot.
    SELECTION-SCREEN END   OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : p_exp   RADIOBUTTON GROUP grp1 MODIF ID one.
    SELECTION-SCREEN COMMENT 5(31) text-002 FOR FIELD p_exp.
    SELECTION-SCREEN END   OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : p_cost   RADIOBUTTON GROUP grp1 MODIF ID two.
    SELECTION-SCREEN COMMENT 5(31) text-003 FOR FIELD p_cost.
    SELECTION-SCREEN END   OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS : p_att   RADIOBUTTON GROUP grp1 MODIF ID two.
    SELECTION-SCREEN COMMENT 5(31) text-004 FOR FIELD p_att.
    SELECTION-SCREEN END   OF LINE.
    SELECTION-SCREEN END OF BLOCK bl1.
    Initialization
    INITIALIZATION.
    Display Table Names depending on transaction calling the program
      PERFORM display_table_names.
    FORM display_table_names.
      DATA : l_mod_id(3) TYPE c.
      IF sy-tcode EQ 'ZVTEST1'.
        l_mod_id = 'ONE'.
      ELSEIF sy-tcode EQ 'ZVTEST2'.
        l_mod_id = 'TWO'.
      ENDIF.
      LOOP AT SCREEN.
        IF screen-group1 EQ l_mod_id.
          screen-invisible   = '1'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    ENDFORM.                    " display_table_names

    Hi,
    REPORT  Z_SALES MESSAGE-ID ZZ                          .
    *                             Variables                                *
    DATA: IT_BDCDATA LIKE BDCDATA OCCURS 0 WITH HEADER LINE,
          IT_MSGS LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    DATA: V_FILE TYPE STRING.
    *                         Internal Tables                              *
    DATA: BEGIN OF IT_SALES OCCURS 0,
            AUART,
            VKORG,
            VTWEG,
            BSTKD,
            KUNNR_KUNAG,
            KUNNR_KUNWE,
            KETDAT,
            KPRGBZ,
            PRSDT,
            BSTKD_1,
            KUNNR_KUNAG1,
            KUNNR_KUNWE1,
            KETDAT_1,
            KPRGBZ_1,
            PRSDT_1,
            ZTERM_1,
            INCO1,
            INCO2,
            MABNR,
            KWMENG,
            BSTKD_2,
            KUNNR_KUNAG2,
            KUNNR_KUNWE2,
            KETDAT_2,
            KPRGBZ_2,
            PRSDT_2,
            ZTERM_2,
            INCO1_1,
            INCO2_2,
            KSCHL,
            KBETR,
          END OF IT_SALES.
    *                       Selection-Screen                               *
    *Selection Screen 1
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
    PARAMETERS : P_FILE(25) TYPE C,
                 O_FILE(25) TYPE C.
    SELECTION-SCREEN END OF BLOCK B1.
    *Selection Screen 2
    SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
    PARAMETERS: CAL_TRA RADIOBUTTON GROUP G1 USER-COMMAND FLAG,
                SESSION RADIOBUTTON GROUP G1 DEFAULT 'X'.
    SELECTION-SCREEN END OF BLOCK B2.
    *Selection Screen 3
    SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.
    PARAMETERS: MODE DEFAULT 'X' MODIF ID BL1,
                UPDATE DEFAULT 'X' MODIF ID BL1.
    SELECTION-SCREEN END OF BLOCK B3.
    *Selection Screen 4
    SELECTION-SCREEN BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-003.
    PARAMETERS: SES_NAM(25) MODIF ID BL2,
                KEP_TRAS TYPE C DEFAULT 'X' MODIF ID BL2,
                LOC_DATE TYPE SY-DATUM MODIF ID BL2,
                USER TYPE SY-UNAME DEFAULT SY-UNAME MODIF ID BL2.
    SELECTION-SCREEN END OF BLOCK B4.
    *                     At  Selection-Screen Output                      *
    AT SELECTION-SCREEN OUTPUT.
      IF CAL_TRA = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'BL1'.
            SCREEN-ACTIVE = '1'.
          ENDIF.
          IF SCREEN-GROUP1 = 'BL2'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF SESSION = 'X'.
        LOOP AT SCREEN.
          IF SCREEN-GROUP1 = 'BL1'.
            SCREEN-ACTIVE = '0'.
          ENDIF.
          IF SCREEN-GROUP1 = 'BL2'.
            SCREEN-ACTIVE = '1'.
          ENDIF.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
    *                     At  Selection-Screen                             *
    AT SELECTION-SCREEN.
      PERFORM VALIDATE_MANDATORY_FIELDS.
    *****************            INITIALIZATION         ********************
    INITIALIZATION.
      LOC_DATE  = SY-DATUM - 1.
    *                       Start of Selection                             *
    START-OF-SELECTION.
      V_FILE = P_FILE.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          FILENAME                = V_FILE
          FILETYPE                = 'ASC'
          HAS_FIELD_SEPARATOR     = ' '
        TABLES
          DATA_TAB                = IT_SALES
        EXCEPTIONS
          FILE_OPEN_ERROR         = 1
          FILE_READ_ERROR         = 2
          NO_BATCH                = 3
          GUI_REFUSE_FILETRANSFER = 4
          INVALID_TYPE            = 5
          NO_AUTHORITY            = 6
          UNKNOWN_ERROR           = 7
          BAD_DATA_FORMAT         = 8
          HEADER_NOT_ALLOWED      = 9
          SEPARATOR_NOT_ALLOWED   = 10
          HEADER_TOO_LONG         = 11
          UNKNOWN_DP_ERROR        = 12
          ACCESS_DENIED           = 13
          DP_OUT_OF_MEMORY        = 14
          DISK_FULL               = 15
          DP_TIMEOUT              = 16
          OTHERS                  = 17.
      IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    *&      Form  VALIDATE_MANDATORY_FIELDS
    *       text
    FORM VALIDATE_MANDATORY_FIELDS.
      IF P_FILE IS INITIAL OR O_FILE IS INITIAL.
        MESSAGE E000 WITH 'ENTER BOTH THE FILE NAMES'.
      ENDIF.
      IF CAL_TRA = 'X'.
        IF MODE IS INITIAL OR UPDATE IS INITIAL.
          MESSAGE E000 WITH 'ENTER BOTH THE OPTIONS'.
        ENDIF.
        IF SY-SUBRC <> 0.
          IF MODE <> 'A' OR MODE <> 'E' OR MODE <> 'N'
          OR MODE <> 'a' OR MODE <> 'e' OR MODE <> 'n'.
            MESSAGE E000 WITH 'Mode should be either A, E or N'.
          ENDIF.
          IF UPDATE <> 'S' OR UPDATE <> 'A'
          OR UPDATE <> 's' OR UPDATE <> 'a'.
            MESSAGE E000 WITH 'Mode should be either S or A'.
          ENDIF.
        ENDIF.
      ENDIF.
      IF SESSION = 'x'.
        IF SES_NAM   IS INITIAL
        OR KEP_TRAS  IS INITIAL
        OR LOC_DATE  IS INITIAL
        OR USER      IS INITIAL.
          MESSAGE E000 WITH 'ENTER ALL THE FIELDS'.
        ENDIF.
      ENDIF.
    ENDFORM.                    "VALIDATE_MANDATORY_FIELDS
    Regards
    vijay

  • Radio buttons - text format

    Hi everyone!
    I can't seem to get this to work! I want the text on the radio buttons to wrap correctly as they reach the end of the stage (right now they just keep going forever. Here is the code I am using:
    package {
        import flash.display.MovieClip;
        import flash.text.TextField;
        import flash.text.TextFormat;
        import flash.text.TextFieldAutoSize;
        import flash.events.Event;
        import fl.controls.RadioButton;
        import fl.controls.RadioButtonGroup;
        public class QuizQuestion extends MovieClip {
            private var question:String;
            private var questionField:TextField;
            private var choices:Array;
            private var theCorrectAnswer:int;
            private var theUserAnswer:int;
            //variables for positioning:
            private var questionX:int = 25;
            private var questionY:int = 150;
            private var answerX:int = 25;
            private var answerY:int = 200;
            private var spacing:int = 25;
            public function QuizQuestion(theQuestion:String, theAnswer:int, ...answers) {
                //store the supplied arguments in the private variables:
                question = theQuestion;
                theCorrectAnswer = theAnswer;
                choices = answers;
                //create and position the textfield (question):
                questionField = new TextField();
                questionField.width = 775;
                questionField.wordWrap = true;
                questionField.multiline = true;
                questionField.text = question;
                //trace (questionField.width);
                questionField.autoSize = TextFieldAutoSize.LEFT;
                questionField.x = questionX;
                questionField.y = questionY;
                addChild(questionField);
                //Text Format for radio buttons
                var txtFmt:TextFormat = new TextFormat();
                txtFmt.font = "Arial";
                txtFmt.blockIndent = 2;
                txtFmt.color = 0x000000;
                txtFmt.size = 11;
                txtFmt.leading = 4;
                //create and position the radio buttons (answers):
                var myGroup:RadioButtonGroup = new RadioButtonGroup("group1");
                myGroup.addEventListener(Event.CHANGE, changeHandler);
                for(var i:int = 0; i < choices.length; i++) {
                    var rb:RadioButton = new RadioButton();
                    rb.setStyle("textFormat", txtFmt);
                    rb.textField.autoSize = TextFieldAutoSize.LEFT;
                    rb.label = choices[i];
                    rb.group = myGroup;
                    rb.value = i + 1;
                    rb.x = answerX;
                    rb.y = questionY + questionField.height + 25 + (i * spacing);
                    addChild(rb);
            private function changeHandler(event:Event) {
                theUserAnswer = event.target.selectedData;
            public function get correctAnswer():int {
                return theCorrectAnswer;
            public function get userAnswer():int {
                return theUserAnswer;
    As you can see, I managed to get the text field style of the radio buttons to use "txtFmt" as the style:
    rb.setStyle("textFormat", txtFmt);
    The issue:
    If I add:
    rb.textField.width = 352;
    rb.textField.height = 60;
    rb.textField.multiline = rb.textField.wordWrap = true;
    inside the "for loop" that creates the radio button, it just makes my text go all crazy! It only extends the text about 30 pixels after the radio button and then starts wrapping it, making it all stack on top of each other. How can I make it create the radio button, show the text on the text field, wrap around once it reached the edge of the stage and the continue the next button.
    thank you in advanced,
    Rafa.

    Kglad,
    I added the trace command to the 1st frame of my FLA, and it shows the "test" message on the output window.
    I am looking thru my code, but can't figure what could be overwritting it. This is what I have on the first AS file:
    package {
        import flash.display.MovieClip;
        import flash.text.TextField;
         import flash.text.TextFormat;
        import flash.text.TextFieldAutoSize;
        import flash.events.Event;
        import fl.controls.RadioButton;
        import fl.controls.RadioButtonGroup;
        public class QuizQuestion extends MovieClip {
            private var question:String;
            private var questionField:TextField;
            private var choices:Array;
            private var theCorrectAnswer:int;
            private var theUserAnswer:int;
            //variables for positioning:
            private var questionX:int = 25;
            private var questionY:int = 150;
            private var answerX:int = 25;
            private var answerY:int = 200;
            private var spacing:int = 25;
            public function QuizQuestion(whichQuestion:int, theQuestion:String, theAnswer:int, ...answers) {
                //store the supplied arguments in the private variables:
                question = theQuestion;
                theCorrectAnswer = theAnswer;
                choices = answers;
                   //Text Format for readio buttons
                   var txtFmt:TextFormat = new TextFormat();
                   txtFmt.font = "Arial";
                   txtFmt.blockIndent = 2;
                   txtFmt.color = 0x000000;
                   txtFmt.size = 12;
                   txtFmt.leading = 4;
                //create and position the textfield (question):
                questionField = new TextField();
                questionField.width = 770;
                   questionField.wordWrap = true;
                   questionField.multiline = true;
                   questionField.text = question;
                   //trace (questionField.width);
                questionField.autoSize = TextFieldAutoSize.LEFT;
                questionField.x = questionX;
                questionField.y = questionY;
                   questionField.setTextFormat(txtFmt);
                addChild(questionField);
                //create and position the radio buttons (answers):
                var myGroup:RadioButtonGroup = new RadioButtonGroup("group1");
                myGroup.addEventListener(Event.CHANGE, changeHandler);
                var rbY:Number = 100;
                   for(var i:int = 0; i < choices.length; i++) {
                    var rb:RadioButton = new RadioButton();
                    rb.setStyle("textFormat", txtFmt);
                    rb.textField.width = 352;
                    rb.textField.autoSize = "left";
                    rb.textField.multiline  = rb.textField.wordWrap = true;
                    rb.textField.autoSize = TextFieldAutoSize.LEFT;
                    rb.label = choices[i];
                    rb.group = myGroup;
                    rb.value = i + 1;
                    rb.x = 300;
                    rb.y = rbY;
                    rbY = rb.y+rb.height;
                    addChild(rb);
            private function changeHandler(event:Event) {
                theUserAnswer = event.target.selectedData;
            public function get correctAnswer():int {
                return theCorrectAnswer;
            public function get userAnswer():int {
                return theUserAnswer;
    This is the AS that creates the questions:
    package {
        import flash.display.MovieClip;
        import fl.controls.Button;
        import flash.events.MouseEvent;
        import flash.text.TextField;
        import flash.text.TextFieldAutoSize;
        public class QuizApp extends MovieClip {
            //for managing questions:
            private var quizQuestions:Array;
            private var currentQuestion:QuizQuestion;
            private var currentIndex:int = 0;
            //the buttons:
            private var prevButton:Button;
            private var nextButton:Button;
            private var finishButton:Button;
            //scoring and messages:
            private var score:int = 0;
            private var status:TextField;
            public function QuizApp() {
                quizQuestions = new Array();
                createQuestions();
                createButtons();
                createStatusBox();
                addAllQuestions();
                hideAllQuestions();
                firstQuestion();
            private function createQuestions() {
                quizQuestions.push(new QuizQuestion(1, "1. Which of the following statements about the government auditor’s use of audit standards is least accurate? ",
                                                                1,
                                                                "Government auditors may be subject to a variety or range of audit standards.",
                                                                "Government auditors are not subject to audit standards for some types of work.",
                                                                "If the audit organization follows The Institute of Internal Auditors’ (IIA’s) International Standards for the Professional Practice of Internal Auditing (Standards), those Standards prevail over laws and regulations.",
                                                                "Different sets of audit standards that might be followed have many similarities."));
            private function createButtons() {
                var yPosition:Number = stage.stageHeight - 125;
                prevButton = new Button();
                prevButton.label = "Previous";
                prevButton.x = 30;
                prevButton.y = yPosition;
                prevButton.addEventListener(MouseEvent.CLICK, prevHandler);
                addChild(prevButton);
                nextButton = new Button();
                nextButton.label = "Next";
                nextButton.x = prevButton.x + prevButton.width + 40;
                nextButton.y = yPosition;
                nextButton.addEventListener(MouseEvent.CLICK, nextHandler);
                addChild(nextButton);
                finishButton = new Button();
                finishButton.label = "Finish";
                finishButton.x = nextButton.x + nextButton.width + 40;
                finishButton.y = yPosition;
                finishButton.addEventListener(MouseEvent.CLICK, finishHandler);
                addChild(finishButton);
            private function createStatusBox() {
                status = new TextField();
                status.autoSize = TextFieldAutoSize.LEFT;
                status.y = stage.stageHeight - 80;
                addChild(status);
            private function showMessage(theMessage:String) {
                status.text = theMessage;
                   status.x = (stage.stageWidth / 5) - (status.width / 5);
            private function addAllQuestions() {
                for(var i:int = 0; i < quizQuestions.length; i++) {
                    addChild(quizQuestions[i]);
            private function hideAllQuestions() {
                for(var i:int = 0; i < quizQuestions.length; i++) {
                    quizQuestions[i].visible = false;
            private function firstQuestion() {
                currentQuestion = quizQuestions[0];
                currentQuestion.visible = true;
            private function prevHandler(event:MouseEvent) {
                showMessage("");
                if(currentIndex > 0) {
                    currentQuestion.visible = false;
                    currentIndex--;
                    currentQuestion = quizQuestions[currentIndex];
                    currentQuestion.visible = true;
                } else {
                    showMessage("This is the first question, there are no previous ones");
            private function nextHandler(event:MouseEvent) {
                showMessage("");
                   //This will not allow the user to continue forward unless they answer the current question
               /* if(currentQuestion.userAnswer == 0) {
                    showMessage("Please answer the current question before continuing");
                    return;
                if(currentIndex < (quizQuestions.length - 1)) {
                    currentQuestion.visible = false;
                    currentIndex++;
                    currentQuestion = quizQuestions[currentIndex];
                    currentQuestion.visible = true;
                } else {
                    showMessage("That's all the questions! Click Finish to Score, or Previous to go back");
            private function finishHandler(event:MouseEvent) {
                showMessage("");
                var finished:Boolean = true;
                for(var i:int = 0; i < quizQuestions.length; i++) {
                    if(quizQuestions[i].userAnswer == 0) {
                        finished = false;
                        break;
                if(finished) {
                    prevButton.visible = false;
                    nextButton.visible = false;
                    finishButton.visible = false;
                    hideAllQuestions();
                    computeScore();
                } else {
                    showMessage("You haven't answered all of the questions");
            private function computeScore() {
                for(var i:int = 0; i < quizQuestions.length; i++) {
                    if(quizQuestions[i].userAnswer == quizQuestions[i].correctAnswer) {
                        score++;
                showMessage("You answered " + score + " correct out of " + quizQuestions.length + " questions.");
    I also have a timer running on my FLA, but even if I comment out the timer, I still get the same issue.
    thank you for your help,
    Rafa.

  • Radio buttons don't uncheck when another button is checked

    I have this strange problem with my radio buttons. I was taught that when a radio button is checked any other button that is checked becomes unchecked, but that's not what is happening here. This form is part of a php data base; therefore, the value of the name attribute in the form has to correspond with the value of the name attribute in the php file. It appears as long as I keep the default value in the name attribute in the form the buttons will uncheck when another is checked. But I can't keep the default name. Any suggestions? Here is the code.
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Homework 7</title>
    <script type="text/javascript">
    function edits()
    if(document.getElementById("name").value=="")
        alert("Please enter your whole name.")
        return false;
        if(document.getElementById("jarreau").checked=="")
        alert("Please enter your whole name.")
        return false;
        else if(document.getElementById("aretha").checked=="")
        alert("Please enter your whole name.")
        return false;
        else if(document.getElementById("withers").checked=="")
        alert("Please enter your whole name.")
        return false;
        else if(document.getElementById("joel").checked=="")
        alert("Please enter your whole name.")
        return false;
        else if(document.getElementById("warwidk").checked=="")
        alert("Please enter your whole name.")
        return false;
        if(document.getElementById("rate").value=="")
        alert("Please enter your whole name.")
        return false;
        if(document.getElementById("email").value=="")
        alert("Please enter your whole name.")
        return false;
    else return true;
    </script>
    <style type="text/css">
    body {
        background-color: #F9F;   
    h1 {
        font-size: xx-large;
        color: #FFF;
    </style>
    </head>
    <body>
    <h1 font color="#fff">Old School Concert</h1>
    <table width="87%" border="0" cellspacing="0" cellpadding="2">
      <tr>
        <th align="left" width="19%" scope="col">Al Jarreau</th>
        <th align="left"width="13%" scope="col">Aretha Franklin</th>
        <th align="left"width="16%" scope="col">Bill Withers</th>
        <th align="left"width="19%" scope="col">Billy Joel</th>
        <th align="left"width="19%" scope="col">Dionne Warwick</th>
      </tr>
      <tr>
        <td><img src="al jarreau.jpg" width="247" height="204" alt="Al Jarreau" /></td>
        <td><img src="images/aretha franklin.jpg" width="198" height="204" alt="aretha franklin" /></td>
        <td><img src="Bill Withers.jpg" width="192" height="204" alt="Bill Withers" /></td>
        <td><img src="billy joel.jpg" width="225" height="204" alt="Billy Joel" /></td>
        <td><img src="Dionne Warwick.jpg" width="176" height="204" alt="Dionne Warwick" /></td>
      </tr>
    </table>
    <h2><font color="#FFFFFF">In order to keep bringing you the best in old school legends please fill out this brief survey.</font></h2>
    <form name="service" method="post" action="concert.php" />
    <label for="fname">First name:</label>
      <input name="name" type="text" id="fname" size="20" maxlength="15" />
      (optional)
      <br />
    <label for="lname">Last name:</label>
      <input name="name" type="text" id="lname" size="20" maxlength="15" />
      (optional)<br />
      <label>Which performance you liked best:</label><br />
        <p>
          <label>
            <input type="radio" name="jarreau1_0" value="radio" id="RadioGroup1_0" />
            Al Jarreau</label>
          <br />
          <label>
            <input type="radio" name="aretha1_1" value="radio" id="RadioGroup1_1" />
            Aretha Franklin</label>
          <br />
          <label>
            <input type="radio" name="withers" value="radio" id="RadioGroup1_2" />
            Bill Withers</label>
          <br />
          <label>
            <input type="radio" name="joel" value="radio" id="RadioGroup1_3" />
            Billy Joel</label>
          <br />
          <label>
            <input type="radio" name="warwidk" value="radio" id="RadioGroup1_4" />
            Dionne Warwick</label>
        </p>
    <br />
      <label for="rate">On a scale of 1 to 10 how would you rate this concert?</label>
      <br />
        <input name="rate" type="text" id="rate" size="5" maxlength="2" />
      <label for="email"><br />
        Your email address:</label>
      <br />
    <input name="email" type="text" id="email" size="45" maxlength="45" />
    </p>
    <p>
    <label for="comment">Your comments:</label>
        <textarea name="comment" cols="50" rows="5" id="comment"></textarea>
    </p>
    <input type="button" value="submit" name="" id="" onclick="edits()" />
    </form>
    </body>
    </html>

    You are completely right. Part of my problem is how to ask the question.
    The buttons now uncheck. When I submit the form I'm suppose to get a php
    output that shows all the fields completed. And I also need for Dreamweaver
    to make an alert message if no button is checked?  Is that possible? Or do
    I have to use javascript code for that? So far the form won't submit until
    I clean up javascript if else statements to create an alert box if a button
    is not checked or false. But I don't need an alert message for each button,
    right? Just for the radio group? So that means I have to give the radio
    group a name, right? But I don't see a way to do that so far. Any
    suggestions. Oh, here the link:
    http://ciswebs.smc.edu/cis54/tyson_schweidel/concert.htm

  • How can i get Radio buttons  and parameters  in a Single Straight Line

    Hi Experts,
    How can i get Radio buttons  and parameters  in a Single Straight Line...
    Example:
       r1 r2 p1 p2.....
    Cheers,
    Priya
    Points granted.

    Write the following code for the selection screen:
    DECLARATION OF PARAMETERS.
    SELECTION-SCREEN: BEGIN OF BLOCK select WITH FRAME TITLE text-001,
                      BEGIN OF LINE.
                      SELECTION-SCREEN COMMENT 1(10) FOR FIELD p_detail.
                      PARAMETERS p_detail RADIOBUTTON GROUP r1 DEFAULT 'X'.
                      SELECTION-SCREEN COMMENT 25(10)  FOR FIELD p_summry.
                      PARAMETERS p_summry RADIOBUTTON GROUP r1.
    SELECTION-SCREEN: END OF LINE,
                      END OF BLOCK select.
    this will solve your poblem surly. reward the points if you find helpful
    Regards,
    Siddarth

Maybe you are looking for