IS_VARIANT TYPE DISVARIANT "定义显示器格式
IS_VARIANT-REPORT = SY-REPID.
DATA: LT_EXCLUDE TYPE UI_FUNCTIONS.
IF ZDHZ = ‘’.
IS_VARIANT-HANDLE = 1.
CREATE OBJECT CUSTOM_CONTAINER
EXPORTING
CONTAINER_NAME = SCRFNAME
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
LIFETIME_DYNPRO_DYNPRO_LINK = 5.
-
create an instance of alv control
CREATE OBJECT GRID1
EXPORTING
I_PARENT = CUSTOM_CONTAINER. -
Set a titlebar for the grid control
PERFORM BUILD_FIELDCAT_H CHANGING GT_FIELDCAT.
PERFORM EXCLUDE_TB_FUNCTIONS CHANGING LT_EXCLUDE.
PERFORM BUILD_DATA." CHANGING GT_OUTTAB[].
ELSE.
IS_VARIANT-HANDLE = 3.
CREATE OBJECT CUSTOM_CONTAINER
EXPORTING
CONTAINER_NAME = SCRFNAME4
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
LIFETIME_DYNPRO_DYNPRO_LINK = 5. -
create an instance of alv control
CREATE OBJECT GRID1
EXPORTING
I_PARENT = CUSTOM_CONTAINER.
PERFORM BUILD_FIELDCAT_H1 CHANGING GT_FIELDCAT.
PERFORM EXCLUDE_TB_FUNCTIONS CHANGING LT_EXCLUDE.
PERFORM BUILD_DATA ."CHANGING GT_HJ[].
ENDIF.IF ZDHZ = ‘’.
LOOP AT GT_OUTTAB."by zyg date20190923 -
可利用量=备货数量-后台已备货数量
-
GT_OUTTAB-KLYL = GT_OUTTAB-BHSL - GT_OUTTAB-B_KWMENG.
-
已预留量=后台已备货数量-已交货量
-
GT_OUTTAB-YYLL = GT_OUTTAB-B_KWMENG - GT_OUTTAB-YCHL. GT_OUTTAB-B_KWMENG1 = GT_OUTTAB-B_KWMENG. REPLACE ALL OCCURRENCES OF '.000' IN GT_OUTTAB-B_KWMENG1 WITH SPACE. GT_OUTTAB-KWMENGT = GT_OUTTAB-KWMENG. REPLACE ALL OCCURRENCES OF '.000' IN GT_OUTTAB-KWMENGT WITH SPACE. MODIFY GT_OUTTAB ."TRANSPORTING KLYL YYLL.
ENDLOOP.
GS_LAYOUT-STYLEFNAME = ‘CELLTAB’.
GS_LAYOUT-GRID_TITLE = SPACE.CALL METHOD GRID1->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
I_STRUCTURE_NAME = ‘gt_outtab’
IS_LAYOUT = GS_LAYOUT
IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
I_SAVE = ‘A’
I_DEFAULT = ‘X’
IS_VARIANT = IS_VARIANT
CHANGING
IT_FIELDCATALOG = GT_FIELDCAT
IT_OUTTAB = GT_OUTTAB[].CREATE OBJECT EVENT_RECEIVER.
SET HANDLER EVENT_RECEIVER->HANDLE_DOUBLE_CLICK FOR GRID1.
CALL METHOD GRID1->SET_READY_FOR_INPUT
EXPORTING
I_READY_FOR_INPUT = 1.
"调明细表
-
data: ls_outtab like line of gt_outtab.
-
" read table gt_outtab index e_row-index into ls_outtab.
-
perform read_list using ls_outtab
-
changing gv_outtab[].
PERFORM CREATE_DETAIL_LIST.
ELSE.
GS_LAYOUT-STYLEFNAME = ‘CELLTAB’.
GS_LAYOUT-GRID_TITLE = SPACE.CALL METHOD GRID1->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
I_STRUCTURE_NAME = ‘GT_HJ’
IS_LAYOUT = GS_LAYOUT
IT_TOOLBAR_EXCLUDING = LT_EXCLUDE
I_SAVE = ‘A’
I_DEFAULT = ‘X’
IS_VARIANT = IS_VARIANT
CHANGING
IT_FIELDCATALOG = GT_FIELDCAT
IT_OUTTAB = GT_HJ[].CREATE OBJECT EVENT_RECEIVER.
SET HANDLER EVENT_RECEIVER->HANDLE_DOUBLE_CLICK FOR GRID1.
CALL METHOD GRID1->SET_READY_FOR_INPUT
EXPORTING
I_READY_FOR_INPUT = 1.
ENDIF.