7.5
расписание
фильтры
Технические вопросы
7.x

Расширение функционала базовой фильтрации

Здравствуйте!

Столкнулись с задачей, когда необходимо переделать базовую фильтрацию "FixedFilters" для расписания. Идея в том, чтобы вместо кнопок "Сегодня" и "Текущая неделя" сделать 4 кнопки, которые будут показывать определенные недели в году (например кнопка "1" будет показывать неделю, по которой была зарегистрирована 1ая запись для данного объекта). Подскажите, пожалуйста, как лучше всего будет организовать подобное?

Нравится

2 комментария

Никита, добрый день!

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

Как пример, можете посмотреть реализованный функционал (фиксированный фильтр по ответственному и фиксированный фильтр по периоду) в базовой версии и сделать по на подобии:

[javascript]
this.fixedFilterConfig = {
entitySchema: Activity,
filters: [
{
name: 'PeriodFilter',
caption: resources.localizableStrings.PeriodFilterCaption,
dataValueType: Terrasoft.DataValueType.DATE,
startDate: {
columnName: 'StartDate',
defValue: Terrasoft.startOfWeek(new Date())
},
dueDate: {
columnName: 'DueDate',
defValue: Terrasoft.endOfWeek(new Date())
}
},
{
name: 'Owner',
caption: resources.localizableStrings.OwnerFilterCaption,
columnName: 'Owner',
defValue: Terrasoft.SysValue.CURRENT_USER_CONTACT,
dataValueType: Terrasoft.DataValueType.LOOKUP,
filter: BaseFiltersGenerateModule.OwnerFilter,
appendFilter: function(filterInfo) {
var filter;
if (filterInfo.value && filterInfo.value.length > 0) {
filter = Terrasoft.createColumnInFilterWithParameters(
'[ActivityParticipant:Activity].Participant',
filterInfo.value);
}
return filter;
}
}
]
};
[/javascript]

Дмитрий, спасибо за совет! Попробуем на основе этого что-то придумать.

Показать все комментарии