Mira ambos cumplen una función similar (pero se diferencian en algo) ambos validan si se asigno el valor al fiel-symbol pero la diferencia es la siguiente:
1) IS ASSIGNED:
Este se usa para validar si se asigno un valor a un <fs> "sin estructura" (TYPE ANY, TYPE TABLE ANY,etc) es decir no se sabe que estructura tiene antes de asignarle el valor al <fs> Ejm:
FIELD-SYMBOLS <FS>.
DATA TEXT(20) TYPE C VALUE 'Texto a Mostrar'.
ASSIGN TEXT TO <FS>.
IF <FS> IS ASSIGNED.
WRITE <FS>.
ENDIF.
2) SY-SUBRC:
Este se usa para saber si se asigno algo al field symbol y por lo general ya se tiene definida la estructura del field symbol Ejm.
FIELD-SYMBOL: <tabla> TYPE pa0001.
<wa> TYPE LINE OF pa001.
data: v_pernr type persno.
READ TABLE <tabla> ASSIGNING <wa>.
IF SY-SUBRC EQ 0.
Cotinua tu lógica...
ENDIF.
__________________
Saludos Cordiales,
Alfredo Pastor Avendaño
SAP - Consultant HCM
|