EnglishУкраїнськаmRussian
Login/New
Topic with many replies

Преобразование форматов


Author Message
Written on: 14. 10. 2010 [07:55]
almaz
Almaz Karimov
Contributor
registered since: 25.09.2008
Posts: 516
Может вот эти описания помогут:
http://strannik-work.blogspot.com/2009/12/blog-post_24.html
http://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%80%D1%8F%D0%B4%D0%BE%D0%BA_%D0%B1%D0%B0%D0%B9%D1%82%D0%BE%D0%B2

[This article was edited 1 times, at last 14.10.2010 at 08:03.]

21 век - век повсеместной автоматизации. Главное - во благо всем людям.
Written on: 21. 10. 2010 [22:01]
Boatswain
Сергій Миколайович
Topic creator
registered since: 23.09.2010
Posts: 22
Спасибо всем за участие. Решение задачи скрывалось под форматом littl-endian, его суть експонента идет в конце 8-ми байтного числа. Ключевым является перестановка"старший байт по младшему адресу". Мантиса получается в виде 1+1/2**n, где n-признак порядкового номера единицы в посылке. Например: 1010 представлено как M=1+1/2 +1/8. Прядок показывает место расположения запятой в мантисе.
новые вопросы:
1. Где найти описание на функцию vFormat(prmF,\"fs\")
2. Где найти конкретную процедуру формирования документов (часовых отчетов). Попытки использовать процедуры из Демо-версии результата не дали, а подробного описания нет.
Written on: 22. 10. 2010 [09:01]
Maxim
Maxim Lisenko
Contributor
registered since: 18.08.2008
Posts: 141
Что касается второго вопроса, то Вы невнимательно смотрели в Демо. В библиотеке виджетов "Документы" есть достаточно много примеров отчетов, в том чисое и среднечасовых значений. Во вкладке "Атрибуты" документа (виджет "doc") есть поле "Шаблон", вот там и находится процедура. Кроме того есть еще процедура на JavalikeCalc.JavaScript для каждого документа.
Вообще, почитать о примитиве Document можно тут: http://wiki.oscada.org/Doc/VCAEngine?v=fzn#h668-20 .

[This article was edited 2 times, at last 22.10.2010 at 09:05.]
Written on: 22. 10. 2010 [11:17]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Boatswain" wrote:

1. Где найти описание на функцию vFormat(prmF,\"fs\")

Нет такой уже, да и небыло. Достали наверное из первого прототипа шаблона документа.

Learn, learn and learn better than work, work and work.
Written on: 17. 11. 2010 [23:37]
Boatswain
Сергій Миколайович
Topic creator
registered since: 23.09.2010
Posts: 22
Превзошел сам себя. Обновился до версии 0.7.0. и много других телодвижений. Результата по прежнему нет. От системы не могу добиться итоговой таблицы. Накопились вопросы
1. Специальные функции\Тестовые системы OpenSCADA\Архивы значений\Окно "Исполнить"
непонятно какой указывать адрес архива значений, при наличии нескольких архивов ( секунда, час, сутки)
Пример sub_DAQ.mod_JavaLikeCalc.cntr_K1.prm_K1P1.FSArch.W1h_DW1 дает значение "Пусто", хотя архив существует и в значениях архива параметр присутствует и отображается в таблице.
строка "период значений (мкс)" - какое значение необходимо устанавливать в это окно, и какой размерности.
2. Специальные функции\Тестовые системы OpenSCADA\Атрибут параметра\Окно "Исполнить"
При заполнении адреса представленной строкой "sub_DAQ.mod_JavaLikeCalc.cntr_K1.prm_K1P1.FSArch.W1h_DW1" выдает сообщение элемент "sub_DAQ" отсутствует или отключен.
в случае написания другим образом "sub_DAQ/mod_JavaLikeCalc/cntr_K1/prm_K1P1/FSArch/W1h_DW1" выдает сообщение элемент "W1h_DW1" отсутствует или отключен.
3. Документы\Атрибуты\Шаблоны
docRept="86400" ( 86400 число секунд в сутках). Меня интересует, что означает собственно процедура docRept.
Written on: 17. 11. 2010 [23:49]
Boatswain
Сергій Миколайович
Topic creator
registered since: 23.09.2010
Posts: 22
С вопросом №3 разобрался. Тег docRept="значение в секундах" для смещения времени в атрибуте "rTime"
Written on: 18. 11. 2010 [08:50]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Boatswain" wrote:

1. Специальные функции\Тестовые системы OpenSCADA\Архивы значений\Окно "Исполнить"
непонятно какой указывать адрес архива значений, при наличии нескольких архивов ( секунда, час, сутки)
Пример sub_DAQ.mod_JavaLikeCalc.cntr_K1.prm_K1P1.FSArch.W1h_DW1 дает значение "Пусто", хотя архив существует и в значениях архива параметр присутствует и отображается в таблице.
строка "период значений (мкс)" - какое значение необходимо устанавливать в это окно, и какой размерности.

Никак не указывается. Это тестовая процедура, а не рабочая и для неё создаётся специальный архив с обработкой в одном архиваторе, периодичность значений которого и указывается.

"Boatswain" wrote:

2. Специальные функции\Тестовые системы OpenSCADA\Атрибут параметра\Окно "Исполнить"
При заполнении адреса представленной строкой "sub_DAQ.mod_JavaLikeCalc.cntr_K1.prm_K1P1.FSArch.W1h_DW1" выдает сообщение элемент "sub_DAQ" отсутствует или отключен.
в случае написания другим образом "sub_DAQ/mod_JavaLikeCalc/cntr_K1/prm_K1P1/FSArch/W1h_DW1" выдает сообщение элемент "W1h_DW1" отсутствует или отключен.

Адрес указывается так: "LogicLev.experiment.F3.var".

И вообще, примеры вызова тестовых процедур есть в демонстрационном конфиге, раз уж вы их, не понятно зачем, запускаете.

Learn, learn and learn better than work, work and work.
Written on: 18. 11. 2010 [19:50]
Boatswain
Сергій Миколайович
Topic creator
registered since: 23.09.2010
Posts: 22
Роман, я инженер поэтому мотивирую цифрами и фактами, а мотивации предлагаю оставить для психологов.
Основная проблема при написании тех.документации состоит в том, что пишущий документ пытается образ описать словами, которые изначально по информативности меньше образа. Читающий документацию пытается из слов сформировать образ. Естественно образы не совпадают. Единственный метод сближения образов - это описать его другими словами. Естественно читая openscada_ru раздел 3.7.8 (стр. 389-402), изменить сформированный образ я не могу.
Что бы я ни делал процедура используемая при формировании таблицы для отчетов <?dp<procedure>?> не работает.
Пример: шаблон документов
<body .....
.
.
<tr><td><?dp r=prm1_nm ?></td><td><?dp r=prm1_val ?></td></tr>
.
.
.../body>
Переменные описал в Box, и там же в системе SuperCalc присвоил указанным переменным значения.
Результата нет. Данные в таблице не отобразились (ячейки остались пустыми). ГДЕ ОШИБКА.
Это единственное место на котором, я толкусь уже третий месяц. Неужели больше никто не сталкивался с подобной проблемой.
Кто ее решил отзавитесь.
Written on: 19. 11. 2010 [09:00]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Boatswain" wrote:

Роман, я инженер поэтому мотивирую цифрами и фактами, а мотивации предлагаю оставить для психологов.

Вы объясните зачем Вам тестовые процедуры запускать!

"Boatswain" wrote:

Основная проблема при написании тех.документации состоит в том, что пишущий документ пытается образ описать словами, которые изначально по информативности меньше образа. Читающий документацию пытается из слов сформировать образ. Естественно образы не совпадают. Единственный метод сближения образов - это описать его другими словами. Естественно читая openscada_ru раздел 3.7.8 (стр. 389-402), изменить сформированный образ я не могу.

Проблема В том, что приходят некие пользователи и считают, что им тут разработчики должны!
Для тех кому тут должны читать это http://oscada.org/ru/razrabotka/pomoshch и это http://oscada.org/ru/uslugi

"Boatswain" wrote:

Что бы я ни делал процедура используемая при формировании таблицы для отчетов <?dp<procedure>?> не работает.

Кто ее решил отзавитесь.

У меня всё работает и нет никаких проблем. Если лично у Вас они есть то Вам сюда http://oscada.org/ru/uslugi и не нужно надеятся, что на форуме сообщества лично Ваши проблемы кто-то должен Вам решать. Должен и обязан это всегда было и будет за деньги!

Learn, learn and learn better than work, work and work.
Written on: 20. 11. 2010 [19:58]
roman
Roman Savochenko
Moderator
Contributor
Developer
registered since: 12.12.2007
Posts: 3750
"Boatswain" wrote:

<tr><td><?dp r=prm1_nm ?></td><td><?dp r=prm1_val ?></td></tr>
/body>

А чего оно должно?
Это код "r=prm1_nm" вообще не корректен. Для появления значения оно должно быть возвращено через "return" или "rez="
Про "rez" в документации написано следующее:
rez - Атрибут результата исполнения процедуры, содержимое которого помещается в дерево документа.

И завершаться строка кода должна всегда символом ';'.

P.S. Собственно я понял откуда вы таких примеров набрались. На рисунка 3.8.7.a подобное изображено. Но это ни разу не пример, а концепция. Однако поправлю.

Learn, learn and learn better than work, work and work.



3364