Acceder campo tabla estándar en forma dinámica

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • oarranzli
    Senior Member
    • jun
    • 373

    #1

    Acceder campo tabla estándar en forma dinámica

    Hola:

    Estoy intentando ir a ver un campo de una tabla estándar de forma dinámica. La tabla es la TFACS que tiene todos los campos MON01, MON02, etc. pero no sé sobre qué campo he de ir a mirar a priori. Puede ser en cualquiera de estos MON**. Así que me monto un field-symbol y le digo que me asigne el contenido de una variable al field symbol. Es decir, que si si la variable (l_mon) es igual a MON01, entonces le digo asígnale 'MON01' al field symbol <l_mon_f>. Y con esto espero que diciéndole léeme del campo TFACS-<l_mon_f> (que yo entiendo que debería interpretar como TFACS-MON01) me voy al contenido final de ese campo. Pues no. No me hace caso. ¿Cuál es mi fallo?

    DATA: l_mon(5).
    FIELD-SYMBOLS: <l_mon_f> TYPE ANY.

    concatenate 'MON' NUM_MES into l_mon.
    assign (l_mon) to <l_mon_f>.

    if tfacs-<l_mon_f> = '1'. "Laborable
    * Hazme algo.
    elseif tfacs-<l_mon_f> = '0'. "Festivo
    * Hazme otra cosa distinta
    endif.

    Saludos,
    Editado por última vez por oarranzli; 05/05/2009, 09:06:51.
    Óscar
    http://www.blogdesap.com
  • oarranzli
    Senior Member
    • jun
    • 373

    #2
    Ya he conseguido resolverlo. Hay que decirle al SAP que me acceda directamente al nombre <TABLA-CAMPO>. SAP no entiende el acceso a TABLA-<CAMPO>.

    DATA: l_mon(5).
    FIELD-SYMBOLS: <l_mon_f> TYPE ANY.

    concatenate 'TFACS-MON' NUM_MES into l_mon.
    assign (l_mon) to <l_mon_f>.

    if <l_mon_f> = '1'. "Laborable
    * Hazme algo.
    elseif <l_mon_f> = '0'. "Festivo
    * Hazme otra cosa distinta
    endif.
    Óscar
    http://www.blogdesap.com

    Comentario

    Trabajando...