Invoke([Value: Variant = Null]);
Invoke(Value: Object);
Value. Значение, передаваемое в метод.
Метод Invoke выполняет пользовательский метод.
Invoke позволяет выполнить пользовательский метод, но не позволяет получить результат выполнения. Может использоваться для проверки работоспособности пользовательского метода. Выполняемый пользовательский метод может содержать максимум один параметр.
Для выполнения примера в репозитории должны быть добавлены пользовательские методы. Первый пользовательский метод в своей сигнатуре не должен иметь параметров.
Добавьте ссылки на системные сборки: Fore и Metabase.
Sub UserProc;
Var
Mb: IMetabase;
SharedParams: ISharedParams;
Method: IForeMethod;
Begin
Mb := MetabaseClass.Active;
SharedParams := Mb.SpecialObject(MetabaseSpecialObject.SharedParams).Bind As ISharedParams;
Method := SharedParams.Methods.FindByKey(16);
Try
Method.Invoke;
Except On e: Exception Do
Debug.WriteLine("Ошибка: " + e.Message);
End Try;
End Sub UserProc;
Imports Prognoz.Platform.Interop.KeFore;
Imports Prognoz.Platform.Interop.Metabase;
Public Shared Sub Main(Params: StartParams);
Var
Mb: IMetabase;
SharedParams: ISharedParams;
Method: IForeMethod;
Begin
Mb := Params.Metabase;
SharedParams := Mb.SpecialObject[MetabaseSpecialObject.msoSharedParams].Bind() As ISharedParams;
Method := SharedParams.Methods.Item[0];
Try
Method.Invoke(Null);
Except On e: Exception Do
System.Diagnostics.Debug.WriteLine("Ошибка: " + e.Message);
End Try;
End Sub;
При выполнении примера будет осуществлена проверка выполнения пользовательского метода. Если во время выполнения возникнет ошибка, то текст ошибки будет выведен в консоль среды разработки.
См. также: