Справочный материал

Практикум 3. Создание отчетов

Приступим к созданию отчета, который будет показывать нам приход, расход и остатки материалов. Мы лишь проиллюстрируем механизм создания отчетов. Более глубоко работу с конструктором выходной формы рассмотрим позднее.Создание макета документа ОказаниеУслуги. Редактирование макета документа ОказаниеУслуги. Редактирование формы документа ОказаниеУслуги

Практикум 3. Создание отчетов

Создание макета документа ОказаниеУслуги

Редактирование макета документа ОказаниеУслуги

Редактирование формы документа ОказаниеУслуги

 

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

1. Создайте новый объект конфигурации Отчет с именем «Материалы».

2. Создадим схему компоновки данных, для чего нажмем кнопку «Открыть схему компоновки данных» или, что равнозначно, кликнем по знаку лупы.

И/ Отчет Материалы _ п Основные Данные Формы Макеты Подсистемы Права Интерфейсы Прочее Имя: Синоним: Комментарий: Материалы Основная схема компоновки данных: ш Открыть схему компоновки данных Действия - Назад Далее Закрыть Справка

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

Конструктор макета Имя: Синоним: Комментарий: Выберите тип макета: Т абличный документ Т екстоеый документ Двоичные данные Active document HTML документ Г еографическая схема Г рафическая схема Схема компоновки данных Макет оформления компоновки данных О с

Платформа создаст новый макет, содержащий схему компоновки данных, и сразу же откроет конструктор схемы компоновки данных.

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

Добавим новый набор данных → запрос.

Отчет Материалы: ОсновнаяСхемаКомпоновкиДанных Наборы данн... Связи наборо... Вычисляемы... Ресурсы Параметры Макеты Вложенные с... Настройки іг5 Добавить набор данных • запрос /ч Добавить набор данных • объект Добавить набор данных • объединение І—I Л и V

4. Для того чтобы создать текст запроса, запустим конструктор запроса → кнопка Конструктор запроса.

Отчет Материалы: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы Настройки ив- Ч Поля:

5. В списке «База данных» представлен состав объектов базы данных; на основе данных этих объектов мы имеем возможность построить отчет.

Если раскрыть ветку «РегистрыНакопления», то мы увидим, что кроме таблицы регистра «ОстаткиМатериалов» в этой ветке присутствуют еще несколько виртуальных таблиц, которые формирует система.

База данных B ;U Справочники Ш в1 Документы РегистрыНакопления ЕН О статкиМ атериалов JcrarKnM атериалов. О бороты ЁН , 0 статкиМ атериалов. О статки J3 статкиМ атериалов. О статкиИ О С

6. Поскольку мы хотим видеть как остатки материалов, так и информацию об их поступлении и расходовании, нас будет интересовать виртуальная таблица «ОстаткиМатериалов.ОстаткиИОбороты». Раскроем ее.

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

База данных E-if ОстаткиМатериалов.Остатки Ії і О статкиМ атериалов. О статкиИ О бороты E-t— Материал E-t— Склад I.....- Период і.....— ПериодСекунда I.....— ПериодМинуга

7. Начнем выбирать поля таблицы в нужном нам порядке двойным щелчком мыши. Сначала выберем Склад и Материал. Затем выберем КоличествоНачальныйОстаток, КоличествоПриход, КоличествоРасход и в заключение КоличествоКонечныйОстаток

В результате окно Поля должно быть заполнено следующим образом:

Поля I.....t— IО статкиМ атериаловО статкиИ О бороты. Склад I ! .....t— 0 статкиМ атериаловО статкиИ 0 бороты. М атериал І.....I 0 статкиМ атериаловО статкиИ 0 бороты. КоличествоН ачс і.....I 0 статкиМ атериаловО статкиИ 0 бороты. КоличествоП ри: І.....I 0

8. После этого на закладке Группировка укажем групповое поле Склад.

гїй Конструктор запроса Т аблицы и поля С Группировка Условия Дополнительно 0бьединениаД1сеедонимы—Доаашж Компоновка данных Характеристики оля О статкиМ атериаловО статкиИ 0 бороты. М атер і 0 статкиМ атериаловО статкиИ 0 бороты. Количе 0 статкиМ атериалов

9. Нажмем ОК и вернемся в конструктор схемы компоновки данных.

Текст запроса, который был создан с помощью конструктора, платформа поместит в поле Запрос.

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

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

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

10. Перейдем на закладку Настройки и добавим группировку (контекстное меню Новая группировка).

Отчет Материалы: ОсновнаяСхемаКомпоновкиДанных Наборы данных Связи наборов данных Вычисляемые поля Ресурсы Параметры Макеты Вложенные схемы1 Н тройки } Новая группировка... 13 Новая таблица -ит упдммд- ІП8

При этом не станем указывать поле группировки, а просто нажмем ОК.

Группировка Поле: Тип: 0х Без иерархии ГоП - Отмена

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

11. Теперь настроим поля, которые будут выводиться в результат отчета.

Для этого перейдем на закладку Выбранные поля и в окошко Поле перенесем из списка доступных полей:

  • Склад:
  • Материал;
  • КоличествоНачальныйОстаток;
  • КоличествоПриход;
  • КоличествоРасход;
  • КоличествоКонечныйОстаток.

Отчет Материалы: ОсновнаяСхемаКомпоновкиДанных Параметры данных чВыбранные поля 0тбор Сортировка Условное оформ... Пользовательски... Другие настройки Доступные ПОЛЯ Поле ШЙ Д К 0 л и ч е ОТ ВО К и н е Ч Н Ы Й г 1 вЦЯ ИЭЖ! . ....- КоличествоНачальньа к: ..

12. Запустим 1С:Предприятие в режиме отладки и посмотрим, как работает отчет.

13. Выполните команду Операции в†’ Отчет в†’ Материалы.

Система автоматически сформирует форму отчета и форму настроек для него.

14. Нажмите Сформировать.

И/ Отчет Материалы Действия Сформировать Конструктор настроек... Настройки... 1- Склад Материал Количество начальный остаток Количество приход Количество расход Количество конечный остаток / ч Основной Строчный трансформатор Затэипд 10 1 9 Основной Строчны

Как видите, наш отчет вполне «презентабелен» и полностью отражает движение материалов, произошедшее в нашей организации.

Создание макета документа ОказаниеУслуги

1. Откройте в конфигураторе окно редактирования объекта конфигурации Документ ОказаниеУслуги.

2. Перейдите на закладку Макеты и запустите Конструктор печати:

Документ ОказаниеУслуги Основные Данные Нумерация Движения П оследовательност и Журналы Формы Макеты Подсистемы Ввод на основании Права Интерфейсы Обмен данными Прочее 111! I “О! Макеты Далее Закрь Конструктор печати... Конструктор ВЫХОДНОЙ формы.

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

4. На втором шаге нажатием двойной стрелки определим, что все реквизиты нашего документа будут отображены в шапке печатной формы.

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

6. На четвертом шаге конструктор предложит сформировать нам подвал (нижнюю часть) печатной формы. Поскольку в данном случае подвал мы использовать не будем, сразу пойдем дальше.

7. На пятом шаге укажем, что конструктор должен вставить новую кнопку в форму документа для вызова процедуры формирования печатной формы, и нажмем ОК.

Конструктор печати документа Вызов процедуры Не вставлять вызов процедуры Г Иовая кнопка Выбрать кнопку Печатать без предварительного просмотра Т аблица ''только просмотр Защита таблицы Назад Далее ОК Отмена Справка Печать

8. В конфигураторе откроется форма документа и его макет:

Документ ОказаниеУслуги: Форма Документа _ П X I Оказание ис Документ ОказаниеУслуги: Печать _ X Действия Ў Номер: Дата: Склад: Клиент: Мастер: Заголовок Шапка 10 11 Оказание услуги Номер Номер Дата Дата Склад Склад Клиент Клиент Мастер Мастер N Номеж [Иьі

9. Проверим макет в работе. Запустите 1С:Предприятие в режиме отладки и откройте документ Оказание услуги №– 1. Обратите внимание, что в правом нижнем углу документа появилась новая кнопка Печать, которую добавил конструктор.

Оказание услуги: Оказание услуги от 28....:46 _ п Номер: Дата: 00000001 23.03.2003 0:31:46 Ш Склад: Основной . .. х Клиент: И ванов М ихаил Ю рьевич М астер: Гусаков Н иколай Дмитриевич Ш 13 і ‘Ъ — вок N Номенклатура Количество Цена Сумма 1 Ремонт импортно

10. Нажмите на эту кнопку и увидите печатную форму нашего документа.

Как видите, конструктор сформировал вполне подходящую печатную форму для нашего документа. Единственное, чего не хватает в данной форме, - это итоговой суммы документа.

1= Таблица _ п Оказание услуги Номер 000000001 Дата 28.08.2008 0:31:46 Склад Основной Клиент Иванов Михаил Юрьевич Мастер Гусаков Николай Дмитриевич Номенклатура Количество Цена Сумма Ремонт импортного телевизора 1 1 000 1 000 Строчный трансформатор Соїс

Редактирование макета документа ОказаниеУслуги

1. Откройте конфигуратор, раскройте дерево документа ОказаниеУслуги и дважды щелкните на макете Печать.

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

2. Добавим новую область для вывода итоговой суммы документа:

  • выделим мышью две пустые строки в Документ ОказаниеУслуги: Печать;
  • выполним команду Таблица в†’ Имена в†’ Назначить имя…¦

[0Конфигуратор учебная версия - Конфигурация Файл Правк -їй ви в ВВ Таблица Конфигурация Отладка. Администрирование Сервис Окна Справка I Формат Г руппы Конфигураци Й } і Общие Константі ф-Д Справомн Документ Нумег После ЁЬМ Прихо о Оказс В В- В= ре Тс Й Ф

3. Назовем область Всего.

Имя: ОК Всего Отмена

4. В созданной области:

  • в колонке Цена, напишем Всего;
  • в колонке Сумма напишем ВсегоПоДокументу.

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

Документ ОказаниеУсяуги: Печать Свойства: Ячейки т 2 3 4 5 1 Заголовок 2 Оказание услуги 3 Шапка 4 5 Номер Номер 6 Дата Дата 7 Склад Склад 3 Клиент Клиент 9 Мастер Мастер 10 11 І І I ПереченьН 12 13 Номенклатура Количество Цена Сумма ПереченьН 14 Номенклат

Каждая ячейка редактируемого нами табличного документа может содержать либо текст, либо некоторый параметр, либо шаблон.

Текст, содержащийся в ячейке, будет показан на экране.

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

Шаблон представляет собой текстовую строку, в определенные места которой будут вставлены значения параметров.

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

6. Теперь откроем модуль формы документа ОказаниеУслуги → ФормаДокумента.

7. Найдем в нем процедуру Печать и после цикла добавим в нее следующие строки:

Область = Макет.ПолучитьОбласть Всего ; Область.Параметры.ВсегоПоДокументу = ПереченьНоменклатуры.Итог Сумма ТабДок.Вывести Область ;

Смысл добавленного фрагмента прост: мы получаем новую область Всего (ту, которую мы только что добавили к макету).

Затем параметру ВсегоПоДокументу, находящемуся в этой области, мы присваиваем значение суммы табличной части документа по колонке Сумма (обращение к табличной части документа выполняется по имени → ПереченьНоменклатуры).

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

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

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

Редактирование формы документа ОказаниеУслуги

1. Откройте в конфигураторе форму документа ОказаниеУслуги → ФормаДокумента.

2. Откройте палитру свойств для табличного поля, расположенного в форме, и установите свойство Подвал, которое определяет наличие подвала у элемента управления Табличное поле.

Оказание услуги й Р ерей™ - Свойства: Т абличное поле Номер: Дата: Склад: Клиент: Мастер: 1... ХІ - - - --і — - - А - —.а / К Клиент Клиент N Номенклатура Количество Цена Сумма х [1ы1 Поле ввода Ш Поле вв.. Иы1 Поле вв... [аЫ1 Пореґвв.. ПроверкаОтображения

3. Откроем свойства колонки Цена:

  • установим текст подвала → Всего: ;
  • горизонтальное положение в подвале → Прижать вправо;
  • в шрифте подвала изменим начертание на Жирный.

4. Откроем свойства колонки Сумма:

  • установим горизонтальное положение в подвале→ Прижать вправо;
  • установим флаг ОтображатьИтогиВПодвале;
  • в шрифте подвала изменим начертание на Жирный.

5. Запустите 1С:Предприятие в режиме отладки и посмотрите как выглядит теперь форма документа ОказаниеУслуги №– 1.

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

Оказание услуги: Оказание услуги л Перейти Ў Номер: Дата: F 00000001 23.03.2003 0:31:48 Склад: Основной Клиент: И ванов М ихаил Ю рьевич М астер: Гусаков Н иколай Дмитриевич t т шг Ш . ..X . ..X N Номенклатура Количество Цена Сумма 1 Ремонт импортного теле

Записаться по телефону