III. СОЗДАНИЕ ДОКУМЕНТОВ




Нужно как-то фиксировать выполняемые менеджером действия:

1. принять насос в ремонт,

2. выдать клиенту отремонтированный насос.

 

Создадим два документа:

1. Акт приема в ремонт.

2. Акт выдачи из ремонта.

 

1. На закладке Документы в Дереве конфигуратора добавим документ АктПриемаВРемонт (рис. 17).

Рис. 17. Документ Акт приема в ремонт

 

2. Что необходимо знать, когда оборудование принимается в ремонт:

1. кто клиент,

2. какое оборудование,

3. на какой склад,

4. в чем неисправность.

Для этого переходим на закладку Данные. Добавляем новый реквизитКлиент, тип данных – Справочник.Ссылка.Клиенты. Для этого нажмем на кнопку Добавить и введите необходимые данные(рис. 18, 18а).

Рис. 18. Документ Акт приема в ремонт закладка Данные

 

Рис. 18а. Документ Акт приема в ремонт закладка Данные Свойства реквизита Клиент

 

3. Аналогично создайте еще три новых Реквизита документа:

- Имя – Оборудование, Тип данных – Справочник.Ссылка.Оборудование

- Имя – Склад, Тип данных – Справочник.Ссылка.Склады

- Имя – ОписаниеНеисправности, Тип данных – Строка, Длина – 250. Чтобы удобнее было записывать, укажем Многострочный режим, Расширенное редактирование. (Это значит, что в форме этот реквизит будет отображаться как поле из нескольких строк. При нажатии кнопки Ввод будет происходить переход к следующей строке этого поля) (рис. 19а). Этот реквизит необходим, чтобы со слов клиента зафиксировать неисправность.

Рис. 19а. Документ Акт приема в ремонт закладка Данные Свойства реквизита ОписаниеНеисправности

 

На рис. 19б представлены созданные реквизиты Документа АктПриемаВРемонт.

Рис. 19б. Документ Акт приема в ремонт закладка Данные

 

4. Создадим второй документ Акт выдачи из ремонта. В основном он будет аналогичен предыдущему. Необходимо указать клиента, оборудование, склад и какие ремонтные работы были выполнены. Т.е. те же реквизиты, что в Акте приема в ремонт. Для быстрого получения нового объекта воспользуемся копированием. Для копирования и вставки документа в конфигурацию используем стандартные клавиатурные команды.

Присвоим новому скопированному документу имя – АктВыдачиИзРемонта.

Реквизиты Клиент, Оборудование, Склад – остаются без изменений, реквизит Описание неисправностей – переименуем в ВыполненныеРаботы.

 

Проверим в работе созданные объекты, запустим приложение в режиме 1С: Предприятие. Выполним команду Сервис – 1С: Предприятие. Сохраним изменения. Запустится 1С: Предприятие.

IV. РЕГИСТРЫИ ОТЧЕТЫ

Т.о. можно создавать клиентов, записать насосы, принятые в ремонт, отремонтировать их и вернуть клиенту. Но через некоторое время руководителя понадобятся отчетные данные. Например, сколько насосов было отремонтировано в прошлом месяце, какое оборудование находится сейчас в ремонте и т.д. Для ответа на эти вопросы служат Отчеты.

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

Это будет работать, пока пользователь не решит усовершенствовать существующую конфигурацию и вести более точный отчет.

Например, реализуем в отчете два фактора:

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

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

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

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

 

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

 

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

 

Переходим назад в Конфигуратор.

 

1. Добавляем Регистр накопленийУчет оборудования.

Правой кнопкой мыши щелкнем по Регистры накопления в конфигураторе и выберем Добавить.

В появившейся форме введем имя регистра УчетОборудования (рис. 20):

Рис. 20. Регистр накопления Учет оборудования

 

2. Далее опишем структуру учета, откроем закладку Данные. Регистр предполагает описание многомерной системы учета, имеющей один или несколько ресурсов в точке пересечения измерений.

Измерения регистра – это разрезы регистра, в которых учитываются хранимые данные.

Создадим три измерения:

- Имя – Оборудование, Тип данные – Справочник.Ссылка.Оборудование.

- Имя – Клиент, Тип данные – Справочник.Ссылка.Клиенты.

- Имя – Склад, Тип данные – Справочник.Ссылка.Склады.

 

Ресурсы регистра – это сами учитываемые показатели. В данном случае учитываемыми показателями является количество.

Так как каждый насос является уникальным – у каждого насоса есть серийный номер, то количество может быть либо 1, либо 0 (насос отремонтировали и отдали).

Создадим ресурс Количество, тип данных – Число.

3. Далее дважды щелкнем на регистр Учет оборудования, на закладке Регистраторы укажем, что данные в это регистр будут записывать два документа Акт приема в ремонт и Акт выдачи из ремонта (рис. 21).

Рис. 21. Регистр накопления Учет оборудования закладка Регистры

 

4. Осталось для каждого из этих документов описать алгоритмы, в соответствии с которыми они будут помещать свои данные в этот регистр. Данные документ, помещенные в регистр, называются Движениями.

 

Дважды щелкнем на документ Акт приема в ремонт. Перейдем на закладку Движения. Воспользуемся Конструктором движения (рис. 22).

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

 

Конструктор движения регистров (рис. 22) содержит:

- слева указано, что движение будем формировать для регистра Учет оборудования;

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

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

- слева в низу перечислены реквизиты регистров, которые должны что-то записать.

Рис. 21. Конструктор движения регистров

 

Для того, чтобы записать в эти регистры воспользуемся кнопкой Заполнить выражение. Конструктор предложил записать в измерения Оборудование, Клиент, Склад. А что записать в ресурс Количество, он не знает (рис. 22).

Рис. 22. Конструктор движения регистров (заполненный)

 

В ресурс количество запишем – 1, т.е. по акту проведения работ – это означает, что в ремонте появилось новое оборудование. Нажмем ОК.

Откроется модуль документа (рис. 23), в котором конструктор сформировал процедуру проведения этого документа.

Рис. 23. Модуль документа Акт приема в ремонт

 

Поясним текст процедуры обработчика.

Конструктор создал обработчик события ОбработкаПроведения объекта конфигурации Документ Акт приема в ремонт, поместил его в модуль объекта и открыл текст модуля.

Событие ОбработкаПроведения является одним из важнейших событий, связанных с документами. Это событие возникает при проведении документа. Основное назначение обработчика – генерация движений по документу. Выполнение различных операций с данными в процедуре обработчика влияет на состояние учета. Т.о., именно в эту процедуру разработчик должен поместить собственные алгоритмы преобразования данных, выполняемые в момент проведения документа.

 

Объект встроенного языка ДокументОбъект имеет свойство Движения. Оно возвращает объект КоллекцияДвижений, содержащий коллекцию наборов записей регистров, по которым этот документ может формировать движение.

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

Затем через точку можно использовать различные методы набора записей регистра (Движения.УчетОборудования.Добавить()). Метод Добавить() добавляет новую запись в набор записей.

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

Далее, используя метод Добавить(), идет добавление к набору записей, который создает документ в регистре, новую запись. Тем самым создаем объект РегистрНакопленияЗапись и сохраняем его в переменной Движение.

Используя этот объект, можно обратиться к полям этой записи, указав имя поля через точку от этой переменной (например, Движение.Период).

Причем Движение.Оборудование, Движение.Клиент, Движение.Склад – это измерения регистра, Движение.Количество – это ресурс регистра, а Движение.ВидДвижения и Движение.Период – стандартные реквизиты регистра, которые создаются автоматически.

Чтобы присвоить полям новой записи регистра соответствующие значения полей документа, обращаемся к полям табличной части, указав имя поля через точку от переменной ТекСтрокаМатериалы (например, ТекСтрокаМатериалы.Материал) (это свойство будем использовать в оборотном регистре).

ВидДвиженияНакопления.Приход – это значение системного перечисления, которое определяет вид движения регистра накопления как Приход.

Т. о., присваиваем нужные значения всем полям новой записи. После перебора всех строк документа (после завершения цикла) в этом наборе записей (Движения.УчетОборудования) будет содержаться столько записей, сколько строк в табличной части проводимого документа.

 

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

 

Выполним: Документ Акт выдачи из ремонта вкладка Движение, далее Конструктор движения. Указываем Тип движения – Расход. Нажимаем – Заполнить выражение. Количество – 1. Нажимаем ОК.

В результате откроется модуль документа (рис. 24), в котором конструктор сформировал процедуру проведения этого документа.

Рис. 24. Модуль документа Акт выдачи из ремонта

 

В результате в регистре должно стать на один насос меньше.

 

6. Далее добавим отчет, который покажет «что обстоит с ремонтом насосов на предприятии в общем».

Для того, чтобы добавить отчет, в Дереве конфигурации выберите Отчет Добавить (рис. 25).

Рис. 25. Дерево конфигурации Добавить отчет

 

Назовем отчет Ремонт оборудования (рис. 26). Основу любого отчета составляет Схема компоновки данных.

Рис. 26. Форма создания отчета

 

7. Открываем Схему компоновки данных . В Конструкторе макета нажмите на кнопку Готово.

 

Любая схема компоновки данных должна знать, откуда необходимо брать данные для отчета. Поэтому добавим Набор данных – запрос (рис. 27).

 

Рис. 27. Основная схема компоновки данных

 

8. Такой набор данных получает данные из базы данных 1С: Предприятия с помощью запроса. Какие именно данные получать, описывается на языке запросов. Нажмем кнопку Конструктор запроса (рис. 28). Конструктор позволяет не писать запрос вручную, а сконструировать его с помощью мыши.

Рис. 28. Конструктор запроса

 

Раскроем Регистры накопления. Перенесем ОстаткиИОборы в Таблицы. Из этой Таблице возьмем все Поля, кроме поля Оборот (рис. 28а).

Рис. 28а. Конструктор запроса

 

На этом формирование данного запроса закончено. Нажмем ОК и закроем Конструктор.

 

9. Сформировался текст запроса и заполнились поля Схемы компоновки данных (рис. 29).

Рис. 29. Схема компоновки данных Отчета

 

Изменим заголовки нескольких полей, чтобы отчет был читабельным.

Поле КоличествоКонечныйОстаток – заменим на Остаток на конец периода (рис. 30, 30а).

Рис. 30. Фрагмент схемы компоновки данных Отчета

Рис. 30а. Фрагмент схемы компоновки данных Отчета

 

Изменим также заголовки еще нескольких полей:

- Поле КоличествоРаход – заменим на Выдано клиенту.

- Поле КоличествоНачальныйОстаток – заменим на Остаток на начало периода.

- Поле КоличествоПриход – заменим на Принято в ремонт.

 

10. Далее на Схеме компоновки данных Отчета переходим на закладку Ресурсы. Все поля, итоговые значения которых можно вычислить в результате выполнения отчета, добавим в ресурсы Схемы компоновки данных (Рис. 31).

Рис. 31. Фрагмент схемы компоновки данных Отчета. Вкладка Ресурсы

 

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

 

11. Переходим на закладку Настройки и создадим структуру отчета (т.е. его внешний вид).

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

Поэтому сначала добавим группировку Клиент (рис. 32а, б, в).

 

Рис. 32а. Фрагмент схемы компоновки данных Отчета. Вкладка Настройки. Создание новой группировки

 

Новая группировка – поле Клиент – ОК (рис. 32б).

Рис. 32б. Создание новой группировки Клиент

 

Далее в группировку Клиент добавим группировку Детальная запись. Для этого нет необходимости указывать группировочное поле (название оставляем пустым) (рис. 32в).

Рис. 32в. Фрагмент схемы компоновки данных Отчета. Вкладка Настройки.

 

Укажем, что в качестве

- начала периода необходимо использовать дату начала этого месяца (рис. 33а),

- конца периодадату начала следующего месяца.

Оба параметра включим в быстрые пользовательские настройки (кнопка справа на форме отчета), чтобы пользователь при желании мог поменять периоды отчета прямо в самой форме отчета (рис. 33в).

Рис. 33а. Фрагмент схемы компоновки данных Отчета. Вкладка Параметры. Начало периода

Рис. 33б. Фрагмент схемы компоновки данных Отчета. Вкладка Параметры. Конец периода

 

Рис. 33в. Пользовательские настройки элемента отчета

12. Перейдем на вкладку Выбранные поля и выберем поля, которые будут отражаться в отчете в следующей последовательности:

- Клиент,

- Оборудование,

- Склад,

- Остаток на начало периода,

- Принято в ремонт,

- Выдано клиенту,

- Остаток на конец периода.

Для этого необходимо два раза щелкнуть мышью на необходимое поле в разделе доступные поля. В результате схема компоновки данных Отчета. Вкладка Выбранные поля должна выглядеть следующим образом (рис 34):

 

Рис. 34. Фрагмент схемы компоновки данных Отчета. Вкладка Выбранные поля

 

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

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-04 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: