DYNP_VALUES_READ 获取屏幕动态值
?? 下面簡單寫了個例子,寫這篇文章主要是引出DYNP_VALUES_READ 函數(shù),在很多時候我們都可以用它;
&---------------------------------------------------------------------*
*&?Report??ZLC_DYNP_VALUES_READ
*&
*&---------------------------------------------------------------------*
REPORT??ZLC_DYNP_VALUES_READ.
DATA:?IT_DYNPREAD???????LIKE??TABLE?OF?DYNPREAD,
??????????WA_DYNPREAD?????LIKE?DYNPREAD.
PARAMETERS?C_BOX?AS?CHECKBOX?.
SELECTION-SCREEN?BEGIN?OF?BLOCK?BLK1?.
PARAMETERS:?P_FNAME????TYPE?RLGRAP-FILENAME.
SELECTION-SCREEN?END??OF?BLOCK??BLK1.
AT?SELECTION-SCREEN??ON?VALUE-REQUEST?FOR?P_FNAME.
???CLEAR:?????IT_DYNPREAD?,?WA_DYNPREAD.
??WA_DYNPREAD-FIELDNAME?=?'C_BOX'.
??APPEND?WA_DYNPREAD?TO?IT_DYNPREAD.
????CALL?FUNCTION?'DYNP_VALUES_READ'
??????EXPORTING
????????DYNAME???????????????????????????????=?SY-REPID
????????DYNUMB???????????????????????????????=?'1000'
????????TRANSLATE_TO_UPPER?????????=??'?X'
??????TABLES
????????DYNPFIELDS???????????????????????????=?IT_DYNPREAD?.
?READ?TABLE?IT_DYNPREAD?INTO?WA_DYNPREAD?WITH?KEY?FIELDNAME?=?'C_BOX'.
?IF?SY-SUBRC?=?0.
???C_BOX?=??WA_DYNPREAD-FIELDVALUE.
?ENDIF.
??IF?C_BOX?=??'X'.
??????PERFORM???FRM_OPEN_DIALOG.
??ELSE.
??????PERFORM?FRM_SAVE_DIGLOG.
??ENDIF.
*&---------------------------------------------------------------------*
*&??????Form??FRM_OPEN_DIALOG
*&---------------------------------------------------------------------*
FORM?FRM_OPEN_DIALOG?.
??DATA:??L_WK_RC?????TYPE???I,
?????????????L_WK_ACT???TYPE???I.
??DATA:??L_IT_TABLE??TYPE?FILETABLE,
?????????????L_WA_TABLE?LIKE?LINE?OF?L_IT_TABLE.
??CALL?METHOD?CL_GUI_FRONTEND_SERVICES=>FILE_OPEN_DIALOG
???CHANGING
?????FILE_TABLE?????????=??L_IT_TABLE
?????RC??????????????????????=??L_WK_RC
????USER_ACTION??????=??L_WK_ACT.
??READ?TABLE?L_IT_TABLE??INTO?L_WA_TABLE?INDEX?1.
??P_FNAME?=?L_WA_TABLE-FILENAME.
ENDFORM.????????????????????"?FRM_OPEN_DIALOG
*&---------------------------------------------------------------------*
*&??????Form??FRM_SAVE_DIGLOG
*&---------------------------------------------------------------------*
FORM?FRM_SAVE_DIGLOG?.
??DATA:?L_WK_FNAME????????TYPE?STRING,
????????????L_WK_PATH???????????TYPE?STRING,
????????????L_WK_FULLPATH????TYPE?STRING.
??????CALL?METHOD?CL_GUI_FRONTEND_SERVICES=>FILE_SAVE_DIALOG
????????CHANGING
??????????FILENAME????????????=??L_WK_FNAME
??????????PATH??????????????????=??L_WK_PATH
??????????FULLPATH???????????=??L_WK_FULLPATH.
ENDFORM.????????????????????"?FRM_SAVE_DIGLOG
總結(jié)
以上是生活随笔為你收集整理的DYNP_VALUES_READ 获取屏幕动态值的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ABAP 使用DYNP_VALUES_R
- 下一篇: SAP传输请求