Генератор отчетов labview с использованием...

19
DR. BOB DAVIDOV Генератор отчетов LabVIEW с использованием macros Цель работы: освоение правил построения отчетов в LabView с использованием macros. Задача работы: построение отчетов в LabView. Приборы и принадлежности: LabView c NI Report Generation Toolkit, Microsoft Office. ОБЩИЕ СВЕДЕНИЯ LibView имеет средства генерации pdf и HTML документов. Пакет NI Report Generation Toolkit обладает следующими возможностями. Создание произвольных отчетов с помощью экспресс-функций Microsoft Office Report Express VI Примеры и заготовки шаблонов Программное создание и редактирование отчетов в Microsoft Word и Excel Отправка отчетов по электронной почте и выполнение макросов Возможности вставки, форматирования, редактирования текста, таблиц, изображений и графиков Шаблоны Создание больших отчетов со сложным форматированием процесс, занимающий много времени. Лучший способ увеличить производительность это создать шаблон отчета, содержащий компоненты, которые являются общими для всех отчетов и поля, которые будут заполняться данными. Word и Excel, предоставляют различные способы для вставки пустых полей в документы. В Word, самый простой путь задать пустые поля, которые будут заполняться данными это использовать закладки. В качестве пустых полей в Excel используются именованные диапазоны. Создание собственных функций Инструменты для создания отчетов содержат функции, которые можно использовать для вызова макросов на Visual Basic Applications непосредственно из LabVIEW. Эту возможность можно использовать для того, чтобы создать собственные функции управления отчетом. Таблица. Типы отчетов и способы их распространения. Standard HTML Word Excel Print Да - Да Да Save - Да Да Да Email - - Да Да Template - - Да Да

Upload: others

Post on 18-Jul-2020

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

DR. BOB DAVIDOV

Генератор отчетов LabVIEW с использованием macros

Цель работы: освоение правил построения отчетов в LabView с использованием macros.

Задача работы: построение отчетов в LabView.

Приборы и принадлежности: LabView c NI Report Generation Toolkit, Microsoft Office.

ОБЩИЕ СВЕДЕНИЯ

LibView имеет средства генерации pdf и HTML документов.

Пакет NI Report Generation Toolkit обладает следующими возможностями. • Создание произвольных отчетов с помощью экспресс-функций Microsoft Office Report

Express VI • Примеры и заготовки шаблонов • Программное создание и редактирование отчетов в Microsoft Word и Excel • Отправка отчетов по электронной почте и выполнение макросов • Возможности вставки, форматирования, редактирования текста, таблиц, изображений

и графиков

Шаблоны

Создание больших отчетов со сложным форматированием – процесс, занимающий много времени. Лучший способ увеличить производительность – это создать шаблон отчета, содержащий компоненты, которые являются общими для всех отчетов и поля, которые будут заполняться данными.

Word и Excel, предоставляют различные способы для вставки пустых полей в документы. В Word, самый простой путь задать пустые поля, которые будут заполняться данными – это использовать закладки. В качестве пустых полей в Excel используются именованные диапазоны.

Создание собственных функций

Инструменты для создания отчетов содержат функции, которые можно использовать для вызова макросов на Visual Basic Applications непосредственно из LabVIEW. Эту возможность можно использовать для того, чтобы создать собственные функции управления отчетом.

Таблица. Типы отчетов и способы их распространения.

Standard HTML Word Excel

Print Да - Да Да

Save - Да Да Да

Email - - Да Да

Template - - Да Да

Page 2: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Во всех четырех типах отчетов можно использовать команды:

• Вставить текст • Вставить таблицы • Вставить изображение лицевой панели, элементов управления, рисунков из файлов • Вставить гиперссылку • Определить различные параметры слоев (заголовок, шрифт, ориентацию и т.п.)

Команды следующего списка могут пригодиться для управления выводом данных.

\a control-g, C-g \b backspace, <BS>, C-h \t tab, <TAB>, C-i \n newline, C-j \v vertical tab, C-k \f formfeed character, C-l \r carriage return, <RET>, C-m \e escape character, <ESC>, C-[ \s space character, <SPC> \\ backslash character, \ \d delete character, <DEL>

Рис. 1. Пример включения команды перевода строки \n в строковую переменную.

ПРИМЕРЫ СОЗДАНИЯ PDF И HTML ДОКУМЕНТОВ.

Примеры генерации pdf и HTML документов содержатся в следующих папках.

Рис. 2. Примеры генерации pdf и HTML документов.

Библиотека HTML.llb имеет два примера: HTML Report.vi и Sample Test Report.vi

Рис. 3. Содержимое библиотеки HTML.llb

Page 3: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 4. Результат HTML Report.vi

Рис. 5. Результат Sample Test Report.vi

Рис. 6. Содержимое библиотеки TextReport.llb

Page 4: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 7. Результат Text Report.vi

Рис. 8. Передняя панель и результат PrintControlReport.vi

Рис. 9 Содержимое библиотеки DIAdem Report Express VI.llb. Внимание: Для выполнения этих примеров требуются NI DIAdem 9.1 Service Pack 2 (или более поздняя версия) и Adobe Acrobat Reader. Можно переконфигурировать DIAdem Report Express VI на "Принтер" или

"HTML" печать если Acrobat Reader не установлен.

Page 5: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

ПРИМЕРЫ СОЗДАНИЯ WORD И EXCEL ДОКУМЕНТОВ.

Примеры пакета NI Report Generation Toolkit можно найти в следующей папке.

Рис. 10. Папка примеров NI Report Generation Toolkit создания WORD и EXCEL документов.

XY Graph Template.doc

Shock Absorber Report Template.doc

Sound Power Test Report Template.doc

Excel Template.xls

Рис. 11. Примеры шаблонов “Template” для заполнения данными LabView.

Page 6: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 12. Содержимое библиотеки Excel Reports.llb

Следующий пример Conditionally Formatted Spreadsheet.vi создает новый xls документ, вставляет в него числовую таблицу и вызывает Excel Set Cell Format VI для заполнения таблицы числами. Числа менее 0.5 отображаются красным цветом, а числа, превышающие 0.5, – голубым.

Рис. 13. Блок диаграмма и выходной файл примера Conditionally Formatted Spreadsheet.vi

Page 7: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 14. Передняя панель, блок-диаграмма и выходной файл примера Generate Report From Template (Excel).vi

Рис. 15. Блок диаграмма и выходной файл примера Insert Formulas in Spreadsheet.vi. Этот пример показывает как вставлять формулы в worksheet для анализа данных.

Page 8: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 16. Передняя панель, блок-диаграмма и выходной файл примера Sample Report (Excel).vi

Page 9: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 17. Содержимое библиотеки MSGraph Reports.llb

Рис. 18. Передняя панель, блок-диаграмма и выходной файл примера Bar Graph (Excel).vi

Page 10: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 19. Блок-диаграмма и выходной файл примера Bar Graph (Word).vi. Пример демонстрирует как вставить график в Word документ и установить значение формата

процент (%).

Temperature variations

0.00

5.00

10.00

15.00

20.00

Jan

Feb

Mar

ch AprM

ay

temp (c)

X

Y

Z

0.00

2.00

4.00

6.00

8.00

10.00

12.00

14.00

16.00

18.00

20.00

Jan Feb March Apr May

temp (c)

X

Y

Z

Column Graph (Excel).vi, Column Graph (Word).vi

Page 11: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

-1.5

-1

-0.5

0

0.5

1

1.5

0 14 28 42 56 70 84 98

data 1

data 2

-1.5

-1

-0.5

0

0.5

1

1.5

0 13 26 39 52 65 78 91

data 1

data 2

Line Graph (Excel).vi, Line Graph (Word).vi

array[0]

array[1]

array[2]

array[3]

array[0]

array[1]

array[2]

array[3]

Pie Graph (Excel).vi, Pie Graph (Word).vi

0.00

0.20

0.40

0.60

0.80

1.00

1.20

9:03:11 9:03:11 9:03:11 9:03:11 9:03:11 9:03:11

data 1

data 2

0.00

0.20

0.40

0.60

0.80

1.00

1.20

9:04:31

9:04:

31

9:04:

31

9:04:

31

9:04

:31

9:04

:31

data 1

data 2

Time-stamped Line Graph (Excel).vi, Time-stamped Line Graph (Word).vi

-1.5

-1.0

-0.5

0.0

0.5

1.0

1.5

-1.5 -1.0 -0.5 0.0 0.5 1.0 1.5

-1.5

-1.0

-0.5

0.0

0.5

1.0

1.5

-1.5 -1.0 -0.5 0.0 0.5 1.0 1.5

XY Graph (Excel).vi, XY Graph (Word).vi

Рис. 20. Примеры выходных файлов.

Page 12: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 21. Содержимое библиотеки Shock Absorber Performance Report.llb

Рис. 22. Передняя панель, блок-диаграмма и выходной файл примера Shock Absorber Performance Report.vi

Page 13: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 23. Передняя панель и блок-диаграмма примера Simulated Data.vi

Рис. 24. Содержимое библиотеки Word Reports.llb

Рис. 25. Выходной файл примера Conditionally Formatted Word Table.vi

Page 14: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 26. Выходной файл примера Generate Report From Template (Word).vi

Рис. 27. Многостраничный выходной файл примера Multipage report with index.vi

ПОДКЛЮЧЕНИЕ MACROS К ДОКУМЕНТУ MICROSOFT OFFICE.

Пример подключения macros Normal.NewMacros.Deleemptylines к шаблону..\Report\ Template.doc

1. Откройте ..\Report\ Template.doc

Page 15: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

2. Нажмите <Alt>/<F11>

3. В открывшемся окне переименуйте ThisDocument на NewMacros как показано ниже.

4. Дважды щёлкните по

5. Вставьте в новое окно следующий macros:

Page 16: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Sub Deleemptylines() Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = " p̂ p̂" .Replacement.Text = " p̂" .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchByte = False .MatchAllWordForms = False .MatchSoundsLike = False .MatchWildcards = False .MatchFuzzy = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub

6. Сохраните macros:

7. Закройте окно.

8. Проверьте что Normal.NewMacros.Deleemptylines в списке macros, для этого

Page 17: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

8.1. Откройте ..\Report\ Template.doc > Tools > Customize >

затем откройте .

8.2. Убедитесь, что Normal.NewMacros.Deleemptylines существует.

9. Убедитесь, что macros удаляет пустые строки. Для этого введите пустые строки в шаблон и запустите Normal.NewMacros.Deleemptylines macros.

10. Включите в генератор отчета LabView вызов макроса

11. Запустите генератор отчета и проверьте как он заполняет шаблон и убирает пустые строки.

Задание 1. Разработать генератор отчета в формате Word документа.

1. Используя представленные выше сведения, создайте шаблон документа с расширением doc, например:

Рис. 28. Пример верхней и нижней частей шаблона doc.

2. Разработайте в LabView блок-схему генерации данных и заполнения шаблона, например:

Page 18: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 29. Пример фрагментов блок-схемы заполнения шаблона doc.

Page 19: Генератор отчетов LabVIEW с использованием macrosportalnp.ru/wp-content/uploads/2013/09/17.01... · Рис. 9 Содержимое библиотеки

Рис. 30. Пример шаблона doc заполненного данными модели LabView в автоматическом режиме.

3. Подключите macros для удаления пустых к шаблону doc. Пример макроса удаления пустых строк и его подключение к шаблону описаны выше - в разделе “ОБЩИЕ СВЕДЕНИЯ: ПОДКЛЮЧЕНИЕ MACROS …”.

4. Включите вызов macros для удаления пустых строк в блок-схему LabView.

5. Проверьте работу генератора отчета.

КОНТРОЛЬНЫЕ ВОПРОСЫ

1. В каких случаях целесообразно создавать отчеты в автоматическом режиме?

2. Какие преимущества может дать использование Macros при создании отчетов? БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. NI справочная информация.