Привязать разрядность к Custom properties

Системная платформа - продукт для комплексной автоматизации процессов предприятия от Wonderware.

Привязать разрядность к Custom properties

Сообщение Diogen » Пт фев 19, 2016 12:55 pm

Здравствуйте! В редакторе ArchestrA графики создал Text #, сделал в Custom properties переменную типа String и вот не знаю как ее привязать к моему Text'y. Есть ли возможность сделать, чтобы я из Maker'a мог для этой Custom properties ввести значение, например, ##.### и у меня в Text'e Archtstra # заменялась на ##.###, как такую привязку организовать?
Diogen
 
Сообщения: 353
Зарегистрирован: Чт мар 27, 2014 6:35 pm

Re: Привязать разрядность к Custom properties

Сообщение xonyx » Ср фев 24, 2016 4:47 pm

Если я правильно понял, то для отображения можно использовать функцию text(), где вторым аргументом задается метод отображения текста.
Например text(1.24,format) где format - custom properties, задавай какой хошь, например - "#.#". Как итог, будет отображено 1.2.
xonyx
 
Сообщения: 156
Зарегистрирован: Пн мар 14, 2011 5:20 am

Re: Привязать разрядность к Custom properties

Сообщение Diogen » Ср фев 24, 2016 5:34 pm

Сейчас детальнее попробую описать, перечитал сейчас и сам с трудом понял, что у форума спрашивал :D
В общем, в редакторе ArchestrA я делаю окошко отображения значения- прямоугольник а в центре его #, на который я повешал Value Display и привязал к Custom Properties. Теперь добавив этот символ на окно в Window Maker'e я могу привязать отображение какого-нибудь тега Maker'a к Custom Properties символа этого и увидеть значение тега в созданном мною окошке(ArchestrA Symbol). Так как теги в Maker'e нужно отображать разной разрядности- давление, например, три знака после запятой, а температуру один знак- то можно насоздавать несколько символов одинаковых, у которых разным будет только текст в прямоугольнике- для давления это будет #.###, а для температуры #.#. Но создавать кучу символов для отображения как то не хочется, потому что кажется мне, есть какой то способ в одном символе менять текст #.### на #.# как то более простым способом, например, привязав к Custom Properties.
Diogen
 
Сообщения: 353
Зарегистрирован: Чт мар 27, 2014 6:35 pm

Re: Привязать разрядность к Custom properties

Сообщение Генератор зла » Ср фев 24, 2016 5:47 pm

Всё это возможно. Но не помню как именно, ибо сделал у Заказчика за час-полтора и забыл (забил). Правда, условия были немного иными, но очень схожими.
Рассуждения вслух:
Под каждый шаблон представления сделать свой идентификатор (1 = #.#, 2 = #.##, 3 = #.###, ...) Ну и в самом символе на уровне скриптов формировать нужную шаблон-строку
Vita est dolor.
Генератор зла
 
Сообщения: 2860
Зарегистрирован: Вс янв 23, 2011 5:08 pm

Re: Привязать разрядность к Custom properties

Сообщение Diogen » Ср фев 24, 2016 7:00 pm

Ага, понятно. Чет про скрипты символа не подумал. Посмотрю.
Diogen
 
Сообщения: 353
Зарегистрирован: Чт мар 27, 2014 6:35 pm

Re: Привязать разрядность к Custom properties

Сообщение mp3corp » Ср фев 24, 2016 7:58 pm

Генератор зла писал(а):Всё это возможно. Но не помню как именно, ибо сделал у Заказчика за час-полтора и забыл (забил). Правда, условия были немного иными, но очень схожими.
Рассуждения вслух:
Под каждый шаблон представления сделать свой идентификатор (1 = #.#, 2 = #.##, 3 = #.###, ...) Ну и в самом символе на уровне скриптов формировать нужную шаблон-строку

Делал аналогично, через DataChange скрипт.
Код: Выделить всё
if me.EU == "МПа" then
   me.Format = 2;
else if me.EU == "кгс/см2" or me.EU == "кПа" or me.EU == "А" then
   me.Format = 1;
else if me.EU == "°C" or me.EU == "мм" or me.EU == "%" or me.EU == "мм/с" then
   me.Format = 0;
endif;endif;endif;

Примерное как то так было.
В самом шаблоне, уже проверяем какой формат используется и в зависимости от этого ставим различное количество "#.#".
mp3corp
 
Сообщения: 375
Зарегистрирован: Вт фев 22, 2011 4:47 am

Re: Привязать разрядность к Custom properties

Сообщение Diogen » Ср фев 24, 2016 9:32 pm

mp3corp писал(а):В самом шаблоне, уже проверяем какой формат используется и в зависимости от этого ставим различное количество "#.#".

А как вот это реализовать?
Diogen
 
Сообщения: 353
Зарегистрирован: Чт мар 27, 2014 6:35 pm

Re: Привязать разрядность к Custom properties

Сообщение mp3corp » Ср фев 24, 2016 11:06 pm

Ну как... заводите строковый UDA атрибут, в моем случае "EU", заполняете его значение при создании, далее в графике накладываете "#,#.#,#.##" друг на друга всем ставите анимацию Visibility и так далее... Есть переменная "Format", которая и определяет какие решетки должны быть видны. Вроде как то так должно быть.
mp3corp
 
Сообщения: 375
Зарегистрирован: Вт фев 22, 2011 4:47 am

Re: Привязать разрядность к Custom properties

Сообщение Diogen » Ср фев 24, 2016 11:16 pm

Ага, вот теперь все понял. А то до этого все думал по другому немного :) Всем спасибо!
Diogen
 
Сообщения: 353
Зарегистрирован: Чт мар 27, 2014 6:35 pm


Вернуться в Wonderware System Platform

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5