Express > Интерфейсы сборки Express > IEaxGrid > IEaxGrid.UpdateData
UpdateData (Value: IDimSelectionSet; [Options: EaxGridUpdateDataOptions = 0]);
UpdateData (Value: Prognoz.Platform.Interop.Dimensions.IDimSelectionSet; [Options: Prognoz.Platform.Interop.Express.EaxGridUpdateDataOptions = 0]);
Value. Отметка, по которой будет произведено обновление;
Options. Вариант обновления.
Метод UpdateData определяет будет ли обновлена часть или вся область данных, без перестроения боковика и шапки.
Для обновления области таблицы используйте свойство IEaxGrid.RefreshPart.
Для выполнения примера в репозитории предполагается наличие регламентного отчёта с идентификатором REPORT.
Добавьте ссылки на системные сборки: Dimensions, Express, Metabase, Report.
Sub UserProc;
Var
MB: IMetabase;
Report: IPrxReport;
PivSlice: IEaxDataAreaSlice;
Grid: IEaxGrid;
SelSet: IDimSelectionSet;
Sel: IDimSelection;
Begin
// Получим репозиторий
MB := MetabaseClass.Active;
// Получим регламентный отчет
Report := MB.ItemById("REPORT").Edit As IPrxReport;
//Получим срез аналитической области данных
PivSlice := Report.DataArea.Slices.Item(0);
// Получим представление таблицы
Grid := PivSlice.Views.Item(0) As IEaxGrid;
// Зададим отметку среза
SelSet := PivSlice.Selection.CreateCopy;
// Выделим все элементы
For Each Sel In SelSet Do
Sel.SelectAll;
End For;
// Обновляем права доступа
Grid.UpdateData(SelSet, EaxGridUpdateDataOptions.DataRights);
// Сохраняем отчет
(Report As IMetabaseObject).Save;
End Sub UserProc;
Imports Prognoz.Platform.Interop.Dimensions;
Imports Prognoz.Platform.Interop.Express;
Imports Prognoz.Platform.Interop.Report;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Report: IPrxReport;
PivSlice: IEaxDataAreaSlice;
Grid: IEaxGrid;
SelSet: IDimSelectionSet;
Sel: IDimSelection;
Begin
// Получим репозиторий
MB := Params.Metabase;
// Получим регламентный отчет
Report := MB.ItemById["REPORT"].Edit() As IPrxReport;
//Получим срез аналитической области данных
PivSlice := Report.DataArea.Slices.Item[0];
// Получим представление таблицы
Grid := PivSlice.Views.Item[0] As IEaxGrid;
// Зададим отметку среза
SelSet := PivSlice.Selection.CreateCopy();
// Выделим все элементы
For Each Sel In SelSet Do
Sel.SelectAll();
End For;
// Обновляем права доступа
Grid.UpdateData(SelSet, EaxGridUpdateDataOptions.egudoDataRights);
// Сохраняем отчет
(Report As IMetabaseObject).Save();
End Sub;
В результате выполнения примера происходит обновление прав доступа по переданной отметке.
См. также: