网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
12月25日漏签0天
abap吧 关注:2,988贴子:15,795
  • 看贴

  • 图片

  • 吧主推荐

  • 视频

  • 游戏

  • 19回复贴,共1页
<<返回abap吧
>0< 加载中...

将ALV菜单中的删除行屏蔽后,为什么键盘的DELETE键还能删除行?

  • 只看楼主
  • 收藏

  • 回复
  • yga111
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
将ALV菜单中的删除行屏蔽后,为什么键盘的DELETE键还能删除行?
应如何处理呢
"已屏蔽但只要选中行,按键盘上的DELETE键就会删除行."
调用些 函数:call function 'LVC_FIELDCATALOG_MERGE' " 功能C: 设定fieldcat


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
alv的gui status里可以吗?


2025-12-25 02:59:28
广告
不感兴趣
开通SVIP免广告
  • Wenkai
  • 人中龙凤
    11
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
是的,不知道如何解决


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
data: ls_layout type LVC_S_LAYO.
ls_layout-NO_ROWINS = 'X'.
call method g_grid->SET_FRONTEND_LAYOUT exporting is_layout = ls_layout.
你加上这个


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
没了,这个肯定是有效的,你换个alv function或者检查你的layout定义参考和这个一样不一样


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
能把程序贴给我看下吗?你说的这个不是ALV,是创建ALV字段布局的吧,跟这个应该没什么关系


  • yga111
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
call function 'LVC_FIELDCATALOG_MERGE' " 功能C: 设定fieldcat
exporting
I_STRUCTURE_NAME = 'GT_MSEG'
changing
CT_FIELDCAT = GT_FIELDCAT
exceptions
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
others = 3 .
call method G_GRID->SET_TABLE_FOR_FIRST_DISPLAY " 功能A: 基本显示
exporting
IS_LAYOUT = LS_LAYOUT " 功能B: 设定layout
I_DEFAULT = 'X'
changing
IT_OUTTAB = GT_MSEG[]
IT_FIELDCATALOG = GT_FIELDCAT[] " 功能C: 设定fieldcat
"IT_FIELDCAT = GT_FIELDCAT "系统
exceptions
INVALID_PARAMETER_COMBINATION = 1
PROGRAM_ERROR = 2
TOO_MANY_LINES = 3
others = 4
.
call method g_grid->SET_FRONTEND_LAYOUT exporting is_layout = ls_layout.
form FRM_GET_FIELDNAME.
free GT_FIELDCAT.
clear GS_FIELDCAT .
GS_FIELDCAT-FIELDNAME = 'MM'.
GS_FIELDCAT-COLTEXT = '选择'.
GS_FIELDCAT-CHECKBOX = 'X'.
GS_FIELDCAT-EDIT = 'X'.
"GS_FIELDCAT-COL_POS = 1.
GS_FIELDCAT-OUTPUTLEN = 3.
append GS_FIELDCAT to GT_FIELDCAT.
clear GS_FIELDCAT .
GS_FIELDCAT-FIELDNAME = 'ZEILE'.
GS_FIELDCAT-COLTEXT = '序号'.
GS_FIELDCAT-OUTPUTLEN = 5.
append GS_FIELDCAT to GT_FIELDCAT.
endform.


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你给的代码不全,我刚刚用BCALV_EDIT_01试了,我之前说的那个方法可以在这个程序用,删除和插入按钮被隐藏了,你可以看一下


2025-12-25 02:53:28
广告
不感兴趣
开通SVIP免广告
  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
@yga111


  • yga111
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
LS_LAYOUT-NO_ROWINS = 'X'.
LS_LAYOUT-SEL_MODE = 'C'.
LS_LAYOUT-STYLEFNAME = 'T_EDIT'.
是要这个吧


  • yga111
  • 江湖少侠
    6
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你这是标准的吧,自己搞的CUSTOM容器来搞可以的么?麻烦再帮忙看看
@DennisChen625


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
你把整个代码给我私信吧,我都不知道你前面怎么定义的,用的什么东西


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
PROGRAM ztestbcalv_edit_01.
*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
* Purpose:
* ~~~~~~~~
* This report illustrates the simplest case of using an
* editable ALV Grid Control.
* Background:
* ~~~~~~~~~~~
* As far as the edit feature is concerned
* a cell of the alv grid control can have the following states:
* 1.non-editable : edit feature not set for this cell
* 2.editable : edit feature set for this cell
* The second state ("editable") has two substates:
* 2a.editable and not ready for input:edit feature set but not active
* 3b.editable and ready for input :edit feature set and active
* In this example, all cells are set "editable".
* You switch between "editable and not ready for input" and
* "editable and ready for input" using method SET_READY_FOR_INPUT.
*-----------------------------------------------------------------
* To check program behavior
* ~~~~~~~~~~~~~~~~~~~~~~~~~
* Switch the state using the "Display/Change" icon. Initially,
* the whole grid is in state "editable and deactivated".
* After switching the state you may change values and enter new
* lines. No semantic checks are made in this example.
*-----------------------------------------------------------------
* Essential steps (search for '§')
* ~~~~~~~~~~~~~~~
* 1.Set status of all cells to editable using the layout structure.
* 2.Use SET_READY_FOR_INPUT to activate the edit feature initially.
* (state "editable activated").
* 3.Use IS_READY_FOR_INPUT to fetch current substate of editable cells.
* 4.Use SET_READY_FOR_INPUT to switch between the substates.
*&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
DATA: ok_code LIKE sy-ucomm,
save_ok LIKE sy-ucomm,
g_container TYPE scrfname VALUE 'BCALV_GRID_DEMO_0100_CONT1',
g_grid TYPE REF TO cl_gui_alv_grid,
g_custom_container TYPE REF TO cl_gui_custom_container,
gs_layout TYPE lvc_s_layo,
g_max TYPE i VALUE 100.
DATA: gt_outtab TYPE TABLE OF sflight.
*---------------------------------------------------------------------*
* MAIN *
*---------------------------------------------------------------------*
CALL SCREEN 100 STARTING AT 1 1..
*---------------------------------------------------------------------*
* MODULE PBO OUTPUT *
*---------------------------------------------------------------------*
MODULE pbo OUTPUT.
SET PF-STATUS 'MAIN100'.
SET TITLEBAR 'MAIN100'.
IF g_custom_container IS INITIAL.
CREATE OBJECT g_custom_container
EXPORTING
container_name = g_container.
CREATE OBJECT g_grid
EXPORTING
i_parent = g_custom_container.
*§1.Set status of all cells to editable using the layout structure.
gs_layout-edit = 'X'.
gs_layout-no_rowins = 'X'.
SELECT * FROM sflight INTO TABLE gt_outtab UP TO g_max ROWS.
CALL METHOD g_grid->set_frontend_layout
EXPORTING
is_layout = gs_layout.
CALL METHOD g_grid->set_table_for_first_display
EXPORTING
i_structure_name = 'SFLIGHT'
is_layout = gs_layout
CHANGING
it_outtab = gt_outtab.
*§2.Use SET_READY_FOR_INPUT to allow editing initially.
* (state "editable and ready for input").
CALL METHOD g_grid->set_ready_for_input
EXPORTING
i_ready_for_input = 1.
ENDIF.
ENDMODULE. "pbo OUTPUT


  • DennisChen625
  • 后起之秀
    7
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
*---------------------------------------------------------------------*
* MODULE PAI INPUT *
*---------------------------------------------------------------------*
MODULE pai INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'EXIT'.
PERFORM exit_program.
WHEN 'SWITCH'.
PERFORM switch_edit_mode.
WHEN OTHERS.
* do nothing
ENDCASE.
ENDMODULE. "pai INPUT
*---------------------------------------------------------------------*
* FORM EXIT_PROGRAM *
*---------------------------------------------------------------------*
FORM exit_program.
LEAVE PROGRAM.
ENDFORM. "exit_program
*&---------------------------------------------------------------------*
*& Form SWITCH_EDIT_MODE
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM switch_edit_mode.
*§3.Use IS_READY_FOR_INPUT to fetch current substate of editable cells.
IF g_grid->is_ready_for_input( ) EQ 0.
*§4.Use SET_READY_FOR_INPUT to switch between the substates.
CALL METHOD g_grid->set_ready_for_input
EXPORTING
i_ready_for_input = 1.
ELSE.
CALL METHOD g_grid->set_ready_for_input
EXPORTING
i_ready_for_input = 0.
ENDIF.
ENDFORM. " SWITCH_EDIT_MODE
这是我写的,你看看有什么不一样吧,我没看出你有什么特别的东西,你检查一下程序里面什么地方写错了没。拷一个BCALV_EDIT_01改下我给的那个。你看看是不是你要的效果。我估计你哪里赋值错了


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 19回复贴,共1页
<<返回abap吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示