DATA
:
BEGIN
OF
gt_out
OCCURS
0,
"输出表
machine(5)
TYPE
n,
"机台
ton(5)
TYPE
n,
"吨位
extwg
LIKE
mara-extwg,
"客户
zeinr
LIKE
mara-zeinr,
"机种
matnr
LIKE
mara-matnr,
"内部品番
maktx
LIKE
makt-maktx,
"外部品番
vgw04
LIKE
afvv-vgw04,
"周期
bmsch(16)
TYPE
n,
"取数
ngrad
LIKE
kako-ngrad,
"收率
abili(7)
TYPE
p,
"日生产能力
kpcs01(7)
TYPE
p
DECIMALS
3,
"产量
days01(5)
TYPE
p
DECIMALS
2,
"生产天数
work01(2)
TYPE
n,
"工作天数
acti01
LIKE
konv-kbetr,
"稼动率
END
OF
gt_out.
* ALV 定义
TYPE
-
POOLS
:slis.
DATA
: g_repid
LIKE
sy-repid,
gt_fieldcat
TYPE
slis_t_fieldcat_alv
WITH
HEADER
LINE
,
gt_layout
TYPE
slis_layout_alv.
DEFINE
modify_fieldcat1.
READ
TABLE
gt_fieldcat
INDEX
&1.
gt_fieldcat-seltext_m = &2.
gt_fieldcat-ddictxt =
'M'
.
MODIFY
gt_fieldcat
INDEX
&1.
END
-
OF
-
DEFINITION
.
DATA
:lv_index
LIKE
sy-tabix,
lv_text
TYPE
scrtext_m.
g_repid = sy-repid.
CALL
FUNCTION
'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = g_repid
i_internal_tabname =
'GT_OUT'
i_inclname = g_repid
CHANGING
ct_fieldcat = gt_fieldcat[]
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS
= 3.
IF
sy-subrc <> 0.
MESSAGE
ID
sy-msgid
TYPE
sy-msgty
NUMBER
sy-msgno
WITH
sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF
.
modify_fieldcat1: 1
'机台'
,
2
'吨位'
,
3
'客户'
,
4
'机种'
,
5
'内部品番'
,
6
'外部品番'
,
7
'周期'
,
8
'取数'
,
9
'收率'
,
10
'日生产能力'
.
READ
TABLE
gt_fieldcat
INDEX
8.
gt_fieldcat-no_zero =
'X'
.
MODIFY
gt_fieldcat
INDEX
8.
gt_layout-colwidth_optimize =
'X'
.
CALL
FUNCTION
'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
is_layout = gt_layout
it_fieldcat = gt_fieldcat[]
i_save =
'X'
TABLES
t_outtab = gt_out
EXCEPTIONS
program_error = 1
OTHERS
= 2.
IF
sy-subrc <> 0.
MESSAGE
ID
sy-msgid
TYPE
sy-msgty
NUMBER
sy-msgno
WITH
sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF
.