Crystal сообщает, что данные не извлекаются из сервера sql - PullRequest
1 голос
/ 25 января 2010

У меня есть следующий код:

select order_number,received_date
from order_head
where order_head.order_number not in (select order_number from csa_log group by order_number)
and ordernature in ('02','03')
and received_date > '01.01.2010'
and buyer_code = 'GAP'
group by order_number,received_date
order by received_date desc

При запуске в Crystal Reports не извлекает те же данные, что SQL Server Express. Он тянет только одну запись в отличие от 7. У кого-нибудь есть понимание? Заранее спасибо. (У меня есть подозрение, что это как-то связано с вложенным оператором).

Ответы [ 2 ]

1 голос
/ 25 января 2010

На ум приходит несколько вариантов.

Во-первых, вы абсолютно уверены, что Crystal Reports и база данных, к которой вы обращаетесь, совпадают. Удивительно, как часто вы обращаетесь к dev и другому продукту, когда у вас возникают подобные проблемы. Даже если вы не верите этому, все равно проверьте это.

Разрешения могут быть еще одной причиной расхождения.

Наконец подтвердите, что эти два запроса в точности совпадают. Если возможно, используйте Profiler, чтобы подтвердить это.

1 голос
/ 25 января 2010

Обычно я использую профилировщик SQL-сервера, чтобы проверить, какие SQL-операторы Crystal работает за кулисами. В вашем случае это невозможно, потому что вы используете SQL Server Express.

В Crystal вы можете проверить фактический оператор SQL, который выполняет Crystal, выбрав «База данных» и «Показать оператор SQL» в верхнем меню.

Убедитесь, что в меню «Отчеты» вы не ставите никаких условий в «Выбрать записи».

Убедитесь, что вы показываете поля в деталях, а не в верхнем или нижнем колонтитуле. Это распространенная ошибка.

...