*&---------------------------------------------------------------------*
*& Report ZDQUERY
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT ZME12_BDC1.
TYPE-POOLS : ABAP.
DATA where_tab(80) OCCURS 10 WITH HEADER LINE.
DATA where_tab2(80) OCCURS 10 WITH HEADER LINE.
DATA : wa_itab LIKE makt OCCURS 10 WITH HEADER LINE.
*DATA : idetails TYPE abap_compdescr_tab,
* xdetails TYPE abap_compdescr.
DATA:BEGIN OF get_table occurs 0 ,
TABNAME TYPE string,
END OF get_table.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
PARAMETERS:p_field TYPE string OBLIGATORY.
PARAMETERS: s_trx TYPE string LOWER CASE." LOWER CASE 大小写不转换
SELECTION-SCREEN END OF BLOCK B1.
INITIALIZATION.
START-OF-SELECTION.
*--->去掉前导 0
* CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
* EXPORTING
* input = s_trx
* IMPORTING
* output = s_trx.
CONCATENATE p_field ' LIKE ''%' s_trx '%''' INTO where_tab.
APPEND where_tab.
TYPE-POOLS : ABAP.
FIELD-SYMBOLS: <DYN_TABLE> TYPE STANDARD TABLE,
<DYN_WA>,
<DYN_FIELD>.
DATA: dy_table TYPE REF TO data,
dy_line TYPE REF TO data,
xfc TYPE lvc_s_fcat,
ifc TYPE lvc_t_fcat.
DATA:wa_structure TYPE lvc_s_fcat,
wa_structure1 TYPE lvc_s_fcat,
gt_structure TYPE lvc_t_fcat.
DATA: gs_layout TYPE slis_layout_alv,
gt_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
wa_fieldcat TYPE slis_fieldcat_alv.
START-OF-SELECTION.
PERFORM data_table.
PERFORM get_col.
PERFORM alv_show.
END-OF-SELECTION.
FORM data_table.
DATA: l_count TYPE i.
DATA : ref_table_des TYPE REF TO cl_abap_structdescr.
DATA : ef_is_unicode LIKE /bdl/tasks-status.
DATA:l_value TYPE string.
DATA: l_index TYPE sy-tabix,
lv_comt TYPE i,
l_num TYPE i ,
p_len TYPE n.
gs_layout-colwidth_optimize = 'X'.
p_len = strlen( s_trx ).
"查询ABAP 所有table表格
SELECT dd02vv~TABNAME COUNT(*) FROM dd02vv
INNER JOIN dd02l ON dd02l~tabname EQ dd02vv~tabname
INNER JOIN dd03l ON dd03l~tabname EQ dd02vv~tabname
* The UP the TO 10 ROWS
the INTO CORRESPONDING the FIELDS . OF TABLE get_table
the WHERE dd02vv ~ tabclass the IN ( 'the TRANSP' , 'the CLUSTER' , 'the POOL' ) the AND "Transparent Table
dd02vv ~ contflag NE 'L' the AND " when the stored data table, an empty transfer
dd02vv ~ as4local the nOT the IN ( 'N' , 'T' ) the AND "is not enabled, a temporary version
dd03l ~ fieldName the EQ p_field