This is topic вопрос по Техно List in forum Документирование в TRACE MODE / Data Documentation in Trace Mode at Форум TRACE MODE: техническая поддержка.
Добрый день. Хотелось бы проконсультироваться по поводу работоспособности приведенной ниже пользовательской функции на Техно List. Дело в том, что проверить ее в данный момент не получается ввиду отсутствия СД.
Задача функции W_value такая: есть строка в таблице и ячейки строки должны заполняться последовательными значениями глобальных переменных W некотор. узла. Аргументами функции должны быть: base - номер переменной W, значение которой будет находиться в первой ячейке строки shit - номер ячейки в строке.
В повторяющуюся ячейку строки вставляем, скажем, такой вызов: W_value( 10, COL()); Все ли тут корректно?
Posted by Konstantin (Участник № / Member № 833) on :
Попробовал формировать пробный отчет - процедура вроде работает, но если передавать аргумент base, больший, чем 590, то в данной строке все ячейки заполнены записями #CHAN:BAD CHANNEL#. В чем тут дело? Если вставлять в ячейку выражение GETVAL(CHAN("WG591",0,"Operator","W_Global")), значение переменной выводится нормально...
Posted by Kuznetsov (Участник № / Member № 360) on :
Попробуйте формировать строковый параметр в качестве идентификатора глобальной переменной. Например, ch_name= "WG"+STR(591);
Еще можно попробовать читать глобальные переменные, начиная с индекса 64000 в объекте "_БАЗА" с идентификатором 0.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Я полагаю, все-таки, что в данном случае имеет место не вполне адекватная ЭМУЛЯЦИЯ при формировании пробного отчета. Аналогичные эффекты могут наблюдаться и в других случаях обращения к каналам по индексам. В сервере документирования этот механизм должен отрабатываться корректно.