abap alv 加了 表和字段属性后 原来字段 没有

 我来答
匿名用户
2017-05-04
展开全部
首先定义两种宏,一种是可编辑,一种是不可编辑
FIELDCAT-EDIT = ‘X’. “编辑ALV
其次在内表中加上个定义个结构
FIELD_STYLE TYPE LVC_T_STYL
然后写控制逻辑
DATA LS_STYLEROW TYPE LVC_S_STYL .
DATA LT_STYLETAB TYPE LVC_T_STYL .
LOOP AT T_ITAB.
 CLEAR LT_STYLETAB[].
“此处写控制逻辑”
LS_STYLEROW-FIELDNAME = ‘ZZ_XHRQ’.这个是要控制的字段名
LS_STYLEROW-STYLE = CL_GUI_ALV_GRID=>MC_STYLE_DISABLED.这个方法是控制style是否可用,与之对应的有个     MC_STYLE_ENABLED,根据不同的逻辑替换
INSERT LS_STYLEROW INTO TABLE LT_STYLETAB.
T_ITAB-FIELD_STYLE[] = LT_STYLETAB[].
MODIFY T_ITAB.
ENDLOOP.
HOUT2 ZZ_XHRQ ‘销毁日期’ 8 CHAR . 根据不同的逻辑用不同的宏
最后在定义alv属性的时候加上 PS_LAYOUT-STYLEFNAME = ‘FIELD_STYLE’. 这个名字是前面在内表中定义的结构名字
想让修改的字段保存到内表则需要用edt_cll_cb退出可编辑单元格时回调”。
DATA: I_GRID_SETTINGS TYPE LVC_S_GLAY.
I_GRID_SETTINGS-EDT_CLL_CB = ‘X’.
在那个FUCTION中加一行
I_GRID_SETTINGS = I_GRID_SETTINGS
uh...9@sohu.com
2017-04-30 · TA获得超过148个赞
知道小有建树答主
回答量:234
采纳率:0%
帮助的人:52.8万
展开全部
第一步,你可以使用ALV的属性,定位到选中的行的行号;第二步,通过行号和展示ALV的内表,可以读取这一行的数据(或者指定字段的),然后不就可以传入你的打印程序,实现打印选中行的功能了吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
璩雨杭
2017-04-30 · 超过306用户采纳过TA的回答
知道小有建树答主
回答量:358
采纳率:0%
帮助的人:323万
展开全部
这个和布局没有关系,和设置显示字段的属性有关,你发现没有,你总账科目排序之后没有合并同类项,你检查一下这个总账科目这个字段是不是设了可编辑,如果字段设了可编辑,就会出现这种情况,如果没有,可以检验一下其他属性,比如是否设置排序是默认的,是否设了热点等,或者你把这字段输入的代码贴出来看看。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式