SAP ABAP将内表转换为HTML格式

该段代码是一个SAPABAP程序,用于从VBAP表中选取销售订单数据,填充到表格中,然后转换为HTML格式,最后下载到本地文件Sales.htm并打开显示。主要涉及数据选择、HTML布局和GUI交互功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码如下

TYPES :  BEGIN  OF TY_VBAP ,
         VBELN  TYPE VBELN ,
         POSNR  TYPE POSNR ,
         MATNR  TYPE MATNR ,
        END  OF TY_VBAP .
*-ALL related Declarations
DATA :    T_HEADER   TYPE  STANDARD  TABLE  OF W3HEAD  WITH  HEADER  LINE ,   "Header
         T_FIELDS   TYPE  STANDARD  TABLE  OF W3FIELDS  WITH  HEADER  LINE ,     "Fields
         T_HTML     TYPE  STANDARD  TABLE  OF W3HTML ,                           "Html
         WA_HEADER  TYPE W3HEAD ,
         W_HEAD     TYPE W3HEAD .
DATA : IT_VBAP  TYPE  STANDARD  TABLE  OF TY_VBAP ,
      IT_FCAT  TYPE LVC_T_FCAT  WITH  HEADER  LINE .

START-OF-SELECTION .
   SELECT VBELN POSNR MATNR
           FROM VBAP
           INTO  TABLE IT_VBAP
          UP  TO  15  ROWS .

END-OF-SELECTION .
*-Populate the Columns
  IT_FCAT -COLTEXT  =  'SalesOrder' .
   APPEND IT_FCAT .
  IT_FCAT -COLTEXT  =  'ItmeNumber' .
   APPEND IT_FCAT .
  IT_FCAT -COLTEXT  =  'Material' .
   APPEND IT_FCAT .
*-Fill the Column heading and Filed Properties
   LOOP  AT IT_FCAT .
    W_HEAD - TEXT  = IT_FCAT -COLTEXT .
     "标题行设置
     CALL  FUNCTION  'WWW_ITAB_TO_HTML_HEADERS'
       EXPORTING
        FIELD_NR  = SY -TABIX
         TEXT      = W_HEAD - TEXT
        FGCOLOR   =  'yellow'
        BGCOLOR   =  'green'
       TABLES
         HEADER    = T_HEADER .

     CALL  FUNCTION  'WWW_ITAB_TO_HTML_LAYOUT'
       EXPORTING
        FIELD_NR  = SY -TABIX
        FGCOLOR   =  'black'
         SIZE      =  '3'
       TABLES
         FIELDS    = T_FIELDS .
   ENDLOOP .
*-Title of the Display
  WA_HEADER - TEXT  =  'Sales Order Details' .
  WA_HEADER -FONT  =  'Arial' .
  WA_HEADER - SIZE  =  '2' .
*-Preparing the HTML from Intenal Table
   REFRESH T_HTML .
   CALL  FUNCTION  'WWW_ITAB_TO_HTML'
     EXPORTING
      TABLE_HEADER  = WA_HEADER
     TABLES
      HTML          = T_HTML
       FIELDS        = T_FIELDS
      ROW_HEADER    = T_HEADER
      ITABLE        = IT_VBAP .
*-Download  the HTML into frontend
   CALL  FUNCTION  'GUI_DOWNLOAD'
     EXPORTING
      FILENAME                 =  'C:\Sales.htm'
     TABLES
      DATA_TAB                 = T_HTML
     EXCEPTIONS
      FILE_WRITE_ERROR         =  1
      NO_BATCH                 =  2
      GUI_REFUSE_FILETRANSFER  =  3
      INVALID_TYPE             =  4
      NO_AUTHORITY             =  5
      UNKNOWN_ERROR            =  6
      HEADER_NOT_ALLOWED       =  7
      SEPARATOR_NOT_ALLOWED    =  8
      FILESIZE_NOT_ALLOWED     =  9
      HEADER_TOO_LONG          =  10
      DP_ERROR_CREATE          =  11
      DP_ERROR_SEND            =  12
      DP_ERROR_WRITE           =  13
      UNKNOWN_DP_ERROR         =  14
      ACCESS_DENIED            =  15
      DP_OUT_OF_MEMORY         =  16
      DISK_FULL                =  17
      DP_TIMEOUT               =  18
      FILE_NOT_FOUND           =  19
      DATAPROVIDER_EXCEPTION   =  20
      CONTROL_FLUSH_ERROR      =  21
       OTHERS                   =  22 .
   IF SY -SUBRC <>  0 .
     MESSAGE  ID SY -MSGID  TYPE SY -MSGTY  NUMBER SY -MSGNO
     WITH SY -MSGV1 SY -MSGV2 SY -MSGV3 SY -MSGV4 .
   ENDIF .

   CALL  FUNCTION  'GUI_RUN'
     EXPORTING
      COMMAND  =  'C:\Sales.htm'
*     PARAMETER        =
*     CD      =
*   IMPORTING
*     RETURNCODE       =

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值