最近新系统建了很多自荐表,有的表、视图还没建,有的表里已经有数据有的还没有。
人为查忒麻烦。
就写了个小工具。
其实主要的代码就几句
SELECT-OPTIONS
: s_tab
FOR ddtypes
-typename
.
" "视图
FORM frm_get_view_name .
"根据输入条件查找系统内存在的视图:
SELECT * FROM ddtypes INTO TABLE gt_table
WHERE typename IN s_tab
AND STATE = 'A'
AND typekind = 'VIEW'.
ENDFORM.
"根据输入条件查找系统内存在的视图:
SELECT * FROM ddtypes INTO TABLE gt_table
WHERE typename IN s_tab
AND STATE = 'A'
AND typekind = 'VIEW'.
ENDFORM.
STATE:
A的激活状态
N是未激活
typekind :
view:视图
TABL:表
然后根据视图名称去取数量
"获取数量
LOOP AT gt_table.
CLEAR gw_data.
CLEAR l_count.
SELECT COUNT( * ) FROM (gt_table-typename)
INTO l_count.
IF l_count > 0.
……
ENDIF.
IF l_count = 0.
……
ENDIF.
gw_data-typename = gt_table-typename.
gw_data-ztext = l_count.
APPEND gw_data TO gt_data.
ENDLOOP.
LOOP AT gt_table.
CLEAR gw_data.
CLEAR l_count.
SELECT COUNT( * ) FROM (gt_table-typename)
INTO l_count.
IF l_count > 0.
……
ENDIF.
IF l_count = 0.
……
ENDIF.
gw_data-typename = gt_table-typename.
gw_data-ztext = l_count.
APPEND gw_data TO gt_data.
ENDLOOP.
当然,取数的表,不见得必须是ddtypes
其实一般用DD02L:SAP - 表
我做的报表最后展示结果: