1、屏幕字段读取,可以调用下面的Function来获取屏幕字段及字段的值:
DATA:LT_DYNPRO LIKE TABLE OF DYNPREAD WITH HEADER LINE.
CALL FUNCTION 'DYNP_VALUES_READ'
EXPORTING
DYNAME = SY-CPROG
DYNUMB = SY-DYNNR
REQUEST = GC_A
TABLES
DYNPFIELDS = LT_DYNPRO
EXCEPTIONS
INVALID_ABAPWORKAREA = 1
INVALID_DYNPROFIELD = 2
INVALID_DYNPRONAME = 3
INVALID_DYNPRONUMMER = 4
INVALID_REQUEST = 5
NO_FIELDDESCRIPTION = 6
INVALID_PARAMETER = 7
UNDEFIND_ERROR = 8
DOUBLE_CONVERSION = 9
STEPL_NOT_FOUND = 10
OTHERS = 11.
可以通过FIELDNAME与FIELDVALUE来获取相应字段的值,该Function返回的是制定屏幕上所有字段的值
2、屏幕字段更新,可以调用下面的Function来更新屏幕字段的值:
FORM F_UPDATE_TEXT_SCREEN USING PV_FNAME
PV_FVALUE.
DATA : LT_UPDATE LIKE DYNPREAD OCCURS 0 WITH HEADER LINE.
LT_UPDATE-FIELDNAME = PV_FNAME.
LT_UPDATE-FIELDVALUE = PV_FVALUE.
APPEND LT_UPDATE. CLEAR LT_UPDATE.
CALL FUNCTION 'DYNP_VALUES_UPDATE'
EXPORTING
DYNAME = SY-REPID
DYNUMB = SY-DYNNR
TABLES
DYNPFIELDS = LT_UPDATE
EXCEPTIONS
OTHERS.
FREE: LT_UPDATE.
ENDFORM. " F_UPDATE_TEXT_SCREEN