日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

使用代码创建ABAP transparent table

發布時間:2023/12/19 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用代码创建ABAP transparent table 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Created by Jerry Wang on May 06, 2014

下列report可以創建一個新的transparent table,包含一個column如下:

執行report, 輸入待創建的table name:


SE11查看創建table的status為Active:

REPORT ztable.PARAMETERS: tabname TYPE char32 OBLIGATORY. DATA: lt_new_object TYPE comt_gox_def_header,lt_old_object LIKE lt_new_object,lv_dbtab1_name TYPE char32,ls_new_object LIKE LINE OF lt_new_object,ls_new_object_details TYPE LINE OF comt_gox_table_entry_fields,lt_returntab TYPE bapirettab,ls_return LIKE LINE OF lt_returntab.ls_new_object-object_type = 'TABLE'. ls_new_object-object_name = tabname.TRY.DATA(lv_guid) = cl_system_uuid=>if_system_uuid_static~create_uuid_c32( ).CATCH cx_uuid_error . ENDTRY.ls_new_object-key_guid = lv_guid. DATA(lv_parent_guid) = ls_new_object-key_guid. ls_new_object_details-fieldname = 'TABCLASS'. ls_new_object_details-fieldvalue = 'TRANSP'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'TABKAT'. ls_new_object_details-fieldvalue = '0'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'TABART'. ls_new_object_details-fieldvalue = 'APPL2'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'PUFFERUNG'. ls_new_object_details-fieldvalue = 'X'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'CONTFLAG'. ls_new_object_details-fieldvalue = 'S'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'MAINFLAG'. ls_new_object_details-fieldvalue = 'X'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'BUFFALLOW'. ls_new_object_details-fieldvalue = 'X'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'SCHFELDANZ'. ls_new_object_details-fieldvalue = '0'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. APPEND ls_new_object TO lt_new_object. CLEAR ls_new_object.ls_new_object-object_type = 'TABLE_FIELD'. TRY.lv_guid = cl_system_uuid=>if_system_uuid_static~create_uuid_c32().CATCH cx_uuid_error . ENDTRY. ls_new_object-key_guid = lv_guid. ls_new_object-parent_key = lv_parent_guid. lv_parent_guid = lv_guid. ls_new_object-object_name = 'CODE_VALUE'. ls_new_object_details-fieldname = 'POSITION'. ls_new_object_details-fieldvalue = '1'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'KEYFLAG'. ls_new_object_details-fieldvalue = 'X'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'NOTNULL'. ls_new_object_details-fieldvalue = 'X'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. ls_new_object_details-fieldname = 'ROLLNAME'. ls_new_object_details-fieldvalue = 'COMT_PRODUCT_ID'. APPEND ls_new_object_details TO ls_new_object-details. CLEAR ls_new_object_details. APPEND ls_new_object TO lt_new_object. CLEAR ls_new_object. REFRESH lt_returntab. CLEAR lv_parent_guid.lv_dbtab1_name = tabname. CALL FUNCTION 'GOX_GEN_TABLE_STD'EXPORTINGiv_object_name = lv_dbtab1_nameit_object_new = lt_new_objectit_object_old = lt_old_objectiv_devclass = '$TMP'IMPORTINGet_bapireturn = lt_returntab.CHECK lt_returntab IS INITIAL.DATA: lv_ddobjname TYPE ddobjname,ls_dd02v TYPE dd02v.lv_ddobjname = lv_dbtab1_name. CALL FUNCTION 'DDIF_TABL_GET'EXPORTINGname = lv_ddobjnamestate = 'A'langu = sy-languIMPORTINGdd02v_wa = ls_dd02vEXCEPTIONSillegal_input = 1OTHERS = 2. IF sy-subrc <> 0.RETURN. ENDIF.ls_dd02v-mainflag = 'X'. CALL FUNCTION 'DDIF_TABL_PUT'EXPORTINGname = lv_ddobjnamedd02v_wa = ls_dd02vEXCEPTIONStabl_not_found = 1name_inconsistent = 2tabl_inconsistent = 3put_failure = 4put_refused = 5OTHERS = 6. IF sy-subrc <> 0.RETURN. ENDIF.CALL FUNCTION 'DDIF_TABL_ACTIVATE'EXPORTINGname = lv_ddobjnameauth_chk = ' '.CHECK sy-subrc = 0.WRITE:/ 'Table: ', lv_ddobjname, ' generated successfully'.

總結

以上是生活随笔為你收集整理的使用代码创建ABAP transparent table的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。