НАЧАЛО >> TCP/IP сервер ИРБИС 64/128 >> Протокол работы сервера ИРБИС64 >> Описание структуры пакета данных
Пакет - это строка переменной длины.
Пакет включает фиксированный (1,2) и переменный (3) наборы строк:
1. строка с общей длиной запроса
2. 10 строк заголовка
3. данные (возможно несколько строк)
Строки разделяются #10,
Входящий пакет (для сервера):
ДЛИНА ЗАПРОСА В БАЙТАХ (В ТАБЛИЦАХ НЕ ПОКАЗАН!!!)
ДАННЫЕ (возможно несколько строк)
Исходящий пакет (для сервера):
КОД КОММАНДЫ
ИДЕНТИФИКАТОР ПОЛЬЗОВАТЕЛЯ (GUID)
ПОРЯДКОВЫЙ НОМЕР ЗАПРОСА
РЕЗЕРВ
РЕЗЕРВ
РЕЗЕРВ
РЕЗЕРВ
РЕЗЕРВ
РЕЗЕРВ
РЕЗЕРВ
ДАННЫЕ (возможно несколько строк)
ПОДРОБНОЕ ОПИСАНИЕ ВОЗВРАТОВ
Все данные посылаются и получаются в символьном виде в виде буфера заканчивающегося #0.
Строки в буфере разделяются 1-м #10 или 2-мя символами - #10#13.
Специальный символ разделитель - '#' = #35
Флаги статусов записи:
{BIT_LOG_DEL = логически удаленная запись - 1}
{BIT_PHYS_DEL = физически удаленная запись - 2 }
{BIT_ABSENT = несуществующая запись - 4}
{BIT_NOTACT_REC = неактуализированная запись - 8}
{BIT_LAST_REC = последний экземпляр записи - 32}
{BIT_LOCK_REC = заблокированная запись - 64}
Коды возврата
Код |
Мнемоническое описание |
Описание |
0 |
ZERO |
Нормальное завершение |
-1111 |
SERVER_EXECUTE_ERROR |
|
-2222 |
WRONG_PROTOCOL |
|
-3333 |
CLIENT_NOT_IN_LIST |
незарегистрированный клиент |
-3334 |
CLIENT_NOT_IN_USE |
незарегистрированный клиент не сделал irbis-reg |
-3335 |
CLIENT_IDENTIFIER_WRONG |
неправильный уникальный идентификатор |
-3336 |
CLIENT_NOT_ALLOWED |
нет доступа к командам АРМа |
-3337 |
CLIENT_ALREADY_EXISTS |
клиент уже зарегистрирован |
-4444 |
WRONG_PASSWORD |
неверный пароль |
-5555 |
FILE_NOT_EXISTS |
Файл не существует |
-6666 |
SERVER_OVERLOAD |
сервер перегружен достигнуто максимальное число потоков обработки |
-7777 |
PROCESS_ERROR |
не удалось запустить/прервать поток администратора |
-100 |
READ_WRONG_MFN |
-1 - заданный MFN вне пределов БД |
-600 |
REC_DELETE |
1 - запись логически удалена |
-601 |
REC_PHYS_DELETE |
2 - запись физически удалена |
-602 |
ERR_RECLOCKED |
запись заблокирована на ввод |
-603 |
REC_DELETE |
1 - запись логически удалена |
-607 |
AUTOIN_ERROR |
ошибка autoin.gbl |
-300 |
ERR_DBEWLOCK |
монопольная блокировка БД |
-400 |
ERR_FILEMASTER |
ошибка при открытии файла mst или xrf |
-401 |
ERR_FILEINVERT |
ошибка при открытии trm файлов |
-402 |
ERR_WRITE |
ошибка при записи |
-403 |
ERR_ACTUAL |
ошибка при актуализации |
-202 |
TERM_NOT_EXISTS |
|
-203 |
TERM_LAST_IN_LIST |
|
-204 |
TERM_FIRST_IN_LIST |
|
Далее везде в таблицах протокола опущена первая строка запроса – длина запроса в байтах