阅读SAP表
LiveCompare 2.1及以后版本包括一个改进算法用于读取从SAP表内容。在早期LiveCompare版本中,表的内容是阅读从SAP使用四个单独的方法:
读表内容
在LiveCompare早些时候的版本中,正常的方法用于读取表内容涉及在SAP中创建表的一个副本,批表行解读SAP的RFC缓冲区,然后返回LiveCompare批次。维护大型表的副本在SAP使用大量的SAP的记忆。
直接表读取
LiveCompare早些时候发布的在用行动直接读大量的汁液,整个表复制到SAP的RFC LiveCompare缓冲,然后返回整个表。对于大型表,这种技术使用大量的SAP和LiveCompare记忆。
段读
在某些情况下,在用行动使用一组预定义的关键看表一段时间。因为每一段小于完整的表,这种技术使用一个小数量的SAP和LiveCompare内存。
过滤表数据
LiveCompare早些时候发布的检索视图和读SAP表和加入行动从SAP读取过滤后的数据通过构造WHERE子句基于适当的过滤器的钥匙。
LiveCompare 2.1及以后版本避免前两个方法的内存使用问题通过使用一个单一的技术读SAP表数据,它不涉及创建的副本在SAP表。在这种技术中,一组表名和一个可选的SELECT语句发送到SAP和表读取使用以下步骤:
- 在第一个RFC,读第一批表行(可选用户SELECT语句)。保存最后一个表行阅读的关键。
- 在接下来的RFC电话,再次读表使用一组额外的SELECT语句来消除行已经阅读。从减少读取的行的下一批表,与键跳过行不到保存的关键。保存最后一个表行阅读的关键。
- 从步骤2继续,直到所有表行已经阅读。
大量的配置设置提供读者使用的参数表:
SapTableReaderMaxMemory
在KB的最大内存量,每批表行应该消耗。默认值是5000,或大约5 MB。
SapTableReaderMaxRows
的最大行数在任何表检索阅读。默认值是200000000。
SapTableReaderBatchRows
要读取的表行数量在每一批。默认值为0,这意味着批量大小的计算SapTableReaderMaxMemory价值和数量的字节在每个表行。
这些设置通常不应该需要改变。但是如果你有LiveCompare管理员权限,可以修改配置——表内容屏幕上。