IDalConnection2.Discover

Синтаксис Fore

Discover(SystemDictionary: DalSystemDictionary; Filter: String): IDalCursor;

Синтаксис Fore.NET

Discover(SystemDictionary: Prognoz.Platform.Interop.Dal.DalSystemDictionary; Filter: String): Prognoz.Platform.Interop.Dal.IDalCursor;

Параметры

SystemDictionary. Тип курсора, полученного в результате выполнения SQL-запроса к БД;

Filter. Фильтр, который применяется к курсорам, полученным в результате выполнения SQL-запроса к БД.

Описание

Метод Discover возвращает соответствующий курсор в зависимости от параметра SystemDictionary.

Комментарии

Если драйвер не поддерживает соответствующий SystemDictionary, будет возвращаться Null.

Пример Fore

Для выполнения примера подключите к модулю системные сборки Metabase и Dal.

Sub Macro;
Var
    MB: IMetabase;
    DB: IDatabaseInstance;
    Cur: IDalCursor;
    Field: IDalCursorField;
Begin
    MB := MetabaseClass.Active;
    DB := MB.ItemById("BD").Open(NullAs IDatabaseInstance;
    Cur := DB.Connection.Discover(DalSystemDictionary.Tables, "");
    While Not Cur.Eof Do
        For Each Field In Cur.Fields Do
            Debug.WriteLine(Field.Name + " " + Field.Value);
        End For;
        Debug.WriteLine("");
        Cur.Next;
    End While;
    Cur.Close;
End Sub Macro;

После выполнения примера в окно консоли будет выведена системная информация о таблицах, хранящихся в указанной базе данных.

Пример Fore.NET

Указанная процедура является точкой входа для .NET-сборки.

Imports Prognoz.Platform.Interop.Dal;
Imports Prognoz.Platform.Interop.Metabase;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    DB: IDatabaseInstance;
    Cur: IDalCursor;
    Field: IDalCursorField;
Begin
    MB := Params.Metabase;
    DB := MB.ItemById("BD").Open(NullAs IDatabaseInstance;
    Cur := DB.Connection.Discover(DalSystemDictionary.dsdTables, "");
    While Not Cur.Eof Do
        For Each Field In Cur.Fields Do
            System.Diagnostics.Debug.WriteLine(Field.Name + " " + Field.Value);
        End For;
        System.Diagnostics.Debug.WriteLine("");
        Cur.Next();
    End While;
    Cur.Close();
End Sub;

После выполнения примера в окно консоли будет выведена системная информация о таблицах, хранящихся в указанной базе данных.

См. также:

IDalConnection2