Edit: IRdsDictionaryElementDependents;
Edit: Prognoz.Platform.Interop.Rds.IRdsDictionaryElementDependents;
Метод Edit открывает коллекцию зависимостей от элемента на редактирование.
Для сохранения изменений в коллекции зависимостей используйте метод IRdsDictionaryElementDependents.Save.
Для выполнения примера предполагается наличие репозитория НСИ с идентификатором «RDS». В данном репозитории создан справочник НСИ с идентификатором «Country». Для справочника включено отслеживание ссылок на элементы.
Sub UserProc;
Var
MB: IMetabase;
Dict: IRdsDictionary;
Elements: IRdsDictionaryElements;
Depends: IRdsDictionaryElementDependents;
MBDepend: IMbElementDependencies;
Begin
MB := MetabaseClass.Active;
Dict := MB.ItemByIdNamespace("Country", MB.GetObjectKeyById("RDS")).Bind As IRdsDictionary;
Elements := (Dict.Open(Null) As IRdsDictionaryInstance).Elements;
Depends := Elements.Dependents(Elements.Element(1));
If Not Depends.IsEmpty Then
Depends.Edit;
MBDepend := Depends.Objects As IMbElementDependencies;
MBDepend.Clear;
Depends.Save;
End If;
End Sub UserProc;
При выполнении примера будет осуществлена проверка наличия зависимостей от указанного элемента справочника НСИ. Если зависимости существуют, то они будут удалены.
Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.
Imports Prognoz.Platform.Interop.Rds;
…
Public Shared Sub Main(Params: StartParams);
Var
MB: IMetabase;
Dict: IRdsDictionary;
Elements: IRdsDictionaryElements;
Depends: IRdsDictionaryElementDependents;
MBDepend: IMbElementDependencies;
Begin
MB := Params.Metabase;
Dict := MB.ItemByIdNamespace["Country", MB.GetObjectKeyById("RDS")].Bind() As IRdsDictionary;
Elements := (Dict.Open(Null) As IRdsDictionaryInstance).Elements;
Depends := Elements.Dependents[Elements.Element[1]];
If Not Depends.IsEmpty Then
Depends.Edit();
MBDepend := Depends.Objects As IMbElementDependencies;
MBDepend.Clear();
Depends.Save();
End If;
End Sub;
См. также: