✒️ABAP Los Field Symbols
ABAP Los Field Symbols
- Field Symbols
- ¿Qué son los field symbols?
Fiel Symbol: Es un tipo de sistema en ABAP que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución.
Los field symbol nos permiten acceder y pasar datos cuyos nombres y atributos no conocemos hasta el momento de la ejecución.
Los field smbol son nombres simbólicos de los datos, ya que cuando se utilizan el sistema trabaja con el contenido de los datos asignados no con el de los field symbol.
Los field symbol proveen de 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 al field symbol a tomar diferentes atributos técnicos que los del campo asignado a él.
La mayoría de los errores cometidos en la utilización de field symbol se detectarán en tiempo de ejecución. Haciendolos más difíciles de detectar. Así que solo se deben utilizar field symbol si no podemos llegar al resultado con sentencias convencionales de ABAP.
- Declaración de un Field Symbol
Para declararlo se utiliza la sig. sentencia:
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 de ese dato.
- Tipos de datos genéricos de un Field Symbol:
- 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 tipos de datos C, N, P y X son aceptados. 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. Hereda todos los atributos de la tabla.
- TYPE INDEX TABLE: El sistema chequea si el campo es una tabla indexada. Hereda todos los atributos de la tabla.
- TYPE STANDARD TABLE: Chequea si el campo es una tabla estándar. Hereda todos los atributos de la tabla.
- TYPE SORTED TABLE: Chequea si el campo es una tabla sorted. Hereda todos los atributos de la tabla.
- TYPE HASHED TABLE: Chequea si el campo es una tabla hashed. Hereda todos los atributos de la tabla.
- Tipos de tablas internas:
- ANY TABLE: Podemos usarlas para definir el tipo de un parámetro de tabla genérico. Las operaciones permitidas son todas las permitidas para estándar, sorted y hashed table. No es posible usar índices para acceder a las tablas definidas con este tipo.
- INDEX: Los tipos standard y sorted pertenecen a este tipo de tablas genérico index table. A este tipo de tablas podemos acceder mediante un índice. Es posible utilizar este tipo de tabla para especificar el tipo de un parámetro genérico en un form o en una función. El tipo hashed no pertenece al tipo global index por lo que no puede ser pasado un parámetro definido index table.
- STANDARD: El acceso a este tipo de tablas es mediante una búsqueda lineal, lo que significa que el tiempo de búsqueda está linealmente relacionado con la cantidad de registros de la tabla.
- SORTED: Esta tabla siempre se guarda en el orden correcto. Su acceso es mediante una búsqueda binaria o binary search. Si la clave no es única el sistema obtiene la entrada con el índice más bajo. El tiempo de búsqueda está logaritmicamente relacionado al número de registros de la tabla. También es posible acceder a sorted table mediante operaciones de índices.
- HASHED: Grupo a cuyos elementos se puede acceder mediante su clave única. No se puede acceder mediante índices. Todos los elementos deben contener una clave única. El tiempo de acceso es constante sin tener en cuenta el número de registros de la tabla. Solo se accede a través de operaciones genéricas de clave u otras operaciones genéricas como SORT o LOOP.
- Asignación de datos a un Field Symbol
Para asignar datos a un Field Symbol utilizamos la sentencia ASSING.
La asignación es estática ya que sabemos el nombre del campo que queremos asignar al field symbol.
Sintaxis: ASSIGN <f> TO <FS>.
 
 
 
Sobre el autor
Publicación académica de Sandra Erika Bernabe Abreu, en su ámbito de estudios para la Carrera Consultor ABAP.
Sandra Erika Bernabe Abreu
Profesión: Ingeniería en Sistemas Computacionales - Mexico - Legajo: EW68S
✒️Autor de: 58 Publicaciones Académicas
🎓Egresado del módulo:
Certificación Académica de Sandra Bernabe