Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Работа с приложениями (ODBC-SQL/OPC/DDE) » Извлечение строк из БД

   
Автор / Author Тема / Topic: Извлечение строк из БД
Kollega
Forum Haunter / Завсегдатай форума
Участник № / Member № 4097


Icon 1 отправлено / posted      Профиль для / Profile for Kollega           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день, уважаемая техподдержка! Так как, ГЭ "База данных" находится в зачаточном состоянии(надеюсь, скоро это будет исправлено), то для отображения данных таблицы приходится использовать множество ГЭ "Текст". В связи с этим возник вопрос по извлечению строк. Итак,
"Допустима следующая конфигурация:

канал CALL.SQLQuery (INPUT, Параметр<>0) содержит единственный запрос с конструкцией SELECT.

В этом случае по команде CALL.SQLQuery.In=0xFFFF выполняется запрос, после чего в CALL.SQLQuery.In может быть многократно записано число, в котором должен быть установлен бит 15 (0x8000), а биты 0-12 задают номер строки, извлекаемой из полученной выборки. Значения извлеченной строки записываются в аргументы канала CALL.SQLQuery, используемые в виде подстановок в запросе."

В ручном режиме все работает. Например, для одной строки дважды послать число не проблема. Но если, например, 12 строк, то как я понял, надо писать управляющую программу, которая бы последовательно извлекала данные каждой строки и заполняла бы ими мою таблицу. Согласитесь это немного не удобно. Поэтому, хотелось бы знать есть ли более легкий алгоритм извлечения заданного количества строк?

Сообщения / Posts 120 | Из / From: Украина  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В том же разделе документации предыдущий параграф "Извлечение столбцов" описывает, как можно единовременно считать все нужные строки (каждый столбец таблицы - в свой канал CALL.ChGroupReq).
Сообщения / Posts 17322 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
DmFM
Junior Member / Новичок
Участник № / Member № 6479


Icon 1 отправлено / posted      Профиль для / Profile for DmFM           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Добрый день.
Уже долгое время (была тема в бесплатной ветке форума, так уж вышло под другим логином) пытаюсь решить следующую проблему.

Согласно документации сделал извлечение нескольких строк из БД в каналы CALL.ChGroupReq. Через окно "Компоненты" в МРВ проверил, аргументы в CALL.ChGroupReq создаются и заполняются данными.

Далее хочу заполнить этими данными таблицу, составленую из ГЭ Текст.

Числовые данные из CALL.ChGroupReq я извлекал в скриптах функциями getAttributeI. Но для строковых данных такой метод не подойдет.

Вопрос каким образом я могу извлечь строки из каналов и передать их в аргументы экрана, чтобы отобразить в ГЭ Текст?

Сообщения / Posts 10 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
отобразить целиком аргументы Chgr через
привязку к атрибутам с номерами > 255

Сообщения / Posts 875 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
DmFM
Junior Member / Новичок
Участник № / Member № 6479


Icon 1 отправлено / posted      Профиль для / Profile for DmFM           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by Nico:
отобразить целиком аргументы Chgr через
привязку к атрибутам с номерами > 255

Извиняюсь, ничего не понял.
У Chgr вроде нет аттрибутов с номером больше 255.
В каком месте про это можно прочитать?

Сообщения / Posts 10 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Nico
Forum Professor / Завсегдатай форума
Участник № / Member № 5342


Icon 1 отправлено / posted      Профиль для / Profile for Nico           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Subnum .
Сообщения / Posts 875 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2