Written on: 29. 09. 2011 [20:57]
|
aleax
Alexey Bondarchuk
Topic creator
registered since: 27.01.2010
Posts: 73
|
Есть ли возможность прочитать значения автоматически создаваемых атрибутов из тела функции?
Пример, функция реализующая логированние события по переходу его флага в 1.
В библиотеке шаблонов создан шаблон:
if (st_alarm!=tmp_alarm && st_alarm==true)
{
Special.FLibSYS.messPut("/log/system", 1, "Зареєстровано аварію: "+name+" (код:"+word+")");
tmp_alarm=st_alarm;
}
else tmp_alarm=st_alarm;
где st_alarm — входная связь, флаг связанный с источником события
tmp_alarm — константа, хранит предыдущие состояние события
word — слово, в бите которого закодированы состояния (тут используется только для отладки)
name — дополнительная переменная, в которой хранится строка с названием события.
На основе этого шаблона создаваться параметры контроллера логического уровня, где задаются необходимые связи и заполняется переменная "name", хотя логичнее было бы использовать уже существующие атрибуты NAME, DESCR, SHIFR, вот только не понятно как к ним обратится из шаблона.
Пробовал получить доступ к полям объекта с помощью различных функций которые упоминались в описании java-калька, вроде this; this,name(); name(); и т.п. но по видимому на данный момент это невозможно (или я чего-то недопонимаю).
|
Written on: 30. 09. 2011 [09:11]
|
Maxim
Maxim Lisenko
Contributor
registered since: 18.08.2008
Posts: 141
|
Почему бы в этом же шаблоне не добавить параметры NAME, DESCR, SHIFR.., которые будут завязываться на соответствующие атрибуты параметра, использующего данный шаблон, и использовать их вместо "name"?
|
Written on: 30. 09. 2011 [10:16]
|
aleax
Alexey Bondarchuk
Topic creator
registered since: 27.01.2010
Posts: 73
|
"Maxim" wrote:
Почему бы в этом же шаблоне не добавить параметры NAME, DESCR, SHIFR.., которые будут завязываться на соответствующие атрибуты параметра, использующего данный шаблон, и использовать их вместо "name"?
Спасибо, именно то чего я и добивался.
Как-то сам не догадался, что если в шаблоне создать атрибут, который автоматически создается для контроллера, то они свяжутся. Думал что или будет конфликт имен, или один перекроет другой. еще раз спасибо!
|