Протокол работы TCP/IP сервера ИРБИС 64 — различия между версиями

Материал из Wikipedia
Перейти к: навигация, поиск
(Функции работы со словарем базы данных)
 
(не показано 10 промежуточных версий 2 участников)
Строка 1: Строка 1:
 +
== Вступление ==
 
Все функции работы с сервером ИРБИС64 имеют параметры запроса и строки ответа в последнем параметре функции. То есть шаблон функции может быть представлен в виде:
 
Все функции работы с сервером ИРБИС64 имеют параметры запроса и строки ответа в последнем параметре функции. То есть шаблон функции может быть представлен в виде:
 
function(A<sub>1</sub>...A<sub>N</sub>; answer: TStringList)
 
function(A<sub>1</sub>...A<sub>N</sub>; answer: TStringList)
 +
 
Где
 
Где
 
; Параметры
 
; Параметры
Строка 422: Строка 424:
 
== Группа функций поиска ==
 
== Группа функций поиска ==
 
=== Поиск записей по заданному поисковому выражению ===
 
=== Поиск записей по заданному поисковому выражению ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
=== Последовательный поиск записей по заданному поисковому выражению или по заданному диапазону записей ===
 
=== Последовательный поиск записей по заданному поисковому выражению или по заданному диапазону записей ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
== Группа функций  форматирования ==
 
== Группа функций  форматирования ==
 
=== Расформатирование данной записи по номеру записи ===
 
=== Расформатирование данной записи по номеру записи ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
=== Расформатирование данной виртуальной записи в клиентском представлении (не содержащейся в базе данных) ===
 
=== Расформатирование данной виртуальной записи в клиентском представлении (не содержащейся в базе данных) ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
=== Расформатирование группы записей ===
 
=== Расформатирование группы записей ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
== Печать ==
 
== Печать ==
 
=== Получить выходную табличную форму по заданному набору записей ===
 
=== Получить выходную табличную форму по заданному набору записей ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
== Статистика ==
 
== Статистика ==
 
=== Получить выходную табличную форму статистического распределения заданных параметров в базе данных ===
 
=== Получить выходную табличную форму статистического распределения заданных параметров в базе данных ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
== Глобальная корректировка ==
 
== Глобальная корректировка ==
 
=== Глобальная корректировка заданного набора записей ===
 
=== Глобальная корректировка заданного набора записей ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 
=== Глобальная корректировка заданного набора записей с формально-логическим контролем и возможностью отменить autoin ===
 
=== Глобальная корректировка заданного набора записей с формально-логическим контролем и возможностью отменить autoin ===
 +
{| style="width:100%;background-color:gray;" cellspacing="1"
 +
|- style="background-color:white;"
 +
!style="width:20%;"|Объявление функции
 +
!style="width:30%;"|Параметры
 +
!style="width:30%;"|Возврат
 +
!style="width:20%;"|Комментарий
 +
|- style="background-color:white;"
 +
|<span style="color:blue">function</span> name(
 +
:parameter: '''type''';
 +
:answer: '''TStringList'''
 +
): integer;
 +
|
 +
|
 +
|
 +
|}
 +
 +
==Ссылки==
 +
 +
См. также:
 +
* [[TCP/IP сервер ИРБИС 64]]
 +
 +
Источники информации:
 +
* [http://lib.omgtu.ru/irb/doc/irbis128.doc ИРБИС 64/128. Общее описание системы]
 +
 +
[[Категория:ИРБИС 64]]
 +
[[Категория:Программные модули ИРБИС]]

Текущая версия на 16:05, 10 июня 2014

Содержание

Вступление

Все функции работы с сервером ИРБИС64 имеют параметры запроса и строки ответа в последнем параметре функции. То есть шаблон функции может быть представлен в виде: function(A1...AN; answer: TStringList)

Где

Параметры
A1...AN – параметры запроса
Возврат
answer – список строк ответа, который организован таким образом, что в первой строке как правило – числовой код возврата (в строковом представлении), далее - строки результата.
Комментарий

Возврат функции может быть следующим числом:

  • mrOK – пришел ответ сервера в ожидаемом формате.
  • mrCancel – ошибка при обработке запроса – нет гарантии что ответ правильный.
  • mrNo – клиент находится в процессе обработки предыдущего запроса и не может обработать данный запрос.

Общие функции

Регистрация пользователя

Объявление функции Параметры Возврат Комментарий
function irbis_client_reg (
aserver_host: string;
aserver_port: string;
arm: char;
user_name: string;
password: string;
answer: TStringList

): integer;

aserver_host – адресс сервера в числовом виде (например 255.255.255.255)

aserver_port – рабочий порт сервера (6666)

arm – вид клиента

читатель (IRBIS_READER),
каталогизатор (IRBIS_CATALOG)
комплектатор (IRBIS_COMPLECT),
книговыдача (IRBIS_BOOKLAND).

user_name – имя пользователя

password – пароль пользователя

В answer в первой строке код возврата. Если код возврата равен ZERO, то следующие строки в answer - это ini-файл, определенный на сервере для данного пользователя. Если код возврата не равен ZERO - в answer только одна строка.
Коды возврата
ZERO
CLIENT_ALREADY_EXISTS - пользователь уже зарегистрирован.
WRONG_PASSWORD - неверный пароль.
CLIENT_ALREADY_EXISTS - пользователь уже зарегистрирован
Перед началом работы с сервером ИРБИС64 требуется произвести регистрацию с помощью данной функции. В случае успешного выполнения клиент получает ini-файл с определенными параметрами, необходимыми для работы программы.

Разрегистрация клиента (сигнал окончания работы)

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Подтверждение регистрации

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Запись параметров в ini-файл клиента расположенный на сервере ИРБИС64

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Функции работы с контекстом

Функция чтения текстового ресурса (файла) расположенного на сервере ИРБИС64

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Очистка памяти кэша

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Функция чтения группы текстовых ресурсов расположенных на сервере ИРБИС64

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Функция чтения двоичного ресурса (бинарного файла) расположенного на сервере ИРБИС64

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Функция записи текстового ресурса (файла) на сервер ИРБИС64

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Работа с мастер-файлом базы данных

Прочитать запись

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Прочитать запись и произвести ее расформатирование

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Записать запись

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Записать группу записей

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Разблокировать запись

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Актуализировать запись

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить максимальный MFN базы данных

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Функции работы со словарем базы данных

Получить список терминов словаря, начиная с данного

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список терминов словаря, начиная с данного и расформатировать записи, соответствующие 1-й ссылке каждого термина из этого списка

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список терминов словаря, начиная с данного в обратном порядке

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список терминов словаря в обратном порядке, начиная с данного и расформатировать записи, соответствующие 1-й ссылке каждого термина из этого списка

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список ссылок для данного термина

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список первых ссылок для списка терминов

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Получить список ссылок для данного термина и расформатировать записи им соответствующие

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Группа функций поиска

Поиск записей по заданному поисковому выражению

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Последовательный поиск записей по заданному поисковому выражению или по заданному диапазону записей

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Группа функций форматирования

Расформатирование данной записи по номеру записи

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Расформатирование данной виртуальной записи в клиентском представлении (не содержащейся в базе данных)

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Расформатирование группы записей

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Печать

Получить выходную табличную форму по заданному набору записей

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Статистика

Получить выходную табличную форму статистического распределения заданных параметров в базе данных

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Глобальная корректировка

Глобальная корректировка заданного набора записей

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Глобальная корректировка заданного набора записей с формально-логическим контролем и возможностью отменить autoin

Объявление функции Параметры Возврат Комментарий
function name(
parameter: type;
answer: TStringList

): integer;

Ссылки

См. также:

Источники информации: