W Pub: ABAP Cursosentenciaselectionscreen

<html>

<head>

<title>SELECTION-SCREEN</title>

</head>

<BODY BGCOLOR="#000000" TEXT="#FFFFFF" LINK="#0099FF" VLINK="#AA0000">

<p align="left">⚠ &lt;b&gt;<span class="titulo">SELECTION-SCREEN</span>⚠ &lt;/b&gt;</p>

<p align="left">⚠ &lt;b&gt;Definicin⚠ &lt;/b&gt;</p>

<p align="left">En la pantalla de seleccin los parmetros y criterios

  de seleccin aparecen uno detrs de otro en filas distintas. Si este formato 
  de pantalla no es suficiente para nuestras necesidades se puede utilizar la 
  sentencia SELECTION-SCREEN para formatear la pantalla de seleccin. </p>

<p align="left">⚠ &lt;b&gt;Sintaxis:⚠ &lt;/b&gt;</p>

<pre>SELECTION-SCREEN BEGIN OF LINE...

....

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN SKIP [ <n> ].

SELECTION-SCREEN ULINE [ [ / ] <posicin> ( <longitud>) ] [ / ]

SELECTION-SCREEN POSITION <posicin>.

SELECTION-SCREEN COMMENT [ / ] <posicin> (<longitud>) <campo>

[ FOR FIELD <campo2> ] [ MODIF ID <clave> ] .

SELECTION-SCREEN BEGIN OF BLOCK <bloque> [ WITH FRAME [ TITLE <ttulo> ] ] [ NO INTERVALS ]

...

SELECTION-SCREEN END OF BLOCK <bloque>.

SELECTION-SCREEN FUNCTION KEY ⚠ &lt;i&gt;.

SELECTION-SCREEN BEGIN OF VERSION <versin> TEXT-xxx.

SELECTION-SCREEN END OF VERSION <versin>.

SELECTION-SCREEN EXCLUDE

SELECTION-SCREEN DYNAMIC SELECTIONS FOR TABLE <tabla>.

SELECTION-SCREEN FIELD SELECTION FOR TABLE <tabla>.</pre>

<p>El significado de las clusulas es el siguiente:</p>

<ul>

  <li>SKIP -> Provoca lneas en blanco en la pantalla de seleccin. 
    <n> es opcional se utiliza para saltar ms de una lnea.</li>
  <li>ULINE -> Subraya una lnea o parte de ella en la pantalla 
    de seleccin. Si no utilizamos la opcin <posicin> (<longitud>) 
    una nueva lna se crea. Si utilizamos la opcin <posicin>(<longitud>) 
    la nueva lnea comienza en la posicin <posicin> con una longitud de 
    <longitud> caracteres. Con varios elementos sobre una lnea se puede 
    especificar <longitud> sin especificar <posicin>.</li>
  <li>MODIF ID -> Tiene el mismo significado que en la sentencia 
    ⚠ &lt;a href="parameters.htm" tppabs="parameters.htm"&gt;PARAMETERS⚠ &lt;/a&gt;.</li>
  <li>COMMENT -> Se utiliza para escribir texto sobre la pantalla 
    de seleccin. Con la barra ( / ) saltamos de lnea y con <posicin> 
    y <longitud> definimos la posicin y la longitud del texto en la pantalla. 
    <campo1> puede ser un elemento de texto o un campo con una longitud 
    mxima de 8 caracteres. Para asignar un texto a un parmetro o a un criterio 
    de seleccin se utiliza la opcin FOR FIELD, <campo2> identifica el 
    nombre del parmetro o criterio de seleccin. La opcin MODIF ID tiene el 
    mismo significado que en la clusula PARAMETERS.</li>
  <li>BEGIN OF LINE ... END OF LINE -> Se utiliza para situar 
    en una misma lnea varios parmetros y/o comentarios en la pantalla de seleccin. 
    Cuando utilizamos esta clusula el posible elemento de texto habr que utilizar 
    la clusula COMMENT de la sentencia SELECTION-SCREEN. Los criterios de seleccin 
    no se pueden incluir. La opcin barra ( / ) no se puede especificar, y la 
    opcin <posicin> se puede omitir.</li>
  <li>POSITION -> Sita un parmetro o un comentario en una 
    posicin determinada. Para <posicin> se puede especificar un nmero, 
    POS_LOW y POS_HIGH.  POS_LOW y POS_HIGH son las posiciones del campo 
    ⚠ &lt;i&gt;desde⚠ &lt;/i&gt; y campo ⚠ &lt;i&gt;hasta⚠ &lt;/i&gt; de un criterio de seleccin sobre la pantalla. 
    Esta clusula slo puede ser utilizada en un bloque BEGIN OF LINE ... END 
    OF LINE.</li>
  <li>BEGIN OF BLOCK ... END OF BLOCK -> Crea un bloque lgico 
    sobre la pantalla de seleccin. Con la opcin WITH FRAME el bloque se engloba 
    con un cuadreo. Con la opcin TITLE aparecer el ttulo <ttulo> en 
    la primera lnea del cuadro. <ttulo> puede ser un elemento de texto 
    o un literal. Con la opcin NO INTERVALS todas las sentencias SELECT-OPTIONS 
    se procesan como si tuvieran la sentencia NO INTERVALS. Con esta opcin, si 
    utilizamos adems WITH FRAME, el cuadro ser menos ancho.</li>

</ul>

<p>Se puede crear hasta cinco botones en la barra de botones sobre

  la pantalla de seleccin. Estos botones se conectan automticamente a teclas 
  de funcin.⚠ &lt;i&gt; debe estar comprendido entre 1 y 5. El texto que aparece 
  sobre el botn se especifica en tiempo de ejecucin moviendo un valor sobre 
  el campo SSCRFIELDS-FUNCTXT_0⚠ &lt;i&gt;. La estructura SSCRFIELDS debe estar 
  declarada con la sentencia ⚠ &lt;a href="tables.htm" tppabs="tables.htm"&gt;TABLES⚠ &lt;/a&gt;. Cuando el usuario 
  activa un botn, el valor FC0⚠ &lt;i&gt; es introducido sobre el campo SSCRFIELDS-UCOMM, 
  el cual puede ser chequeado en el evento AT SELECTION-SCREEN.</p>

<p>Existe tambin la posibilidad de situar botones sobre la pantalla

  de seleccin con la opcin PUSHBUTTON. Las opciones ⚠ &lt;i&gt;barra⚠ &lt;/i&gt; (/), posicin>, 
  <longitud> y MODIF ID <clave> son las mismas que las explicadas 
  en la clusula COMMENT. <campo> es el texto que aparece sobre el botn. 
  Para <cmd> se debe especificar un cdigo de hasta cuatro caracteres. Cuando 
  el usuario ⚠ &lt;i&gt;presiona⚠ &lt;/i&gt; el botn, <cmd> es introducido en el campo 
  SSCRFIELDS-UCOMM. Como suceda en la clusula anterior, SCCRFIELDS debe declararse 
  con la sentencia ⚠ &lt;a href="tables.htm" tppabs="tables.htm"&gt;TABLES⚠ &lt;/a&gt;. El campo SSCRFIELDS-UCOMM 
  puede ser utilizado en el evento ⚠ &lt;a href="at_selection_screen.htm" tppabs="at_selection_screen.htm"&gt;AT SELECTION-SCREEN⚠ &lt;/a&gt;.</p>

<p>El resto de clusulas se utilizan exclusivamente en los programas

  de definicin de bases de datos.</p>

<p>⚠ &lt;b&gt;Ejemplo 1:⚠ &lt;/b&gt;</p>

<pre>SELECTION-SCREEN BEGIN OF LINE.

  SELECTION-SCREEN COMMENT 1(10) TEXT-001.
  PARAMETERS: P1(3), P2(5), P3(1).

SELECTION-SCREEN END OF LINE.</pre>

<p>⚠ &lt;b&gt;Ejemplo 2:⚠ &lt;/b&gt;</p>

<pre>SELECT-OPTIONS DATE FOR SY-DATUM DEFAULT SY-DATUM.</pre>

<p>⚠ &lt;b&gt;Ejemplo 3:⚠ &lt;/b&gt;</p>

<pre>SELECTION-SCREEN BEGIN OF LINE.

  SELECTION-SCREEN COMMENT 10(20) TEXT-001
                   FOR FIELD PARM.
  SELECTION-SCREEN POSITION POS_LOW.
  PARAMETERS PARM LIKE SAPLANE-PLANETYPE.

SELECTION-SCREEN END OF LINE.</pre>

<p>⚠ &lt;b&gt;Ejemplo 4:⚠ &lt;/b&gt;</p>

<pre>TABLES SSCRFIELDS.</pre>

<pre> ...</pre>

<pre>SELECTION-SCREEN PUSHBUTTON /10(20) CHARLY USER-COMMAND ABCD.</pre>

<pre> ...</pre>

<pre>INITIALIZATION.</pre>

<pre> MOVE 'My text' TO CHARLY.</pre>

<pre> ...</pre>

<pre>AT SELECTION-SCREEN.</pre>

<pre> IF SSCRFIELDS-UCOMM = 'ABCD'.

    ...
  ENDIF.</pre>

<p>⚠ &lt;b&gt;Ejemplo 5:⚠ &lt;/b&gt;</p>

<pre>TABLES SAPLANE.</pre>

<pre>SELECTION-SCREEN BEGIN OF BLOCK CHARLY

                 WITH FRAME TITLE TEXT-001.
  PARAMETERS PARM(5).
  SELECT-OPTIONS SEL FOR SAPLANE-PLANETYPE.

SELECTION-SCREEN END OF BLOCK CHARLY.</pre>

<p>⚠ &lt;b&gt;Vase tambin:⚠ &lt;/b&gt; ⚠ &lt;a href="parameters.htm" tppabs="parameters.htm"&gt;PARAMETERS⚠ &lt;/a&gt;,

  ⚠ &lt;a href="select_options.htm" tppabs="select_options.htm"&gt;SELECT-OPTIONS⚠ &lt;/a&gt;, ⚠ &lt;a href="initialization.htm" tppabs="initialization.htm"&gt;INITIALIZATION⚠ &lt;/a&gt;.</p>

</body>

</html>