我想做的是利用
Set Parameter ID 'DTB' Field 'z*'.
Call Transaction 'SE11' and skip First Screen.此时,我想激活搜索框,并将结果放入内部表中。有什么想法吗?或者是否有一种方法可以使用数据库统计数据来更快地提取这些信息?
发布于 2015-02-06 07:35:05
与直接访问表不同,您可能希望使用一个半官方API,它不仅处理激活状态,而且还考虑到权限:
DATA: lt_tables TYPE STANDARD TABLE OF rpy_tabl.
FIELD-SYMBOLS: <ls_table> TYPE rpy_tabl.
CALL FUNCTION 'RPY_TABLE_SELECT'
EXPORTING
table_name = 'Z*'
TABLES
tabl_inf_tab = lt_tables
EXCEPTIONS
cancelled = 1
not_found = 2
permission_error = 3
OTHERS = 4.
IF sy-subrc <> 0.
* Implement suitable error handling here
ELSE.
LOOP AT lt_tables ASSIGNING <ls_table>.
CASE <ls_table>-tablclass.
WHEN 'TRANSP'. " Transparent table
* ...
WHEN 'INTTAB'. " Structure
* ...
WHEN 'CLUSTER'. " Cluster table
* ...
WHEN 'POOL'. " Pooled table
* ...
WHEN 'VIEW'. " Generated view structure
* ...
WHEN 'APPEND'. " Append structure
* ...
ENDCASE.
ENDLOOP.
ENDIF.发布于 2015-02-05 16:41:41
下面的代码将得到您想要的,您可能需要添加更多where子句,以便只获取活动表(AS4LOCAL EQ‘A’)或只获得透明表(TABCLASS 'TRANSP'),因为该表还包含结构。
DATA: t_tabname TYPE STANDARD TABLE OF tabname.
SELECT tabname INTO TABLE t_tabname FROM dd02l WHERE tabname LIKE 'Z%'.https://stackoverflow.com/questions/28329927
复制相似问题