Помогите создать фильтр , который будет фильтровать дату создания Продажи меньше 2.5 месяцев (или можно в днях - меньше 76 дней) назад в любой момент времени. Чтобы не надо было каждый раз в фильтре самостоятельно менять конкретную дату.
Задача была разделить продажи на созданные меньше, чем 2,5месяца назад, от 3,5 до 2,5, от 4,5 до 3,5, и те которые созданы больше чем 4,5 месяца назад.
Нравится
Мой совет создать в sq_Opportunity дополнительную колонку, которая будет считать кол-во дней со дня создания.
Так необходимо в sq_Opportunity создать "Колонку с текстом SQL" и написать туда
DATEDIFF(day, tbl_Opportunity.CreatedOn, GETDATE())
Добавить ее в датасет (целое число) и вот вы можете построить фильтр по дням с создания продажи.
С месяцами думаю тоже можно, но надо возиться.
Для месяцев, в колонку с текстом SQL надо написать
DATEDIFF(month, tbl_Opportunity.CreatedOn, GETDATE()) + (DATEDIFF(day, tbl_Opportunity.CreatedOn, DateAdd( mm, DATEDIFF(month, GETDATE(), tbl_Opportunity.CreatedOn), GETDATE() ) )/1.0) / Day( DateAdd( day, -Day(DateAdd(month, 1, tbl_Opportunity.CreatedOn)), DateAdd(month, 1, tbl_Opportunity.CreatedOn) ) )
И уже надо добавить в датасет колонку дробного типа.
пробую сделать первый вариант. Колонку с запросом назвала NumberDayCreated
После добавления в ds , в фильтрах появилось Количество дней от создания , но при попытке применить этот фильтр пишет "невозможно открыть ds_Opportunity. Invalid column name NumberDayCreated"
У меня такой проблемы не возникало на 3.4.0.130
Попробуйте поставить свойство колонке "Всегда выбирать в запросе", может поможет.
А какая у вас версия?
версия 3.3.2.287, я пробовала устанавливать галочку, но от этого ничего не изменилось
Виктория, присутствует ограничение на фильтрацию по колонке с текстом Sql, поэтому у Вас возникает ошибка. Но обойти ограничение Вы можете таким образом:
http://www.community.terrasoft.ru/blogs/4397