Минимальные и максимальные значения в столбце Crystal Reports 2008

Скажем, я вернул этот столбец в команду для Crystal:

deposit_no
123
130
125
124
126
127
128
129

и мне нужно иметь это в заголовке отчета:

Включает депозиты от 123 до 130

Я попробовал текущую формулу для минимума и максимума, и они не возвращают правильные значения, как бы я ими ни манипулировал. Я пробовал оценивать каждую запись, изменение поля deposit_no и т. д. У меня нет группировки в этом отчете.

Отредактировано, чтобы добавить: хотя я предпочитал обрабатывать это на стороне CR, я изменил свою команду, включив в нее то, что mson написал ниже. Так что технически у mson был правильный ответ.


person GregD    schedule 23.01.2009    source источник


Ответы (3)


создайте хранимую процедуру или представление, содержащее нужную информацию. получить доступ к хранимой процедуре или просмотреть отчеты Crystal Reports.

Crystal Reports является препятствием для правильного кодирования чего-либо.

неожиданный результат, который вы получаете, может быть вызван тем, что столбец не является числовым. часто числовые значения хранятся как varchar/nvarchar. это делается специально для таких полей, как почтовый индекс/номер телефона/и т. д. где значение может быть числовым, но вы никогда не будете заниматься с ними математикой.

в любом случае, вот фрагменты, которые вы можете использовать для создания сервера sql (а затем вызова из кристалла)

выберите min(coalesce(cast(deposit_no as int),0)) как min_deposit из таблицыA

выберите max(coalesce(cast(deposit_no as int),0)) как max_deposit из таблицыA

person mson    schedule 24.01.2009
comment
Согласен с вами насчет ЧР. Я строю все свои запросы в SQL и использую их как команды в CR. Я попробую ваш sql по моей команде в понедельник и дам вам знать, как все идет. Спасибо. - person GregD; 24.01.2009

Наткнулся на это, ища то же самое, и хотел бы добавить к ответу SqlACID, который действительно работает.

Это можно сделать в редакторе формул.

'XX'+totext(Minimum ({YY.Num}), 0, '') + '-XX'+totext(Maximum ({YY.Num}), 0, '')
person Veron    schedule 27.04.2010

Создайте поле формулы, используя сводные функции для минимума и максимума поля Deposit_no, затем перетащите поле формулы в верхний колонтитул страницы.

person SqlACID    schedule 24.01.2009
comment
Это должен был быть ответ, потому что это самый простой способ получить минимальное значение из поля без создания каких-либо других объектов. - person Mr.J; 29.03.2017