Гость
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ошибка <READ> / 6 сообщений из 6, страница 1 из 1
26.06.2014, 17:36
    #38681113
AlexShiryaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
Из-за чего может возникать?
...
Рейтинг: 0 / 0
26.06.2014, 17:42
    #38681119
DAiMor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
согласно документации
<READ> The record cannot be read.

опишите подробнее, как получаете ошибку, пример кода
...
Рейтинг: 0 / 0
26.06.2014, 18:32
    #38681174
AlexShiryaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
Кода много. И он работает, но в какой-то момент появляется эта ошибка. Не могу понять в связи с чем. Поэтому и спросил.
В очень упрощенном виде:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
 s SOH=$C(1)
 s TCPPORT="|TCP|81"
 s PORT=3001
 s TIMEOUT=3
 open TCPPORT:(:PORT:"S"):TIMEOUT

 // далее в цикле ожидаем когда будет передан символ $C(1) - <SOH>

U10A s La=$$TCPREAD1^ONLLIB
 g:La="-1" U10A
 g:La'=SOH U10A

U10Z q
 // затем читаем строки 

U10C s satz=$$TCPREAD2^ONLLIB
 i satz="-1"  g U10Z //Таймаут
 // идет разбор строки
 ;
 i Ltyp="L" d // при определенном условии (последняя строка)
  .// в конце должен быть символ $C(4) <EOT>
  .s Leot=$$TCPREAD1^ONLLIB
  .// обработка данных   
 i Ltyp="L" i Leot=EOT g U10A //новый цикл
 g U10C
U10Z  q

 // рутина ONLLIB
ONLLIB
TCPREAD2
 s TCPready=0
 s TCPstart=""
 s TCPstop=$C(13)
U05I  u TCPPORT r *A:TCPtimeout
 i '$T s TCPstr="-1" g U05Z
 i TCPready=0 i A=TCPstart s TCPready=1
 i TCPstart'="" i TCPready=0 g U05I
 s TCPstr=TCPstr_A
 i A=TCPstop g U05Z
 g U05I

TCPREAD1
 u TCPPORT r *A:TCPtimeout
 i '$T s TCPstr="-1" g U05Z
 s A=$C(A)
 s TCPstr=A
U05Z u 0
 s TCPstr=$TR(TCPstr,NUL,"")
 q TCPstr

И вот при переходе на второй цикл (снова ожидания <SOH>) при первом же вызове функции TCPREAD1^ONLLIB на строке u TCPPORT r *A:TCPtimeout появляется эта ошибка.
Ничего не могу понять.. Что может повлиять? Поэтому и спрашиваю в каких случаях такая ошибка может появляться?
...
Рейтинг: 0 / 0
27.06.2014, 09:33
    #38681468
servit
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
AlexShiryaevЧто может повлиять? Поэтому и спрашиваю в каких случаях такая ошибка может появляться?Посмотрите все вхождения "<READ>" , и особенно здесь .
...
Рейтинг: 0 / 0
27.06.2014, 13:35
    #38681837
AlexShiryaev
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
В итоге перед вторым циклом помогло закрытие и повторное открытие порта.
В чем была проблема так и не понял.
...
Рейтинг: 0 / 0
30.06.2014, 11:59
    #38683543
Alexey Maslov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка <READ>
AlexShiryaevВ чем была проблема так и не понял.С вероятностью 99.9%: сервер ещё удерживал соединение, а клиент его уже закрыл. Закрыв и открыв порт заново, вы ушли от этой проблемы.
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Ошибка <READ> / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]