我需要将TCURR表输出到ALV网格中。一切都很顺利但是当用户通过“有效期”日期(GDATU
)对表格进行排序时,发生了奇怪的事情。
按升序排序表现为按降序排序,反之亦然。之所以如此,是因为字段GDATU
包含倒置格式的日期,并且域GDATU_INV
具有转换例程INVDT
,可以即时转换日期。 ALV网格正确显示日期,但排序是通过倒置日期完成的。
TCURR
类似,并将GDATU_INV
域替换为简单DATUM
。 LVC_FIELDCATALOG_MERGE
结构,通过FM TCURR
生成字段目录
醇>
CONVEXIT,
REF_TABLE,
DATATYPE,
DOMNAME
GDATU行值的字段
'',
'',
'DATS',
'DATUM'分别。
这个问题是否有更有效和简单的解决方案?
答案 0 :(得分:2)
您应该能够在LVC_FIELDCATALOG_MERGE
中使用新结构,而不是使用TCURR,这意味着您不必在事后覆盖字段目录中的设置。但那是一件非常小的事情。
我认为你没有别的选择,只能使用一个数据元素的结构,行为方式与你需要的一样。
不过,请查看Simple ALV类。 (CL_SALV*
)它们有很好的文档记录,比现在已经过时的ALV功能模块更容易使用。 (特别是生成现场目录的麻烦要少得多)。