Просмотр полной версии : неявные связи в скрипте
Kostic77
02.04.2013, 13:48
Добрый день, никак не могу допетрить, как использовать значение переменной из другого ФБ, не создавая вход у скрипта с указанием связи с требуемым значением ФБ.
Есть несколько таблиц и требуется передать введенные значения с их выходов на входы по нажатию кнопки "сохранить", а создавать несколько десятков входов и выходов у скрипта, да ещё связать их с таблицами слишком утомительное занятие.
К тому же надо сгенерировать на их основе графики на тренде в будущем времени (по типу задающих)...
_______
Спасибо.
Kostic77
03.04.2013, 09:20
Второй вопрос.
Как обновить значения переменных в архиве для имеющихся временных меток?
Архив создается скриптом "генерация архива за промежуток". Все замечательно работает, график на тренде рисуется
Но если повторно вызывать данный скрипт по тем же временным (для редактирования формы графика), то данные в архиве остаются старые... и на тренде отображается старый график...
Если отключить архивирование у переменной, то форма графика на тренде начинает меняться, но пропадает возможность сохранить значения переменной для истории.
что можно применить вместо
SetValue("Выход", new PinValue(current.Next(320), tt.ToUniversalTime()));
если переменная с данной меткой времени уже существует в архиве?
Или как можно очистить часть архива переменной за заданный период?
SCADAMaster
03.04.2013, 12:21
Или как можно очистить часть архива переменной за заданный период?
За заданный на текущий момент не получится, можно удалить архив за весь промежуток. Такое решение устроит ?
SCADAMaster
03.04.2013, 12:43
Добрый день, никак не могу допетрить, как использовать значение переменной из другого ФБ, не создавая вход у скрипта с указанием связи с требуемым значением ФБ.
Допустим есть 2 Скрипта
Скрипт_1 и Скрипт_2. Данные из Скрипт_1 надо передать в Скрипт_2
В Скрипт_1 надо добавить
public int val1;//Переменная которую передаем
В Скрипт_2 :
-1- Подключить сборку Microsoft.CSharp (Закладка "Настройки")
-2- В код добавить:
dynamic other=((ScriptFB)HostFB.TreeItemHlp.Parent.GetChil d("Скрипт_1").FBObject).ScriptObject;//получаем ссылку на первый скрипт
Параметр1 = other.val1;// Где Параметр1 - это Выход у Скрипт_2
Так же не забудте установить у обоих скриптов опрос типа "Периодический"
Kostic77
05.04.2013, 16:49
Допустим есть 2 Скрипта
Скрипт_1 и Скрипт_2. Данные из Скрипт_1 надо передать в Скрипт_2
В Скрипт_1 надо добавить
public int val1;//Переменная которую передаем
В Скрипт_2 :
-1- Подключить сборку Microsoft.CSharp (Закладка "Настройки")
-2- В код добавить:
dynamic other=((ScriptFB)HostFB.TreeItemHlp.Parent.GetChil d("Скрипт_1").FBObject).ScriptObject;//получаем ссылку на первый скрипт
Параметр1 = other.val1;// Где Параметр1 - это Выход у Скрипт_2
Так же не забудте установить у обоих скриптов опрос типа "Периодический"
Спасибо, попробую, а если данные нужно передать из ФБ "Таблица" в скрипт, то этот вариант сработает?
Мне нужно обработать данные из десятка таблиц... тяжко уж больно связи ручками показывать.:rolleyes:
приходится операции по разным скриптам раскидывать, чтобы связи в дереве на одном экране умещались:) а потом уже между скриптами связи устанавливать...
Kostic77
05.04.2013, 16:53
За заданный на текущий момент не получится, можно удалить архив за весь промежуток. Такое решение устроит ?
я решил эту проблему переносом архива подъобекта в память. Тогда он автоматически удаляется при перезагрузке проекта.
Скажите, а Вы разобрались как вставлять переменные из других объектов в скрипт без объявления входов-выходов?
У меня 2 сотни переменных и мне нужно из скрипта их устанавливать.
Буду благодарен за помощь.
Kostic77
26.04.2013, 06:24
Скажите, а Вы разобрались как вставлять переменные из других объектов в скрипт без объявления входов-выходов?
У меня 2 сотни переменных и мне нужно из скрипта их устанавливать.
Буду благодарен за помощь.
К сожалению нет
Powered by vBulletin® Version 4.2.3 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot