IsDirty: Boolean;
Свойство IsDirty возвращает признак наличия изменений в настройках источников данных.
Допустимые значения:
True. Настройки источников данных изменены;
False. Настройки источников данных не изменены.
Для выполнения примера предполагается наличие в репозитории алгоритма расчёта с идентификатором ALGORITHM. В алгоритме создан и настроен блок расчёта.
Добавьте ссылки на системные сборки: Algo, Metabase. Также добавьте ссылки на сборки, которые необходимы для работы с алгоритмами расчёта.
Sub UserProc;
Var
MB: IMetabase;
MObj: IMetabaseObjectDescriptor;
Algo: ICalcObject;
CalcAlgo: ICalcAlgorithm;
CalcBlock: ICalcBlock;
CalcBlockIteratorModel: ICalcBlockIteratorModel;
CalcBlockIteratorStub: ICalcBlockIteratorStub;
Begin
MB := MetabaseClass.Active;
// Получим алгоритм расчёта
MObj := MB.ItemById("ALGORITHM");
Algo := CalcObjectFactory.CreateCalcObject(MObj, True);
CalcAlgo := Algo As ICalcAlgorithm;
// Блок расчёта
CalcBlock := CalcAlgo.Items(0) As ICalcBlock;
CalcBlockIteratorModel := CalcBlock.EditIteratorModel;
CalcBlockIteratorStub := CalcBlockIteratorModel.Stubs.Item(0);
// Связь измерений источника и приёмника по идентификаторам атрибутов
CalcBlockIteratorStub.LinkById;
// При наличии изменений в настройках сохраняем блок расчёта
If CalcBlockIteratorModel.IsDirty Then
CalcBlockIteratorModel.Save;
CalcBlockIteratorModel.Dispose_;
CalcBlock.SaveObject;
End If;
End Sub UserProc;
При выполнении примера в блоке расчёта будет настроена связь измерений источника и приёмника по идентификаторам. При наличии изменений блок расчёта будет сохранён.
См. также: