ABAP Cursosentenciafieldsymbols

<html>

<head>

<title>FIELD-SYMBOLS</title>

</head>

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

<p align="left">⚠ <b><span class="titulo">FIELD-SYMBOLS</span>⚠ </b></p>

<p align="left">⚠ <b>Definicin⚠ </b></p>

<p align="left">Declara un ⚠ <i>field-symbol⚠ </i>. Las asignacin

  se realiza con la sentencia ⚠ <a href="assign.htm" tppabs="assign.htm">ASSIGN⚠ </a> en tiempo de ejecucin.</p>

<p align="left">⚠ <b>Sintaxis:⚠ </b></p>

<pre>FIELD-SYMBOLS <fs> [ <tipo> ].</pre>

<p>En la sintaxis de los field-symbols, los smbolos "<"

  y ">" en <fs> forman parte de la sintaxis de la sentencia. 
  Sirven para identificar un field-symbol en el cdigo fuente de un programa. 
  Con esta sentencia definimos el field-symbol en cdigo del programa. Un field-symbol 
  puede ser especificado con o sin identificacin de tipo. Si no especificamos 
  ningn tipo, se puede asignar cualquier objeto de dato, en tiempo de ejecucin, 
  al field-symbol. Durante el proceso de asignacin, el field-symbol adquiere 
  todos los atributos del objeto de dato.</p>

<p>En la opcin <tipo> se puede utilizar la especificacin

  directa (con TYPE), o la indirecta (con LIKE). Con la especificacin de tipo, 
  el sistema comprueba si los tipos del field-symbol y el dato son compatibles. 
  En caso de no ser compatibles, se produce un error en tiempo de ejecucin.</p>

<p>FIELD-SYMBOLS <fs> STRUCTURE <estructura> DEFAULT

  <campo>.</p>

<p>En esta sentencia definimos el field-symbol estructurado <fs>,

  el cual apunta por defecto al campo <campo>. El sistema obliga a un campo 
  inicial, aunque se puede modificar a posteriori. El field-symbol <fs> 
  adquiere la estructura <fs> que puede ser cualquier field-string o estructura 
  definida en el diccionario de datos. Las estructuras del diccionario de datos 
  referenciadas en esta sentencia no tienen que ser declaradas con la sentencia 
  ⚠ <a href="tables.htm" tppabs="tables.htm">TABLES⚠ </a>. La estructura se debe especificar sin encerrar 
  entre comillas (""), sin ser posible su especificacin en tiempo de 
  ejecucin. Si <estructura> no tiene componentes de tipo F o I, <campo> 
  puede ser cualquier campo interno con la longitud de <estructura>. Si 
  <campo> es menor que <estructura> aparecer un error de sintaxis 
  cuando verifiquemos el programa. Si durante la ejecucin asignamos un campo 
  al field-string, el sistema verificar la longitud. Si la longitud es menor 
  a la de la estructura entonces se producir un error en tiempo de ejecucin. 
  Si la estructura <estructura> tiene campos de tipo F o I, debemos especificar 
  un campo con la misma estructura.</p>

<p>⚠ <b>Ejemplo 1:⚠ </b></p>

<pre>FIELD-SYMBOLS <PT>.

TABLES SFLIGHT.

...

ASSIGN SFLIGHT-PLANETYPE TO <PT>.

WRITE <PT>.</pre>

<p><br>

  ⚠ <b>Ejemplo 2:⚠ </b></p>

<pre>DATA SBOOK_WA LIKE SBOOK.

FIELD-SYMBOLS <SB> STRUCTURE SBOOK

                   DEFAULT   SBOOK_WA.

...

WRITE: <SB>-BOOKID, <SB>-FLDATE.

</pre>

<p>⚠ <b>Vase tambin:⚠ </b> ⚠ <a href="assign.htm" tppabs="assign.htm">ASSIGN⚠ </a>, ⚠ <a href="data.htm" tppabs="data.htm">DATA⚠ </a>.</p>

</body>

</html>