два отчета используют один и тот же dataset, но с разными фильтрами.
если вначале открыть отчет А с
ApplyDatasetFilter(ContactDepartmentDataset, 'ContactID', OwnerID, true);
ApplyDatasetFilter(ContactDepartmentDataset, 'IsPrimary', 1, true);
а затем отчет В с
ApplyDatasetFilter(ContactDepartmentDataset, 'ContactID', UserID, true);
то у В отфильтрованных значений столько же, сколько и у А, хотя отчет В накладывает более широкие условия (то есть множество значений В содержит все значения А).
Подскажите пожалуйста, где сохраняются условия фильтрации или как их обновить/сбросить?
Нравится
После формирования отчета A выполните ContactDepartmentDataset.Close();
эта функция была. не помогает
ApplyDatasetFilter(ContactDepartmentDataset, 'ContactID', OwnerID, true);
ApplyDatasetFilter(ContactDepartmentDataset, 'IsPrimary', 1, true);
ContactDepartmentDataset.Open();
//...
ContactDepartmentDataset.Close();
Перед применением фильтра попробуйте отключить все фильтры:
EnableDatasetFilters(ContactDepartmentDataset, false); ApplyDatasetFilter(ContactDepartmentDataset, 'ContactID', UserID, true);
Или отключить конкретные фильтры, которые Вы не собираетесь использовать:
EnableDatasetFilters(ContactDepartmentDataset, false, 'IsPrimary'); ApplyDatasetFilter(ContactDepartmentDataset, 'ContactID', UserID, true);