Возможности формирования веб-отчетов
Web-расширение предоставляет возможность создавать веб-отчеты, аналогичные по своей функциональности отчетам 1С:Предприятия 8, в которых используется построитель отчета. Другими словами, пользователь веб-приложения имеет возможность визуально настроить исходный текст запроса и получить оформленный результат запроса, который поддерживает механизм расшифровок для детализации полученных результатов:
Пользователь веб-приложения может настраивать состав выбранных полей, порядок, отбор, а также указывать измерения, которые будут располагаться в строках или колонках отчета:
Web-расширение позволяет управлять оформлением как всего отчета, как и отдельных его группировок и полей:
Веб-отчеты, также как и отчеты в 1С:Предприятии, поддерживают механизм расшифровок, позволяющий получить детальную информацию на основе значения, находящегося в ячейке отчета:
Данные, полученные в результате запроса к базе данных 1С:Предприятия, кэшируются, что позволяет оптимизировать время получения данных клиентом в случае, когда отчет отображается не целиком, а по страницам. Тогда, при запросе новой страницы происходит обращение к кэшу отчета, основанному на стандартном механизме ASP.NET:
Публикатор веб-приложений
Публикатор веб-приложений представляет собой утилиту, которая осуществляет публикацию веб-приложений в IIS. Для публикации используется шаблон веб-приложения. В процессе публикации файлы шаблона копируются на IIS, создается и настраивается виртуальный каталог в IIS, выполняется настройка веб-приложения в соответствии с выбранным способом аутентификации, а также некоторые другие действия.
Таким образом, используя один и тот же шаблон веб-приложения, можно осуществлять многократную публикацию этого приложения, указывая различные информационные базы 1С:Предприятия и различные способы настройки прав доступа.
В процессе публикации предоставляется возможность выполнить следующие настройки веб-приложения:
- выбор информационной базы 1С:Предприятия, с которой будет работать веб-приложение;
- выбор способа аутентификации:
- анонимный доступ;
- режим заимствования прав (impersonate):
- заимствование прав (impersonate) пользователя веб-приложения;
- заимствование прав (impersonate) указанного пользователя;
- аутентификация на основе форм.
Структура Web-расширения
Взаимодействие клиента с информационной базой 1С:Предприятия 8 при использовании Web-расширения выглядит следующим образом:
Используя технологии веб-сервера (Microsoft .NET ) и механизмы 1С:Предприятия 8 (внешнее соединение), Web-расширение предоставляет как пользовательский, так и программный интерфейс для манипулирования данными информационной базы 1С:Предириятия 8.
Это становится возможным благодаря тому, что Web-расширение имеет многоуровневую архитектуру, включающую в себя как базовые объекты (выполняющие только операции манипулирования данными), так и специализированные объекты, реализующие алгоритмы взаимодействия пользователя с данными информационной базы, аналогичные используемым в самой системе 1С:Предприятие 8.
На следующем рисунке представлена схема работы Web-расширения:
Для доступа к информационным базам Web-расширение использует механизм внешнего соединения. Этот механизм является наиболее эффективным инструментом организации программного доступа к данным 1С:Предприятия 8. Web-расширение может сохранять открытые внешние соединения в пуле для их повторного использования, что позволяет экономить ресурсы веб-сервера и ускорять работу пользователей.
На базовом уровне работа с данными 1С:Предприятия 8. осуществляется при помощи набора объектов, реализующих технологию доступа к данным ADO.NET. Эти объекты позволяют не только получать данные, но и модифицировать их.
Получение данных возможно в двух режимах: режиме таблицы, реализующем технику объектного доступа к данным, и в режиме запроса, позволяющем полностью использовать возможности языка запросов 1С:Предприятия 8.
Модификация данных (добавление, изменение и удаление) выполняется только в режиме таблицы (т.е. в объектной технике).
Для создания пользовательского интерфейса и работы с данными на более высоком уровне используется ряд объектов, реализующих технологию ASP.NET. Все эти объекты можно разделить на две большие группы:
Источники данных
Представляют собой специализированные объекты, реализующие стандартную логику работы форм различного типа и использующие в своей работе базовые объекты ADO.NET. В качестве примера источников данных можно привести источник данных для списка, для редактирования объекта, для редактирования набора записей, источник данных для отчета и пр.
Элементы управления
Используются для формирования пользовательского интерфейса и обеспечения работы пользователя с данными. Являются аналогами элементов управления 1С:Предприятия, таких как поле ввода, табличное поле, командная панель и пр.
Использование технологии Web Forms позволяет интегрировать работу формы, элементов управления и источников данных, расположенных в форме. К тому же использование этой технологии значительно упрощает создание веб-форм, сводя его к визуальному конструированию и дальнейшей установке связей между элементами управления:
Web-расширение содержит ряд шаблонов, позволяющих значительно автоматизировать работу по созданию форм объектов и списков.
Кроме этого, Web-расширение содержит набор форм "по умолчанию", которые используются в случае, когда запрашивается доступ к данным, для которых разработчик не предусмотрел специальных форм.
На всех уровнях работы с данными Web-расширение использует информацию о метаданных 1С:Предприятия 8. Эта информация генерируется автоматически при создании веб-приложения или веб-сервиса с использованием специализированных шаблонов. Кроме того, утилита генерации метаданных может быть запущена отдельно, в случае если конфигурация информационной базы 1С:Предприятия была изменена.
Наличие информации о метаданных позволяет автоматизировать многие операции, например, табличное поле использует информацию об исходной таблице для организации редактирования элементов и навигации по списку.
Таким образом, архитектура Web-расширения, с одной стороны, позволяет эффективно создавать специализированные пользовательские интерфейсы, а с другой стороны, имеет гибкие механизмы для работы с данными на более низком уровне.
Состав продукта и требования
В состав продукта «1С:Предприятие 8. Web-расширение 1.1» входят несколько компонент:
- основные файлы Web-расширения, предназначенные для работы веб-приложений и веб-сервисов на базе Web-расширения;
- файлы, предназначенные для самостоятельной разработки веб-приложений и веб-сервисов на базе Web-расширения;
- утилита генерации метаданных;
- публикатор веб-приложений;
- веб-приложение "Универсальные веб-отчеты";
- демонстрационный пример веб-приложения и демонстрационная информационная база для этого примера;
- файлы Microsoft .NET Framework.
Основные файлы Web-расширения включают в себя основные библиотеки, обеспечивающие работу программных объектов Web-расширения, и файлы скриптов, необходимые для обеспечения работы элементов управления веб-страниц.
В состав средств разработки входят файлы помощи и автодокументирования, файлы шаблонов для мастера MS Visual Studio, формы «по умолчанию», используемые в веб-приложениях, таблица стилей, картинки, файлы конструкторов.
Все указанные компоненты могут быть установлены по отдельности, за исключением файлов для разработки веб-приложений. Они устанавливаются только вместе с основными файлами Web-расширения.
Для работы Web-расширения требуются следующие программные средства:
- Microsoft Windows XP Professional, Windows 2000 или Windows 2003;
- Microsoft Internet Information Server версии 5.0 или выше;
- Microsoft .NET Framework 1.1;
- 1С:Предприятие 8 версии 8.11 или выше.
Интернет-браузер, с помощью которого предполагается работать с веб-приложением, созданным при помощи Web-расширения, должен поддерживать следующие стандарты:
- HTML 4.0;
- DOM Level 1;
- CSS 2.
В качестве среды разработки веб-приложений и веб-сервисов может использоваться любое средство, поддерживающее технологию ASP.NET.
Шаблоны Web-расширения рассчитаны на использование в среде разработки Microsoft Visual Studio .NET 2003 с компилятором C# (C Sharp).
Веб-приложение "Универсальные веб-отчеты"
В комплект поставки Web-расширения включено веб-приложение "Универсальные веб-отчеты". Это приложение позволяет получать произвольные отчеты из любой информационной базы 1С:Предприятия с помощью веб-интерфейса:
Важной особенностью этого веб-приложения является то, что для его использования с произвольной информационной базой не требуется дополнительного написания кода. Установка и настройка приложения может быть выполнена за три простых шага:
- выполнить сравнение/объединение выбранной конфигурации 1С:Предприятия с файлом 1Cv8.cf из шаблона веб-приложения, для того, чтобы добавить необходимые объекты метаданных в выбранную конфигурацию;
- в выбранной информационной базе 1С:Предприятия в справочнике "ВебОтчеты" создать набор требуемых отчетов. Эти отчеты будут доступны для исполнения с помощью веб-приложения "Универсальные веб-отчеты";
- опубликовать веб-приложение "Универсальные веб-отчеты": запустить публикатор веб-приложений, добавить новое веб-приложение из шаблона "Универсальные веб-отчеты" нужной версии, указать, что веб-приложение будет работать с выбранной информационной базой 1С:Предприятия и установить требуемый способ аутентификации пользователей в веб-приложения;
После запуска веб-приложения "Универсальные веб-отчеты" будет открыта страница, содержащая список отчетов, созданных в справочнике "ВебОтчеты" 1С:Предприятия. Каждый выбранный отчет будет исполняться в новом окне браузера.