Дублируется информация при выгрузке из Fast Report

Здравствуйте, не понятно почему, но при экспорте из отчета FastReport в Excel появляются дублирующиеся строки. При выполнении запроса дубли не появляются. Вот запрос

SELECT
        [tbl_Contract].[ContractNumber] AS [ContractNumber],
        [tbl_Contract].[CentrIncomeID] AS [CentrIncomeID],
        (SELECT TOP 1
                [tbl_AccountCommunication].[Number] AS [Number]
        FROM
                [dbo].[tbl_AccountCommunication] AS [tbl_AccountCommunication]
        WHERE([tbl_AccountCommunication].[CommunicationTypeID] IN ('C224AC38-E26F-4460-900C-3FE12F61CF21') AND
                [tbl_AccountCommunication].[AccountID] = [tbl_Contract].[CustomerID])) AS [MailNumber],
        [tbl_Contract].[DetalisationSend] AS [DetalisationSend],
        [tbl_Contract].[ContractTypeID] AS [ContractTypeID],
        [tbl_Contract].[SubAgentID] AS [SubAgentID]
FROM
        [dbo].[tbl_Invoice] AS [tbl_Invoice]
LEFT OUTER JOIN
        [dbo].[tbl_Contract] AS [tbl_Contract] ON [tbl_Contract].[ID] = [tbl_Invoice].[ContractID]
WHERE([tbl_Contract].[ContractTypeID] = 'ED7FD7B2-46A7-4583-8FB4-37356272EB8A' AND
         ((MONTH(InvoiceDate) = MONTH(DATEADD(MONTH, -1, GETDATE())) AND YEAR(InvoiceDate) = YEAR(DATEADD(MONTH, -1, GETDATE()))) OR
(MONTH(InvoiceDate) = MONTH(GETDATE()) AND YEAR(InvoiceDate) = YEAR(GETDATE()))))
ORDER BY ContractNumber

Нравится

2 комментария

Да, есть такой глюк. У меня есть подозрения что это происходит при подкачке данных. Т.е. по умолчанию данные выгружаются партиями по 20 шт. поэтому, когда грузится следующая партия происходит дублирование данных. Я это решил следующим образом. В sq_ и у датасета в ФастРепорте FetchRecordsCount ставлю 99999, больше ФастРепорт не позволяет.

Евгений, спасибо!) Получилось!)

Показать все комментарии