IRdsImportSchema.CheckTable

Синтаксис Fore

CheckTable(Database: IDatabaseInstance): Boolean;

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

CheckTable(Prognoz.Platform.Interop.Db.IDatabaseInstance): boolean;

Параметры

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

Описание

Метод CheckTable осуществляет проверку на существование таблицы, указанной в схеме импорта справочника НСИ.

Комментарии

Метод возвращает значение True, если указанная в схеме импорта таблица существует.

Пример Fore

Для выполнения примера потребуются созданный репозиторий НСИ с идентификатором NSI и размещённый в нём справочник НСИ с идентификатором NSI_DICT. Также необходимо создать в справочнике схему импорта с идентификатором IMPORTSCHEMA.

Добавьте ссылки на системные сборки «Metabase», «Rds», «Db».

Sub  UserProc;
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    Dict: IRdsDictionary;
    ImportSchemas: IRdsImportSchemas;
    ImportSchema: IRdsImportSchema;
    Database: IDatabaseInstance;
Begin
    MB := MetabaseClass.Active;
    MObj := MB.ItemByIdNamespace("NSI_SEP",  MB.GetObjectKeyById("NSI")).Bind; Dict := MObj As  IRdsDictionary;
    ImportSchemas := Dict.ImportSchemas;
    ImportSchema := ImportSchemas.FindById("IMPORTSCHEMA");
    Debug.WriteLine(ImportSchema.CheckTable(Database)? "Таблица существует" : "Таблица не найдена");
End  Sub  UserProc;

После выполнения примера будет произведена проверка на реальное существование таблицы, указанной в схеме импорта справочника НСИ и выведено сообщение с её результатом.

Пример Fore.NET

Для выполнения примера потребуются созданный репозиторий НСИ с идентификатором NSI и размещённый в нём справочник НСИ с идентификатором NSI_DICT. Также необходимо создать в справочнике схему экспорта с идентификатором IMPORTSCHEMA.

Imports Prognoz.Platform.Interop.Rds;
Imports Prognoz.Platform.Interop.Db;

Public  Sub  UserProc(Params: StartParams);
Var
    MB: IMetabase;
    MObj: IMetabaseObject;
    Dict: IRdsDictionary;
    ImportSchemas: IRdsImportSchemas;
    ImportSchema: IRdsImportSchema;
    Database: IDatabaseInstance;
Begin
    MB := Params.Metabase;
    MObj := MB.ItemByIdNamespace["NSI_SEP",  MB.GetObjectKeyById("NSI")].Bind();
    Dict := MObj As  IRdsDictionary;
    ImportSchemas := Dict.ExportSchemas;
    ImportSchema := ImportSchemas.FindById("IMPORTSCHEMA");
    Debug.WriteLine(ImportSchema.CheckTable(Database)? "Таблица существует" : "Таблица не найдена");
End  Sub  UserProc;

После выполнения примера будет произведена проверка на реальное существование таблицы, указанной в схеме импорта справочника НСИ и выведено сообщение с её результатом.

См. также:

Интерфейсы сборки Rds