fbcFilters
UserFilter
добавить динамически фильтр

Добавление пользовательских фильтров по полям связаной таблицы

если кому нужно дать возможность юзеру
фильтровать раздел по полям другой таблицы, например
фильтровать раздел "Договора" по полям таблицы tbl_Account
связаной с договорами используйте модуль scr_DynamicFilter
нужно вызвать фн. AddUserFilterInDatasetByDataset и все
параметри прокоментированы в скрипте

большое спасибо за консультации:
Андрей Громовой, Дмиртрий Гамора, Генов Евгений, Калишенко Станислав

Уже можно фильтровать по деталям !

// AddUserFilterInDatasetByDataset -- основная функция
// dsSource -- датасет откуда перетягиваем фильтры
// dsTarget -- датасет куда мы хочем перетянуть фильтры
// TargetAliasForSourceTable -- алиас таблицы фильтры из которой мы хотим
// перетянуть в целевом датасете или
// если IsDetail == true то SQLName для таблицы детали
// IsDetail -- ствим true если хотим фильтровать по детали
// ParentFieldName поле из таблицы детали по которому они связываютьса
function AddUserFilterInDatasetByDataset(dsSource, dsTarget, TargetAliasForSourceTable, IsDetail, ParentFieldName) {
var Ln = dsSource.DataFields.Count;
var sqTarget = dsTarget.SelectQuery;
var GroupCode = dsSource.Caption;
for (var fc = 0; fc Ln; fc++) {
var DataField = dsSource.DataFields.Items(fc);
if (DataField.IsFilteringField) {
AddFilterByField(sqTarget, DataField, GroupCode,
TargetAliasForSourceTable, IsDetail, ParentFieldName);
}
}
}

Нравится

Поделиться

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