MS Visio   Обзор графических пакетов 3GL   Компьютерная графика к экономической информатике   к 4GL - визуальному программированию

Поиск решения

В Microsoft Visio 2002 комбинация образов и программ, моделирующих тот или иной проект, называется визуальным решением (Visio solution). Подобное решение обычно включает в себя трафареты (stencils) уже  готовых к использованию универсальных образов.

Вы можете просто «вытащить» и «сбросить» эти трафареты на страницу для создания чертежа (нет необходимости вырисовывать их самостоятельно).

Визуальные решения «немыслимы» так же без эскизов (templates). Имея при себе эскизы, вы получаете для нового чертежа такие образы, как параллелепипеды, цилиндры, рамки.

В случае, если вы достаточно продвинутый пользователь, то вы должны знать, что визуальные решения также могут создаваться на базе дополнительных Visio-приложений (Microsoft Visual Basic), которые помогут вам «построить» чертеж, проанализировать его, а также «переместить» информацию из чертежа во внешний источник данных.

Для того, чтобы неподготовленный пользователь имел возможность правильно использовать те или иные образы, в Microsoft Visio 2002 присутствует справочная служба Help и вспомогательные подсказки.

 

Моделирование

Visio 2000 позволяет проектировать диаграммы в процессе моделирования данных.

Модель

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

Реальный мир

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

Дизайн

Стиль оформления вашего решения должен соответствовать правильному процессу моделирования и точному его графическому отображению. Кроме того, ваш стиль должны уметь «читать» другие пользователи. Например, если вы планируете реорганизацию учреждения, то пространством модели станет учреждение, а служащие — объектами этого пространства. Подобная модель может представлять собой чертеж из прямоугольников и линий, визуализирующих иерархию подчинения.

В случае, если же вы создаете план перемещения вашей компании в новый офис, пространством модели станет здание, а объектами данного пространства станут служащие, мебель и оргтехника. Чертежом такой модели может быть план офиса, на котором указаны рабочие места, мебель и оргтехника.

Совет: Старайтесь разрабатывать образы так, чтобы они были многоразовыми и многофункциональными.

Инструмент для создания модели

Программа Visio является великолепным инструментом для создания модели. С его помощью вы можете не только разместить объекты в пространстве, но и поэтапно развивать соответствующую модель вашего будущего решения. Например:

«Извлекаем» данные из модели

Чертеж Visio — это специфический взгляд на модель, а не конечный продукт. Решение Visio наиболее ценно тогда, когда рисунок изображает модель, из которой информация извлекается автоматически. Например, в процессе моделирования ваш чертеж может показывать все стадии процесса, но к нему можно добавить данные о стоимости каждой стадии.

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

Обоснование модели

Модели «подчиняются» правилам, которые, как раз, и диктуют объектам манеру их поведения. С другой стороны, чертеж тоже должен следовать определенным правилам — к примеру, структурная схема учреждения с частично перекрывающимися связями и прямоугольниками менее эффективна, чем та, где эти прямоугольники расположены последовательно, а соединительные линии их огибают.

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

Решение Visio может анализировать данные, извлеченные из чертежей, и проверять их на соответствие правилам определенной модели. Допустим, при реорганизации крупной компании в целом ряде отделов проводятся структурные изменения. Подотчетные структуры, описанные организационными схемами отделов, могут быть автоматически выделены и при необходимости объединены в глобальную структуру для проверки на целостность. Таким образом решение Visio может гарантировать, что у одного исполнителя не будет двух непосредственных начальников, и что работники, не задействованные в новой организационной схеме, получат заблаговременное извещение об их увольнении.

 

Пример: Автоматизация продаж

Попробуем понять, как решение может моделировать реальный мир, извлекать информацию из модели и обосновывать ее. Для это рассмотрим пример, связанный с распродажей, которую устроила компания по разработке и распространению систем безопасности.

Обычно продавцы компании обзванивают потенциальных покупателей, выясняют их потребности и комплектуют систему безопасности из компонентов, указанных в каталоге фирмы (наряду с текущими ценами). Затем продавец рисует на бумаге схему предлагаемой системы, сообщает покупателю ее примерную стоимость и по возвращению в офис готовит формальную заявку на продажу. В офисе по его словам составляется конечная схема системы, уточняются цены и подсчитывается итоговая стоимость заказа, после чего оформляется документ с предложением. В случае, если клиент принимает указанные условия, то компания заключает с ним договор и далее выполняет монтаж системы. Традиционный подход работает нормально... если только все идет по плану. Но предположим, что в первоначальном эскизе продавец упустил какие-то важные компоненты, в результате чего блоки системы были неправильно соединены, а что-то вообще осталось неподключенным. Можно также предположить, что конечная схема не соответствует первоначальному эскизу, или каталог продавца вообще устарел, в связи с чем предлагаемая система безопасности включает в себя уже недоступные или более дорогие компоненты.

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

Решение Visio «способно» автоматизировать этот процесс. Продавец, установив на свой «ноутбук» приложение Visio и решение по автоматизации продаж, созванивается с потенциальным клиентом. При обсуждении требований к системе безопасности он создает предварительную схему, просто «перетаскивая» образы из стандартного трафарета и определяя их точное местоположение на чертеже Visio для данного участка монтажа.

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

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

Все это позволяет продавцу:

Решение Visio позволяет создавать заявки, контракты, заказы на монтаж и счета-фактуры не только в офисе торговой фирмы, но и непосредственно на дому у клиента. Для этого необходим лишь первоначальный эскиз у продавца. Решение Visio создает эти документы точнее и в меньший срок, сберегая время продавца для работы с другими покупателями.

 

Пример: Использование Visio-образов для создания решений

В решении Visio почти всегда присутствуют образы. Программа предлагает разработчику легкий доступ к сложному графическому пакету с набором чертежных инструментов. Кроме того, образы можно программировать с помощью формул в окне ShapeSheet.

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

А поскольку Visio-образы программируются формулами, вы можете сделать их похожими на объекты реального мира.

К примеру, образы, предназначенные для оборудования офиса, можно наделить «числовой» информацией и связать ее с именами сотрудников или фирмами поставщиков. В этом случае ваши образы станут мощными компонентами, чье уникальное поведение в более крупном решении будет определяться формулами, которые вы для них написали.

Сочетание объектов в рисунках

В случае, если вы привыкли думать о графике, как о «мешанине» векторов, то графика Visio «даст» вам новую точку зрения.

Visio-образы параметричны. Это означает, что любой Visio-образ может устанавливать свою геометрию и остальные атрибуты по величине определенных параметров — одни определяются инструментальным набором Visio, другие — самим разработчиком образа. Вместо фиксированной геометрии, основанной на кодировании X, Y координат, геометрия образа определяется формулами, которые динамически пересчитываются в процессе того, как пользователь манипулирует этим образом, а вместо вычерчивания линий вы пользуетесь «умными» объектами и с их помощью создаете желаемый чертеж.

К примеру, в образе, где длина болта, длина резьбы и диаметр болта являются параметрами, которые регулируются формулами. Величины диаметра и толщины головки болта «извлекаются» из параметров. В практическом использовании данные параметры не зависят друг от друга. Пользователь может устанавливать их, перемещая регулировки выбора для изменений длины и диаметра болта или контрольный указатель для изменения длины резьбы. Кроме того, программа может вносить коррективы о возможных размерах с помощью цифровой информации из базы данных той фирмы, которая производит болты.

Образы в виде компонентов

Как процедура определяет функциональность программы и облегчает ее использование, так и Visio-образы определяют все то, что происходит на странице чертежа.

Давайте рассмотрим Visio-образ в виде компонента, чье устанавливаемое по умолчанию поведение диктуется инструментальным набором, а уникальное поведение задается написанными вами формулами.

Решение редко состоит из одного единственного образа. Чаще для поддержки того или иного чертежа вы разрабатываете целый пакет образов, а затем комплектуете из них шаблоны в трафарете Visio. Шаблон — это образ в трафарете, который вы можете использовать для создания примеров, или это образы, основанные на шаблоне. Примеры наследуют большую часть своих характеристик из шаблона. Пользователи (или ваши программы) могут «перетаскивать» шаблоны из трафарета и «опускать» их на чертеж Visio. Трафарет облегчает применение изготовленных вами образов — одни и те же образы могут быть использованы инженером (для воссоздания конфигурации продукта), продавцом (для демонстрации клиентам того, что они покупают) и дизайнером (для оформления каталога вашей линии продукции).

В первый раз, когда пользователь «сбрасывает» шаблон на страницу чертежа, приложение Visio автоматически создает на странице пример шаблона и одновременно добавляет копию этого шаблона (шаблон документа) в трафарет чертежа. Трафарет документа находится в файле чертежа. Благодаря этого мы имеем два больших преимущества:

В случае, если пользователь захочет изменить характеристики всех своих примеров в чертеже, он может отредактировать шаблон в документальном трафарете.

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

На уровне примера вы можете игнорировать любую формулу, но глобальные изменения будут влиять на примеры через шаблон документа.

Чертеж становится перемещаемым из-за того, что он содержит копии шаблонов. Это означает, что вам больше не нужны те трафареты, которые первоначально поддерживали ваши шаблоны. Для чертежа необходима лишь копия приложения Visio.

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

Для того, чтобы помочь пользователю создавать чертежи по вашим шаблонам, вы должны изготовить эскиз. Эскиз может снабжать страницу чертежа готовыми образами, но, что более важно, он обеспечивает чертеж однородной сеткой и шкалой, а также особыми стилями и уровнями. Кроме того, эскиз может открывать один или несколько трафаретов. Когда пользователь делает чертеж, основанный на эскизе, пакет Visio открывает трафареты и создает файл нового чертежа, копируя в него стили и другие свойства эскиза. Так же как и в случае с трафаретом, пользователь, создав однажды чертеж, уже больше не нуждается в эскизе.

 

Технология SmartShapes

Используя технологию Visio SmartShapes, вы можете разрабатывать образы, которые будут вести себя как изображаемые ими объекты реального мира. Это означает, что образы могут моделировать характеристики, которые вы считаете важными и значимыми для создаваемых чертежей и диаграмм. Вы можете сделать это с помощью формул, настройка которых подчиняет образы установленным правилам, нормам или принципам, применимым для отображаемых объектов. Каждый Visio-образ имеет свое окно ShapeSheet, которое определяет уникальные свойства и поведение данного образа.

Давайте считать окно ShapeSheet особым окном свойств данного образа, в котором каждое свойство устанавливается числом или формулой. Когда пользователь работает с образом, эти формулы динамически пересчитываются. Вы можете просмотреть или отредактировать формулы образа в окне ShapeSheet. Многие свойства, которые обычно требовали внешнего программирования, теперь можно контролировать с помощью окна ShapeSheet. Например, вы добавляете в меню образа несколько пунктов и делаете это, настраивая формулы для образа в окне ShapeSheet. Формулы могут контролировать и другие атрибуты образа. Например:

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

К примеру, заостренная фигура является классическим примером по управлению Visio-образами с помощью формул. Формулы для этого образа не зависят от того, каким инструментом Visio была создана сам образ (речь идет о пропорциональном изменении размеров при вертикальной или горизонтальной растяжке образа). Когда данный образ меняет горизонтадьные размеры, его текущие формулы позволяют уменьшать и расширять образ, не воздействуя на его «наконечник».

Автоматизация

Для некоторых решений недостаточно просто наличия образов, трафаретов и эскизов. Например, вам могут понадобиться чертежи, основанные на ежедневно изменяемых данных, или образы для развивающихся структур (к примеру, какого-то строительства), которые приходится разрабатывать снова и снова. Допустим, вы работаете на пользователей, которым нужны чертежи, но которые не хотят осваивать пакет Visio или вы используете их чертежи в качестве источника данных для особых целей. Подобные задачи можно автоматизировать, применяя так называемый режим Automation. При этом функциональность инструментов Visio вносится в ваше решение простым использованием его объектов.

В случае, если вам знаком Microsoft Visual Basic for Applications (VBA), то вы можете пользоваться объектами все время, к примеру, такими органами управления, как командные кнопки, формы пользователя, базы данных и поля. Благодаря режиму автоматизации вам дается возможность применения и других объектов приложений. Чертежи, шаблоны, образы, а также меню и инструменты Visio — все это может стать компонентами ваших программ. Вы либо запускаете программу в Visio, либо раскрываете приложение Visio, после чего добираетесь до нужных вам объектов.

Microsoft Visio 2002 содержит объекты VBA, поэтому при написании программ вам не нужно использовать отдельную разработанную рабочую среду. Однако программы для управления инструментальными набором Visio можно писать на любом языке, лишь бы этот язык поддерживал режим Automation в качестве контроллера. Большая часть примеров данного руководства написана на VBA, но указанные принципы применимы к любому языку программирования.

Automation

Automation — это средство, благодаря которому программа пишется на VBA, Microsoft Visual Basic, C/C++ или на другом языке программирования, позволяющем режиму автоматизации вовлекать функциональность приложения (к примеру, приложения Visio) простым использованием его объектов. В режиме Automation приложение, «поставляющее» объекты (иногда его называют приложением провайдера или сервером автоматизации), делает эти объекты доступными для других приложений, а также определяет те свойства и методы, которые их и контролируют (так называемая экспозиция объектов.)

Приложение провайдера и приложение контроллера

Приложение, которое использует объекты (к примеру, ваша программа, иногда называемая приложением контроллера или клиентом режима автоматизации), создает примеры объектов, а затем устанавливает и использует их свойства и методы с тем, чтобы заставить объекты «служить» приложению.

Приложение провайдера и приложение контроллера взаимодействуют между собой благодаря созданию функциональных запросов библиотек OLE, которые устанавливаются одновременно с установкой любого приложения, поддерживающего OLE.

Доступ к объектам приложения

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

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

Примеры Visio

Visio-объекты располагаются в примере Visio — программа Microsoft Visual Basic for Applications (VBA) запускается в примере приложения Visio и дает вам доступ к необходимым объектам. Внешняя программа запускается вне примера программы Visio, поэтому она должна задействовать саму программу Visio или обеспечить доступ к тому примеру Visio, который уже запущен в действие. После этого программа Visio может иметь дело с необходимыми ей объектами Visio. Большинство объектов в объектной модели Visio соответствуют предметам, которые вы можете просмотреть и выбрать в примере Visio.

В частности, объект Page представляет собой страницу чертежа, а объект Shape — образ на чертеже. Формулы образа представлены объектами Cell.

Мониторинг событий и подсчет значений

Для того, чтобы понять, как решение Visio использует автоматизацию для доступа к Visio-объектам, мы рассмотрим решение, которое осуществляет проверку событий.

Оно запускается в действие в тот момент, когда образы добавляются к чертежу или удаляются из него. Рассматриваемое нами решение ведет подсчет энергии, которая расходуется каждым представленным образом, и следит за тем, чтобы суммарная величина не превышала установленной границы.

Пример начинается с процедуры инициализации, которая проверяет все образы на существующем чертеже. Предельное значение — это текст образа Limit. Этот текст пользователь может ввести в Limit shape на чертеже.

Функция Val VBA конвертирует текст в значение Double, которое может быть использовано для последующих вычислений. Решение продолжает подсчет в определенной пользователем ячейке, названной PC (Энергетическое Потребление), в образе с именем Current (Текущее).

Каждый образ представляет собой устройство, потребляющее энергию. Величина расхода энергии описывается выбранным свойством Power Consumption, к которому программа имеет доступ через свойство Cells объекта Shape. Программа проходит по всему набору Shape объекта Page, а процедура InitWith уже просто проверяет величину расхода энергии у каждого образа, который имеет свойство PowerConsumption. В случае, если полный расход энергии достигает предельной величины, назначенной для данного чертежа, то решение предупреждает об этом пользователя цветовым сигналом. Выполняется это так: величине Color cell в позиции Character Format из меню Limit shape (Char.Color), присваивается значение 2, при котором текст образа окрашивается в красный цвет.

Option Explicit

Private WithEvents thePage As Page

Private theLimit As Double

Private theCurrent As Cell

Public Sub InitWith(aPage As Page)

Dim i As Integer

Set thePage = aPage

theLimit = Val(aPage.Shapes(«Limit»).Text)

Set theCurrent = aPage.Shapes(«Current»).Cells(«User.PC»)

theCurrent.ResultlU = 0#

For i = 1 To aPage.Shapes.Count

With aPage.Shapes(i)

If .CellExists(«Prop.PowerConsumption», False) Then

theCurrent.Result(«») = theCurrent.Result(«») +

.Cells(«prop.PowerConsumption»).Result(«»)

If theCurrent.Result(«») > theLimit Then

aPage.Shapes(«Limit»).Cells(«Char.Color»).Result(«») = 2

End If

End If

End With

Next i

End Sub

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

Private Sub thePage_ShapeAdded(ByVal Shape As Visio.IVShape)

If Shape.CellExists(«Prop.PowerConsumption», False) Then

theCurrent.Result(«») = theCurrent.Result(«») + _

Shape.Cells(«prop.PowerConsumption»).Result(«»)

If theCurrent.Result(«») > theLimit Then

thePage.Shapes(«Limit»).Cells(«Char. Color»). Result(«») = 2

End If

End If ,

End Sub

Изъятие образа запускает событие BeforeShapeDelete. Хотя решение не может аннулировать изъятие, оно способно выполнять операции, которые требуют наличия данного образа до его действительного удаления с чертежа. Процедура следующего события вычитает из общей суммы величину расхода энергии удаляемого образа, а если изъятие образа приводит к падению расхода за установленный предел, то текст Limit shape окрашивается в черный цвет (0).

Private Sub thePage_BeforeShapeDelete(ByVal Shape As Visio.IVShape)

If Shape.CellExists(«Prop.PowerConsumption», False) Then

theCurrent.Result(«») = theCurrent.Result(«») - _

Shape.Cells(«prop.PowerConsumption»),Result(«»)

If theCurrent.Result(«») <= theLimit Then

thePage.Shapes(«Limit»).Cells(«Char.Color»),Result(«») = 0

End If

End If

End Sub

 

Планируем решения

Самый простой вид решения — это стандартный чертеж, с содержанием, которое поддерживается пакетом Microsoft Visio 2002, плюс созданные вами образы, трафареты и эскизы. Решение, включающее в себя так называемые drawing assistants (вспомогательные средства или add-ons), также имеет некоторое программное обеспечение, которое помогает пользователю готовить чертежи.

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

Планирование процесса разработки

Обычно для создания простых решений Visio, состоящих из стандартных образов, эскизов и небольших программ, достаточно одного разработчика.

Более сложные решения могут потребовать команду разработчиков, каждый из которых обладает особой квалификацией. Подобная группа может состоять из:

Как только такая команда разработчиков будет собрана, начинается следующий этап процесса разработки. Он включает в себя несколько пунктов:

Такой подход не только знакомит пользователя с разрабатываемым продуктом, но и улучшает само решение.

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

Начинайте разработку решения с создания необходимых образов и делайте их формулы как можно более функциональными.

Перед тем как начать работу с образами, вы должны знать:

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

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

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

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

Планируем эскизы

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

Эскиз может включать в себя стили и обеспечивать страницы чертежей однородной сеткой и измерительной системой.

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

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

Наделив решение эскизом, вы получаете несколько преимуществ:

Важно: Наличие кода VBA в эскизе упрощает файлы, необходимые для распространения вашего решения. С другой стороны, так как каждый документ, созданный из эскиза, получает копию соответствующего кода у вас могут возникнуть сложности при отладке дефектов, а также увеличится объем самого кода. Для большей гибкости вы можете установить код VBA в трафарете или в другом документе, «сопровождающем» ваше решение. Это облегчит дальнейшую модернизацию.

Автоматизация образов и эскизов

После разработки шаблонов и эскизов вы можете воспользоваться режимом автоматизации и завершить остальную часть решения. Хотя это, конечно, зависит от цели вашего решения и от контекста, в котором оно будет работать, тем не менее вы будете применять режим автоматизации для:

Помните, что образ может иметь формулы, которые изменяют размер и ориентацию самого образа, когда ваша программа перемещает или калибрует данный образ — так же, как если бы вы сами перемещали и калибровали его, используя мышь в окне Visio drawing.

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

 

Объединяем свои решения с базой данных

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

После отладки взаимодействия с базой данных решение может производить изменения с помощью:

Visio может определять указанные потребителем ячейки и связывать свойства выбранных ячеек с полями базы данных для простых решений или для создания прототипов более сложных решений. Для доступа к базам данных через ODBC (Open Database Connectivity) вы можете использовать библиотеку ОАО (Data Access Objects), поставляемую компанией Microsoft.

Другой подход к автоматизации

Вид программы, которую вам надо написать, зависит оттого, что вы пытаетесь сделать. Вы можете написать макрос VBA в самом документе Visio или другое приложение для контроллера автоматизации, или самостоятельную программу на языке Visual Basic или C/C++. Вы можете также написать особый тип динамически связанной библиотеки DLL, который запускается вместе с Visio и называется библиотекой Visio (VSL).

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

Автоматизация в решении Visio выполняется четырьмя основными способами. Вы можете создать:

С помощью так называемого «гибридного» подхода, который использует VBA в примере Visio при загрузке и работе серверов автоматизации (DLL или ЕХЕ файлы), созданных на других языках. «Гибридный» подход поддерживает широкий диапазон архитектур и выполняется внутри процесса, если сервер автоматизации создан в виде DLL. Тем не менее гибридный подход требует более точного и аккуратного дизайна системы.

MS Visio   Обзор графических пакетов 3GL   Компьютерная графика к экономической информатике   к 4GL - визуальному программированию

Знаете ли Вы, что такое "усталость света"?
Усталость света, анг. tired light - это явление потери энергии квантом электромагнитного излучения при прохождении космических расстояний, то же самое, что эффект красного смещения спектра далеких галактик, обнаруженный Эдвином Хабблом в 1926 г.
На самом деле кванты света, проходя миллиарды световых лет, отдают свою энергию эфиру, "пустому пространству", так как он является реальной физической средой - носителем электромагнитных колебаний с ненулевой вязкостью или трением, и, следовательно, колебания в этой среде должны затухать с расходом энергии на трение. Трение это чрезвычайно мало, а потому эффект "старения света" или "красное смещение Хаббла" обнаруживается лишь на межгалактических расстояниях.
Таким образом, свет далеких звезд не суммируется со светом ближних. Далекие звезды становятся красными, а совсем далекие уходят в радиодиапазон и перестают быть видимыми вообще. Это реально наблюдаемое явление астрономии глубокого космоса. Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМА

Форум Рыцари теории эфира


Рыцари теории эфира
 10.11.2021 - 12:37: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
10.11.2021 - 12:36: СОВЕСТЬ - Conscience -> РАСЧЕЛОВЕЧИВАНИЕ ЧЕЛОВЕКА. КОМУ ЭТО НАДО? - Карим_Хайдаров.
10.11.2021 - 12:36: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от д.м.н. Александра Алексеевича Редько - Карим_Хайдаров.
10.11.2021 - 12:35: ЭКОЛОГИЯ - Ecology -> Биологическая безопасность населения - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
10.11.2021 - 12:34: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ПРАВОСУДИЯ.НЕТ - Карим_Хайдаров.
10.11.2021 - 12:34: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вадима Глогера, США - Карим_Хайдаров.
10.11.2021 - 09:18: НОВЫЕ ТЕХНОЛОГИИ - New Technologies -> Волновая генетика Петра Гаряева, 5G-контроль и управление - Карим_Хайдаров.
10.11.2021 - 09:18: ЭКОЛОГИЯ - Ecology -> ЭКОЛОГИЯ ДЛЯ ВСЕХ - Карим_Хайдаров.
10.11.2021 - 09:16: ЭКОЛОГИЯ - Ecology -> ПРОБЛЕМЫ МЕДИЦИНЫ - Карим_Хайдаров.
10.11.2021 - 09:15: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Екатерины Коваленко - Карим_Хайдаров.
10.11.2021 - 09:13: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Вильгельма Варкентина - Карим_Хайдаров.
Bourabai Research - Технологии XXI века Bourabai Research Institution