Crystal Reports - возвращение следующего значения в столбце - PullRequest
0 голосов
/ 07 октября 2018

Нужна помощь по отчетам Crystal: в настоящее время мы работаем с отчетами Crystal, чтобы генерировать подтверждающие документы для внутренних контрагентов.Эти подтверждения автоматически запускаются нашей системой, когда мы устанавливаем процентную ставку для конкретной сделки.Параметры, которые отправляются из нашей внешней системы: «номер сделки» и «номер действия».Эта информация передается из таблицы базы данных «события», содержащей следующие столбцы:

some columns from Events table

Подтверждение, полученное при выполнении набора ставок, содержит конкретную информацию о процентных платежах, которые мы ожидаем от контрагентов,Таким образом, это сгенерированное подтверждение имеет уникальные параметры: набор номера «номер действия» и «номер сделки» из таблицы событий (см. В приложении).

Теперь в этом подтверждении мы также хотим сделать ссылку на «Далее».RateSet "date.

Мы попытались решить эту проблему, вставив оператор SQL в:

выбрать верхнюю (1) дату вступления в силу из таблицы событий, где comments = установленная скорость и гдеaction no = 0

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

Поэтому в теории я хотел бы выполнить оператор select, где я выбираюпервая запись, где «событие №» больше, чем «событие №» из текущего сгенерированного подтверждения.

Я не уверен, как это сделать, поскольку, как я прочитал, невозможно использоватьпараметр кристалла в выборе SQL.Какие-либо предложения?

1 Ответ

0 голосов
/ 07 октября 2018

Один из вариантов - добавить таблицу во второй раз в отчет.Crystal назначит псевдоним второму экземпляру, добавив число к имени таблицы.Чтобы сделать вещи более интуитивно понятными, измените этот псевдоним на что-то вроде «NextRateSet».

Присоедините таблицу «События» к ее псевдониму:

Events.Dealno = NextRateSet.Dealno AND
Events.EffectiveDate < NextRateSet.EffectiveDate

Добавьте критерии выбора записей:

NextRateSet.ActionNo = 0

Сгруппировать отчет по Events.DealNo и отсортировать его по убыванию NextRateSet.EffectiveDate.Подавить раздел сведений и переместить все в нижний колонтитул группы.Так как нижний колонтитул группы показывает последнюю запись в группе, он будет показывать самую раннюю NextRateSet.EffectiveDate.А поскольку этот псевдоним ограничен EffectiveDates после Events.EffectiveDate, вы получите правильную дату.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...