Добрый день.
Задача: Есть следующий Workspace, в нем есть фильтры
которые применяются к Dataset'у самого раздела.
Как можно значения данных фильтров и признак их включения сохранить в профиле пользователя?
P.S Стандартную функциональность FilterBuilder'a и сохранения в динамические группы в данной задаче применить нельзя.
Конфигурация Terrasoft 3.3.2.157
Бинарные файлы Terrasoft 3.3.2.268
Нравится
1 комментарий
22 августа 2012 13:34
В профиль можно сохранить информацию следующим образом:
var XMLStorage = GetNewXMLStorage(); var Node; XMLStorage.Clear(); XMLStorage.InitRootNode('PeriodTree'); Node = XMLStorage.RootNode; var ExpandList = GroupsWindow.Attributes('ExpandList'); Node.SetAttributeAsStr('Filter1Value', edtFilter1.Value,''); Node.SetAttributeAsStr('Filter1Enabled', edtFilter1.IsEnabled,''); var Key = Connector.CurrentUser.ContactID + '__MyKey'; var USI =WorkspaceDataset.USI; Services.SaveItemProfileStorage(USI, Key, XMLStorage);
а загрузить следующим образом
var Node; grdData.CollapseAll(); var Key = Connector.CurrentUser.ContactID + '__MyKey'; var USI = WorkspaceDataset.USI; var XMLStorage = Services.GetItemProfileStorage(USI, Key); if (!XMLStorage) { return; } XMLStorage.InitRootNode('PeriodTree'); Node = XMLStorage.RootNode; edtFilter1.IsEnabled = Node.GetAttributeAsStr('Filter1Enabled', ''); edtFilter1.Value = Node.GetAttributeAsStr('Filter1Value', '');
Подробнее информацию по функциям работы с объектом XMLStorage можно посмотреть в SDK
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать