2016-07-05 3 views
0

Я использую отчеты SSRS в SharePoint 2010. Мне нужно, чтобы мой отчет генерировал информацию между StartDate и StopDate. В настоящее время он дает мне только то, что было введено на точную дату остановки. Где я положил> = и как? Я попытался поместить его в фильтр, но я получаю сообщение об ошибке, которое говорит, что я не могу смешивать поля и параметры. У меня есть параметры, поэтому пользователь может ввести даты, и у меня есть поля Start_Date и Stop_Date.Отчет SSRS между двумя датами

Извиняюсь заранее. Я новичок в отчетности SSRS.

<FieldRef Name="Drug_x0020_Name" /> 
<FieldRef Name="Inmate_x0020_Last_x0020_Name" /> 
<FieldRef Name="Start_x0020_Date" /> 
<FieldRef Name="Stop_x0020_Date" /> 
<FieldRef Name="ID" /> 
<FieldRef Name="DiscontinuedDate" /> 
<FieldRef Name="Prescription_x0020_Type" /> 
<FieldRef Name="Created" /> 
<FieldRef Name="InmateID" /> 
<FieldRef Name="Inmate_x0020_First_x0020_Name" /> 
<FieldRef Name="Ordered_x0020_Date" /> 
<FieldRef Name="DrugClassification" /> 

Заранее благодарен! Tara

+0

Если вы можете отредактировать свой вопрос, включив отчет SQL для вас, это позволит нам быстрее помочь вам. –

+0

Надеюсь, это то, что вы искали. :) – TYOzzy

+0

Не совсем. Я ищу код SQL или запрос для основного набора данных в отчете. Вы можете увидеть его, щелкнув правой кнопкой мыши на наборе данных в дизайнере отчетов и выбрав «Запрос» ... Код обычно начинается с предложения «SELECT ...». Мне нужно было все это увидеть. –

ответ

0

Вот как должен выглядеть фильтр в дизайнере. Я не использую Report Builder, но он должен иметь что-то похожее, как диалог свойств tablix. Конечно,, поле выражения и имена параметров будут разными для вас. Обычно фильтр Between включает дату начала и окончания, так что это может дать аналогичные результаты тому, что вы получаете сейчас. Вы всегда можете удалить вторую часть фильтра, если хотите получить все после даты начала.

Tablix Properties

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

<Filters> 
    <Filter> 
    <FilterExpression>=Fields!Start_Date.Value</FilterExpression> 
    <Operator>GreaterThanOrEqual</Operator> 
    <FilterValues> 
     <FilterValue>=Parameters!StartDate.Value</FilterValue> 
    </FilterValues> 
    </Filter> 
    <Filter> 
    <FilterExpression>=Fields!Start_Date.Value</FilterExpression> 
    <Operator>LessThanOrEqual</Operator> 
    <FilterValues> 
     <FilterValue>=Parameters!StopDate.Value</FilterValue> 
    </FilterValues> 
    </Filter> 
</Filters> 

Редактирование RDL напрямую - это не лучший способ решить эту проблему, но вы можете это сделать. Просто будьте осторожны, это все.

Удачи вам!

+0

Большое спасибо за вашу помощь. Я попробовал этот запрос, но по какой-то причине не сработал. Логично это должно. Я закончил работу над этим: – TYOzzy

+0

Ahh хорошо, это не позволит мне опубликовать снип. Я помещал дату начала и окончания в ту же линию фильтра и использовал Между. Проблема в том, что я не получаю первую и последнюю дату. Я собираюсь вытащить свои волосы, поэтому, я думаю, мне просто нужно, чтобы пользователи поставили дату раньше и дату после того, что они действительно хотят видеть. – TYOzzy

+0

Это должно сработать, они меняют дату. Скорее всего, даты в данных также включают время, а дата из параметров не имеет времени на них. Это может заставить запрос исключить полный день в конце. Я обычно меняю SQL, чтобы компенсировать это. Если вы можете изменить дату окончания по умолчанию на то, что сейчас есть, плюс один день, что может сделать его немного проще для конечного пользователя. –

Смежные вопросы