PDA

Ver la Versión Completa : Acceder campo tabla estándar en forma dinámica


oarranzli
05/05/09, 09:04:38
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,

oarranzli
09/05/09, 10:55:20
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.