1、通過字段查表:先通過SE16在表DD03L(保存有SAP所有字段)中通過字段查找到所有引用此字段的表名,再在表DD02L(保存有SAP所有表)中篩選表類別爲透明表的表。可以做成一個Query,方便以後查詢。其它相關表:DD02T(SAP表文本)、DD04T(數據元素文本)。另外,表DDFTX也有部分對應關係,但具體不清楚用在哪。
2、寫個小程序,通過字段找表:
*****&&&&&查找透明表&&&&&***** *&---------------------------------------------------------------------* *& Report ZTABLEFIND *& *&---------------------------------------------------------------------* *& Author: Mao JH *& *&---------------------------------------------------------------------* REPORT ztablefind. TABLES: dd02t, dd03l, dd02l. DATA: BEGIN OF field1 OCCURS 0. INCLUDE STRUCTURE dd03l. DATA: END OF field1. DATA: BEGIN OF field2 OCCURS 0. INCLUDE STRUCTURE dd03l. DATA su TYPE i. DATA: END OF field2. DATA:field_sum TYPE i. SELECT-OPTIONS ified FOR dd03l-fieldname. SELECT-OPTIONS ittype FOR dd02l-tabclass. DATA fieldsum TYPE i. SELECT * FROM dd03l INTO TABLE field1 WHERE fieldname IN ified. SORT field1 BY tabname. LOOP AT ified. fieldsum = sy-tabix. ENDLOOP. LOOP AT field1. field_sum = field_sum + 1. MOVE-CORRESPONDING field1 TO field2. AT END OF tabname. *field2-tabname = field1-tabname. *move-corresponding field1 to field2. field2-su = field_sum. COLLECT field2. CLEAR field2. CLEAR field_sum. ENDAT. ENDLOOP. LOOP AT field2 WHERE su = fieldsum. SELECT SINGLE * FROM dd02t WHERE tabname = field2-tabname AND ddlanguage = sy-langu. SELECT SINGLE * FROM dd02l WHERE tabname = field2-tabname AND tabclass IN ittype AND as4local = field2-as4local AND as4vers = field2-as4vers. IF sy-subrc = 0. WRITE: / field2-tabname,dd02l-tabclass,dd02t-ddtext. ENDIF. ENDLOOP. |
3、記錄幾個有用的表:
通用角色與本地角色的關係表:AGR_DEFINE
角色與事務代碼的關係表:AGR_TCODES(用於查詢角色中包含了哪些T-CODE,或一個T-CODE都被哪些角色使用)
這兩個表是我用ST05追蹤到的,記錄一下。