Class CODBLIST

Name

CODBLIST  --  CODB класс предназначен для управления списком доступных словарей. В вашей системе (машина, локальная сеть, VPN, internet) может быть много CODB источников данных (в конфигурации по умолчанию - 32000000). codbList и есть тот класс, который обеспечивает поддержку БД c описателями способов доступа к известным CODB. Информация хранится в $CLIPROOT/etc/codb.dbf

Synopsis

 CODBListNew() --> CODB object
 CODBList:New()  --> CODB object

Description

CODB класс предназначен для управления списком доступных словарей.

В вашей системе (машина, локальная сеть, VPN, internet) может быть много CODB источников данных (в конфигурации по умолчанию - 32000000). codbList и есть тот класс, который обеспечивает поддержку БД c описателями способов доступа к известным CODB. Информация хранится в $CLIPROOT/etc/codb.dbf

Attributes

<ClassName> CODBLIST
<Error> String, описание ошибки, возникшей при выполнении последней операции.
  

Methods

APPEND Добавить в список новый описатель CODB.
CLOSE Закрыть БД.
CONNECT Открыть БД.
EXISTID Проверить CODB идентификатор в списке известных CODB.
GETVALUE Получить словарь по идентификатору CODB.
LIST Возвращает список зарегистрированных CODB.
NEW Инициализация нового объекта CODBLIST.
UPDATE Обновить описание CODB.

Method CODBLIST:APPEND()

 Append(<oCodbData>) 	--> TRUE || FALSE

Append() возвращает TRUE, если описатель CODB добавлен. <oCodbData> должна содержать атрибут <ID>. Это свойство определяет CODB идентификатор.

<oCodbData> может включать атрибут <TYPE> - тип словаря. По умолчанию этот атрибут CODB_DICTTYPE_DEFAULT. Если <TYPE> "DBF", то <oCodbData> может содержать и еще один атрибут: <PATH> - полный путь к словарю dbf (по умолчанию: /home/$USER/codb+<ID>)

Свойства объекта <oCodbData> см. в файле <"codbcfg.ch">

 ID - идентификатор CODB, он же и индентификатор словаря (5 байт) NAME - название CODB TYPE - тип драйвера доступа к данным: DBF - по умолчанию MS  - MySQL PG  - Postgress OR  - Oracle IB  - Interbase and Firebird ODBC - ODBC data source PATH - путь к данным в файловой системе (только для DBF) HOST - имя и IP адрес машины c SQL сервером PORT - TCP порт SQL сервера USER - пользователь SQL-сервера DBNAME - имя БД в SQL-сервере 

<::Error> содержит описание ошибки, если таковая произошла.

Method CODBLIST:CLOSE()

 Close() 	--> NIL

Close() закрывает все файлы, соединения, БД.

Method CODBLIST:CONNECT()

 Connect(<sCodbID>[, <sUser>[, <sPasswd>]]) 	--> <oDict>

Connect() открывает БД с идентификатором <sCodbID>. Устанавливает соединение с SQL-сервером (если источник SQL-сервер) или открывает нужные файлы и возвращает объект класса DICTIONARY <oDict>.

<::Error> содержит описание ошибки, если таковая произошла.

Method CODBLIST:EXISTID()

 ExistId(<sCodbId>) 	--> TRUE || FALSE

ExistId() возвращает TRUE если CODB с идентификатором <sCodbId> существует в списке зарегистрированных CODB. В противном случае возвращает FALSE.

<::Error> содержит описание ошибки, если таковая произошла.

Method CODBLIST:GETVALUE()

 GetValue(<sCodbID>) 	--> <oDict>

GetValue() возвращает объект класса DICTIONARY - <oDict> с идентификатором <sCodbID>.

<::Error> содержит описание ошибки, если таковая произошла.

Method CODBLIST:LIST()

 List() 	--> <aList>

List() возвращает список зарегистрированных CODB - <aList>. Каждый элемент <aList> - это строка, содержащая CODB идентификатор и CODB название через <:>

Method CODBLIST:NEW()

 New() --> CODBLIST object

New() инициализирует новый объект CODBLIST возвращает его.

Method CODBLIST:UPDATE()

 Update(<oCodbData>) 	--> TRUE || FALSE

Update() возвращает TRUE, если описатель CODB обновлен. <oCodbData> должна содержать атрибут <ID>. Это свойство определяет CODB идентификатор.

<oCodbData> может включать атрибут <TYPE> - тип словаря. По умолчанию этот атрибут CODB_DICTTYPE_DEFAULT. Если <TYPE> "DBF", то <oCodbData> может содержать и еще один атрибут: <PATH> - полный путь к словарю dbf (по умолчанию: /home/$USER/codb+<ID>)

<::Error> содержит описание ошибки, если таковая произошла.

Example:

  dList := codbList():new()
 
 if !empty(dList:error)
 ? "Error:" dList:error
 quit
 endif
 
 dle      := map()
 dle:id   := "MY001"
 dle:name := "my first CODB"
 dle:type := "DBF"
 dle:path := "/home/my_user_name/codb/MY001"
 
 if dList:existId(dle:ID)
 dList:update(dle)
 else
 dList:append(dle)
 endif
 
 if !empty(dList:error)
 ? "Error:" dList:error
 quit
 endif
 
 oDict := dList:connect("MY001")
 ? oDict  // see descriptions of DICTIONARY class
 
 dList:close()
 quit
 

See also

CODBDICTIONARY

Platforms

No dependies of platform.