Как-то встретилась задача, в которой нужно было провести несколько измерений и собрать данные в отчет. А если ближе к теме, то рассчитать длину новогодних гирлянд для украшения дома. Причем для заказчика - это повторяющаяся задача, то есть желательно было ее автоматизировать.

На входе имеется фотография дома. Напрашивается решение - импортировать в Visio картинку, нарисовать на ней гирлянды и подсчитать длину.

Вот сделал утилитку для вывода отчета в виде таблицы из скрипта. Всегда этого не хватало.

Известно, что для автоматизации Visio можно использовать не только VBA и различные виды Add-On и Add-In, но и скрипты на js, vbs, python и т.д. Скрипты хороши тем, что им не нужны никакие инсталляторы, они не мешают безопасности Visio и не требует наличия в системе каких-либо дополнительных компонентов. Вот только с представлением данных небольшая проблема. Строку с результатом вывести легко. А если нужна табличка, то приходится выводить в файл, который потом нужно открывать в другом приложении.

Решил побороть эту проблему с помощью Internet Explorer. Раз уж он есть в любой Windows системе, пусть поработает. В результате получилась процедура, которая выводит произвольный массив в виде таблички.

 В интернете много информации. Но мусора еще больше. И отыскать ответ на нужный вопрос бывает очень даже нелегко. Сколько раз на форумах ведел фразу - "я даже не знаю, по каким словам это нужно гуглить". Поэтому наряду с поиском хотелось бы иметь некий каталог, иерархический указатель информации по нужному предмету. Проект такого указателя по Microsoft Visio вылился в Visio Navigator.

Может быть вы обращали внимание, что многие расширения Visio сопровождаются примерами отчетов, сделанных специально под эти расширения. Более двух десятков отчетов. И это неспроста. Отчет является эффективным средством для сбора информации из готового документа Visio. Практически не затрачивая дополнительных усилий, вы можете сформировать файл Excel или XML, содержащий выбранные данные. При этом доступны такие функции как отбор нужных шейпов, сортировка, группировка и консолидация данных. А так как определение отчета можно сохранять для последующего использования, можно заранее подготовить набор типовых отчетов, которые будут использоваться в вашей деятельности.