我有一套报告(~500),其中一些有子报告(另一个数据窗口),有些则没有。我有一个屏幕处理查看/打印/导出所有报告。问题是导出只会抓取主报告并忽略所有子/子报告。
我试图找到一些示例代码,我可以将主报表和任何子报表转储到数据存储区中,然后导出该数据存储区。但是,我发现任何涉及getchild列名称的示例都是必需的。显然,我需要一个更有活力的解决方案,因为我处理了大约500个报告。
任何人都可以帮助或提供任何不需要购买第三方工具/软件/插件的解决方案吗?
感谢。
答案 0 :(得分:0)
发现于:https://scn.sap.com/thread/3805986
您好;
SaveAs()方法仅适用于DW Control中的直接父DW对象。由于复合DW内部有许多子DWO,因此您的SaveAs命令不会对子节点进行寻址。
目前,这是针对嵌套或复合DW的SaveAs命令的限制。你还有其他一些选择...
1)创建一个表格或网格DW,其中包含您希望Excel电子表格查看的所有列。然后,当用户请求将复合DW导出到Excel时,将此DW分别填充到隐藏的DataStore中。
2)您可以使用DW“DOT”表示法访问复合DW的整个数据缓冲区。您必须在复合DW ....中编写类似于此内容或每个子DW的代码。
任何la_data [] ls_data = DC.Object..Object.Data
提取完所有子DWO的数据后,您可以使用#1中所述的过程或使用OLE与Excel交互将其导出到Excel。无论哪种方式,肯定会有一些重要的编码工作。
问候......克里斯