W Pub: ABAP Cursosentenciawriteto

<html>

<head>

<title>WRITE TO</title>

</head>

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

<p align="left">⚠ &lt;b class="titulo"&gt;WRITE TO⚠ &lt;/b&gt;</p>

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

<p align="left">Cuando asignamos valores a objetos de datos con la sentencia,

  se puede utilizar las opciones de la sentencia ⚠ &lt;a href="write.htm" tppabs="write.htm"&gt;WRITE⚠ &lt;/a&gt; 
  a excepcin de UNDER y NO-GAP.</p>

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

WRITE { <c1> [ +<o1> ][ <(l1)> ] | (<c1>)} TO <c2>[ +<o2> ] [ <l2>) ] [ <opciones> ].

<p>La sentencia WRITE TO escribe el contenido del campo fuente

<c1> sobre el campo destino <c2>. <c1> puede ser cualquier

objeto de datos, <c2> slo puede ser una variable. <c2> no puede

ser un literal o una variable. El contenido de <c1> permanece sin

cambios. </p>

<p>La sentencia WRITE TO siempre comprueba las especificaciones

realizadas en el registro maestro de usuarios, por ejemplo, si el punto decimal

debe aparecer con coma (,) o con punto (.). El campo destino siempre se

considera como alfanumrico (tipo C). Por esta razn es conveniente que el

campo destino sea siempre alfanumrico.</p>

<p>Tambin se puede especificar el nombre del campo fuente en

tiempo de ejecucin, para ello, encerramos entre parntesis el nombre del

objeto de dato que contiene el nombre del objeto de dato que vamos a utilizar.

Sin embargo, no se puede especificar en tiempo de ejecucin el campo destino.

Para ello deberemos utilizar ⚠ &lt;i&gt;fild-symbols⚠ &lt;/i&gt;.</p>

<p>Se puede especificar el offset y la longitud, tanto del campo

fuente como del campo destino. En esta sentencia, el offset y la longitud del

campo pueden ser variable.</p>

<p>SAP recomienda la asignacin del campos con offset y longitud

entre campos no numricos. Con campos numricos, el resultado puede ser

imprevisible.</p>

<pre>WRITE { <campo> [ +<o1> ] TO <tabla> [ +<o2> ] [ <l2>) ] INDEX <ndice>.</pre>

<p>El contenido de la seccin del campo <campo> con

desplazamiento de <o1> posiciones y longitud <l!> es sobrescrito en

la tabla interna <tabla>, en la lnea con ndice <ndice>, en la

seccin con desplazamiento de <o2> posiciones y longitud <l2>.

Observemos que en esta sentencia no se utiliza en ningn caso el rea de

trabajo. Esto es una variante de la sentencia WRITE .. TO (utilizada para otros

casos). La sentencia WRITE .. TO no reconoce la estructura de lnea de la tabla

interna. SAP recomienda el uso de esta sentencia slo si queremos, por ejemplo,

sustituir flag del que sabemos exactamente su posicin. Tambin puede ser

utilizada para tablas con estructuras de un nico campo alfanumrico; tablas

con esta estructura son importantes, por ejemplo, para la generacin

automtica de programas.</p>

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

<pre>DATA: NAME(5) VALUE 'FIELD',

      FIELD(5) VALUE 'Harry',
      DEST(18) VALUE 'Robert James Smith',
      OFF      TYPE I,
      LEN      TYPE I.</pre>

<pre>OFF = 7.

LEN = 8.

WRITE (NAME) TO DEST+OFF(LEN).</pre>

<p>El campo DEST valdr " Robert Harry ith ".</p>

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

</body>

</html>