关于HANA的财务水晶报告需要数小时才能运行

时间:2018-02-01 14:07:12

标签: sql stored-procedures crystal-reports hana

如何减少调用数百万条记录的财务报告的运行时间?

该报告是一个程序,编写如下

Select * from 
(
    UNION 1
    Select
    Date,AccountName,CustomerName,sum(Debit-Credit) for currency 1, sum(Debit-Credit) for currency 2, sum(Debit-Credit) for currency 3

    where date is between X and Y

    grouping

    UNION2
    Select
    Date,AccountName,CustomerName,sum(Debit-Credit) for currency 1, sum(Debit-Credit) for currency 2, sum(Debit-Credit) for currency 3

    where date is <X and P1 = 1

    UNION3
    Select
    Date,AccountName,BranchName,sum(Debit-Credit) for currency 1, sum(Debit-Credit) for currency 2, sum(Debit-Credit) for currency 3

    where date is <X and P1 = 2
) A
END

P1指的是用户根据分支或客户名称进行分组的选择,我想到的第一件事是程序拉动所有3个联合然后过滤,所以我删除了2个底部联合并使其成为IF语句根据参数执行特定查询。

问题是Union 2用于开放平衡,它在参数日期之前提取所有内容,并且可能达到数百万条记录。

当然还有其他过滤标准,如客户,销售人员,分支机构等......但它们都是Crystal Reports级别,因为它们是可选参数。

任何建议都将不胜感激

0 个答案:

没有答案