2020-09-04 05:31发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我正在尝试下载200万行左右的超大表格
据我搜索,内部表可以容纳的内容没有限制。
客户端希望第一次运行prg以获得一定数量的记录,并以sap格式下载文件
然后再次运行剩余的记录。
您认为最有效的解决方案是什么?
我应该限制文件最多100K个记录(或多或少)吗?
如何从上次下载中选择最后一条记录?
提前谢谢
到目前为止,我找到的最好的解决方案是在您的时间限制内运行该程序,然后查看它可以处理多少记录而不会崩溃。
然后以该数量运行程序,当达到该数量时,您必须将行保存在标准SAP表中。
在第二次运行时,您首先从表中读取并选择大于行的数据。
重复该过程,直到没有剩余数据为止。
如果文件存储在前端,则必须读取整个文件。 如果在应用程序服务器上,则可以使用GET DATASET获得文件的总长度,而使用SET DATASET获得大约位置的位置(例如,您可以假设最后一行的长度永远不会超过1000个字节,因此位置位于total处) 减去1000,然后读取行,直到结尾。)
乔纳森,你好,当我几年前不得不创建一个程序来做类似这样的事情时, 在程序中执行文件的"拆分",而不是多次执行程序。 您基本上需要的是围绕一个文件的选择,处理和下载的一些循环逻辑。 像这样:
在一些代码 ,这可能还没有100%完成,但我希望它能对您有所帮助!
干杯
Bärbel
GáborMárián
它将被下载到samba服务器中。
格式将为xml
没关系,要求是下载此文件,就是全部
由于将数据下载到服务器,这意味着程序可以在后台执行 ,因此不会发生超时转储。 超出内存限制的潜在风险仍然存在,因此我建议像这样处理数据:
SELECT ... FROM
仍需要确定每个文件的行数的最佳值,这主要取决于您要导出的记录的大小。
Sandra Rossi
感谢您提到背景处理,我显然在回复中忘了这样做。 乔纳森(Jonathan)的要求所涉及的庞大数据几乎完全排除了在线处理的可能性。 我的即将来临的假设-可能是错误的-基本上是一次出于某种原因而产生数据的活动,并且(希望如此!)这并不是定期运行的东西(我多年以前写的程序是在 与这种情况,因此您可以想象一下需要提取哪种类型的数据。)
最多设置5个标签!
到目前为止,我找到的最好的解决方案是在您的时间限制内运行该程序,然后查看它可以处理多少记录而不会崩溃。
然后以该数量运行程序,当达到该数量时,您必须将行保存在标准SAP表中。
在第二次运行时,您首先从表中读取并选择大于行的数据。
重复该过程,直到没有剩余数据为止。
如果文件存储在前端,则必须读取整个文件。 如果在应用程序服务器上,则可以使用GET DATASET获得文件的总长度,而使用SET DATASET获得大约位置的位置(例如,您可以假设最后一行的长度永远不会超过1000个字节,因此位置位于total处) 减去1000,然后读取行,直到结尾。)
乔纳森,你好,当我几年前不得不创建一个程序来做类似这样的事情时, 在程序中执行文件的"拆分",而不是多次执行程序。 您基本上需要的是围绕一个文件的选择,处理和下载的一些循环逻辑。 像这样:
在一些代码 ,这可能还没有100%完成,但我希望它能对您有所帮助!
干杯
Bärbel
GáborMárián
它将被下载到samba服务器中。
格式将为xml
没关系,要求是下载此文件,就是全部
由于将数据下载到服务器,这意味着程序可以在后台执行 ,因此不会发生超时转储。
超出内存限制的潜在风险仍然存在,因此我建议像这样处理数据:
仍需要确定每个文件的行数的最佳值,这主要取决于您要导出的记录的大小。
Sandra Rossi
感谢您提到背景处理,我显然在回复中忘了这样做。 乔纳森(Jonathan)的要求所涉及的庞大数据几乎完全排除了在线处理的可能性。 我的即将来临的假设-可能是错误的-基本上是一次出于某种原因而产生数据的活动,并且(希望如此!)这并不是定期运行的东西(我多年以前写的程序是在 与这种情况,因此您可以想象一下需要提取哪种类型的数据。)
一周热门 更多>
点击此处---> 一起学习S4 HANA ...
相关问答
相关文章
采纳回答
编辑标签
举报内容
打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮
付费偷看金额在0.1-10元之间