Суть этого CODB класса - хранилище объектов, чья структура описана в словаре.
coDepositioryNew(<sDictID>, <sUser>, <sPasswd>) --> CODBDEPOSITORY object coDepository:New(<sDictID>, <sUser>, <sPasswd>) --> CODBDEPOSITORY object
APPEND | Добавить объект в хранилище. |
CHECKBODY | Проверить объект на принадлежность к классу. |
CLOSE | Закрыть открытые файлы. |
CREATE | Создать пустой депозитарий. |
DELETE | Удалить объект из хранилища. |
GETVALUE | Получить объект из хранилища. |
ID4PRIMARYKEY | Вернуть идентификатор объекта. |
IDLIST | Вернуть объект класса IDLIST. |
NEW | Инициализация нового объекта CODBDEPOSITORY. |
OPEN | Открыть все необходимые файлы. |
PADRBODY | Привести объект в соответствие классу. |
SELECT | Вернуть список идентификаторов выбранных объектов. |
UPDATE | Обновить объект в хранилище. |
* open first depository from MY001 oDep:=coDepository():new("MY00101") oDep:open() oDict:=oDep:dictionary() * get currency metadata currBody:=oDict:classBodyByName("currency") if empty(currBody) ? "Class 'currency' not found in dictionary" quit endif *this data may be load from txt or dbf source file data:={; {"USD","USA dollar"},; {"UUU","UUU dollar"},; {"RUR","Russian rubl"},; {"RUA","Ukraina rubl :)"}; } * add currency objects for i=1 to len(data) obj:=map() obj:code := data[i][1] obj:name := data[i][2] obj_id := oDep:id4primaryKey("currency","code",obj:code) if empty(obj_id) oDep:append(obj,currBody:id) else /* object exist in depository */ obj:id := obj_id oDep:update(obj) endif if !empty(oDep:error) ? "Error:",oDep:error else ? "currency object '"+obj:code+"' added to depository" endif next ? "To depository added ",len(data)," objects" c_list:=oDep:select(currBody:id,,,'code="U"') ? "Select currency objects with code='U':",c_list c_list:=oDep:select(currBody:id) ? "Select all currency objects:",c_list ? "Loading objects body:" for i=1 to len(c_list) obj:=oDep:getValue(c_list[i]) ? "code=",obj:code, "name=",obj:name next
No dependies of platform.
Добавить объект в хранилище.
Append(<oData>, <sClassID>) --> <sDataID>
Возвращает <sDataID> - идентификатор добавленного объекта.
Append() добавляет новый объект <oData> в хранилище как объект класса <sClassID> и возвращает идентификатор зарегистрированного объекта <sDataID>.
<::Error> содержит описание ошибки, если таковая произошла.
Проверить объект на принадлежность к классу.
CheckBody(<oData>, <sClassID>) --> <oData>
Возвращает объект <oData>.
CheckBody() проверяет объект <oData> на принадлежность к классу <sClassID> и при необходимости заполняет атрибуты <oData> значениями по умолчанию.
<::Error> содержит описание ошибки, если таковая произошла.
Закрыть открытые файлы.
Close() --> TRUE || FALSE
No arguments
Возвращает TRUE если файлы закрыты.
Open() закрывает все необходимые для работы словаря файлы или соединение с SQL сервером.
Создать пустой депозитарий.
Create() --> TRUE || FALSE
No arguments
Возвращает TRUE если создан пустой новый депозитарий.
Create() возвращает TRUE если создан пустой новый депозитарий. Обычно, этот метод не требует прямого вызова, а вызывается автоматически при добавлении нового словаря в CODBDICTIONARY.
<::Error> содержит описание ошибки, если таковая произошла.
Удалить объект из хранилища.
Delete(<sDataID>) --> TRUE || FALSE
Возвращает TRUE если объект был удален.
Delete() удаляет объект с идентификатором <sDataID> из депозитария.
<::Error> содержит описание ошибки, если таковая произошла.
Получить объект из хранилища.
GetValue(<sDataID>) --> <oData>
Возвращает объект <oData> с идентификатором <sDataID>.
GetValue() достает из депозитария и возвращает объект <oData> с идентификатором <sDataID>.
<::Error> содержит описание ошибки, если таковая произошла.
Вернуть идентификатор объекта.
Id4PrimaryKey(<sClassName>, <sKeyName>, <KeyValue>) --> <sDataID>
Возвращает <sDataID> - идентификатор найденного объекта.
Id4ProperyKey() возвращает <sDataID> - идентификатор найденног объекта, у которого свойство с именем <sKeyName> равно <KeyValue>.
Вернуть объект класса IDLIST.
IdList(<sClassID>[, <nOrder>][, <sName>][, <sWhere>]) --> <oIDList>
Возвращает <oIDList> - объект класса IDLIST.
IdList() возвращает <oIDList> - объект класса IDLIST.
Инициализация нового объекта CODBDEPOSITORY.
New(<sDepID>, <sUser>, <sPasswd>) --> CODBDEPOSITORY object
Метод возвращает новый объект CODBDEPOSITORY.
New() инициализирует новый объект CODBDEPOSITORY возвращает его.
Если объект <sDepID> уже существует, New() открывает и возвращает этот депозитарий.
Открыть все необходимые файлы.
Open() --> TRUE || FALSE
No arguments
Возвращает TRUE если файлы открыты.
Open() открывает все необходимые для работы словаря файлы или соединение с SQL сервером.
<::Error> содержит описание ошибки, если таковая произошла.
Привести объект в соответствие классу.
PadrBody(<oData>, <sClassID>) --> <oData>
Возвращает объект <oData>.
PadrBody() приводит объект <oData> в соответствие классу <sClassID>.
<::Error> содержит описание ошибки, если таковая произошла.
Вернуть список идентификаторов выбранных объектов.
Select(<sClassID>[, <nOrder>][, <sName>][, <sWhere>]) --> <aIdent>
Возвращает <aIdent> массив идентификаторов объектов, соответствующих заданным условиям.
Select() возвращает список идентификаторов объектов, принадлежащих классу <sClassID> в порядке <nOrder>, у которых аттрибут <Name> точно равен <sName> и содержимое аттрибутов соответсвует выражению <sWhere>.
<::Error> содержит описание ошибки, если таковая произошла.
Обновить объект в хранилище.
Update(<oData>) --> TRUE || FALSE
Возвращает TRUE если объект обновлен.
Update() обновляет объект <oData> в хранилище. Если депозитарий не содержит объект с идентификатором <oData:ID>, Update() возвращает FALSE.
<::Error> содержит описание ошибки, если таковая произошла.