2013-04-24 3 views
2

Я хотел знать, можем ли мы использовать математические операторы в параметре отчета.Параметры математических операторов

У меня есть параметр под названием «EMP_Attendance».

Я хочу, чтобы иметь параметр, чтобы отображать и запускать отчет со значениями

Параметр:

EMP_Attendance

  = 100.00% 
      <100.00% and >=90.00% 
      <90.00% and >=80.00% 
      <80.00% 

Отчет должен работать в соответствии с этим значением

+1

Не могли бы вы немного рассказать немного? Ваш вопрос довольно сложно понять. –

+0

Я хочу показать список сотрудников в отчете в зависимости от их посещаемости% за год. Посещаемость рассчитывается из самого запроса. Поэтому мне нужно будет отображать, например: <100.00% и> = 90.00%: он должен показать мне всех сотрудников, имеющих менее 100% посещений, но более 90.00% –

+0

У вас есть параметр, который пользователь должен выбрать, один из трех выше или ваш отчет необходимо сгруппировать по полю? – glh

ответ

0

Сначала вы добавили бы 4 доступных значения к вашему параметру с меткой «100%» и т. Д. И значениями 1,2,3,4.

У вас есть 2 варианта фильтрации.

  1. Вы можете добавить что-то вроде этого к вашему запросу:

    SELECT case when EMP_Attendance = 100 then 1 
    when EMP_Attendance <100 and EMP_Attendance >=90.00% then 2 
    when EMP_Attendance <90 and EMP_Attendance >=80 then 3 
    else 4 end as AttendanceGroup 
    WHERE AttendanceGroup = @AttendanceParameter 
    
  2. Другой вариант, чтобы сохранить запрос как это так, что он возвращает все данные в отчет. Щелкните правой кнопкой мыши по таблице и перейдите к ее свойствам. Перейдите в раздел «Фильтры». Добавьте фильтры здесь, чтобы сравнить свой параметр с значением EMP_Attendance.

1

Это не изначально возможно, но есть небольшая работа.

  1. Создайте видимый параметр с четырьмя вариантами выше.
  2. Создайте два внутренних параметра, которые заполнены двумя фиктивными sqls, один lower и один upper.
  3. Выполнение запросов создает соответствующие верхние и нижние пределы на основе выбора пользователей, например. Если выбрано 100% lower = 100 и upper = 101.
  4. Отфильтруйте набор данных этими двумя пределами.
+0

Не могли бы вы подробно остановиться ... и как он будет влиять на основной запрос. –

+0

Он будет фильтровать основной запрос на то, что пользователь выбирает для вашего исходного параметра. – glh

+0

Другой вариант - поместить этот фильтр в запрос сам по себе так же, как и ответ Стивенса – glh