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

Волшебство программирования на 1С:Предприятие 7.7 и 8.0 . Выпуск 37


Информационный Канал Subscribe.Ru

Волшебство программирования на 1С:Предприятие 7.7 и 8.0
Выпуск 37 / 07.12.2003

Здравствуйте! В этом выпуске мы кратко рассмотрим возможности нового уникального механизма 1С:Предприятия 8.0 — построителя отчета, а также приведем наиболее интересные ветки Волшебного форума.


Построитель отчета

Построитель отчета — это новый объект 1С:Предприятия 8.0 с богатыми функциональными возможностями. В двух словах можно сказать так: на вход подается запрос (как минимум), настройки и макет, а на выходе получаем готовый отчет, сводную таблицу или диаграмму. Это кратко. А теперь разберем подробнее.

Ниже показан самый простой пример использования построителя отчета:

Построитель = Новый ПостроительОтчета;

//устанавливаем текст запроса
Построитель.Текст = "
| Выбрать * Из РегистрНакопления.Продажи
| Итоги Сумма(Сумма) По Номенклатура, Контрагент, Общие";

//На основе исходного текста запроса построитель
//заполняет свои внутренние настройки,
// т.е. измерения по строкам и колонкам,
// выводимые поля, условия отбора и сортировки
Построитель.ЗаполнитьНастройки();

Построитель.Выполнить(); //выполнить запрос к базе данных

//далее возможны варианты
//1. вывести отчет в табличный документ
Построитель.Вывести(); //новое окно
Построитель.Вывести(ЭлементыФормы.ПолеТабДок);

//2. сформировать сводную таблицу
СводнаяТаблица.ИсточникДанных = Построитель;

//3. нарисовать диаграмму
Построитель.Вывести(ЭлементыФормы.Диаграмма1);

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

  • интерактивно (пользователь в диалоге может указать нужные ему измерения по строкам и колонкам, условия отбора и сортировки и т.д.)
  • программно (через свойства-коллекции ИзмеренияСтроки, ИзмеренияКолонки, Отбор, Порядок и т.д.)
  • расширениями языка запросов, заключенными в фигурные скобки {...}

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

Результат запроса и сам запрос можно "вытащить" из построителя с помощью свойств "Результат" и метода "ПолучитьЗапрос". Это может пригодиться, если вы хотите обработать результат самостоятельно. Также через свойства можно управлять внешним видом отчета, подавая на вход различные макеты: общий или для каждой области (шапки, подвала, детальных данных).

Заметьте, что при использовании построителя не требуется организовывать циклы по результату запроса, выводить/присоединять области (секции) отчета. По существу, мы говорим, ЧТО нам нужно, и построитель берет на себе все остальное. Это похоже на принцип язык запросов: мы говорим, ЧТО хотим получить в результате, а система сама решает, в каком порядке и какие таблицы просмотреть, воспользоваться индексами или просканировать всю таблицу целиком. Построитель отчета действует похожим образом: сам организует все необходимые циклы, выводит строки и колонки табличного документа, добавляет группировки, заполняет и обрабатывает расшифровку и т.д. От программиста нужны минимальные усилия —составить текст запроса, который, кстати, может быть сформирован Конструктором запросов.

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


Волшебный форум (www.forum.mista.ru)

Вашему вниманию предлагаются наиболее интересные ветки форума:

Как вам восьмерка? (25 сообщений)
Оборотка по материалам (личные соображения) (21)
Windows vs Linux (16)
Мертвые языки? (14)
Сравнение процессоров AMD и Intel (33) и продолжение (14)
Учебники по интернет-технологиям (7)
Сбор предложений по улучшению форума (67)
Новая технология поиска для Яндекса (16)
Практика применения принципов А.Маслоу в управлении проектами (31)

Учет на складе (15)
Можно ли вести УСН в типовой бухгалтерии (14)

Несколько интересных оффтопиков:

Другие увлечения программистов (32)
За кого будете голосовать на выборах? (42)
Вот такие они, женщины... (34)
Курьезы из жизни админов/программистов (9)

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

За прошедшее время движок форума также развивался:

  • Теперь форум "узнает" зарегистрированных посетителей и не требуется каждый раз вводить имя и пароль.
  • По каждой теме подсчитывается количество человек, участвующих в дискуссии (внизу страницы со списком сообщений данной темы).
  • Сделано распознавание ссылок, начинающихся на "http://" и "www"

Статистика по форуму

Показатель
Сегодня
Неделю назад
В среднем в день
Темы (ветки):
327
250
+10
Сообщения:
2188
1600
+85
Зарегистрированные пользователи:
124
85
+6

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


См. также:
1С:Предприятие 7.7: учебник, курс лекций, статьи, ссылки
Книга "Разработка в системе 1С:Предприятие 8.0"

Официальный сайт рассылки www.mista.ru
Архив выпусков этой рассылки

С уважением,
Волшебник Станислав

stasmit@mail.ru




http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное