PROMO JULIO en CVOSOFT United States Of America: 💎Calidad, 🔥Bonificaciones, 🥶Precios Congelados y MÁS!

 X 

✒️ABAP Los Field Symbols

ABAP Los Field Symbols

ABAP Los Field Symbols

Los Field Symbols

Son un tipo de sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución.

Al contrario de lo que sucede con el acceso estático 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 Symbols 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 Symbols no reservan espacio físicamente para un campo sino que "apuntan" a su contenido.

Un Field Symbol puede apuntar a cualquier objeto de datos.

Los Field Symbols 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 del campo asignado a él.

La mayoría de los errores que cometemos en la utilización de Field Symbols los detectamos recién en tiempo de ejecución. Esto hace que sean más difíciles de detectar. Solo debemos usar Field Symbols si no podemos llegar al mismo resultado con las sentencias ABAP convencionales.

La declaración de un Field Symbol

Para poder utilizar un Field Symbol en un programa ABAP debemos:

✔Declarar el Field Symbol

✔Asignar al Field Symbol el objeto de datos.

Para declarar un Field Symbol usamos la siguiente sintaxis:

FIELD-SYMBOLS <FS> [<type>|STRUCTURE<s>DEFAULT <wa>].

Si no especificamos un tipo a un Field Symbol, este puede contener cualquier dato, el Field Symbol asumirá todos los atributos técnicos del campo.

Si se especifica un tipo, el sistema controla la compatibilidad del Field Symbol y el campo al que se está asociando en el momento de la ejecución de la sentencia de asignación.

Los tipos de datos genéricos para un Field Symbol son los siguientes:

Tipo de especificación: TYPE C, I, N, P o X

Objeto de datos: Solo los tipos de datos C, I, N, P y X son aceptados. El Field Symbol adopta la longitud y decimales del dato.

Tipo de especificación: TYPE ANY o sin especificación.

Objeto de datos: Todos los tipos de objetos de datos son aceptados. El Field Symbol adopta los atributos del dato.

Tipo de especificación: TYPE TABLE

Objeto de datos: El sistema chequea si la tabla es estándar.

T.E: TYPE ANY TABLE

O.D: El sistema chequea si el campo es una tabla interna. El Field Symbol hereda todos los atributos de la tabla.

T.E.: TYPE INDEX TABLE

O.D: El sistema chequea si el campo es una tabla indexada. El Field Symbol hereda todos los atributos de la tabla.

T.E:TYPE STANDARD TABLE

O.D.: El sistema chequea si el campo es una tabla indexada. El Field Symbol hereda todos los atributos de la tabla.

T.E.:TYPE HASHED TABLE

O.D.: El sistema chequea si el campo es una tabla hashed. El Field Symbol hereda todos los atributos de la tabla.

La asignación de datos a un Field Symbol

En un programa ABAP se pueden asignar objetos de datos a Field Symbol en cualquier momento, como también asignar una serie de diferentes objetos de datos a un Field Symbol.

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 deseamos asignar al Field Symbol.

La sintaxis de la sentencia ASSIGN es la siguiente:

ASSIGN <F> TO <FS>.

Siendo F el campo asignado al Field Symbol y FS el nombre del Field Symbol.

Para comprender como funcionan los Field Symbols analicemos paso a paso la ejecución del código anterior y el resultado de la impresión por pantalla. Para ello colocamos un breakpoint en la sentencia ASSIGN y ejecutamos paso a paso.

v_variable tiene asignado el valor 2.

Luego de ejecutarse la sentencia ASSIGN veremos que el Field Symbol fs_num va a tener asignado el mismo valor que v_variable es decir 2.

Si asignamos al Field Symbol fs_num el valor 4.

Entonces automáticamente también se asigna el valor 4 a v_variable.

Después de asignar un objeto de datos a un Field Symbol, si realizamos cambios en el valor del Field Symbol entonces también se actualiza el valor del objeto de datos correspondiente.

La utilización de Field Symbols cuando trabajamos con estructuras

Podemos leer un registro de una tabla interna utilizando un Field Symbol en lugar de utilizar una estructura o área de trabajo.

También podemos declarar un Field Symbol para recorrer una tabla interna en lugar de declarar una estructura o área de trabajo y utilizarla para recorrer la tabla interna. A su vez el mismo Field Symbol lo podemos utilizar para actualizar la tabla interna.

Debemos tener en cuenta los siguientes puntos:

✔ Si modificamos cualquier campo de la estructura en el Field Symbol, el campo correspondiente en la tabla interna se actualizará.

✔ No necesitamos escribir la sentencia MODIFY que habríamos escrito si hubiéramos usado el área de trabajo o estructura. Esto se debe a que el área de trabajo almacena una copia de la fila de la tabla interna, mientras que el Field Symbol hace referencia a la fila de la tabla interna. Por lo tanto, el procesamiento de la tabla interna con el Field Symbol es más rápido que el procesamiento de la tabla interna con el área de trabajo o estructura.

La utilización de Field Symbols para realizar SELECT dinámicos

Podemos utilizar Field Symbols para realizar SELECT dinámicos a tablas de la base de datos de SAP, podríamos crear un programa ABAP que cuente que un parámetro en la pantalla de selección en donde se introduzca el nombre de la tabla base de datos que se desea seleccionar y que luego dentro del programa, dependiendo de lo que desee, se realice el download de los registros de la tabla base de datos a un archivo o que se realice el upload de los registros de la tabla base de datos a memoria para ser procesados.

El código ABAP correspondiente a esta lógica que acabamos de mencionar sería así:

Primero en la pantalla de selección declaramos el parámetro P_TABLA para introducir el nombre de la tabla base de datos, el parámetro P_FNAME para introducir el directorio y nombre del archivo de salida, el parámetro P_DOWN para seleccionar en caso que deseemos realizar la descarga de los registros de la tabla base de datos al archivo de salida y el parámetro P_UP para subir a memoria los registros de la tabla base de datos a la cual le realizamos el SELECT.

Luego declaramos dos Field Symbols, FS_TABLA para la tabla interna dinámica y FS_CAB para la estructura o cabecera dinámica.

A continuación creamos el tipo de dato y asignamos los Field Symbols.

Dentro del evento START-OF-SELECTION, si seleccionamos el parámetro download entonces realizamos el SELECT dinámico a la tabla base de datos introducida por parámetro y luego ejecutamos el método GUI_DOWNLOAD de la clase CL_GUI_FRONTEND_SERVICES para descargar los registros de la tabla base de datos al archivo de salida.

Y si seleccionamos el parámetro de upload entonces ejecutamos el método GUI_UPLOAD de la clase CL_GUI_FRONTEND_SERVICES para subir a memoria los registros de la tabla base de datos.

Si ejecutamos el programa y contemplamos la pantalla de selección con la tabla de base de datos MARA.

Verificamos que luego de ejecutado el SELECT dinámico, el Field Symbol fs_tabla contiene los registros seleccionados de la tabla base de datos MARA.

Si ejecutamos hasta el final del programa verificamos que se genera correctamente el archivo de salida.

Y si abrimos el archivo de salida verificamos su contenido.


 

 

 


Sobre el autor

Publicación académica de Ariel Martucci, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Senior

Ariel Martucci

Profesión: Contador Publico - Argentina - Legajo: PJ45S

✒️Autor de: 78 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Un contador público de mediana edad con ganas de seguir aprendiendo carreras nuevas. estudiante avanzado de inglés, preparando mi first certificate, y al mismo tiempo involucrándome en programación.

Certificación Académica de Ariel Martucci

✒️+Comunidad Académica CVOSOFT

Continúe aprendiendo sobre el tema "Los Field Symbols" de la mano de nuestros alumnos.

SAP Master

FIELD SYMBOLS. Es un tipo de sentencia abap que nos permite trabajar con los datos de los programas en forma dinamica en tiempo de ejecusión.Los field symbols nos permiten acceder y pasar datos cuyos nombres y atributos no conocemos, hasta el momento de la ejecusión. DECLARACION DE UN FIELD SYMBOLS. utilizaremos la siguiente sintaxis: FIELD-SYMBOLS <fs> [<TYPE> estructure <s> DEFAULT <was>] ASIGNACION DE DATOS A UN FIELD SYMBOLS. Utilizamos la sentencia ASSIGN, utilizaremos la siguiente sintaxis: ASSIGN <f> TO <FS>

Acceder a esta publicación

Creado y Compartido por: Maria Ysabel Colina De Magdaleno

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1. Field Symbols Tipo de sentencia ABAP que se usar para trabajar datos de forma dinamica en tiempo de ejecuciòn. Pero no son muy flexibles por lo siguiente: - Si quieres procesar te permite especificar el offset y desplazarlo de forma dinàmica. - Se puede usar el Field Symbol para tomar atributos tecnicos. Solo se debe usar los Field Symbols cuando no se pueda llegar a los resultado usando las sentencias convencionales de ABAP. 2. Declaraciòn de un Field Symbol la sintaxis es: FIELD-SYMBOLS <FS> [<type>|STRUCTURE <s> DEFAULT <wa>]. 3. Asignaciòn de datos a un Field Symbols Se usa la sentencia ASSIGN de siguiente manera: ASSIGN <f> TO <FS>.

Acceder a esta publicación

Creado y Compartido por: Daniel Arias Sarmiento

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

Field Symbols Sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución. Se concideran como nombres simbolicos de lso datos ya que cuando se utilizan, el sistema trabaja con el contenido de los datos y no con el del Field Symbols.(Es un tipo de variable) FIELD-SYMBOLS( fs)[(type) STRUCTURE (s) DEFAULT (wa)] cuando asignamos un dato al field symbol este hereda los atributos tecnicos del dato. Para asignar datos a un FIELD symbol se uda la sentencia ASSIGN, y la asignacion es estatica LA mayoria de los errores con los field symnbols son detectados en tiempo de ejecucion, esto hace que sean dificiles de detectar.

Acceder a esta publicación

Creado y Compartido por: Carolina Sanchez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

Tratamiento de Archivos y Field Symbols Que son los Field Symbols: Field Symbol, es un tipo de sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinamica en tiempo de ejecucion. 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 dinamica. Se puede forzar a un field symbol para que tome diferentes atributos tecnicos que los del campo asignado a el. Declaracion de un Field Symbol: Usaremos la siguiente sintaxis: FIELD-SYMBOLS <FS>[<type>|STRUCTURE <s> DEFAULT <wa>]. Asignacion de dato a un Field Symbol: Para asignarle datos usaremos la sentencia ASSIGN.

Acceder a esta publicación

Creado y Compartido por: Juan Fernando Guerra Mata / Disponibilidad Laboral: FullTime

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

1 - Qué son los Field Symbols?. FIELD SYMBOL: Sentencia ABAP para acceder a los datos de los programas en forma dinámica en tiempo de ejecución. Los FIELD SYMBOLS proveen 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 Symbols para que tome diferentes atributos técnicos que los del campo asignado a el. Offset: Es cuando separamos un campo en varios strings, y cada string se considera una dato independiente. Solo debemos utilizar Field Symbols cuando no podemos llegar al mismo resultado con las sentencias ABAP convencionales, ya que como los errores se detecan en...

Acceder a esta publicación

Creado y Compartido por: Calixto Gutiérrez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

FIELD SYMBOL Sentencia abap que permite trabajar con datos de los programas en forma dinámica en tiempo de ejecución. Se declaran de la siguiente manera: FIELD-SYMBOLS <>[<type> |STRUCTURE <s> DEFAULT <wa>]. Si no se espefica un tipo a un field symbol este puede contener cualquier dato. Cuando se asigna un dato al field symbols este hereda los atributos técnicos del dato. Para asignar datos a un field symbol utilizamos la sentencia assign. ASSIGN <f> TO <FS>

Acceder a esta publicación

Creado y Compartido por: Alberth Julian Bolanos Bravo

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

que son los field Symbols es un tipo de sentencia abap que nos permite trabajar con los datos de los programas en forma dinamica en tiempo de ejecucion. al contrario de lo que sucede con el acceso estatico de los datos, donde necesitamos especificar el nombre de un objeto para poder hacer algo con el, los Field Symbols nos permite acceder y pasar datos cuyos nombres y atributos no conocemos hasta el momento de la ejecucion. se puede considerar a los field symbols como nombres simbolicos 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 symbols nos proveen de gran flexibilidad debido a que: si queremos procesar partes de campos, nos permite especificar...

Acceder a esta publicación

Creado y Compartido por: Oscar Sebastian Caicedo Carlier / Disponibilidad Laboral: PartTime + Carta Presentación

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Master

TRATAMIENTO DE ARCHIVOS Y FIELD SYMBOLS QUE ES UN FILED SYMBOL es un tipo de sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinamica en tiempo de ejecucion nombres simbolicos de los datos este nos permite especificar el offset y el desplazamiento en forma dinamica DECLARACION DE UN FIELD SYMBOL FIELD-SYMBOLS <FS> [<TYPE> |STRUCTURE <s> DEFAULT <wa>]. ASIGNACION DE DATOS para asignar datos aun field symbols utilizamos la sentencia ASSIGN la asignacion que utilizamos es estatica ya que sabemos el nombre del campo que queremos asignar ASSIGN <f> to <FS>

Acceder a esta publicación

Creado y Compartido por: Andres Felipe Escobar Lopez

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

1|QUE SON LOS FIELD SYMBOLS ES UN TIPO DE SENTENCIA ABAP QUE NOS PERMITE TRABAJAR CON LOS DATOS DE LOS PROGRAMAS EN UNA FORMA DINAMICA DE TIEMPO DE EJECUCION. LOS FIELD SYMBOL NOS PERMITEN ACCEDER Y PASAR DATOS CUYOS NOMBRES Y ATRIBUTO NO CONOCEMOS HASTA EL MOMENTO DE LA EJECUCION. LOS FIELD SYMBOL NOS PROVEEN DE GRAN FLEXIBILIDAD DEBIDO A QUE : SI QUEREMOS PROCESAR PARTES DE CAMPOS, NOS PERMITE ESPECIFICAR EL OFFSET Y EL DESPLAZAMIENTO DE UN CAMPO EN FORMA DINAMICA SE PUEDE FORZAR A UN FIEL SYMBOL PARA QUE TOME DIFERENTES ATRIBUTOS TECNICOS QUE LOS DEL CAMPOS ASIGNADO 2| DECLARACION DE UN FIELD SYMBOL SINTAXIS FIELD-SYMBOLS <FS> [<TYPE>|STRUCTURE <S> DEFAULT <WA>] SI NO ESPECIFICAMOS UN TIPO A UN FIELD SYMBOL ESTE PUEDE...

Acceder a esta publicación

Creado y Compartido por: Luis Eugenio Leyva Orozco

*** CVOSOFT - Nuestros Alumnos - Nuestro Mayor Orgullo como Academia ***

SAP Senior

FIELD SYMBOLS Es un tipode sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinamica en tiempo de ejecucion. Si queremos procesar partes de campos, nos permiten especificar el offset y el desplazamiento de un campo en forma dinamica, Se puede forzar a un FIELD Symbol para que tome diferentes atributos tecnicos que los campos asignados a el. La mayoria de los errores que comentamos en su utilizacion, lo detectaremos recien en tiempo de ejecucion. Lo cual lo hace mas dificil de detectar. Declaracion de un FIELDSYMBOL. FIELD-SYMBOLS nombre TYPE estructura. Si no especificamos un tipo de un FIELD SYMBOLS este puede contener cualquier dato. Cuando le asignamos un dato, este hereda los atributos...

Acceder a esta publicación

Creado y Compartido por: Jessica Daiana Garcete Paez / Disponibilidad Laboral: PartTime + Carta Presentación

 


 

👌Genial!, estos fueron los últimos artículos sobre más de 79.000 publicaciones académicas abiertas, libres y gratuitas compartidas con la comunidad, para acceder a ellas le dejamos el enlace a CVOPEN ACADEMY.

Buscador de Publicaciones:

 


 

No sea Juan... Solo podrá llegar alto si realiza su formación con los mejores!