ViewDEF.d32 - просмотр структур, сравн. с другим def, получение B_STAT (аналог butil -stat), B_STAT != структуре в def, а теперь и удаление и импорт структур.
Скачать (zip-файл; Размер - 66437)Обсудить в форуме
Описание
RSL_CLASS_BEGIN(TViewDEF)
RSL_PROP_METH (StdDataBaseDirs) // возвращает директории где искать базы данных
RSL_PROP_METH (DefPath) // возвращает путь к открытому словарю
RSL_METH (OpenDef) // открытие словаря
RSL_METH (TableNext) // переборы: таблиц
RSL_METH (FieldNext) // полей
RSL_METH (KeySegNext) // сегментов
RSL_METH (GetTableId) // получение из словаря Id таблицы по имени
RSL_METH (GetStat) // получение статистики по файлу
RSL_METH (GetStatSegment) // получение из статистики по файлу информации о сегменте ключа
RSL_METH (IsTableEqual) // сравнение с таблицей из другого словаря
RSL_METH (TableActualStat) // сравнение статистики и структуры в словаре
RSL_METH (DeleteRecord) // удаление записи по id
RSL_METH (DeleteTable) // удаление таблицы
RSL_METH (ImportTable) // Заимствование структуры из другого словаря
RSL_INIT
RSL_CLASS_END
RSL_PROP_METH (StdDataBaseDirs) // возвращает директории где искать базы данных
RSL_PROP_METH (DefPath) // возвращает путь к открытому словарю
RSL_METH (OpenDef) // открытие словаря
RSL_METH (TableNext) // переборы: таблиц
RSL_METH (FieldNext) // полей
RSL_METH (KeySegNext) // сегментов
RSL_METH (GetTableId) // получение из словаря Id таблицы по имени
RSL_METH (GetStat) // получение статистики по файлу
RSL_METH (GetStatSegment) // получение из статистики по файлу информации о сегменте ключа
RSL_METH (IsTableEqual) // сравнение с таблицей из другого словаря
RSL_METH (TableActualStat) // сравнение статистики и структуры в словаре
RSL_METH (DeleteRecord) // удаление записи по id
RSL_METH (DeleteTable) // удаление таблицы
RSL_METH (ImportTable) // Заимствование структуры из другого словаря
RSL_INIT
RSL_CLASS_END
Текст примера
import "ViewDEF.d32"; var DicName = "j:\\rsbank\\dbfile\\bank.def"; var TableName = "bank.dbt"; var ob = TViewDEF (); // создание TViewDEF println("opening "+ DicName + " -> " + String(ob.OpenDef(DicName) ) ); // открытие словаря. обязательно указывать полный путь var st = tarray;st[0] = "Ok :)"; st[1] = "Table :("; st[2] = "Fields :("; st[3] = "Keys :("; // соответствие структуры в DEF реальному файлу println ("TableActualStat of "+TableName+"-> "+st[ ob.TableActualStat(TableName) ] ); OnError(er) println(er.Module+":"+er.Line+"\n"+er.Message);