W Pub: ABAP Cursosentenciadoenddo

<html>

<head>

<title>DO .. ENDDO</title>

</head>

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

<p align="left">⚠ &lt;b&gt;<span class="titulo">DO .. ENDDO</span>⚠ &lt;/b&gt;</p>

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

<p align="left">Ejecucin de sentencias indefinidamente hasta

  que se procese la sentencia ⚠ &lt;a href="exit.htm" tppabs="exit.htm"&gt;EXIT⚠ &lt;/a&gt;, ⚠ &lt;a href="stop.htm" tppabs="stop.htm"&gt;STOP⚠ &lt;/a&gt; 
  o ⚠ &lt;a href="reject.htm" tppabs="reject.htm"&gt;REJECT⚠ &lt;/a&gt;.</p>

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

<pre>DO [<n> TIMES ] [ VARYING <c> FROM <c1> NEXT <c2> ]

  <bloque-de-sentencias>

ENDDO.</pre>

<p>La sentencia DO sin clusulas ejecuta el bloque de sentencias

  indefinidamente, o hasta que se procese una sentencia ⚠ &lt;a href="exit.htm" tppabs="exit.htm"&gt;EXIT⚠ &lt;/a&gt;, 
  ⚠ &lt;a href="stop.htm" tppabs="stop.htm"&gt;STOP⚠ &lt;/a&gt; o ⚠ &lt;a href="reject.htm" tppabs="reject.htm"&gt;REJECT⚠ &lt;/a&gt;. Para limitar 
  el nmero de pasos de un bucle se puede utilizar la opcin TIMES. <n> 
  puede ser un literal o una variable. Si <n> es 0 o negativo, el sistema 
  no procesar el bucle.</p>

<ul>

  <li>La clusula ENDDO es obligatoria (marca el fin del bloque 
    de sentencias). La variable SY-INDEX contiene el nmero de veces que el bucle 
    ha sido ejecutado.</li>
  <li>Utilizando la opcin VARYING se pueden ir asignando valores 
    a una variable <c> a partir de un conjunto de campos del mismo tipo 
    y longitud de memoria por cada paso de bucle. En una sentencia DO se pueden 
    utilizar varias opciones VARYING.</li>

</ul>

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

<pre>DO.

  WRITE: / 'SY-INDEX - Inicio:', (3) SY-INDEX.
  IF SY-INDEX = 10.
    EXIT.
  ENDIF.
  WRITE: 'Fin:', (3) SY-INDEX.

ENDDO.</pre>

<span>⚠ &lt;b&gt;Vase tambin:⚠ &lt;/b&gt; ⚠ &lt;a href="while_endwhile.htm" tppabs="while_endwhile.htm"&gt;WHILE⚠ &lt;/a&gt;,

⚠ &lt;a href="stop.htm" tppabs="stop.htm"&gt;STOP⚠ &lt;/a&gt;, ⚠ &lt;a href="exit.htm" tppabs="exit.htm"&gt;EXIT⚠ &lt;/a&gt;, ⚠ &lt;a href="reject.htm" tppabs="reject.htm"&gt;REJECT⚠ &lt;/a&gt;.

</span>

</body>

</html>