Фильтр поля даты не работает в фильтре уровня группы строк

Я добавил фильтр в группу строк -> свойства группы, чтобы выполнять сумму количества только для тех транзакций, которые были выполнены до определенной даты.

Всякий раз, когда я выбираю поле «Cdate» в качестве поля «Выражение» из моего набора данных1, тип отображается как «Дата/время», но после его сохранения при проверке я нашел его как «Текст». В результате фильтр для 'cDate' не работает во время формирования отчета.

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


person Ruhul    schedule 28.11.2013    source источник
comment
Относится ли CDate к имени поля в вашем наборе данных или к функции CDate()? Можете ли вы включить скриншот того, как вы настроили фильтр?   -  person Nathan Griffiths    schedule 29.11.2013
comment
Да, CDate - это поле моего набора данных... Я не могу загрузить изображение, так как у меня недостаточно репутации. Я просто выбираю «Группа строк» ​​-> «Свойства группы» -> «Фильтр», затем добавляю фильтр… выбираю Cdate в поле выражения и затем выбираю оператор (‹=), затем выбираю значение в качестве значения параметра, которое является параметром даты/времени…   -  person Ruhul    schedule 29.11.2013


Ответы (2)


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

Иногда я сталкиваюсь с этими проблемами с типами данных при использовании фильтров, и я считаю, что лучший способ справиться с этим — заставить и поле фильтра, и значение фильтра иметь один и тот же тип данных.

Итак, в вашем случае попробуйте установить выражение фильтра на:

=CDate(Fields!CDate.Value)

затем выберите оператор как "‹=" и установите значение также с помощью выражения:

=CDate(Parameters!MyParameter.value)

и посмотрите, работает ли это.

person Nathan Griffiths    schedule 01.12.2013
comment
Привет, Натан, спасибо за ответ. Я попробую этот, хотя я изменил набор данных и выполню свое требование другим способом. Но я, очевидно, попробую этот, так как хочу найти путь на будущее. Я пытался использовать функцию CDate только для поля DataSet, и в то время это не сработало... Надеюсь, это сработает. - person Ruhul; 03.12.2013

Я так понимаю, что ваше поле даты в наборе данных называется CDate, попробуйте указать его как дату, поэтому вместо того, чтобы выбирать его в своем фильтре, введите в фильтр следующее =CDate(Fields!CDate.Value)

person Hedinn    schedule 29.11.2013