Файл: Знакомство с платформой 1С: Предприятие 8.3.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 877

Скачиваний: 13

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
  • База данных
  • Таблицы
  • Поля

Рис. 130. Окно конструктора запроса

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

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

Нас в данный момент интересуют остатки товаров по результатам поступления, продажи и перемещений с выставки (на выставку), поэтому перенесем в раздел Таблицы элемент КоличествоТоваров Остатки. После этого для запроса необходимо выбрать используемые в нем поля и перенести их в раздел «Поля» (рис. 131).

Рис. 131. Отбор полей для запроса по остаткам товаро

Окно конструктора запроса имеет ряд вкладок, позволяющих формировать необходимые указания в запросе. В данном случае зададим на вкладке «Порядок» упорядочивание по количеству товаров в убывающем порядке (рис. 132), после чего щелкнем на кнопке «OK». В результате происходит формирование запроса, текст которого приведен в листинге 3.1.

Рис. 132. Упорядочивание в запросе

Листинг 3.1. Запрос для извлечения информации по остаткам товаров

ВЫБРАТЬ

КоличествоТоваровОстатки.Товар,

КоличествоТоваровОстатки.Филиал,

КоличествоТоваровОстатки.КоличествоОстаток КАК КоличествоОстаток

ИЗ РегистрНакопления.КоличествоТоваров.Остатки КАК КоличествоТоваровОстатки

УПОРЯДОЧИТЬ ПО КоличествоОстаток УБЫВ

В результате проделанных действий на вкладке «Наборы данных» схемы компоновки данных происходят изменения, и на рис. 133 показаны поля, которые в данном случае заполняются автоматически.

Рис. 133. Заполнение полей в схеме компоновки данных

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

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


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

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

Рис. 134. Вкладка «Настройки» окна конструктора схемы компоновки

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

Рис. 135. Окно для определения группировки

Теперь на дополнительной вкладке «Выбранные поля», где в число выбранных полей следует добавить три поля: Товар, Филиал, КоличествоТоваров. Добавить поле в раздел «Поле» проще всего двойным щелчком на элементе в разделе «Доступные поля». Также элемент можно перетащить из раздела «Доступные поля» мышью. Еще один вариант — щелкнуть на кнопке Добавить (она находится в пиктографическом меню, расположенном в правой части окна). И не забудем отметить флажком «Детальный отчёт».

Осталось отнести созданный отчет к одной из подсистем (для отчетов данной главы создадим подсистему с именем ОтчетыПоГлаве3). После выполнения этих визуальных действий можно посмотреть, как выглядит разработанный отчет в режиме 1С:Предприятие (рис. 136)

Рис. 136. Отчет по остаткам товаров.

Использование системы компоновки данных позволяет расширить возможности формирования отчетов без внесения изменений в конфигурацию. Рассмотрим, как это выглядит на практике. Будем считать, что в нашем отчете необходимо просмотреть сводную информацию, а именно вывести данные о суммарном количестве каждого товара на всех филиалах. Для этого щелкнем на кнопке «Еще» (см. рис. 136), после чего раскроется новое меню, где следует выбрать пункт «Изменить вариант». Далее в очередном открывшемся окне необходимо обратиться к вкладке «Поля» и в списке выбранных полей сбросить флажок для поля «Филиал» (рис. 137).


Рис. 137. Настройка отчета для получения сводной информации по товарам

Далее следует щелкнуть на кнопке «Завершить редактирование» и сформировать обычным способом уже новую версию отчета (рис. 138).

Рис. 138. Сводная информация по остаткам товаров

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

Вернемся в окно конструктора запросов и немного изменим вариант запроса (рис. 139).

Рис. 139. Окно конструктора запросов

На вкладке «Объединения/Псевдонимы» конструктора запроса установим псевдонимы для двух полей (рис. 140).

Рис. 140. Вкладка «Объединения/Псевдонимы» в окне «конструктора запросов»

Далее на вкладке «Порядок» следует задать параметры для последовательной сортировки сначала по товарам (возр.), а затем по филиалам (возр.). После этого щелчком на кнопке OK завершим работу с конструктором запроса. В результате в окне схемы компоновки перед нами появится текст запроса (листинг 3.2).

Листинг 3.2. Запрос для извлечения информации по товарам с сортировкой

ВЫБРАТЬ

КоличествоТоваровОстатки.Товар.Наименование КАК Товар,

КоличествоТоваровОстатки.Филиал.Наименование КАК Филиал,

КоличествоТоваровОстатки.КоличествоОстаток

ИЗ РегистрНакопления.КоличествоТоваров.Остатки КАК КоличествоТоваровОстатки

УПОРЯДОЧИТЬ ПО Товар, Филиал

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

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


Перейдем теперь на вкладку «Настройки», где следует выбрать необходимые поля для отчета и добавить две группировки:

  • Детальные записи
  • Товар

Часто требуется просмотреть информацию по товарам на более раннюю дату. Для этого следует использовать параметр «Период», который автоматически включается в данный отчет системой на основании таблицы «КоличествоТоваров Остатки». Нам надо только дать пользователю возможность выбрать этот параметр в форме отчета.

Модифицируем уже существующий отчёт («Отчёт3_2»). Для включения параметра «Период» перейдем на дополнительную вкладку «Параметры» вкладки «Настройки», где воспользуемся соответствующей кнопкой (последняя в вертикальном пиктографическом меню) для задания требуемых параметров. В открывшемся в результате новом окне установим флажок Включать в пользовательские настройки (рис. 141).

Рис. 141. Окно для выполнения пользовательских настроек

И можно перейти в режим 1С:Предприятие для открытия формы отчета. Теперь перед заполнением отчета следует предварительно задать значение параметра «Период» (рис. 142).

Рис. 142. Включение параметра Период в отчет по остаткам товаров

Отчет по документам ПоступлениеТоваров

Разработаем отчет, который будет включать информацию по поступлениям товаров. Для этого требуется сформировать перечень документов ПоступлениеТоваров, имеющихся в базе данных. Начнём с уже привычных манипуляций – создание «Отчёт3_3» и перейдём к окну «Конструктор запросов». Нам потребуется таблица «ПоступлениеТоваров», из которой для запроса необходимо отобрать следующие поля:

  • Ссылка
  • Фирма
  • Филиал

Сформируем псевдоним «ДокументПоступление» для поля «Ссылка», а на вкладке «Порядок» зададим упорядочивание документов по убыванию. Задавать для запроса другие параметры не требуется, и щелчок на кнопке «OK» приводит к формированию текста запроса (листинг 3.3).

Листинг 3.3. Текст запроса для извлечения информации о поступлениях товаров

ВЫБРАТЬ

ПоступлениеТоваров.Фирма,

ПоступлениеТоваров.Филиал,

ПоступлениеТоваров.Ссылка КАК ДокументПоступление

ИЗ Документ.ПоступлениеТоваров КАК ПоступлениеТоваров

УПОРЯДОЧИТЬ ПО ДокументПоступление УБЫВ

В запросе используется объектная таблица Документ.ПоступлениеТоваров. После такого автоматического получения текста запроса перейдем на вкладку «Настройки». Укажем, что в группировке будут выводиться детальные записи из информационной базы, и перенесем «ДокументПоступление», «Фирма» и «Филиал» в «Выбранные поля».


Далее осталось перейти в режим 1С:Предприятие и сформировать отчет по имеющимся документам ПоступленияТоваров в информационной базе (рис. 143).

Рис. 143. Доступ к документу из отчета по сведениям о поступлении товаров

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

Отчет по работе филиалов

Рассмотрим создание отчета, который позволит получить информацию об уровне продаж товаров в наших филиалах. Начнем разработку нового объекта конфигурации — отчета под именем «Отчет3_4» и используем конструктор запроса, в окне которого выберем две таблицы:

  • объектную таблицу справочника «Филиалы»
  • виртуальную таблицу ПродажиПоФилиалам.Обороты

Из данных таблиц в раздел Поля перенесем два поля:

  • Филиалы.Ссылка
  • ПродажиПоФилиаламОбороты.СуммаОборот

В запросе мы использовали две таблицы, которые необходимо связать. Для начала на вкладке «Связи» следует убедиться в установке необходимой связи между двумя таблицами (рис. 144).

Рис. 144. Установка связей между таблицами в запросе

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

Перейдем на вкладку «Объединения/Псевдонимы», где установим псевдоним «НашФилиал» вместо сочетания «Филиалы.Ссылка». Новое словосочетание намного информативнее для пользователя. На вкладке «Порядо»к укажем, что результат должен быть отсортирован по значению поля «СуммаОборот» в порядке убывания. После этого щелкнем на кнопке «OK» и получим текст запроса (листинг 3.4).

Листинг 3.4. Текст запроса для формирования отчета по работе филиалов

ВЫБРАТЬ

Филиалы.Ссылка КАК НашФилиал,

ПродажиПоФилиаламОбороты.СуммаОборот КАК СуммаОборот

ИЗ Справочник.Филиалы КАК Филиалы

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ПродажиПоФилиалам.Обороты КАК