从SAP透明表中显示500+字符字段

问题描述 投票:3回答:2

众所周知,SAP不建议在透明表中使用255个以上的字符字段。一个应该使用几个255字段,用LCHR,LRAW或STRING包装文本,或者使用SO10文本等。

然而,在保持遗留(和丑陋)发展的同时,经常出现这样的问题:如何查看存储在数据库中的char500char1000字段中的内容?现实生活场景:

  1. 我们有一个开发,其中一些结构在透明表中从char1000字段写入和读取
  2. 我们知道场地结构并通过CL_ABAP_CONTAINER_UTILITIES=>FILL_CONTAINER_CSO_STRUCT_TO_CHAR解析这个领域很好,所有领域都很精彩
  3. 通过SE11 / SE16 / SE16n显示字段不会产生任何结果,因为字段被截断为255,而在调试器AFAIR中则为132。

我们可以使用任何标准工具,交易或FM来显示这么长的字段吗?

sap abap sap-data-dictionary
2个回答
1
投票

在DBA驾驶舱(ST04)中,有一个SQL命令行,您可以在其中直接输入“本机”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”进行查询。


0
投票

如果您有一个ERP系统,请手动检查事务PP01输出信息类型1002.基本上,它们将文本存储在表HRP1002和HRT1002中,并使用文本编辑器创建一个特殊视图。它看起来像这样:http://www.sapfunctional.com/HCM/Positions/Page1.13.jpg 在调试器中,您可以将视图切换为例如HTML,你应该看到整个字符串,但据我所知,编辑只限于一定数量的字符串。

© www.soinside.com 2019 - 2024. All rights reserved.