Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Знакомство с InfoPath


Практическая работа с Visual Studio.Net и Microsoft Office

ПРАВИЛА

Раздел правила существует для вновь подписавшихся на данную рассылку.

Статьи

Статьи служат для ознакомления подписчиков с технологиями программирования в программных средах Visual Studio.NET и Microsoft Office. В конце каждой из них стоит её звёздный рейтинг, так автор данной рассылки оценивает статью сразу по нескольким критериям, от одного до пяти звёзд.

Форум

Форум создан для обмена информацией по всему, что связано с системой программирования Visual Studio.NET и пакету программных продуктов Microsoft Office. Так же вы можете задавать свои вопросы и отвечать на чужие, объявлять о начале проектов, писать пожелания и предложения по улучшению выпусков, комментировать статьи и многое другое. Главное не выходите за рамки темы.

Ресурсы

Сюда я сбрасываю интернет ресурсы тех, кто не поленился и предварительно договорился об их опубликовании с автором этой рассылки, то есть со мной. Конечно иногда там будут выставляться просто понравившиеся мне адреса. Главное помните, что картинки слева на самом деле не просто украшение выпусков, а гиперссылки на сайт ресурса.

Статистика

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

Продолжаем работу с макросами...

Редактирование макроса в Macros IDE

Работа в Macros IDE аналогична работе в Visual Studio.NET. Многие комбинации клавиш работают и в Macros IDE. Редактор Macros IDE поддерживает функцию IntelliSense, а справочная система для макросов интегрирована в эту IDE.

Вы сразу же заметите одно отличие: все загруженные проекты макросов отображаются в окне Project Explorer. Visual Studio.NET поставляется с набором полезных макросов, Чтобы увидеть эти макросы, разверните проект Samples в окне Project Explorer среды Macros IDE.

Для каждого проекта макроса используется отдельное пространство памяти, поэтому, чтобы задействовать общие функциональные возможности в нескольких макросах или преимущества общего набора событий среды, объедините создаваемые макросы в один проект. Если вы хотите получить доступ к возможностям другого проекта макроса, просто скопируйте макросы, к которым хотите получить доступ, в свой проект, Например, вы можете скопировать модули из проекта Samples в свой проект, чтобы задействовать функциональность этих макросов.

Чтобы создать новый проект макроса, нужно запустить IDE Visual Studio.NET. Затем вы можете выбрать команду New Macro Project из контекстного меню окна Macro Explorer либо ввести команду Tools.NewMacroProject в окне Command Window, чтобы открыть диалоговое окно New Macro Project. Введите имяи местоположение файлов вашего проекта и щелкните ОК. Нажав комбинацию клавиш Alt+F11, вы откроете окно Macros IDE, где сможете работать с кодом нового проекта.

Взглянув на созданный проект макроса в окне Project Explorer, вы увидите, что по умолчанию в него был добавлен ряд возможностей. Папка References аналогична папке References в IDE Visual Studio.NET. Кроме того, в проект добавляются два новых модуля для выполнения макроса: EnvironmentEvents содержит сгенерированный код, который позволяет получить доступ к событиям IDE, а в Module1 вы будете писать свой код.

Практикум: переключение между IDE

Чтобы перейти из Macros IDE в IDE Visual Studio.NET, щелкните кнопку Visual Studio на панели инструментов Macros IDE. B Visual Studio.NET нет панели инструментов, на которой бы аналогичная кнопка выводилась по умолчанию, поэтому вам нужно добавить ее. Если вы планируете переключаться в Macros IDE таким способом. Для этого, щелкнув правой кнопкой панель инструментов IDE Visual Studio.NET, выберите команду Customize. На вкладке Commands найдите в категории Tools команду Macros IDE и перетащите ее на панель инструментов, из которой вы собираетесь ее использовать.

В Масros IDE есть такая же кнопка с изображением знака бесконечности. Это облегчает переключение между двумя IDE, когда вы работаете над макросами. Если вы будете разрабатывать много макросов, лучше всего применять машины с двумя мониторами, на один из которых выводится Macros IDE, a на другой - Visual Studio.NET.

Добавление ссылки на проект макроса слегка отличается от добавления ссылки на обычный проект Visual Basic.NET. В диалоговом окне Add Reference, используемом в Macros IDE Project Explorer, способа для добавления пользовательских сборок нет.

Чтобы добавить ссылку на вашу собственную сборку, нужно скопировать ее в папку C:\Program Fi!es\Microsoft Visual Studio.NET 2003\Common7\IDE\PublicAssemblies. После этого можно добавить ссылку на эту сборку из диалогового окна Add Reference. Используя сборки, вы можете писать функциональную часть макроса на любом языке, обращаясь затем к ней из простого макроса. Вы также можете писать сборки, вызывающие неуправляемый код, и сборки, действующие как обертки COM для доступа к функциональным возможностям СОМ из ваших макросов. Рассмотрим несколько примеров, построенных из нового проекта.

Простой макрос

Ранее было сказано про поведения команды File.NewFile в Visual Studio.NET. Некоторые программисты недовольны тем, что в диалоговом окне, отображаемом этой командой по умолчанию, для создания и открытия нового файла нужен ряд действий мышью или нажатие нескольких комбинаций клавиш. Решение очень простое: создайте макрос, выполняющий требуемые действия, и назначьте ему псевдоним в окне Command Window. Следующий код - это все, что нужно, для создания в IDE нового текстового файла:

Visual Basic.NET - Создание текстового файла

Примечание: Для того, чтобы макрос входящий в модуль можно было задействовать из Macro Explorer, имя модуля в Macro Explorer должно совпадать с программным именем модуля. К примеру, если в Macro Explorer модуль называется Module1, его нужно переименовать в NewFile, иначе код описанный выше, а именно функция NewTextFile не будет отображаться.

Как видите, макрос создан в модуле NewFile и содержит единственный метод NewTextFile. Единственная строка кода в этом макросе создает новый файл типа Text File в папке General диалогового окна New File. О методе NewFile, создающем новый текстовый файл, поговорим позже. Сейчас важно отметить, что у нас есть макрос, добавляющий нужные возможности к IDE. Чтобы создать этот макрос, было потрачено некоторое время, при этом нужно сделать макрос предельно простым.

Есть несколько способов обратиться к макросу, который вы хотите выполнить. Первый: выполнить макрос из окна Macro Explorer в IDE Visual Studio.NET. Этот подход замечательно действует, но не является оптимальным для часто используемых макросов. Второй: создать псевдоним макроса в окне Command Window. Вероятно, это лучший вариант для команд, которые будут вводиться с клавиатуры.

Чтобы назначить псевдоним, надо ввести команду alias, псевдоним и имя макроса. IntelliSense автоматически предложит полный вариант, когда вы начнете печатать макрокоманду, поэтому полный вариант строки, назначающей псевдоним, может выглядеть так:

>alias nf Macros.MacroProject1.NewFile.NewTextFile

Теперь мы получили новую команду nf которую можно вводить в окне Command Window. Чтобы создать новый текстовый файл, просто нажмите Ctrl+Alt+A и введите nf. Конечно, в диалоговом окне Options можно назначить макросу комбинацию клавиш. Если вспомнить, что последовательность комбинаций начинается с <Ctrl+...>, хорошим вариантом может быть <Ctrl+N>. Кроме того, можно добавить запускающую макрос кнопку на панель инструментов.

В этом примере важную роль играет оператор Imports. API объектной модели Visual Studio.NET содержится в пространстве имен EnvDTE. Об объектной модели будет написано позже. Фактически вы можете задействовать макросы для быстрой проверки функциональности создаваемых надстроек. Вы сэкономите время, так как обычная отладка надстройки требует ее компиляции и загрузки второго экземпляра IDE. Используя макросы, вы обращаетесь к объектной модели, пишете и тестируете процедуры, а затем добавляете их в свой проект надстройки.

» Продолжение следует...

 

Приступим к знакомству с InfoPath. Пока прочтите следующие разделы взятые из справочной системы русифицированного Microsoft Office 2003. Для лучшего усвоения я снабжу этот текст своими комментариями.

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

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

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

Microsoft InfoPath включает следующие возможности

Заполнение и разработка форм

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

  • Заполнение формы

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

  • Разработка формы

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

Гибкость при заполнении форм

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

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

Образцы форм для освоения

Microsoft InfoPath содержит 25 учебных форм, разработанных для решения различных деловых задач, таких как создание и изменение заказов или отслеживание состояния проекта. Некоторые формы можно заполнять, не внося изменений, настраивать для специальных потребностей или использовать в качестве примеров, демонстрирующих ключевые особенности и методы разработки. Дополнительно в InfoPath включены четыре учебные формы разработчика. Эти формы представляют собой расширенный набор форм, демонстрирующих различные методы разработки и настройки и реализации таких функциональных возможностей Microsoft InfoPath, как проверка данных.

Поддержка для разработчиков

В комплект InfoPath входят инструменты для разработчиков и других опытных пользователей, включая редактор сценариев и модель объектов. Эти инструменты позволяют разработчикам конструировать представления, добавлять специализированные коды, управлять поведением формы во время выполнения и интегрировать пользовательские формы с сервером или веб-службой. Помимо этого, с помощью Microsoft Office InfoPath 2003 Toolkit для Visual Studio.NET, который можно загрузить с веб-узла Microsoft Developer Network (MSDN), можно использовать Microsoft Visual Studio .NET 2003, чтобы создавать, отлаживать и встраивать в InfoPath проекты, в которых используется управляемый код, написанный на Microsoft Visual C#.NET или Microsoft Visual Basic.NET. Благодаря использованию комбинации, состоящей из InfoPath, используемому для разработки форм, и Visual Studio.NET для написания кода, можно создавать проект в режиме отладки или в режиме выпуска готового продукта. Можно создавать новые формы или добавлять управляемый код в существующие.

Взаимодействие с Microsoft Office

InfoPath можно использовать с рядом других программ системы Microsoft Office. Например, пользователи могут экспортировать данные из заполненных форм InfoPath в таблицы Microsoft Office Excel 2003. Разработчики форм могут распространять их с помощью Microsoft Office Outlook 2003, либо же могут использовать данные из базы данных Microsoft Office Access 2003 для заполнения списков и других элементов управления формы.


Взаимодействие с Microsoft Windows SharePoint Services

Можно публиковать формы InfoPath непосредственно в библиотеке форм (Библиотека форм. Папка, содержащая набор форм, основанных на одном шаблоне. Каждая форма в библиотеке связана с заданными пользователем сведениями, которые отображаются в списке содержимого библиотеки.) Microsoft Windows SharePoint Services, или же создавать подключение данных, которое позволяет передавать формы в такую библиотеку. Благодаря этому групповая работа становится эффективнее, поскольку существует единое место для хранения и распространения форм InfoPath. InfoPath может также получать данные из библиотеки форм или из списков. Например, записи в списке могут поступать непосредственно из списка Windows SharePoint Services, а изменения в этих записях будут немедленно отражаться в этом списке.

Примечание: Информация, приведенная в этом разделе, может оказаться неприменимой при работе с формами, созданными в Microsoft Office InfoPath 2003 без установленного пакета обновлений. Кстати, сейчас у меня установле Service Pack 2 для Microsoft Office, советую вам в крайнем случае установить Service Pack 1. И ещё не путайте эти пакеты обновлений с пакетами обновлений для Windows.

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

Если на компьютере разрешены функции, предоставляемые пакетом обновления MicrosoftOffice InfoPath 2003, и открывается форма InfoPath, разработанная до того, как был установлен этот пакет обновлений, предоставляемые им функциональные возможности будет недоступны при использовании этой формы. Такие функциональные возможности включают фильтры, правила, роли пользователя, расчеты, не требующие сценариев, и некоторые типы элементов управления. Кроме того, справка InfoPath содержит сведения, которые могут оказаться не соответствующими такой форме. Впрочем я думаю не стоит на этом заморачиваться, так как если что-либо нужное вам не сработает вы это заметите и исправите. А если нет, значит подобная возможность для вас бесполезна.

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

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

Если обновление формы не требуется и нужно просмотреть разделы справки InfoPath, в которых не обсуждаются функциональные особенности пакета обновлений, обратитесь к системному администратору, чтобы он запретил функции пакета обновлений для вашей установки InfoPath. А ещё вы можете не тратить время зря и сделать это сами - Сервис ⇒ Параметры ⇒ Дополнительно ⇒ Отключить средства пакета обновления.

Формы и шаблоны форм

В Microsoft Office InfoPath 2003 заполнить существующие формы или создать новые можно в режиме конструктора. В режиме конструктора создаются файлы, называемые шаблоны формы.

Шаблоны форм

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

В частности, шаблон формы определяет:

  • Размещение в форме различных разделов.
  • Элементы управления, надписи и вспомогательный справочный текст, появляющийся в форме.
  • Поведение элементов управления при использовании их пользователями. Например, можно ограничить длину ввода в текстовое поле 50 знаками.
  • Шрифты, цветовая гама и другие элементы дизайна, используемые в форме.
  • Возможность настройки формы пользователями, например, путем добавления или удаления необязательных разделов.
  • Уведомление пользователей в случае ошибок ввода или пропущенных полей.
  • Представления, доступные для пользователей.
  • Место сохранения данных, введенных в форму. Например, можно указать параметры, позволяющие пользователям передавать данные в базу данных.
  • По завершении разработки шаблона формы его можно сделать доступным другим, опубликовав в виде файла xsn.

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

Формы

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

  • Форматирование вводимого текста такое же, как в текстовом редакторе.
  • Вставка таблиц и списков, содержащих необходимое количество столбцов и строк.
  • Добавление в форму необязательных разделов или замена таких разделов.
  • Просмотр и исправление ошибок в форме.
  • Сохранение формы на компьютере и работа в автономном режиме.

Заключение

Итак подведём итоги. Microsoft Office InfoPath 2003 является самодостаточной программой. Как и в других приложениях от Microsoft Office она поддерживает технику шаблонов и собственно самих документов. И хотя документы имеют формат xml, это не должно вас смущать, так как эти файлы принадлежат только InfoPath. База данных Access может взаимодействовать с чем угодно по средствам множества библиотек, но это вовсе не значит, что в неё можно залезть текстовым блокнотом и творить что попало, даже если бы у вас был шанс на успех.

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

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

На этом краткое знакомство с Microsoft Office InfoPath 2003 завершается. До новых встреч...

 

ФОРУМ
В рассылку по прежнему никто не пишет...
 
  В рассылку по прежнему никто не пишет. Так и хочется сказать - рассылку никто не ждёт. Впрочем у меня зародились нехорошие подозрения насчёт внешнего адреса. Похоже в субе творится неладное, можете он перегружен или ещё что. Хотя теперь это уже не важно.
  Специально для этой рассылки я завёл собственный почтовый ящик. Если вы когда-нибудь писали в неё, но ваш ответ был проигнорирован, напишите снова по новому адресу. В данном случае виной всему служил внешний адрес рассылки, письма с которого до меня просто не доходили. Не ленитесь, используйте кнопку "Новая тема" прямо сейчас.
админ
новая тема

РЕСУРСЫ
Рассылка "Visual Basic для новичков и профессионалов" не нуждается в рекламе. Зачем же она тогда тут стоит? А просто так, захотелось мне вот и стоит. А захочу так вообще будет сидеть или даже лежать.
Подписаться: вебом, почтой

СТАТИСТИКА
номер выпуска
14
дата выпуска
2006-11-03
время выпуска
01:35
возраст в днях
272
количество подписчиков
1371
динамика за вчера/неделю
+2/+9

Практическая работа с Visual Studio.Net и Microsoft Office

В избранное