1. Обязательно представиться на русском языке кириллицей (заполнить поле "Имя").
  2. Фиктивные имена мы не приветствуем. Ивановых и Пупкиных здесь уже достаточно.
  3. Не писать свой вопрос в первую попавшуюся тему - вместо этого создать новую тему.
  4. За поиск, предложение и обсуждение пиратского ПО и средств взлома - бан без предупреждения.
  5. Рекламу и частные объявления "куплю/продам/есть халтура" мы не размещаем ни на каких условиях.
  6. Перед тем как что-то написать - читать здесь и здесь, а студентам - обязательно здесь.
  7. Не надо писать в ЛС администраторам свои технические вопросы. Администраторы форума отлично знают как работает форум, а не все-все контроллеры, о которых тут пишут.

Создание попапа

Ответить

Автор темы
sparda210
здесь недавно
здесь недавно
Сообщения: 19
Зарегистрирован: 24 дек 2020, 12:11
Имя: Антон
Благодарил (а): 3 раза
Поблагодарили: 2 раза

Создание попапа

Сообщение sparda210 »

Доброго времени суток.

Я сам больше по контроллерам, а тут пришла задача по WINCC 7.3.
Необходимо сделать всплывающее окно по нажатию на элемент, во всплывающем окне числовые и визуальные параметры элемента.
Так как все элементы однотипны и имеют один набор параметров, то не хочется создавать сто *.pdl.
Я на форме создал picture window с необходимым единственным pdl, и прописал скрипт по нажатию. Но как в этом picture window менять привязку параметров к тэгам не понял, подскажите пожалуста.
Аватара пользователя

aranea
знаток Eplan
знаток Eplan
Сообщения: 1136
Зарегистрирован: 21 сен 2012, 22:45
Имя: aranea
Благодарил (а): 30 раз
Поблагодарили: 165 раз

Создание попапа

Сообщение aranea »

у объекта Picture Window в который вы будете грузить типовой *.pdl есть свойство Tag Prefix
в него при вызове окна записываете начало тега, которое будет меняться, а своей типовой pdl используете только его окончание
полное имя тега: CV/DB_CV2_M21.io_Speed
Tag Prefix: CV/DB_CV2_M21
окончание: .io_Speed
Изображение

Автор темы
sparda210
здесь недавно
здесь недавно
Сообщения: 19
Зарегистрирован: 24 дек 2020, 12:11
Имя: Антон
Благодарил (а): 3 раза
Поблагодарили: 2 раза

Создание попапа

Сообщение sparda210 »

Спасибо за ответ, всё получилось!
По нажатию у меня выполняется следующий скрипт

Код: Выделить всё

SetTagPrefix(lpszPictureName,"POPUP", strcat(lpszObjectName, "."));	//Так как Tag Prefix должен оканчиваться точкой 
SetVisible(lpszPictureName,"POPUP",1);	//Открываю попап
А в самом Picture window я уже напрямую обращаюсь к окончанию тега без точки.

Код: Выделить всё

#define TAG_1 "STATE"

static double limitValue[5] = {1.00000000000000,2.00000000000000,3.00000000000000,6.00000000000000,7.00000000000000,};
static char* value[6] = {"ОТКЛЮЧЕН","АВАРИЯ","ДВИЖЕНИЕ","ОТКРЫТ","ЗАКРЫТ","??????",};
return value[Check_LimitsD (GetTagDouble (TAG_1), 6, &limitValue[0])];
Остался один вопрос, чисто из интереса, можно ли создать такой же попап но не для структурных тегов?

makesstr
осмотрелся
осмотрелся
Сообщения: 194
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 34 раза

Создание попапа

Сообщение makesstr »

sparda210 писал(а): 25 дек 2020, 11:37 Спасибо за ответ, всё получилось!
По нажатию у меня выполняется следующий скрипт

Код: Выделить всё

SetTagPrefix(lpszPictureName,"POPUP", strcat(lpszObjectName, "."));	//Так как Tag Prefix должен оканчиваться точкой 
SetVisible(lpszPictureName,"POPUP",1);	//Открываю попап
А в самом Picture window я уже напрямую обращаюсь к окончанию тега без точки.

Код: Выделить всё

#define TAG_1 "STATE"

static double limitValue[5] = {1.00000000000000,2.00000000000000,3.00000000000000,6.00000000000000,7.00000000000000,};
static char* value[6] = {"ОТКЛЮЧЕН","АВАРИЯ","ДВИЖЕНИЕ","ОТКРЫТ","ЗАКРЫТ","??????",};
return value[Check_LimitsD (GetTagDouble (TAG_1), 6, &limitValue[0])];
Остался один вопрос, чисто из интереса, можно ли создать такой же попап но не для структурных тегов?
Tag Prefix по применению связан с структурными тегами, все остальное танцы с бубном.
WinCC 7.4 SP1 Upd15, Step5.6

makesstr
осмотрелся
осмотрелся
Сообщения: 194
Зарегистрирован: 19 сен 2019, 10:09
Имя: Макс
Страна: Россия
город/регион: Славянск-на-Кубани
Благодарил (а): 5 раз
Поблагодарили: 34 раза

Создание попапа

Сообщение makesstr »

Если танцы все таки нужны, тогда лучше использовать фейсплейты и C-Script, там есть именно привязывание тега к свойству, а не привязывание значения тега к свойству.
WinCC 7.4 SP1 Upd15, Step5.6
Ответить

Вернуться в «WinCC»