• GRID方式ALV导出数据到本地丢掉最后一位的问题


    这是SAP的一个Bug,FM方式ALV GridClass ALV Grid都会出现,但是ALV List好像没有这个BUG。
     
    在以下几个条件满足的时候就会出现这个问题:
    1.字段对应的域Convers. routine = ALPHA,也就是有前导零的字段,比如供应商号、商品号、客户号等。
    2.做ALV Fieldcat的时候,没有指定参考表和参考字段
    3.列的表头文本(seltext_s等)比实际显示的数据短
     
    所以解决问题的时候从2、3两点下手即可。
     
     1 TYPE-POOLS: slis.
     2 DATA: gd_fieldcat TYPE slis_t_fieldcat_alv.
     3 DATA: sla TYPE slis_layout_alv ,
     4       i_repid LIKE sy-repid ,
     5       ls_fieldcat TYPE slis_fieldcat_alv.
     6 DATA: BEGIN OF itab OCCURS 0,
     7         lifnr LIKE lfa1-lifnr ,
     8         kunnr LIKE kna1-kunnr ,
     9         matnr LIKE mara-matnr ,
    10         bukrs LIKE bsik-bukrs ,
    11       END OF itab.
    12 
    13 START-OF-SELECTION.
    14   itab-lifnr = '0000100047'.
    15   itab-kunnr = '0000001006'.
    16   itab-bukrs = 'ZB01'.
    17   itab-matnr = '000000000001100198'.
    18   APPEND itab.
    19 
    20   CLEAR ls_fieldcat .
    21   ls_fieldcat-fieldname     =  'LIFNR'.
    22   ls_fieldcat-seltext_s     =  'LI'.
    23   ls_fieldcat-seltext_l     =  'LILI'.
    24   ls_fieldcat-seltext_m     =  'LILILI'.
    25   ls_fieldcat-ref_fieldname = 'LIFNR'.  "|注释
    26   ls_fieldcat-ref_tabname   = 'LFA1'.   "|
    27   ls_fieldcat-ddictxt       = 'S'.
    28   APPEND ls_fieldcat TO gd_fieldcat .
    29 
    30   CLEAR ls_fieldcat .
    31   ls_fieldcat-fieldname     =  'KUNNR'.
    32   ls_fieldcat-seltext_s     =  'KU'.
    33   ls_fieldcat-ref_fieldname = 'KUNNR'.  "|注释
    34   ls_fieldcat-ref_tabname   = 'KNA1'.   "|
    35   APPEND ls_fieldcat TO gd_fieldcat .
    36 
    37   CLEAR ls_fieldcat .
    38   ls_fieldcat-fieldname     =  'BUKRS'.
    39   ls_fieldcat-seltext_s     =  'BU'.
    40   APPEND ls_fieldcat TO gd_fieldcat .
    41 
    42   CLEAR ls_fieldcat .
    43   ls_fieldcat-fieldname     =  'MATNR'.
    44   ls_fieldcat-seltext_s     =  'MAT'.
    45   ls_fieldcat-ref_fieldname = 'MATNR'.  "|注释
    46   ls_fieldcat-ref_tabname   = 'MAKT'.   "|
    47   APPEND ls_fieldcat TO gd_fieldcat .
    48 
    49   i_repid = sy-repid.
    50   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    51     EXPORTING
    52       i_callback_program      = i_repid
    53       it_fieldcat             = gd_fieldcat[]
    54       i_save                  = 'A'
    55       is_layout               = sla
    56       i_callback_user_command = 'USER_COMMAND'
    57     TABLES
    58       t_outtab                = itab
    59     EXCEPTIONS
    60       program_error           = 1
    61       OTHERS                  = 2.
    View Code
  • 相关阅读:
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!
    数据库周刊第十七期来啦!
    一文详解MySQL中的事件调度器EVENT
    新买的Mac该如何保养?
    五步搭建自助BI平台,业务分析自给自足,不再等待!
    Oracle坏块处理常用SQL
    懒人看执行计划神器 for Oracle
  • 原文地址:https://www.cnblogs.com/ruingy/p/3675971.html
Copyright © 2020-2023  润新知