Тема / Topic: Перепривязка аргументов канала вызова экрана
ddkel
Active Forum Member / Активный участник форума
Участник № / Member № 4120
отправлено / posted
Добрый день! 1. Для перепривязки аргументов канала вызова экрана испоьзуется CALL.ChGroupReq с Параметр = 0. Аргументы сгруппированы в шесть групп по 19 аргументов. При перепривязке шестой группы (CALL.8.R = 95) аргументы канала вызова экрана остаются привязанными к ранее привязанной группе (любая из первых пяти), т.е. перепривязки не происходит. При добавлении седьмой группы из 19 аргументов, не происходит уже перепивязка к седьмой группе. В чем загадка? 2. Подскажите, каким механизмом перепривязки следует воспользоваться, чтобы тренд вызываемого экрана мог обращаться к архиву?
Сообщения / Posts 82 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Алгоритм перепривязки с использованием канала CALL.ChGroupReq с Параметр = 0 предусматривает наличие после привязываемой группы других аргументов. Создайте в канале CALL.ChGroupReq на 1 аргумент больше.
2. Любая корректно осуществляемая перепривязка позволит вывести на тренд архивные данные по аргументу, если привязанный к нему атрибут канала архивируется.
Сообщения / Posts 17329 | Из / From: Россия
| IP / IP: IP адрес / IP address |
ddkel
Active Forum Member / Активный участник форума
Участник № / Member № 4120
отправлено / posted
1. В документации про наличие "других" аргументов ничего не сказано, больше похоже на баг. 2. Вопрос возник при использовани перепривязки с помощью CALL.8 парамеир = 0; у экрана были оставлены виртуальные привязки, данные отображались, но не было доступа к архиву, а указания на предварительную привязку аргументов экрана в документации нет.
Сообщения / Posts 82 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Это недостаток документации. Поправим.
2. "Замена виртуальных привязок через атрибут 47" - механизм устаревший. Он требует большого числа аргументов. И доступ к архиву в нем не отслеживается. В настоящее время для канала достаточно создать на экране 1 привязку (РЕАЛЬНОЕ ЗНАЧЕНИЕ), а остальные привязки ГЭ могут осуществляться через дополнительные атрибуты окна "Привязка" в РПД. Поэтому более перспективной и функциональной является перепривязка через каналы CALL или "на уровне объектов".
Сообщения / Posts 17329 | Из / From: Россия
| IP / IP: IP адрес / IP address |
denchik
Junior Member / Новичок
Участник № / Member № 6225
отправлено / posted
Очень хорошая тема, вот только хочется поподробнее. У меня схожая задача. ТМ 6.09. Множество всплывающих экранов, вызываемых с MAIN-экрана - все со своими аргументами, хотелось бы создать мультиэкземпляр и спокойно вызывать его с перепривязкой его аргументов. Механизм, мне известен, есть опыт на других СКАДА, раелизация на ТМ пока не ясна. ГЭ "Переключатель каналов" и "Свободные формы" в моем релизе не используются, хочется поподробнее узнать о перепривязке с помощью канала CALL.ChGroupReq. Уважаемая Тех.поддержка, имеется ли у вас сэмпл проекта?
Сообщения / Posts 30 | Из / From: Казахстан
| IP / IP: IP адрес / IP address |
denchik
Junior Member / Новичок
Участник № / Member № 6225
отправлено / posted
Видео посмотрел, но не получается применить на моем примере. В разрабатываемой мной системе один основной экран(MAIN) и один вызываемый с перепривязкой, причем перепривязка осуществляе с основного и других двух вызываемых. Аргументы экрана привязаны к аргументам канала Call.ChGRRequest/x50(50 аргументов), для группового запроса устройства Modbus(RTU). Я создал группу каналов, в которой у меня х3 канала CALL, в аргументах которых канал Call.ChGRRequest/x50 [REAL], канал [STRING]()(который я спец создал, для того чтобы брать с него базовое имя). В основном экране кнопка привязана на вх.значение сборного канала(как в примере), в вызываемом помимо аргументов экрана, создан аргумент привязанный на вх. значение сборного канала. При посылке 0,1,2 на вх. значение - текст, привязанный к аргументу STRING показывает "0", значения параметров также не отображаются. Где искать ошибку ?
Сообщения / Posts 30 | Из / From: Казахстан
| IP / IP: IP адрес / IP address |
отправлено / posted
Из этого текста понять однозначно, что Вы сделали, проблематично.
Пришлите, пожалуйста, Ваш проект с ясными комментариями по постановке задачи на адрес техподдержки hotline@adastra.ru.
Сообщения / Posts 17329 | Из / From: Россия
| IP / IP: IP адрес / IP address |
denchik
Junior Member / Новичок
Участник № / Member № 6225
отправлено / posted
При использовании метода перепривязки экранов через каналы ChGroupReq очень важно соблюсти строгость последовательностей индексов аргументов перепривязываемых экранов и индексов аргументов привязываемых аргументовв каналах ChGroupReq.
В Вашем случае, вероятно, имело место либо редактирование списка аргументов у экранов, либо удаление и создание новых аргументов.