以下是我以前其他项目的解决办法,供参考:
透明表(BSEG、MSEG、BSIM等)的巨大数据量使程序速度慢,看表是否创建了程序用到的主要条件索引。
是否做过取数逻辑优化(比如更改取数据的透明表及关联,比如以前的会计凭证BSEG表的数据太大,要取客户、供应商、物料等数据可以考虑先从BSIS取数据再循环SELECT SINGLE BSEG取相关个别数据,会使性能提高,这种方法可供参考)。
程序自身优化,比如:
• LOOP的表记录数是否很大并且有LOOP嵌套,占有用资源是否释放;
• 大数据量内表LOOP的SELECT嵌套;
• 大数据量内表多次重复LOOP循环;
• 子程序的VALUE大数据内表参数值调用;
• 有的时候用系统标准函数也会使影响速度,比如MB5B取历史库存存;
• SELECT 的WHERE条件限制;
• SELECT 的JOIN关联大数据量表会使性能大大下降;
阅读(313) | 评论(0) | 转发(0) |