Цель лекции: освоить основные приемы интерактивной и программной работы с
Ранее в данном курсе мы уже занимались созданием отчетов. Это были простейшие отчеты, использующие табличный
Мы использовали самый простой вид отчетов, который позволяет разработчику полностью настроить внешний вид отчета, набор данных, которым оперирует отчет, в
Подобные отчеты все еще можно встретить в тиражных конфигурациях, но им на смену приходят отчеты, в основе которых лежит
С точки зрения разработчика
То, что мы называем
Отчеты, построенные на основе схемы компоновки данных, обладают теми же свойствами, что и обычные отчеты. Схема компоновки данных - это
В этой лекции мы рассмотрим возможности СКД на нескольких примерах:
Мы собираемся, с помощью
Приступим к решению этой задачи, начав с создания нового объекта конфигурации .
(рис 6.1) Создание нового отчета на основе системы компоновки данныхНа вкладке отчета .
(рис 6.2) Новый макет и окно конструктора СКДОкно конструктора СКД содержит несколько вкладок. Работа по созданию отчета начинается с добавления данных, из которых этот отчет будет состоять. Делается это на открытой по умолчанию вкладке Наборы данных.
В левой части окна, в меню кнопки .
(рис 6.3) Добавление нового набора данныхВ левой части окна появится новый набор данных, окно изменится - в частности, в его нижней правой части появится окно для ввода запроса (рис 6.4). Текст запроса можно составить вручную и ввести в это поле, а можно воспользоваться уже знакомым вам по предыдущим занятиям Конструктором запроса, нажав соответствующую кнопку около поля.
(рис 6.4) Новый набор данных в окне конструктора СКДВыше мы сформулировали задачу построения отчета. Данные, которые нам нужны, мы можем обнаружить в виртуальной таблице
Добавим эти поля в раздел .
(рис 6.5) Конструирование запросаПосле того, как поля добавлены, мы завершаем работу с конструктором запроса нажатием на кнопку ОК. В окне конструктора схемы компоновки данных появился список полей - благодаря флагу Автозаполнение, который находится в нижней части окна и по умолчанию установлен. Эти поля называют доступными полями - с ними можно работать при создании отчета.
В поле Запрос появился текст запроса, который, при необходимости, можно редактировать.
Перейдем на вкладку .
(рис 6.6) Выбор ресурсовТеперь приступим к оформлению отчета. Перейдем на вкладку .
(рис 6.7) Настройка внешнего вида отчетаЗдесь мы собираемся добавить в отчет новую таблицу, данные в которой по строкам будут сгруппированы по номенклатуре, а по столбцам - по центрам ответственности. Для этого воспользуемся вы можете видеть первое окно конструктора.
(рис 6.8) Первое окно Конструктора настроекЗдесь нам предлагают выбрать один из трех доступных типов отчета. Тип Список позволяет вывести исходные данные отчета в виде обычного списка. Таблица позволяет группировать данные, Диаграмма позволяет визуализировать данные в виде диаграмм различных типов. Эти же типы отчетов можно добавлять в отчет и минуя Конструктор настроек.
Мы выберем тип отчета ). Выберем из списка в левой части отчета все поля, которые должны присутствовать в отчете, при необходимости, с помощью кнопок со стрелками, направленными вверх и вниз (они находятся в правой части окна), поменяем порядок полей таким образом, чтобы поля-ресурсы располагались в таком порядке:
(рис 6.9) Второе окно Конструктора настроекВ очередной раз нажмем .
(рис 6.10) Третье окно Конструктора настроекНажмем кнопку .
(рис 6.11) Четвертое окно Конструктора настроек На этом настройка таблицы закончена, нажмем ). А именно, вместо двух кнопок с надписью Отчет, текст на которых выполнен серым цветом, здесь можно видеть кнопки Отчет и Таблица, между которыми можно переключаться, нажимая их. Эти кнопки позволяют переходить от настройки отчета в целом к настройке выделенного элемента, в данном случае - таблицы. При выделении других элементов отчета кнопка, расположенная правее, меняется, позволяя настраивать другие выделенные элементы.
(рис 6.12) Таблица в окне настроек отчетаНе будем вносить дополнительных изменений в наш отчет, запустим конфигурацию в режиме 1С:Предприятие, откроем отчет можно видеть результат построения отчета.
(рис 6.13) Готовый отчетТеперь попробуем обратиться к окну настроек отчета, которое можно вызвать, нажав на кнопку Настройки на панели инструментов окна отчета. Окно настроек выглядит точно так же, как при работе с Конструктором схемы компоновки данных в Конфигураторе. И здесь мы можем настраивать существующие элементы отчета и добавлять новые.
Выделим таблицу, переключимся в режим редактирования таблицы кнопкой ), перейдем на вкладку Другие настройки, установим галочку напротив параметра Макет оформления, нажмем кнопку с тремя точками в поле Значение, и в появившемся окне Выбор макета оформления выберем новый
(рис 6.14) Настройка параметров отчета в режиме 1С:ПредприятиеДобавим в отчет новый элемент - необработанный список данных. Для этого вызовем контекстное меню корневого элемента ), выберем в меню команду Новая группировка, и нажмем кнопку ОК в появившемся окне Группировка, ничего в нем не изменяя.
(рис 6.15) Добавление в отчет новой группировкиВ списке появится новый элемент отчета с названием вы можете видеть, как данный элемент выглядит в построенном отчете. Фактически, мы с его помощью получили список данных, полученных из базы, без их дополнительной обработки. Обратите внимание на то, что элементы отчета выводятся в том порядке, в котором они присутствуют в дереве настроек отчета. Из этого окна мы можем удалять ненужные элементы, можем отключать их формирование, снимая флажки около их наименований.
(рис 6.16) Новая группировка в отчетеТеперь добавим в отчет новый элемент - диаграмму, отражающую суммовой приход материалов по складам. Для этого воспользуемся командой Новая диаграмма контекстного меню элемента Отчет. После выполнения этой команды в структуру будет добавлен новый элемент Диаграмма, который имеет подчиненные элементы Точки и Серии. Точки диаграммы - это объекты, для которых получают значения характеристик. Серии - это интересующие нас характеристики. Значения серий в точках (это будет один из ресурсов, которые мы задавали ранее) используются для построения диаграммы.
Щелкнем правой кнопкой по элементу .
(рис 6.17) Настройка точек диаграммыПроделаем ту же процедуру для Серий диаграммы, выбрав в параметре Поле окна Группировка - Номенклатура.
На этом настройка диаграммы не завершена. Мы должны указать системе, какое именно значение характеристик следует использовать при построении диаграммы в качестве значений серий в точках. Для этого выделим элемент .
(рис 6.18) Выбор ресурса для задания значений серий диаграммы в точкахПостроим измененный отчет (рис 6.19). Обратите внимание на то, что в настройках отчета (рис 6.18) мы отключили вывод группировки <Детальные записи>, это означает, что в отчет теперь будут выведены лишь таблица и диаграмма.
(рис 6.19) Диаграмма, сформированная в отчетеДиаграмма в отчете присутствует, однако, очевидно, что пользователю, незнакомому с процессом настройки состава данных диаграммы, непросто будет понять, какие именно данные она визуализирует. К тому же, если нас не устраивает вид диаграммы (по умолчанию это - Гистограмма объемная ), мы можем самостоятельно выбрать тот вид, который нам больше подходит. Для того, чтобы внести изменения в диаграмму, откроем окно настроек отчета, выделим элемент Диаграмма, перейдем на вкладку Другие настройки. Здесь, по аналогии с элементами отчета, галочка, установленная напротив параметра, говорит системе о том, что нужно применить его значение, заданное пользователем. Если галочка не установлена - применяется значение по умолчанию.
Зададим следующие параметры, рис 6.20:
| Тип диаграммы: | Гистограмма | (доступны и другие типы, уместность и удобство их применения зависит от данных, которые нужно визуализировать) |
| Окантовка: | истина | (позволяет обвести линией столбцы гистограммы) |
| Стиль линии: | Точечная | (обводит всю гистограмму пунктирной линией, так она лучше воспринимается пользователем) |
| Заголовок: | "Суммовой приход материалов" | (это заголовок диаграммы, который будет выведен перед ней, если он задан, он выводится автоматически) |
(рис 6.20) Изменение настройки диаграммыНа рис 6.21 вы можете видеть измененную диаграмму.
(рис 6.21) Измененная диаграммаНаш отчет предусматривает вывод значений за определенный период. Для того, чтобы задать этот период, мы можем воспользоваться вкладкой .
(рис 6.22) Настройка периода, за который строится отчетТеперь, для того, чтобы придать отчету завершенный вид, зададим отчету и таблице заголовки. Вот, что у нас получилось, рис 6.23.
(рис 6.23) Готовый отчетПрежде чем приступить к программному построению отчета с использованием СКД, обсудим основные этапы, которые нужно выполнить для создания такого отчета.
Все этапы программной работы со схемой компоновки данных допускают вмешательство разработчика, что позволяет строить программным способом отчеты любой сложности.
Решим следующую задачу. Построим печатную форму документа НачислениеЗарплаты, которая будет содержать следующие реквизиты документа:
Так же отчет будет содержать табличную часть, данные которой нужно взять из табличной части НачисленияИУдержания открытого документа. А именно, это следующие данные:
Все эти данные присутствуют в документе.
Начнем с создания
(рис 6.24) Создание нового макета для разработки печатной формы документаВ уже знакомом вам по предыдущему примеру окну конструктора СКД добавим новый источник данных - Объект. При использовании источников данных-объектов данные для построения отчета можно получать данные из различных объектов, например:
Мы, в нашем примере, поступим следующим образом. Данные для заполнения сведений о документе ( Номер, Дата, ПериодРегистрации ) получим с помощью запроса, данные табличной части документа используем без предварительной подготовки.
Итак, после добавления нового источника данных-объекта, переименуем его в .
(рис 6.25) Добавление набора данных для размещения в отчете реквизитов документаТаким же образом добавим набор данных-объект .
(рис 6.26) Добавление набора данных для размещения в отчете табличной части документаПерейдем на вкладку конструктора .
(рис 6.27) Настройка структуры отчета для размещения реквизитов документаДобавим новую группировку, не указывая группировочное поле, перейдем в режим ее настройки, откроем вкладку .
(рис 6.28) Настройка структуры отчета для размещения табличной частиТеперь перейдем к настройкам отчета, выберем вкладку Другие настройки и в параметре Заголовок введем текст "Исходные данные по начислениям".
Наш документ . Именно здесь будет располагаться код формирования печатной формы на основе СКД.
(рис 6.29) Создание формы документа и кнопки для вызова кода, создающего печатную формуНиже приведен код модуля ОсновныеДействияФормыПечать() с комментариями.
Процедура ОсновныеДействияФормыПечать(Кнопка)
Сообщить("Для правильного формирования отчета документ после изменения должен быть записан!");
//Вывод данных из документа с помощью СКД
//Этим запросом мы получим реквизиты документа из базы
Запрос = Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
| НачислениеЗарплаты.Номер,
| НачислениеЗарплаты.Дата,
| НачислениеЗарплаты.ПериодРегистрации
|ИЗ
| Документ.НачислениеЗарплаты КАК НачислениеЗарплаты
|ГДЕ
| НачислениеЗарплаты.Ссылка = Ссылка";
//Установим параметр запроса - ссылку на открытый документ
Запрос.УстановитьПараметр("Ссылка", ДокументОбъект.Ссылка);
//Выгрузим результат выполнения запроса в таблицу значений
НачислениеЗарплатыСКД=Запрос.Выполнить().Выгрузить();
//В этой структуре значений будем хранить данные для передачи в СКД
ВнешниеДанные = Новый Структура;
//Поместим в структуру данные табличной части НачисленияИУдержания
ВнешниеДанные.Вставить("НачисленияИУдержания", ДокументОбъект.НачисленияИУдержания);
//Поместим в структуру таблицу значений с реквизитами документа
ВнешниеДанные.Вставить("НачислениеЗарплаты", НачислениеЗарплатыСКД);
//Получим макет СКД, заданный ранее
СКД=ПолучитьМакет("МакетСКД");
//Получим настройки по умолчанию для нашей СКД
НастройкиСКД=СКД.НастройкиПоУмолчанию;
//Создадим новый компоновщик макета компоновки данных
КомпоновщикМакетаКД=Новый КомпоновщикМакетаКомпоновкиДанных;
//Создадим новый макет компоновки данных с помощью компоновщика макета
//с использованием полученной ранее СКД (тип СхемаКомпоновкиДанных) и настроек
//(тип НастройкиКомпоновкиДанных)
МакетКД=КомпоновщикМакетаКД.Выполнить(СКД, НастройкиСКД);
//Создадим новый процессор компоновки данных
ПроцессорКД=Новый ПроцессорКомпоновкиДанных;
//Инициализируем процессор компоновки данных ранее созданным
//макетом компоновки данных и данными, необходимыми для
//построения отчета
ПроцессорКД.Инициализировать(МакетКД, ВнешниеДанные);
//Создадим новый табличный документ
ГотовыйОтчет=Новый ТабличныйДокумент;
//Создадим новый процессор вывода результата компоновки данных
ПроцессорВыводаКД=Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
//Установим документ ГотовыйОтчет в качестве документа, в который
//нужно выводить готовый отчет
ПроцессорВыводаКД.УстановитьДокумент(ГотовыйОтчет);
//Выведем в табличный документ данные, полученные из процессора компоновки данных
ПроцессорВыводаКД.Вывести(ПроцессорКД);
//Выключим отображение сетки в готовом отчете
ГотовыйОтчет.ОтображатьСетку=Ложь;
//Выключим отображение имен строк и столбцов в готовом отчете
ГотовыйОтчет.ОтображатьЗаголовки=Ложь;
//Покажем отчет пользователю
ГотовыйОтчет.Показать();
КонецПроцедуры
Перед печатью документ должен быть записан - так как мы получаем значения его реквизитов с помощью запроса, если реквизиты документа изменились и нажата кнопка Печать - эти изменения не отразятся на печатной форме. В то же время, при изменении данных в табличной части, эти изменения сразу же отразятся в печатной форме, так как данные берутся из табличной части напрямую.
В этом коде мы последовательно переходим по этапам формирования отчета с помощью СКД, используя ее объекты. Входные данные помещаются в структуру ВнешниеДанные, после чего задействуются механизмы СКД.
В этой лекции мы рассмотрели два подхода к формированию отчетов с использованием
Для данной лекции подготовлен видеоурок.
Цель лекции: освоить основные приемы интерактивной и программной работы с
Ранее в данном курсе мы уже занимались созданием отчетов. Это были простейшие отчеты, использующие табличный
Мы использовали самый простой вид отчетов, который позволяет разработчику полностью настроить внешний вид отчета, набор данных, которым оперирует отчет, в
Подобные отчеты все еще можно встретить в тиражных конфигурациях, но им на смену приходят отчеты, в основе которых лежит
С точки зрения разработчика
То, что мы называем
Отчеты, построенные на основе схемы компоновки данных, обладают теми же свойствами, что и обычные отчеты. Схема компоновки данных - это
В этой лекции мы рассмотрим возможности СКД на нескольких примерах:
Мы собираемся, с помощью
Приступим к решению этой задачи, начав с создания нового объекта конфигурации .
(рис 6.1) Создание нового отчета на основе системы компоновки данныхНа вкладке отчета .
(рис 6.2) Новый макет и окно конструктора СКДОкно конструктора СКД содержит несколько вкладок. Работа по созданию отчета начинается с добавления данных, из которых этот отчет будет состоять. Делается это на открытой по умолчанию вкладке Наборы данных.
В левой части окна, в меню кнопки .
(рис 6.3) Добавление нового набора данныхВ левой части окна появится новый набор данных, окно изменится - в частности, в его нижней правой части появится окно для ввода запроса (рис 6.4). Текст запроса можно составить вручную и ввести в это поле, а можно воспользоваться уже знакомым вам по предыдущим занятиям Конструктором запроса, нажав соответствующую кнопку около поля.
(рис 6.4) Новый набор данных в окне конструктора СКДВыше мы сформулировали задачу построения отчета. Данные, которые нам нужны, мы можем обнаружить в виртуальной таблице
Добавим эти поля в раздел .
(рис 6.5) Конструирование запросаПосле того, как поля добавлены, мы завершаем работу с конструктором запроса нажатием на кнопку ОК. В окне конструктора схемы компоновки данных появился список полей - благодаря флагу Автозаполнение, который находится в нижней части окна и по умолчанию установлен. Эти поля называют доступными полями - с ними можно работать при создании отчета.
В поле Запрос появился текст запроса, который, при необходимости, можно редактировать.
Перейдем на вкладку .
(рис 6.6) Выбор ресурсовТеперь приступим к оформлению отчета. Перейдем на вкладку .
(рис 6.7) Настройка внешнего вида отчетаЗдесь мы собираемся добавить в отчет новую таблицу, данные в которой по строкам будут сгруппированы по номенклатуре, а по столбцам - по центрам ответственности. Для этого воспользуемся вы можете видеть первое окно конструктора.
(рис 6.8) Первое окно Конструктора настроекЗдесь нам предлагают выбрать один из трех доступных типов отчета. Тип Список позволяет вывести исходные данные отчета в виде обычного списка. Таблица позволяет группировать данные, Диаграмма позволяет визуализировать данные в виде диаграмм различных типов. Эти же типы отчетов можно добавлять в отчет и минуя Конструктор настроек.
Мы выберем тип отчета ). Выберем из списка в левой части отчета все поля, которые должны присутствовать в отчете, при необходимости, с помощью кнопок со стрелками, направленными вверх и вниз (они находятся в правой части окна), поменяем порядок полей таким образом, чтобы поля-ресурсы располагались в таком порядке:
(рис 6.9) Второе окно Конструктора настроекВ очередной раз нажмем .
(рис 6.10) Третье окно Конструктора настроекНажмем кнопку .
(рис 6.11) Четвертое окно Конструктора настроекНа этом настройка таблицы закончена, нажмем ). А именно, вместо двух кнопок с надписью Отчет, текст на которых выполнен серым цветом, здесь можно видеть кнопки Отчет и Таблица, между которыми можно переключаться, нажимая их. Эти кнопки позволяют переходить от настройки отчета в целом к настройке выделенного элемента, в данном случае - таблицы. При выделении других элементов отчета кнопка, расположенная правее, меняется, позволяя настраивать другие выделенные элементы.
(рис 6.12) Таблица в окне настроек отчетаНе будем вносить дополнительных изменений в наш отчет, запустим конфигурацию в режиме 1С:Предприятие, откроем отчет можно видеть результат построения отчета.
(рис 6.13) Готовый отчетТеперь попробуем обратиться к окну настроек отчета, которое можно вызвать, нажав на кнопку Настройки на панели инструментов окна отчета. Окно настроек выглядит точно так же, как при работе с Конструктором схемы компоновки данных в Конфигураторе. И здесь мы можем настраивать существующие элементы отчета и добавлять новые.
Выделим таблицу, переключимся в режим редактирования таблицы кнопкой ), перейдем на вкладку Другие настройки, установим галочку напротив параметра Макет оформления, нажмем кнопку с тремя точками в поле Значение, и в появившемся окне Выбор макета оформления выберем новый
(рис 6.14) Настройка параметров отчета в режиме 1С:ПредприятиеДобавим в отчет новый элемент - необработанный список данных. Для этого вызовем контекстное меню корневого элемента ), выберем в меню команду Новая группировка, и нажмем кнопку ОК в появившемся окне Группировка, ничего в нем не изменяя.
(рис 6.15) Добавление в отчет новой группировкиВ списке появится новый элемент отчета с названием вы можете видеть, как данный элемент выглядит в построенном отчете. Фактически, мы с его помощью получили список данных, полученных из базы, без их дополнительной обработки. Обратите внимание на то, что элементы отчета выводятся в том порядке, в котором они присутствуют в дереве настроек отчета. Из этого окна мы можем удалять ненужные элементы, можем отключать их формирование, снимая флажки около их наименований.
(рис 6.16) Новая группировка в отчетеТеперь добавим в отчет новый элемент - диаграмму, отражающую суммовой приход материалов по складам. Для этого воспользуемся командой Новая диаграмма контекстного меню элемента Отчет. После выполнения этой команды в структуру будет добавлен новый элемент Диаграмма, который имеет подчиненные элементы Точки и Серии. Точки диаграммы - это объекты, для которых получают значения характеристик. Серии - это интересующие нас характеристики. Значения серий в точках (это будет один из ресурсов, которые мы задавали ранее) используются для построения диаграммы.
Щелкнем правой кнопкой по элементу .
(рис 6.17) Настройка точек диаграммыПроделаем ту же процедуру для Серий диаграммы, выбрав в параметре Поле окна Группировка - Номенклатура.
На этом настройка диаграммы не завершена. Мы должны указать системе, какое именно значение характеристик следует использовать при построении диаграммы в качестве значений серий в точках. Для этого выделим элемент .
(рис 6.18) Выбор ресурса для задания значений серий диаграммы в точкахПостроим измененный отчет (рис 6.19). Обратите внимание на то, что в настройках отчета (рис 6.18) мы отключили вывод группировки <Детальные записи>, это означает, что в отчет теперь будут выведены лишь таблица и диаграмма.
(рис 6.19) Диаграмма, сформированная в отчетеДиаграмма в отчете присутствует, однако, очевидно, что пользователю, незнакомому с процессом настройки состава данных диаграммы, непросто будет понять, какие именно данные она визуализирует. К тому же, если нас не устраивает вид диаграммы (по умолчанию это - Гистограмма объемная ), мы можем самостоятельно выбрать тот вид, который нам больше подходит. Для того, чтобы внести изменения в диаграмму, откроем окно настроек отчета, выделим элемент Диаграмма, перейдем на вкладку Другие настройки. Здесь, по аналогии с элементами отчета, галочка, установленная напротив параметра, говорит системе о том, что нужно применить его значение, заданное пользователем. Если галочка не установлена - применяется значение по умолчанию.
Зададим следующие параметры, рис 6.20:
| Тип диаграммы: | Гистограмма | (доступны и другие типы, уместность и удобство их применения зависит от данных, которые нужно визуализировать) |
| Окантовка: | истина | (позволяет обвести линией столбцы гистограммы) |
| Стиль линии: | Точечная | (обводит всю гистограмму пунктирной линией, так она лучше воспринимается пользователем) |
| Заголовок: | "Суммовой приход материалов" | (это заголовок диаграммы, который будет выведен перед ней, если он задан, он выводится автоматически) |
(рис 6.20) Изменение настройки диаграммыНа рис 6.21 вы можете видеть измененную диаграмму.
(рис 6.21) Измененная диаграммаНаш отчет предусматривает вывод значений за определенный период. Для того, чтобы задать этот период, мы можем воспользоваться вкладкой .
(рис 6.22) Настройка периода, за который строится отчетТеперь, для того, чтобы придать отчету завершенный вид, зададим отчету и таблице заголовки. Вот, что у нас получилось, рис 6.23.
(рис 6.23) Готовый отчетПрежде чем приступить к программному построению отчета с использованием СКД, обсудим основные этапы, которые нужно выполнить для создания такого отчета.
Все этапы программной работы со схемой компоновки данных допускают вмешательство разработчика, что позволяет строить программным способом отчеты любой сложности.
Решим следующую задачу. Построим печатную форму документа НачислениеЗарплаты, которая будет содержать следующие реквизиты документа:
Так же отчет будет содержать табличную часть, данные которой нужно взять из табличной части НачисленияИУдержания открытого документа. А именно, это следующие данные:
Все эти данные присутствуют в документе.
Начнем с создания
(рис 6.24) Создание нового макета для разработки печатной формы документаВ уже знакомом вам по предыдущему примеру окну конструктора СКД добавим новый источник данных - Объект. При использовании источников данных-объектов данные для построения отчета можно получать данные из различных объектов, например:
Мы, в нашем примере, поступим следующим образом. Данные для заполнения сведений о документе ( Номер, Дата, ПериодРегистрации ) получим с помощью запроса, данные табличной части документа используем без предварительной подготовки.
Итак, после добавления нового источника данных-объекта, переименуем его в .
(рис 6.25) Добавление набора данных для размещения в отчете реквизитов документаТаким же образом добавим набор данных-объект .
(рис 6.26) Добавление набора данных для размещения в отчете табличной части документаПерейдем на вкладку конструктора .
(рис 6.27) Настройка структуры отчета для размещения реквизитов документаДобавим новую группировку, не указывая группировочное поле, перейдем в режим ее настройки, откроем вкладку .
(рис 6.28) Настройка структуры отчета для размещения табличной частиТеперь перейдем к настройкам отчета, выберем вкладку Другие настройки и в параметре Заголовок введем текст "Исходные данные по начислениям".
Наш документ . Именно здесь будет располагаться код формирования печатной формы на основе СКД.
(рис 6.29) Создание формы документа и кнопки для вызова кода, создающего печатную формуНиже приведен код модуля ОсновныеДействияФормыПечать() с комментариями.
Процедура ОсновныеДействияФормыПечать(Кнопка)
Сообщить("Для правильного формирования отчета документ после изменения должен быть записан!");
//Вывод данных из документа с помощью СКД
//Этим запросом мы получим реквизиты документа из базы
Запрос = Новый Запрос;
Запрос.Текст="ВЫБРАТЬ
| НачислениеЗарплаты.Номер,
| НачислениеЗарплаты.Дата,
| НачислениеЗарплаты.ПериодРегистрации
|ИЗ
| Документ.НачислениеЗарплаты КАК НачислениеЗарплаты
|ГДЕ
| НачислениеЗарплаты.Ссылка = Ссылка";
//Установим параметр запроса - ссылку на открытый документ
Запрос.УстановитьПараметр("Ссылка", ДокументОбъект.Ссылка);
//Выгрузим результат выполнения запроса в таблицу значений
НачислениеЗарплатыСКД=Запрос.Выполнить().Выгрузить();
//В этой структуре значений будем хранить данные для передачи в СКД
ВнешниеДанные = Новый Структура;
//Поместим в структуру данные табличной части НачисленияИУдержания
ВнешниеДанные.Вставить("НачисленияИУдержания", ДокументОбъект.НачисленияИУдержания);
//Поместим в структуру таблицу значений с реквизитами документа
ВнешниеДанные.Вставить("НачислениеЗарплаты", НачислениеЗарплатыСКД);
//Получим макет СКД, заданный ранее
СКД=ПолучитьМакет("МакетСКД");
//Получим настройки по умолчанию для нашей СКД
НастройкиСКД=СКД.НастройкиПоУмолчанию;
//Создадим новый компоновщик макета компоновки данных
КомпоновщикМакетаКД=Новый КомпоновщикМакетаКомпоновкиДанных;
//Создадим новый макет компоновки данных с помощью компоновщика макета
//с использованием полученной ранее СКД (тип СхемаКомпоновкиДанных) и настроек
//(тип НастройкиКомпоновкиДанных)
МакетКД=КомпоновщикМакетаКД.Выполнить(СКД, НастройкиСКД);
//Создадим новый процессор компоновки данных
ПроцессорКД=Новый ПроцессорКомпоновкиДанных;
//Инициализируем процессор компоновки данных ранее созданным
//макетом компоновки данных и данными, необходимыми для
//построения отчета
ПроцессорКД.Инициализировать(МакетКД, ВнешниеДанные);
//Создадим новый табличный документ
ГотовыйОтчет=Новый ТабличныйДокумент;
//Создадим новый процессор вывода результата компоновки данных
ПроцессорВыводаКД=Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
//Установим документ ГотовыйОтчет в качестве документа, в который
//нужно выводить готовый отчет
ПроцессорВыводаКД.УстановитьДокумент(ГотовыйОтчет);
//Выведем в табличный документ данные, полученные из процессора компоновки данных
ПроцессорВыводаКД.Вывести(ПроцессорКД);
//Выключим отображение сетки в готовом отчете
ГотовыйОтчет.ОтображатьСетку=Ложь;
//Выключим отображение имен строк и столбцов в готовом отчете
ГотовыйОтчет.ОтображатьЗаголовки=Ложь;
//Покажем отчет пользователю
ГотовыйОтчет.Показать();
КонецПроцедуры
Перед печатью документ должен быть записан - так как мы получаем значения его реквизитов с помощью запроса, если реквизиты документа изменились и нажата кнопка Печать - эти изменения не отразятся на печатной форме. В то же время, при изменении данных в табличной части, эти изменения сразу же отразятся в печатной форме, так как данные берутся из табличной части напрямую.
В этом коде мы последовательно переходим по этапам формирования отчета с помощью СКД, используя ее объекты. Входные данные помещаются в структуру ВнешниеДанные, после чего задействуются механизмы СКД.
В этой лекции мы рассмотрели два подхода к формированию отчетов с использованием
Для данной лекции подготовлен видеоурок.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.