汇总前(N)列并对比第(N+1)列的金额(数量)
在排查财务问题的时候,往往会遇到需要汇总和对比的操作,EXCEL需要用很多公式,还有VLOOKUP。
这里直接写个程序来自动对比:
本文链接:https://www.cnblogs.com/chaguoguo/p/18051432
使用界面如下:
即“汇总表的前N项并比对”填N。
举例:比如要按物料汇总,并比较金额,两个文档都是一列物料号、一列金额。“汇总表的前N项并比对”那里填1
文档1和文档2的格式为:
下面是代码参考:
ZIT0001:

*&---------------------------------------------------------------------* *& Report ZIT0001 *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT ZIT0001. INCLUDE ZIT0001_HEAD. INCLUDE ZIT0001_SCREEN. INCLUDE ZIT0001_FORMS. AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE2. * 选择文件搜索帮助 PERFORM FRM_SET_FILE_F4 USING P_FILE2 CHANGING P_FILE2. AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FILE1. * 选择文件搜索帮助 PERFORM FRM_SET_FILE_F4 USING P_FILE1 CHANGING P_FILE1. START-OF-SELECTION. PERFORM FRM_GET_FILE_DATA. PERFORM FRM_COMPARE_DATA. END-OF-SELECTION. PERFORM F_DISPLAY_DATA.
ZIT0001_HEAD:

*&---------------------------------------------------------------------* *& INCLUDE ZIT0001_HEAD *&---------------------------------------------------------------------* TABLES: BSEG. TYPE-POOLS: SLIS,OLE2. DATA: D_REF TYPE REF TO DATA, D_REF2 TYPE REF TO DATA, D_REF3 TYPE REF TO DATA, LT_ALV_CAT TYPE TABLE OF LVC_S_FCAT, GT_ALV_CAT TYPE TABLE OF LVC_S_FCAT, LS_ALV_CAT LIKE LINE OF LT_ALV_CAT. DATA: LT_TABLE LIKE TABLE OF DNTAB. DATA: LS_TABLE TYPE DNTAB. DATA: DYN_TABLE TYPE REF TO DATA. DATA: DYN_WA TYPE REF TO DATA. FIELD-SYMBOLS :<DYN_TABLE> TYPE TABLE, <DYN_WA> TYPE ANY, <DYN_FIELD> TYPE ANY, <FS_STR> TYPE ANY, <FS_STRB> TYPE ANY. DATA: DYN_TABLE2 TYPE REF TO DATA. DATA: DYN_WA2 TYPE REF TO DATA. FIELD-SYMBOLS :<DYN_TABLE2> TYPE TABLE, <DYN_WA2> TYPE ANY, <DYN_FIELD2> TYPE ANY, <FS_STR2> TYPE ANY. DATA: DYN_TABLE3 TYPE REF TO DATA. DATA: DYN_WA3 TYPE REF TO DATA. FIELD-SYMBOLS :<DYN_TABLE3> TYPE TABLE, <DYN_WA3> TYPE ANY, <DYN_FIELD3> TYPE ANY, <FS_STR3> TYPE ANY. TYPES: BEGIN OF SY_OUTPUT, ZSTRA TYPE STRING, DMBTR TYPE BSEG-DMBTR, ZSTRB TYPE STRING, END OF SY_OUTPUT. DATA: GT_OUTPUT TYPE TABLE OF SY_OUTPUT, GS_OUTPUT TYPE SY_OUTPUT. DATA: GS_LAYOUT TYPE LVC_S_LAYO, GT_FIELDCAT TYPE LVC_T_FCAT.
ZIT0001_SCREEN:

*&---------------------------------------------------------------------* *& INCLUDE ZIT0001_SCREEN *&---------------------------------------------------------------------* SELECTION-SCREEN: BEGIN OF BLOCK b01 WITH FRAME TITLE TEXT-001. PARAMETERS: P_FILE1 TYPE STRING MODIF ID M2, P_FILE2 TYPE STRING MODIF ID M2. PARAMETERS: p_MENGE1 TYPE BSEG-DMBTR DEFAULT '1' OBLIGATORY." *PARAMETERS: p_MENGE2 TYPE BSEG-DMBTR DEFAULT '3'." SELECTION-SCREEN: END OF BLOCK b01.
ZIT0001_FORMS:

*&---------------------------------------------------------------------* *& INCLUDE ZIT0001_FORMS *&---------------------------------------------------------------------* *&---------------------------------------------------------------------* *& FORM FRM_SET_FILE_F4 *&---------------------------------------------------------------------* *& TEXT *&---------------------------------------------------------------------* * -->P_P_FILE2 TEXT * <--P_P_FILE2 TEXT *&---------------------------------------------------------------------* FORM FRM_SET_FILE_F4 USING I_FILE CHANGING I_FILE2. * 局部变量-文件名定义 DATA L_FILENAME TYPE RLGRAP-FILENAME. * 选择文件搜索帮助 CALL FUNCTION 'WS_FILENAME_GET' EXPORTING DEF_PATH = I_FILE MASK = ',*.XLSX,*.XLSX,*.XLS,*.XLS.' MODE = '0' TITLE = TEXT-002 IMPORTING FILENAME = L_FILENAME EXCEPTIONS INV_WINSYS = 1 NO_BATCH = 2 SELECTION_CANCEL = 3 SELECTION_ERROR = 4 OTHERS = 5. * 如果选择了文件 IF SY-SUBRC = 0 AND L_FILENAME IS NOT INITIAL. I_FILE2 = L_FILENAME. ENDIF. ENDFORM. "frm_set_file_f4 *&---------------------------------------------------------------------* *& Form FRM_GET_FILE_DATA *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM FRM_GET_FILE_DATA . DATA: LV_STR1 TYPE STRING. DATA: LV_MENGE TYPE BSEG-MENGE. LV_MENGE = P_MENGE1 + 1. DO P_MENGE1 TIMES. LV_STR1 = SY-INDEX. CONCATENATE 'ZSTR' LV_STR1 INTO LS_ALV_CAT-FIELDNAME. LS_ALV_CAT-REF_TABLE = 'ALSMEX_TABLINE'. LS_ALV_CAT-REF_FIELD = 'VALUE'. LS_ALV_CAT-SELTEXT = '汇总条件'. LS_ALV_CAT-SCRTEXT_L = '汇总条件'. LS_ALV_CAT-SCRTEXT_M = '汇总条件'. LS_ALV_CAT-SCRTEXT_S = '汇总条件'. APPEND LS_ALV_CAT TO LT_ALV_CAT. ENDDO. LS_ALV_CAT-FIELDNAME = 'DMBTR'. LS_ALV_CAT-REF_TABLE = 'BSEG'. LS_ALV_CAT-REF_FIELD = 'DMBTR'. LS_ALV_CAT-SELTEXT = '汇总条件'. LS_ALV_CAT-SCRTEXT_L = '汇总条件'. LS_ALV_CAT-SCRTEXT_M = '汇总条件'. LS_ALV_CAT-SCRTEXT_S = '汇总条件'. APPEND LS_ALV_CAT TO LT_ALV_CAT[]. LS_ALV_CAT-FIELDNAME = 'ZSTRA'. LS_ALV_CAT-REF_TABLE = 'ALSMEX_TABLINE'. LS_ALV_CAT-REF_FIELD = 'VALUE'. LS_ALV_CAT-SELTEXT = '比对条件'. LS_ALV_CAT-SCRTEXT_L = '比对条件'. LS_ALV_CAT-SCRTEXT_M = '比对条件'. LS_ALV_CAT-SCRTEXT_S = '比对条件'. APPEND LS_ALV_CAT TO LT_ALV_CAT[]. *内表创建 CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE EXPORTING IT_FIELDCATALOG = LT_ALV_CAT IMPORTING EP_TABLE = D_REF. CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE EXPORTING IT_FIELDCATALOG = LT_ALV_CAT IMPORTING EP_TABLE = D_REF2. CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE EXPORTING IT_FIELDCATALOG = LT_ALV_CAT IMPORTING EP_TABLE = D_REF3. *指定生成的内表到字段符号 ASSIGN D_REF->* TO <DYN_TABLE>. ASSIGN D_REF2->* TO <DYN_TABLE2>. ASSIGN D_REF3->* TO <DYN_TABLE3>. *创建动态工作区结构 CREATE DATA DYN_WA LIKE LINE OF <DYN_TABLE>. CREATE DATA DYN_WA2 LIKE LINE OF <DYN_TABLE2>. CREATE DATA DYN_WA3 LIKE LINE OF <DYN_TABLE3>. *创建动态工作区 ASSIGN DYN_WA->* TO <DYN_WA>. ASSIGN DYN_WA2->* TO <DYN_WA2>. ASSIGN DYN_WA3->* TO <DYN_WA3>. DATA: LV_END TYPE C. DATA: LT_DATA TYPE ALSMEX_TABLINE OCCURS 0 WITH HEADER LINE. DATA LV_FILENAME TYPE RLGRAP-FILENAME. DATA: LV_DATUM TYPE SY-DATUM, LV_UZEIT TYPE SY-UZEIT. * DATA LV_TABIX TYPE SY-TABIX. * LV_FILENAME = P_FILE2. DATA LV_TABIX TYPE SY-TABIX. LV_FILENAME = P_FILE1. DATA LV_LINE TYPE I. LV_LINE = LINES( LT_ALV_CAT[] ). DATA: LV_LEN TYPE I. DATA: LT_STR LIKE TABLE OF LV_STR1. CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' "读取EXCEL文件中的内容 EXPORTING FILENAME = LV_FILENAME I_BEGIN_COL = '1' I_BEGIN_ROW = '2' I_END_COL = LV_LINE I_END_ROW = '99999' TABLES INTERN = LT_DATA EXCEPTIONS INCONSISTENT_PARAMETERS = 1 UPLOAD_OLE = 2 OTHERS = 3. * BREAK-POINT. LOOP AT LT_DATA. * CLEAR LV_END. * AT END OF ROW. * LV_END = 'X'. * ENDAT. LV_TABIX = LT_DATA-COL. * ADD 1 TO LV_TABIX. READ TABLE LT_ALV_CAT INTO LS_ALV_CAT INDEX LV_TABIX. IF SY-SUBRC EQ 0. IF LV_MENGE > LV_TABIX. ASSIGN COMPONENT LS_ALV_CAT-FIELDNAME OF STRUCTURE <DYN_WA> TO <FS_STR>. IF SY-SUBRC EQ 0. IF LS_ALV_CAT-FIELDNAME+0(4) EQ 'ZSTR'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING INPUT = LT_DATA-VALUE IMPORTING OUTPUT = <FS_STR>. ELSE. <FS_STR> = LT_DATA-VALUE. ENDIF. ENDIF. ELSEIF LV_MENGE = LV_TABIX. ASSIGN COMPONENT 'DMBTR' OF STRUCTURE <DYN_WA> TO <FS_STR>. IF SY-SUBRC EQ 0. <FS_STR> = LT_DATA-VALUE. ENDIF. ENDIF. ENDIF. AT END OF ROW. COLLECT <DYN_WA> INTO <DYN_TABLE>[]. CLEAR: <DYN_WA>. ENDAT. ENDLOOP. LV_FILENAME = P_FILE2. CLEAR: LT_DATA[]. CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE' "读取EXCEL文件中的内容 EXPORTING FILENAME = LV_FILENAME I_BEGIN_COL = '1' I_BEGIN_ROW = '2' I_END_COL = LV_LINE I_END_ROW = '99999' TABLES INTERN = LT_DATA EXCEPTIONS INCONSISTENT_PARAMETERS = 1 UPLOAD_OLE = 2 OTHERS = 3. LOOP AT LT_DATA. * CLEAR LV_END. * AT END OF ROW. * LV_END = 'X'. * ENDAT. LV_TABIX = LT_DATA-COL. * ADD 1 TO LV_TABIX. READ TABLE LT_ALV_CAT INTO LS_ALV_CAT INDEX LV_TABIX. IF SY-SUBRC EQ 0. IF LV_MENGE > LV_TABIX. ASSIGN COMPONENT LS_ALV_CAT-FIELDNAME OF STRUCTURE <DYN_WA2> TO <FS_STR2>. IF SY-SUBRC EQ 0. IF LS_ALV_CAT-FIELDNAME+0(4) EQ 'ZSTR'. CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT' EXPORTING INPUT = LT_DATA-VALUE IMPORTING OUTPUT = <FS_STR2>. ELSE. <FS_STR2> = LT_DATA-VALUE. ENDIF. * <FS_STR2> = LT_DATA-VALUE. ENDIF. ELSEIF LV_MENGE = LV_TABIX. ASSIGN COMPONENT 'DMBTR' OF STRUCTURE <DYN_WA2> TO <FS_STR2>. IF SY-SUBRC EQ 0. <FS_STR2> = LT_DATA-VALUE. ENDIF. ENDIF. ENDIF. AT END OF ROW. COLLECT <DYN_WA2> INTO <DYN_TABLE2>[]. CLEAR: <DYN_WA2>. ENDAT. ENDLOOP. ENDFORM. " FRM_GET_FILE_DATA *&---------------------------------------------------------------------* *& Form FRM_COMPARE_DATA *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM FRM_COMPARE_DATA . DATA: LV_STR1 TYPE STRING, LV_STR2 TYPE STRING, LV_STR3 TYPE STRING. DATA: LT_OUTPUT TYPE TABLE OF SY_OUTPUT, LS_OUTPUT TYPE SY_OUTPUT. DATA: LV_TABIX1 TYPE SY-TABIX, LV_TABIX2 TYPE SY-TABIX, LV_DELFLG TYPE CHAR1. LOOP AT <DYN_TABLE> INTO <DYN_WA>. DO P_MENGE1 TIMES. LV_STR1 = SY-INDEX. CONCATENATE 'ZSTR' LV_STR1 INTO LV_STR2. ASSIGN COMPONENT LV_STR2 OF STRUCTURE <DYN_WA> TO <FS_STR>. IF SY-SUBRC EQ 0. LV_STR3 = <FS_STR>. IF LV_STR1 EQ 1. GS_OUTPUT-ZSTRA = LV_STR3. ELSE. CONCATENATE GS_OUTPUT-ZSTRA ':' LV_STR3 INTO GS_OUTPUT-ZSTRA. ENDIF. ENDIF. ENDDO. ASSIGN COMPONENT 'DMBTR' OF STRUCTURE <DYN_WA> TO <FS_STR>. IF SY-SUBRC EQ 0. GS_OUTPUT-DMBTR = <FS_STR>. ENDIF. APPEND GS_OUTPUT TO GT_OUTPUT[]. CLEAR GS_OUTPUT. ENDLOOP. LOOP AT <DYN_TABLE2> INTO <DYN_WA2>. DO P_MENGE1 TIMES. LV_STR1 = SY-INDEX. CONCATENATE 'ZSTR' LV_STR1 INTO LV_STR2. ASSIGN COMPONENT LV_STR2 OF STRUCTURE <DYN_WA2> TO <FS_STR2>. IF SY-SUBRC EQ 0. LV_STR3 = <FS_STR2>. IF LV_STR1 EQ 1. CONCATENATE LV_STR3 '' INTO LS_OUTPUT-ZSTRA. ELSE. CONCATENATE LS_OUTPUT-ZSTRA ':' LV_STR3 INTO LS_OUTPUT-ZSTRA. ENDIF. ENDIF. ENDDO. ASSIGN COMPONENT 'DMBTR' OF STRUCTURE <DYN_WA2> TO <FS_STR2>. IF SY-SUBRC EQ 0. LS_OUTPUT-DMBTR = <FS_STR2>. ENDIF. APPEND LS_OUTPUT TO LT_OUTPUT[]. CLEAR LS_OUTPUT. ENDLOOP. SORT LT_OUTPUT[] BY ZSTRA. LOOP AT GT_OUTPUT INTO GS_OUTPUT. READ TABLE LT_OUTPUT INTO LS_OUTPUT WITH KEY ZSTRA = GS_OUTPUT-ZSTRA BINARY SEARCH. IF SY-SUBRC EQ 0. LV_TABIX2 = SY-TABIX. GS_OUTPUT-DMBTR = GS_OUTPUT-DMBTR - LS_OUTPUT-DMBTR. DELETE LT_OUTPUT[] INDEX LV_TABIX2. GS_OUTPUT-ZSTRB = '文件1和文件2都存在,但是有差异'. else. GS_OUTPUT-ZSTRB = '文件1有,文件2不存在该条数据'. ENDIF. MODIFY GT_OUTPUT FROM GS_OUTPUT. CLEAR GS_OUTPUT. ENDLOOP. DELETE GT_OUTPUT[] WHERE DMBTR EQ 0. LOOP AT LT_OUTPUT INTO LS_OUTPUT. LS_OUTPUT-ZSTRB = '文件1没有,文件2有该条数据'. APPEND LS_OUTPUT TO GT_OUTPUT[]. CLEAR LS_OUTPUT. ENDLOOP. ENDFORM. " FRM_COMPARE_DATA *&---------------------------------------------------------------------* *& Form F_DISPLAY_DATA *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM F_DISPLAY_DATA . PERFORM FRM_SET_ALVCAT. * BREAK-POINT. * CLEAR: GT_OUTPUT[]. * GS_OUTPUT-ZSTRA = 'ZTEST'. * GS_OUTPUT-DMBTR = 111. * GS_OUTPUT-ZSTRB = 'B'. * APPEND GS_OUTPUT TO GT_OUTPUT[]. PERFORM F_ALV_DISPLAY TABLES GT_OUTPUT. ENDFORM. " F_DISPLAY_DATA *&---------------------------------------------------------------------* *& Form FRM_SET_ALVCAT *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM FRM_SET_ALVCAT . CLEAR: GT_ALV_CAT[]. DATA: LS_FIELDCAT TYPE LVC_S_FCAT. DEFINE SET_FIELDCAT. CLEAR: LS_FIELDCAT. LS_FIELDCAT-FIELDNAME = &1. LS_FIELDCAT-REF_FIELD = &2. LS_FIELDCAT-REF_TABLE = &3. LS_FIELDCAT-CONVEXIT = &4. LS_FIELDCAT-DO_SUM = &5. LS_FIELDCAT-SELTEXT = &6. LS_FIELDCAT-SCRTEXT_L = &6. LS_FIELDCAT-SCRTEXT_M = &6. LS_FIELDCAT-SCRTEXT_S = &6. LS_FIELDCAT-COLTEXT = &6. APPEND LS_FIELDCAT TO GT_ALV_CAT. END-OF-DEFINITION. *显示内容 SET_FIELDCAT 'ZSTRA' '' '' '' '' '对比条件'. SET_FIELDCAT 'DMBTR' 'DMBTR' 'BSEG' '' '' '对比差异'. SET_FIELDCAT 'ZSTRB' '' '' '' '' '表结果'. ENDFORM. " FRM_SET_ALVCAT *&---------------------------------------------------------------------* *& Form f_set_layout *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM F_SET_LAYOUT. CLEAR: GS_LAYOUT. * GS_LAYOUT-BOX_FNAME = 'SLBOX'. GS_LAYOUT-ZEBRA = 'X'. GS_LAYOUT-CWIDTH_OPT = 'X'. * GS_LAYOUT-CTAB_FNAME = 'CELLCOLOR'. ENDFORM. "f_set_layout *FORM F_SET_FIELDCAT. * CLEAR: GT_FIELDCAT[]. * DATA: LS_FIELDCAT TYPE LVC_S_FCAT. * DEFINE SET_FIELDCAT. * CLEAR: LS_FIELDCAT. * LS_FIELDCAT-FIELDNAME = &1. * LS_FIELDCAT-REF_FIELD = &2. * LS_FIELDCAT-REF_TABLE = &3. * LS_FIELDCAT-CONVEXIT = &4. * LS_FIELDCAT-DO_SUM = &5. * LS_FIELDCAT-SELTEXT = &6. * LS_FIELDCAT-SCRTEXT_L = &6. * LS_FIELDCAT-SCRTEXT_M = &6. * LS_FIELDCAT-SCRTEXT_S = &6. * LS_FIELDCAT-COLTEXT = &6. * APPEND LS_FIELDCAT TO GT_FIELDCAT. * END-OF-DEFINITION. **显示内容 * SET_FIELDCAT 'RBUKRS' 'RBUKRS' 'ACDOCA' '' '' '公司代码'. * SET_FIELDCAT 'GJAHR' 'GJAHR' 'ACDOCA' '' '' '会计年度'. * SET_FIELDCAT 'BUDAT' 'BUDAT' 'ACDOCA' '' '' '过账日期'. *ENDFORM. FORM F_ALV_DISPLAY TABLES IT_TABLE. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC' EXPORTING I_CALLBACK_PROGRAM = SY-REPID * I_CALLBACK_PF_STATUS_SET = 'F_SET_PF_STATUS' * I_CALLBACK_USER_COMMAND = 'F_USER_COMMAND' IS_LAYOUT_LVC = GS_LAYOUT IT_FIELDCAT_LVC = GT_ALV_CAT I_SAVE = 'U' TABLES T_OUTTAB = IT_TABLE EXCEPTIONS PROGRAM_ERROR = 1 OTHERS = 2. IF SY-SUBRC <> 0. ENDIF. ENDFORM. "f_alv_display *-----------------------------------------------------------------------* * *-----------------------------------------------------------------------* FORM F_SET_PF_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB. * SET PF-STATUS 'STD'. ENDFORM. "f_set_pf_status *-----------------------------------------------------------------------* * *-----------------------------------------------------------------------* FORM F_USER_COMMAND USING R_UCOMM LIKE SY-UCOMM RS_SELFIELD TYPE SLIS_SELFIELD. PERFORM F_CHECK_CHANGE_DATA. CASE R_UCOMM. WHEN 'ZALL'."全選 * PERFORM FRM_SELECT_ALL. WHEN 'ZUNALL'."取消全選 * PERFORM FRM_SELECT_INI. WHEN 'ZSAVE'. * PERFORM FRM_SAVE_DATA. WHEN 'ZDEL'. * PERFORM FRM_DEL_DATA. WHEN '&IC1'."双击事件 * READ TABLE GT_OUTPUT INTO GS_OUTPUT INDEX RS_SELFIELD-TABINDEX. * IF SY-SUBRC EQ 0. * SET PARAMETER ID 'BLN' FIELD GS_OUTPUT-BELNR. * SET PARAMETER ID 'BUK' FIELD GS_OUTPUT-RBUKRS. * SET PARAMETER ID 'GJR' FIELD GS_OUTPUT-GJAHR. * CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN. * ENDIF. ENDCASE. PERFORM F_REFRESH_ALV. ENDFORM. "f_user_command *-----------------------------------------------------------------------* * *-----------------------------------------------------------------------* FORM F_CHECK_CHANGE_DATA. DATA: LO_GRID TYPE REF TO CL_GUI_ALV_GRID. CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' IMPORTING E_GRID = LO_GRID. LO_GRID->CHECK_CHANGED_DATA( ). ENDFORM. "f_check_change_data *-----------------------------------------------------------------------* * *-----------------------------------------------------------------------* FORM F_REFRESH_ALV. DATA: LO_GRID TYPE REF TO CL_GUI_ALV_GRID, LS_IS_STABLE TYPE LVC_S_STBL. CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR' IMPORTING E_GRID = LO_GRID. LS_IS_STABLE-COL = 'X'. LS_IS_STABLE-ROW = 'X'. LO_GRID->REFRESH_TABLE_DISPLAY( EXPORTING IS_STABLE = LS_IS_STABLE EXCEPTIONS FINISHED = 1 OTHERS = 2 ). IF SY-SUBRC <> 0. ENDIF. ENDFORM. "f_refresh_alv
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」