✒️ABAP Los Field Symbols
ABAP Los Field Symbols
FIELD SYMBOLS
1.- Qué son los field symbols.- Es un tipo de sentencia ABAP que nos permite trabajar con los datos de los programas en tiempo de ejecución.
Al contrario de lo que sucede con el acceso de los datos, donde necesitamos especificar el nombre de un objeto para poder hacer algo con él, los field symbols nos permiten acceder y pasar datos cuyos nombres y atributos no conocemos hasta el momento de la ejecución.
Se puede considerar a los Field Symbol como nombres simbólicos de los datos, ya que cuando se utilizan, el sistema trabaja con el contenido de los datos asignados y no con el contenido del field symbol.
Los field symbol nos proveen de gran flexibilidad debido a que:
- Si queremos procesar partes de campos, nos permiten especificar el offset y el desplazamiento de un campo en forma dinámica.
- Se puede forzar a un field symbol para que tome diferentes atributos técnicos que los del campo asignado a él.
"La mayoría de los errores que cometamos en la utilización de Field Symbols los detectaremos recién en tiempo de ejecución. Esto hace que sea más difìcil de detectar.
Por lo tanto, sólo debemos utilizar Field Symbol si no podemos llegar al mismo resultado con las sentencias ABAP convencionales".
2.- Declaración de un field symbol
FIELD-SYMBOLS <FS> [<type>|STRUCTURE <s> DEFAULT <wa>]
"Si no especificamos un tipo a un field symbol, este puede contener cualquier dato.
Cuando asignamos un dato al field symbol, este hereda los atributos técnicos del dato"
Los tipos de datos genèricos para un field symbol son:
Tipo de especificación Objeto de datos
- TYPE ANY o sin especificación.- todos los tipos de objetos de datos son aceptados.
El field symbol adopta los atributos del dato.
- TYPE C, N, P o X.- Solo los tipos de datos C, N, P y X son aceptados.
El field symbol adopta la longitud y decimales del dato.
- TYPE TABLE.- El sistema chequea si la tabla es estándar.
- TYPE ANY TABLE.- El sistema chequea si el campo es una tabla interna.
El field symbol hereda todos los atributos de la tabla.
TYPE INDEX TABLE.- El sistema chequea si el campo es una tabla indexable. El field symbol hereda todos los atributos de la tabla.
- TYPE STANDAR TABLE.- El sistema chequea si el campo es una tabla estándar. El field symbol hereda todos los atributos de la tabla.
- TYPE SORTED TABLE.- El sistema cheque si el campo es una tabla sorted.
El field symbol hereda todos los atributos de la tabla.
- TYPE HASHED TABLE.- El sistema chequea si el campo es una tabla hashed.
El field symbol hereda todos los atributos de la tabla.
Ejemplos:
REPORT zprueba_abap_6_5.
DATA: v_valor(3) VALUE 'ABC'.
FIELD-SYMBOLS <f>.
ASSIGN v_valor TO <f>.
WRITE: / 'contenido del valor', <f>.
<f> = 'XYZ'.
WRITE: /'Variable v_valor', v_valor.
3.- Asignación de datos a un field symbols.
Para asignar datos a un field symbol utilizamos la sentencia ASSIGN.
La asignación que utilizamos es estática ya que sabemos el nombre del campo que queremos asignar al Field Symbol.
ASSIGN <f> TO <FS>.
Ejemplo:
REPORT zprueba_abap_6_7.
DATA: BEGIN OF st_linea,
col1(1) TYPE c,
col2 VALUE 'X',
END OF st_linea.
FIELD-SYMBOLS <fs> LIKE st_line.
ASSIGN st_line TO <fs>.
MOVE <fs>-col2 TO <fs>-col1.
 
 
 
Sobre el autor
Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para la Carrera Consultor ABAP.
Miguel Angel Acosta Acosta
Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C
✒️Autor de: 238 Publicaciones Académicas
🎓Egresado de los módulos:
- Carrera Consultor en SAP SD Nivel Avanzado
- Carrera Consultor en SAP SD Nivel Inicial
- Máster ABAP for HANA
- Carrera Consultor ABAP Nivel Avanzado
- Carrera Consultor ABAP Nivel Inicial
Disponibilidad Laboral: FullTime
Presentación:
Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.
Certificación Académica de Miguel Acosta