🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️ABAP Los Field Symbols

ABAP Los Field Symbols

ABAP Los Field Symbols

Unidad n°6: El tratamiento de archivos y los Fields Symbols
Lección n°7: Los Field Symbols

El Field Symbol es un tipo de sentencia que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución.
Estos nos permiten acceder y pasar datos cuyos nombres y atributos no conocemos hasta el momento de ejecución.
Se pueden considerar a los Field Symbols como nombres simbólicos de los datos, ya que cuando se usan, el sist. trabaja con el contenido de los datos asignados y no con el contenido de los Field Symbols.
No reservan espacio físicamente para un campo, sino que "apuntan" su contenido. En uno de estos, se puede apuntar cualquier objeto de datos.

Nos 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 un Field Symbol para que tome distintos atributos técnicos del campo asignado a él.

Por lo genera, los errores que tenemos usando los Field Symbols los detectamos cuando ejecutamos; por ende solo tenemos que usarlos si no podemos llegar al mismo resultado con las sentencias convencionales.


La declaración de un Field Symbol:

Para poder usarlos en un programa debemos seguir dos pasos:

Declarar el Field Symbol.

Asignar al Field Symbol el objeto de datos.

Analicemos cada paso:+++

Para declararlos usaremos la sintaxis: FIELD-SYMBOLS <FS> [<type> |STRUCTURE <s> DEFAULT <wa>].

Si no especificamos un tipo a un Field Symbol, este puede contener cualquier dato, es decir, que asume todos losa tributos técnicos del campo.
Si especificamos un tipo, el sist. controla la compatibilidad del Field Symbol y el campo al que se está asociando en el momento de la ejecución de la sentencia asignada
.

EJ: declaramos un Field Symbol en donde no especificamos el tipo:

Ej: declaramos un Field Symbol en donde si especificamos el tipo:

Tipos de datos genéricos posibles para un Field Symbol:

  • TYPE ANY (sin especificación): todos los tipos de objetos de datos son aceptados.
  • TYPE C, I, N, P o X: solo estos tipos son aceptados. El Field Symbol adopta a longitud y decimales del dato.
  • TYPE TABLE: el sist. chequea si la tabla es estádar.
  • TYPE ANY TABLE: el sist. chequea si el campo es una TI. El Field Symbol hereda todos los atributos de la tabla.
  • TYPE INDEX TABLE: el sist. chequea si el campo es una tabla indexada. El Field Sym. hereda los atributos de la tabla.
  • TYPE STANDARD TABLE: el sist. chequea si el campo es una tabla estándar. El Field Sym. hereda todos los atributos de la tabla.
  • TYPE SORTED TABLE: el sist. chequea si el campo es una tabla sorted. El Field Sym. hereda todos los atributos de la tabla.
  • TYPE HASHED TABLE: el sist. chequea si el campo es una tabla hashed. El Field Sym. hereda todos los atributos de la tabla.

La asignación de datos a un Field Symbol:

En un programa se pueden asignar objetos de datos a Field Sym. en cualquier momento, como también asignar una serie de distintos objetos de datos a un Field Sym. Para asignarlos usaremos la sentencia ASSIGN; la cuál es estática ya que sabemos el nbombre del campo que queremos asignar al Field Sym.

La sintaxis del ASSIGN: ASSIGN <F> TO <FS>.
F es el campo asignado al Field Sym. y FS es el nombre del Field Sym.

EJ: declaramos y asignamos un Field Sym. en donde no especificamos el tipo:

EJ: asignamos y declaramos un Field Sym. en donde si especificamos el tipo:

Para entender como funcionan los Field Sym. veremos el paso a paso la ejecución del cód. anterior y el resultado de la impresión de pantalla; para ello, colocamos un breakpoint en ASSIGN y ejecutamos paso a paso.

Como podemos ver en el cód. v_variable tiene asignado el valor 2.
Luego de ejecutarse ASSIGN veremos que el Field Sym. fs_num tendrá asignado el mismo valor que v_variable (2):

Si le asignamos a fs_num el valor 4, v_variable tomará ese valor


El uso de Field Symbols cuando trabajamos con estructuras:

Podemos leer un registro de una TI usando un Field Sym. en vez de usar una estructura:

También podemos declarar un Field Symbol para recorrer una TI, en vez de declarar una wa y usarla para lo mismo.
A su vez, el mismo Field Sym. lo podemos usar para actualizar la TI.

Veamos como sería el cód. usando de ejemplo la TBD MARA:

Debemos tener en cuanta:

  • Si modificamos cualquier campo de la wa en el Field Symbol, el campo correspondiente en la TI se actualizará.
  • No necesitamos escribir la sentencia MODIFY que hubiéramos escrito si usábamos el wa; debido a que el wa almacena una copia de fila de la TI, mientras que el Field Sym. hace referencia directamente a la fila de la TI. Por ende, el procesamiento de la TI con el Field Sym. es más rápido que el procesamiento de la TI con el wa.

El uso de Field Symbols para realizar SELECT dinámicos:

Podemos usar Field Sym. para hacer SELECT dinámicos a las TBD, es decir, podríamos crear un programa que cuente que un param. en la pantalla de selecc. en donde se introduzca el nombre de la TBD que se quiere y una vez dentro, se haga el download de los registros de la TBD a un archivo o que se haga el upload de los registros de la TBD a la memoria para ser procesados.
El cód. correspondiente a esta lógica seria:

  1. En la pantalla de selec. declaramos el param. P_TABLAS para poner el nombre de la TBD.
  2. El param. P_FNAME para introducir el directorio y nombre del archivo de salida.
  3. El param. P_DOWN para seleccionar (en este caso) la descarga de los registros de la TBD al archivo de salida.
  4. El maram. P_UP para subir a memoria los registros de la TBD a la cual realizamos el SELECT.
  5. Declaramos dos Field Sym. FS_TABLA para la TI dinámica y FS_CAB para la estructura dinámica:
  6. Creamos el tipo de dato y asignamos los Field Sym:
  7. En START-OF-SELECTION si seleccionamos el param. download, realizamos el SELECT dinámico a la TBD introducida por param. y luego ejecuyamos el método GUI_DOWNLOAD de la calse CL_GUI:FRONTEND_SERVICES para descargar los registros de la TBD al archivo de salida:
  8. Si seleccionamos el param. de upload, eecutamos el método GUI_UPLOAD de la clase CL_GUI_FRONTEND_SERVICES para subir a memoria los registros de la TBD.
  9. Ejecutamos el programa y completamos la pantalla de selección con la TBD MARA.
  10. Verificamos que luego de ejecutado el SELECT dinámico, el Field Sym. fs_tabla contiene los registros seleccionados de la TBD MARA:
  11. Si ejecutamos hasta el final del programa verificamos que se genera correctamente el archivo de salida. Si lo abrimos verificamos su contenido:

 

 

 


Sobre el autor

Publicación académica de Candela Estefanía Calzada, en su ámbito de estudios para la Carrera Consultor ABAP.

SAP Expert


Candela Estefanía Calzada

Profesión: Técnica Electrónica - Argentina - Legajo: JW91W

✒️Autor de: 160 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Me encuentro estudiando la ingeniería en sistemas de información. poseo amplia experiencia en edición de videos. tengo bases entorno a la programación que quiero continuar consolidando.

Certificación Académica de Candela Calzada

✒️+Comunidad Académica CVOSOFT

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

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 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

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 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

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

SAP Expert


Field Symbols: Es una sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución. Los Field Symbols nos permiten acceder y pasar datos cuyos nombre y atributos no conocemos hasta el momento de la ejecución. Si no se especifica un tipo a un Field Symbol, entonces este puede contener cualquier dato.

Acceder a esta publicación

Creado y Compartido por: José Luis Zevallos Mamani

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

SAP Master

FIELD SYMBOLS Es un tipo de sentencia 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. Cuando se utilizan los Field Symbol el sistema trabaja con el contenido de los datos asignados y no con el contenido del field symbol. Ventajas: Si queremos procesar partes de campos, nos permiten especificar el offset y el desplazamiento de un campo en forma dinámica. Se puede forzar un Field Symbol para que tome diferentes atributos técnicos que los del campo asignado a él. Solo debemos usar Field Symbols si no podemos llegar al mismo resultado...

Acceder a esta publicación

Creado y Compartido por: Walter Giovanny Montoya García

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

SAP Master


¿QUÉ SON LOS FIELD SYMBOLS? Es un tipo de sentencia ABAP que nos permite trabajar con los datos de los programas en forma dinámica en tiempo de ejecución. Algunas de las propiedades y características de los Field Symbols son las siguientes: 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...

Acceder a esta publicación

Creado y Compartido por: Gianfranco Pasqua Indiano / Disponibilidad Laboral: FullTime + Carta Presentación

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

SAP Master

FIELD SYMBOLS Es una sentencia abap que permite trabajar con datos de forma dinamica en tiempo de ejecución. El sistema trabaja con el contenido de los datos asignados y no con el contenido del field symbol. Con los field symbols podemos: Procesar partes de un campo especificando un offset Asignar atributos tecnicos diferentes al del campo asignado Para declarar un field symbol utiliamos la sentencia: FIELD-SYMBOLS <fs> [<type>|STRUCTURE <s> DEFAULT <wa>] Si no especificamos un tipo, podría contener cualquier dato. Cuando le asignamos un dato, hereda los atributos tecnicos de él. (ASSIGN <dato> TO <fs>) Los tipos de datos genericos son: TYPE ANY (o sin especificar) TYPE...

Acceder a esta publicación

Creado y Compartido por: Jonatan Richioni

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

SAP Master

Qué es un field symbol Es un tipo de sentencia ABAP, un puntero Field symbol son nombres simbólicos de los datos No reservan espacio, apuntan a su contenido Apuntar a cualquier objeto de datos Solo debemos usarlos cuando no podemos hacerlo como código convencional La declaración de un field symbol En dos pasos: declararlo y asignarlo al objeto de datos Declaración mediante FIELD-SYMBOLS <FS> [<type>|STRUCTURE <s> DEFAULT <wa>] Hay muchos tipos de datos genéricos posibles para un field-symbol La asignación de datos a un field symbol Para asignar datos a un field symbol usamos la sentencia ASSIGN. Después de asignar un objeto...

Acceder a esta publicación

Creado y Compartido por: David Brito Melado

 


 

👌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!