众所周知,SAP不建议在透明表中使用255个以上的字符字段。一个应该使用几个255字段,用LCHR,LRAW或STRING包装文本,或使用SO10文本等。
然而,在保持遗留(和丑陋)发展的同时,经常会出现这样的问题:如何查看数据库中char500
或char1000
字段中存储的内容?
现实生活场景:
char1000
字段写入和读取CL_ABAP_CONTAINER_UTILITIES=>FILL_CONTAINER_C
或SO_STRUCT_TO_CHAR
解析字段很顺利,所有字段都很精彩我们可以使用标准工具,交易或FM来显示这么长的字段吗?
答案 0 :(得分:1)
在DBA驾驶舱(ST04)中,有一个SQL命令行,您可以在其中直接输入" native" SQL命令并将结果显示为ALV视图。使用子字符串函数,您可以将字段拆分为多个部分(expl:select substr(sql_text,1,100) s1, substr(sql_text,101,100) s2, substr(sql_text,201,100) s3, substr(sql_text,301,100) s4 from dba_hist_sqltext where sql_id = '0cuyjatkcmjf0'
)。 PS:每个ALV单元最多128个字符。
不确定此工具是否适用于所有受支持的数据库软件。
还有一个名为RSDU_EXEC_SQL的等效程序(在所有基于ABAP的系统中?)
不幸的是,他们不能通过SAP(群集表等)为表格工作,因为只能使用ABAP" Open SQL"来查询。
答案 1 :(得分:0)
如果您有一个ERP系统,请将事务PP01与信息类型1002一起检查。基本上,它们将文本存储在表HRP1002和HRT1002中,并使用文本编辑器创建一个特殊视图。它看起来像这样:http://www.sapfunctional.com/HCM/Positions/Page1.13.jpg
在调试器中,您可以将视图切换为例如HTML,你应该看到整个字符串,但据我所知,编辑只限于一定数量的字符串。