quote:Этот пример я первым делом посмотрел. С ним все понятно.
Отправитель / Originally posted by AdAstra Technical Support:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/52/t/000003.html/Пример работы с рецептами из БД/
Посмотрите, пожалуйста, этот пример.
quote:Я писал выше, что не получается по непонятным причинам и просил вылать пример из видеурока "Обмен данными между SCADA TRACE MODE и СУБД по ODBC".
Отправитель / Originally posted by AdAstra Technical Support:
Возможно, следует обратить внимание на групповое считывание строк в аргументы каналов ChGroupReq (см.описание SQL-запросов)
quote:Как понять собственной таблицы? Я не нашел ГЭ, способного делать произвольную таблицу.
Отправитель / Originally posted by AdAstra Technical Support:
и создание для этих аргументов собственной таблицы.
quote:Спасибо, почему то об этом я даже и не подумал.
Отправитель / Originally posted by AdAstra Technical Support:
Пример к видео-уроку Вам отправлен.
"Собственную таблицу" можно создать из набора ГЭ "Текст", привязанных к аргументам канала групповой выборки.
quote:Я же самолично создаю аргументы CALL.ChGroupReq. Что значит автоматически создаются? Вы же мне нечто подобное в посте №13346 советовали.
Отправитель / Originally posted by AdAstra Technical Support:
Количество аргументов в канале CALL.ChGroupReq автоматически задается равным количеству считанных строк.
Жесткие привязки аргументов экрана к аргументам CALL.ChGroupReq не даст результата.
quote:В этом месте не понятно. Я же привязываю ГЭ к реальному значению CALL.ChGroupReq. Где я должен выбрать атрибут 522?
Отправитель / Originally posted by AdAstra Technical Support:
В привязке ГЭ выбрать номер атрибута 522.
code:ID 7 это как раз канал CALL.SQLQuery, который я пытаюсь показать на экране.
(2:57:14) WRN_RTM:wrong entry out -140(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -139(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -138(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -137(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -136(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -135(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -134(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -133(9,2) id=7
(2:57:14) WRN_RTM:wrong entry out -132(9,2) id=7
code:2.
(2:58:19) WRN_RTM:wrong entry(g)
quote:Это так и задумано или это баг такой? Планируете ли исправить?
Если в какой-то момент времени количество реальных аргументов канала CALL.ChGroupReq меньше, чем число аргументов этого канала, к которым привязаны аргументы экрана, экран выключится и сам не включится.
quote:Попробовал добавить по одному аргументу в каждый канал CALL.ChGroupReq. Разницы не увидел.
Отправитель / Originally posted by AdAstra Technical Support:
У канала CALL.ChGroupReq надо оставить хотя-бы 1 аргумент.
quote:Изменил, проблема осталась
Отправитель / Originally posted by AdAstra Technical Support:
Задайте каналу CALL.SQLQuery период обработки
1*"цикл IDLE".
code:В логе виден момент когда все "подвисает" 11:5:27-11:5:35. Как раз чтение из БД. Впечатление, что все выполняется в одном потоке и пока БД не получит ответ на запрос все "стоит".
(11:5:22) INF_GRAPH:scr:1:popup=0 scrref=0 trend=0,0 update=1
(11:5:24) INF_RTM:Thread Enable
(11:5:24) INF_RTM:Idle period = 1100
(11:5:27) INF_RTM:SQL: connect База_данных#1:1
(11:5:27) INF_RTM:SQL : exec prepare R=0xffff for next fetch all row База_данных#1:1
(11:5:35) INF_RTM:SQL: select 2 row База_данных#1:1
(11:5:35) INF_RTM:SQL: fetch row from 0 to 2 База_данных#1:1
(11:5:35) INF_RTM:SQL: disconnect after select База_данных#1:1
(11:5:43) INF_RTM:stoping...
(11:5:43) INF_RTM:mode=5(Stop) e15=00 e18=00 e20=00 [src0]
(11:5:43) INF_RTM:stop CALC[8444] ku=0 workT=0 Sleep=12
(11:5:43) INF_RTM:stop Ext Graph[9248] ku=0 workT=21 Sleep=0
(11:5:43) INF_RTM:stop Main[9404] ku=0 workT=0 Sleep=22
(11:5:43) INF_RTM:stop IDLE[1752] ku=0 workT=0 Sleep=14
(11:5:44) INF_RTM:stop GRAPH[7392] ku=0 workT=22 Sleep=19
(11:5:44) INF_RTM:stop ACT[9552] ku=0 workT=21 Sleep=21
(11:5:44) INF_RTM:stop SDDE[9816] ku=0 workT=0 Sleep=0
(11:5:44) INF_RTM:stop time is 1.387 s
(11:5:44) INF_RTM:number of calculation = 21
(11:5:44) INF_RTM:END OF WORK
quote:как посмотреть?
протокол трассировщика ODBC-драйвера.
quote:В настройках канала CALL.SQLQuery пункте Системные-Основные Период указал 1, Единица измерения IDLE. Вы это имели ввиду?
Отправитель / Originally posted by Nico:
Call.sql перевести в поток idle
quote:Включил трасировку.
Отправитель / Originally posted by AdAstra Technical Support:
У Вас трассировщик ODBC-драйвера включен?
Надо его выключить.