Работаю в WinCC 6.2.
Сейчас столкнулся с неприятной проблемой: на каждом экране (picture, *.pdl) есть порядка 300-500 полей, у каждого из которых нужно корректировать имя тега в свойстве I/O и имя тега в экшене для цвета фона поля.
Графический редактор WinCC, мягко говоря, неудобен для такого количества манипуляций с объектами.
В связи с этим возник вопрос: можно ли как-то экспортировать из проекта экран для последующей его корректировки в какой-нибудь другой программе?
[?]: Экспорт-импорт экранов в WinCC
-
- Posts: 268
- Joined: Thu Feb 09, 2006 6:52 am
- Location: Russia
Re: [?]: Экспорт-импорт экранов в WinCC
А пипеткой не пробовал пользоваться? Очень помогает при монотонных изменений
Лучшего редактора для тегов WinCC не существует.
Лучшего редактора для тегов WinCC не существует.
-
- Posts: 26
- Joined: Wed Jul 12, 2006 11:01 am
Re: [?]: Экспорт-импорт экранов в WinCC
> А пипеткой не пробовал пользоваться? Очень помогает при монотонных изменений
Нет, пипетка здесь не катит. Эти поля можно тупым копированием размножить. Там задача такого типа:
ГРУППА ПОЛЕЙ 1
- экшн поля 1: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,10, "_ID")
- экшн поля 2: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,9, "_ID")
...
- экшн поля 10: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,1, "_ID")
ГРУППА ПОЛЕЙ 2
- экшн поля 1: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,5, "_ID")
- экшн поля 2: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,6, "_ID")
...
- экшн поля 10: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,15, "_ID")
И таких групп полей нанадцать штук.
> Лучшего редактора для тегов WinCC не существует.
Ты, наверное, хотел сказать "редактора экранов"? Мне лучше и не нужно. Мне бы экспорт экрана, например, в формате ASCII - а там я уже при помощи макроса всё сделаю. Вручную очень уныло это делать, хотя и возможно. Да и ошибок намного больше.
Нет, пипетка здесь не катит. Эти поля можно тупым копированием размножить. Там задача такого типа:
ГРУППА ПОЛЕЙ 1
- экшн поля 1: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,10, "_ID")
- экшн поля 2: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,9, "_ID")
...
- экшн поля 10: IndirectTagReadDWord("SPS_7_poz_", "SPS_7_Slider",0,1, "_ID")
ГРУППА ПОЛЕЙ 2
- экшн поля 1: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,5, "_ID")
- экшн поля 2: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,6, "_ID")
...
- экшн поля 10: IndirectTagReadDWord("SPS_18_poz_", "SPS_18_Slider",1,15, "_ID")
И таких групп полей нанадцать штук.
> Лучшего редактора для тегов WinCC не существует.
Ты, наверное, хотел сказать "редактора экранов"? Мне лучше и не нужно. Мне бы экспорт экрана, например, в формате ASCII - а там я уже при помощи макроса всё сделаю. Вручную очень уныло это делать, хотя и возможно. Да и ошибок намного больше.
-
- Posts: 82
- Joined: Tue Oct 24, 2006 12:01 pm
- Location: Ukraine
Re: [?]: Экспорт-импорт экранов в WinCC
А VBA не пробовали использовать?
Типа найти обьекты, просмотреть их свойства и события, заменить на нужные.
Типа найти обьекты, просмотреть их свойства и события, заменить на нужные.
-
- Posts: 26
- Joined: Wed Jul 12, 2006 11:01 am
Re: [?]: Экспорт-импорт экранов в WinCC
>А VBA не пробовали использовать?
Тут возникает два вопроса:
1. VBA запускается и работает в рантайме. Как после изменения сохранить сохранить новые значения свойств полей?
2. Пробовал цеплять к экрану макрос на VBA (давно и по другой причине), но почему-то нифига не заработало. Есть пример, как это правильно сделать?
Тут возникает два вопроса:
1. VBA запускается и работает в рантайме. Как после изменения сохранить сохранить новые значения свойств полей?
2. Пробовал цеплять к экрану макрос на VBA (давно и по другой причине), но почему-то нифига не заработало. Есть пример, как это правильно сделать?
-
- Posts: 82
- Joined: Tue Oct 24, 2006 12:01 pm
- Location: Ukraine
Re: [?]: Экспорт-импорт экранов в WinCC
VBS работает в runtime, а VBA в среде GraphicDesigner, то есть работает с PDL.
Кроме того VBA может добавлять меню и кнопки в сам GraphicDesigner.
Например я вставил меню+горячие клавиши для переключение между английским и русским языками.
В PDL генерирую tooltips для обьектов, пишу в свойства линий или труб скрипты, которые меняют их цвет в зависимости от состояния тега, и т.д.
Читайте доки по VBA.
Кроме того VBA может добавлять меню и кнопки в сам GraphicDesigner.
Например я вставил меню+горячие клавиши для переключение между английским и русским языками.
В PDL генерирую tooltips для обьектов, пишу в свойства линий или труб скрипты, которые меняют их цвет в зависимости от состояния тега, и т.д.
Читайте доки по VBA.
-
- Posts: 26
- Joined: Wed Jul 12, 2006 11:01 am
Re: [?]: Экспорт-импорт экранов в WinCC
А я думал, что VBA - это ещё один способ автоматизации рантайма. Спасибо за информацию.
Кстати, какие скрипты выполняются быстрее - ANSI C или VBS?
Кстати, какие скрипты выполняются быстрее - ANSI C или VBS?
-
- Posts: 82
- Joined: Tue Oct 24, 2006 12:01 pm
- Location: Ukraine
Re: [?]: Экспорт-импорт экранов в WinCC
Code: Select all
Кстати, какие скрипты выполняются быстрее - ANSI C или VBS?
Писали что VBS.