This is topic Вывод данных с БД на ГЭ in forum TRACE MODE 7 бесплатная базовая версия / TRACE MODE 7 free basic version at Форум TRACE MODE: техническая поддержка.
Добрый день.Объясните пожалуйста принцип вывода значений из БД на ГЭ в седьмой версии.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Опишите решаемую задачу.
Posted by Plumber (Участник № / Member № 7942) on :
Добрый день. В базе данных две таблицы "Температура воздуха" и "температура подачи и обратки по графику температур".Нужно вывести эти значения на ГЭ.Связь с БД есть.Запрос проходит.В 6 версии у меня это получилось по вашим урокам.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Все-таки описание крайне скудное.
Если вывести данные из БД на Тренд, то считываете их каналом Call.SQLQuery, передаете данные в Call.TVC и выводите на ГЭ Тренд (подробнее в Справочной Системе о Call.TVC).
Если вывести данные из БД в ГЭ "Текст/Значение", то так же читаете данные из БД, значение аргумента канала Call.SQLQuery передаете в аргумент канала Call.Screen.
Если вывести данные из БД в аналог ГЭ "База данных" (ТМ6), то к аргументам канала Call.SQLQuery привяжите каналы Call.Data. Для вывода в отдельное окно используйте атрибут 233, ETVD канала Call.SQLQuery
Posted by Plumber (Участник № / Member № 7942) on :
Извините не специалист в этой области.Занимаюсь этим для своего удобства.Лучше всего у меня получается сделать что то по вашим видео. Данные нужно выводить из БД в ГЭ "Текст/Значение" постоянно,то есть запрос должен проводится периодически.Подойдет ли мне пример для этого из 6 версии?
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
У нас множество видео-уроков. Вы о каком?
В случае вывода данных в ГЭ "Текст/Значение" существенных отличий ТМ7 от ТМ6 нет (считали из БД, передали в аргумент экрана).
Posted by Plumber (Участник № / Member № 7942) on :
Вот этот-Обмен данными между SCADA TRACE MODE и СУБД по ODBC.Если пришлю проект,поможете разобраться?
Posted by Plumber (Участник № / Member № 7942) on :
Добрый день.Вот ссылка на пример "Обмен данными между SCADA TRACE MODE и СУБД по ODBC"- http://www.adastra.ru/products/drivers/odbc/.Делаю все также.Но не получается.Запускаю профайлер,открываю панель МРВ.Вижу что канал MOVE работает.Посылает 1 во вход БД.Но в каналах класса "ChGroupReg" нет значений из БД.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Попробуйте в панели МРВ вручную послать единичку во вход канала вызова шаблона связи с СУБД. После чего проследить за значением канала и его достоверностью.
Попробуйте для начала данные из запросы выводить просто в аргументы канала вызова шаблона связи с СУБД. Например сделать простейший select через мастер запросов и поработать с таким запросом, отработается ли он.
Если результата нет, запустить трассировку в Администраторе источника данных ODBC Windows. В лог трассировки пишутся все запросы по ODBC, соответственно ошибки и сообщения.
Posted by Plumber (Участник № / Member № 7942) on :
Попробую конечно, но я уверенный пользователь,и все.
Posted by Plumber (Участник № / Member № 7942) on :
Сделал как вы сказали трассировку.К сожалению в этом я ничего не понимаю да английский не мой конек.Можете помочь с расшифровкой?
Posted by Plumber (Участник № / Member № 7942) on :
Запрос в шаблоне связи с СУБД проходит.В протоколе значения я вижу верные.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
В протоколе трассировки? А в аргументах канала вызова шаблона связи с СУБД есть эти данные?
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Какую версию используете TRACE MODE 6 или 7? Тема посвящена 7, но ссылка выше была на 6. Видео по работе с ODBC в TRACE MODE 7: https://www.youtube.com/watch?v=iMi6uQtDBJA Posted by Plumber (Участник № / Member № 7942) on :
Значения вижу в протоколе шаблона связи с СУБД.В протоколе трассировки для меня ничего непонятно.В какой строке искать?Как посмотреть в аргументах канала вызова шаблона связи с СУБД не знаю. Версия 7. просто попробовал по этому примеру сделать в 7 версии.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
В профайлере в реальном времени смотреть в Вид - Панель МРВ - Компоненты. Выбрать работающий канал вызова шаблона связи с СУБД в In послать единичку. Смотреть чтобы она сбросилась и в 004 не появился признак недостоверности (F). После чего смотреть в 124 атрибуте (развернуть), в нем аргументы, в которые должны считываться данные при отработке запроса.
Posted by Plumber (Участник № / Member № 7942) on :
Спасибо, сейчас попробую
Posted by Plumber (Участник № / Member № 7942) on :
Все сделал. И вот что получил. В строке-(004)FA T В строке-(124)ArgSize 4 a0 1 ;tempvb.124 a1 1 ;tempp.124 a2 1 ;tempp.124 a3 1 ;current_temp.124
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
Все хорошо, запрос отработал, канал достоверен. В 4 аргументах записаны скорее всего первые значения по каждому из четырех столбцов. Если нужно получить все значения столбца, к каждому аргументу каналу вызова шаблона связи с СУБД привязать по своему каналу CALL.CGR. У каждого канала CALL.CGR должен быть создан хотя бы 1 аргумент. Привязка должна быть к реальному значению R каналов CALL.CGR.
Posted by Plumber (Участник № / Member № 7942) on :
Сделано.Теперь в профайлере после запуска открываю панель МРВ и в каналах CALL.CGR. в строке -(124)ArgSize a0 10 вижу правильное значение ,равное значению в БД.Теперь хотелось бы знать как правильно вывести эти значения на ГЭ.
Posted by АдАстра. Техподдержка (Участник № / Member № 4) on :
quote:Отправитель / Originally posted by Plumber: Теперь хотелось бы знать как правильно вывести эти значения на ГЭ.
Ответ дан в посте 4 (ссылка) Выбираете необходимый вариант и реализуете его. В случае вопросов по реализации, мы Вам поможем.
[ 19.07.2023, 10:26: Сообщение отредактировал / Message edited by АдАстра. Техподдержка ]
Posted by Plumber (Участник № / Member № 7942) on :