search icon search icon ВЕРСИЯ ДЛЯ СЛАБОВИДЯЩИХ

Инженерный тур. 3 этап

Общая информация

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

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

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

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

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

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

Проектным офисом Олимпиады НТО и разработчиками профиля «Автоматизация бизнес-процессов» — фирмой «1С» и фирмой «Неосистемы Северо-Запад ЛТД» — было подготовлено техническое задание на автоматизацию лесопильного завода, которое разбито на шесть задач (сессий).

Описание задачи
Задача 3.1.(100 баллов)
Задание 1

Условие

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

Описание

Основную деятельность лесопильного завода можно разделить на три области:

  1. приемка сырья;
  2. производство (переработка):

    • пиление;
    • сушка пиломатериалов;
    • выпуск пеллет;
  3. отгрузка продукции.

На территории предприятия находятся несколько цехов:

  • лесопильный цех;
  • сушильный комплекс;
  • цех по производству пеллет.

Кроме того, располагаются несколько складов:

  • круглого леса (склад сырья);
  • сырых пиломатериалов;
  • опилок;
  • сухих пиломатериалов;
  • пеллет.

В работе завода можно выделить несколько видов номенклатуры — товарно-материальных ценностей (далее ТМЦ):

  • круглый лес;
  • сырые пиломатериалы;
  • сухие пиломатериалы;
  • опилки;
  • пеллеты.

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

  • для круглого леса: порода древесины, сорт, длина бревна, диаметр бревна (пример номенклатуры — «Пиловочник, Сосна, 1 сорт, 6 м, 24 см»);
  • для сырых пиломатериалов: порода древесины, сорт, длина доски, сечение доски (пример номенклатуры — «Пиломатериалы сырые, Сосна, сорт А, 6 м, 100 \(\times\) 20 мм»);
  • для сухих пиломатериалов: порода древесины, сорт, процент влажности, длина доски, сечение доски (пример номенклатуры — «Пиломатериалы сухие, Сосна, сорт А, 18%, 6 м, 100 \(\times\) 20 мм»);
  • для пеллет: сорт, диаметр гранул (пример номенклатуры — «Пеллеты, 1 сорт, 8 мм»);
  • для опилок: порода древесины (пример номенклатуры — «Опилки, Сосна»).

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

  • круглый лес является сырьем лесопильного завода;
  • сырые пиломатериалы и опилки относятся к полуфабрикатам;
  • готовая продукция — сухие пиломатериалы и пеллеты.

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

Требуется разработать приложение для автоматизации лесопильного завода, создать основные разделы приложения и основные объекты для хранения информации о товарно-материальных ценностях (ТМЦ). Реализовать возможность регистрации приемки сырья — круглого леса.

Постановка задачи:

  1. Создать приложение для управления лесопильным заводом.
  2. Разделить приложение на разделы по областям деятельности: приемка сырья, переработка, отгрузка продукции.
  3. Создать объект для хранения видов номенклатуры лесопильного завода (ее виды перечислены в описании задачи). Объект должен быть доступен во всех подсистемах приложения.
  4. Создать объекты для хранения свойств видов номенклатуры. Учесть связь вида номенклатуры и его свойств (можно использовать один или несколько объектов для указания свойств). Свойства также должны быть доступны во всех подсистемах приложения.
  5. Создать объект для хранения позиций номенклатуры. В карточке номенклатуры завода должна храниться информация об ее наименовании и виде. Объект должен быть доступен во всех подсистемах приложения.
  6. Реализовать отображение на карточке номенклатуры доступных свойств в зависимости от вида номенклатуры (недоступные свойства должны быть скрыты от пользователя). Свойства видов номенклатуры перечислены в описании.
  7. Реализовать автоматическое заполнение наименования номенклатуры (с возможностью редактирования пользователем). Наименование составляется из значений вида номенклатуры и значений свойств, введенных пользователем и разделяемых запятыми (см. примеры номенклатуры в описании задачи).
  8. Осуществить проверку заполнения при создании карточки номенклатуры — контролировать заполнение всех свойств для указанного данного вида вида номенклатуры, в противном случае — не разрешать сохранять такую карточку.
  9. Создать объект для хранения информации о поставщиках лесопильного сырья. Информация о поставщиках должна быть доступна в разделе «Приемка сырья» приложения.
  10. Создать объект для регистрации приемки лесопильного сырья на заводе — «Поступление сырья». Информация о приемке сырья должна быть доступна в разделе «Приемка сырья» приложения. В объекте для регистрации приемки лесопильного сырья должна отражаться следующая информация:

    • дата приемки сырья (формат — дата и время);
    • информация о поставщике сырья (берется из соответствующей таблицы);
    • номенклатура сырья, которая поступила на завод (берется из соответствующей таблицы);
    • количество лесосырья по данным поставщика (число, количество кубометров);
    • количество лесосырья по данным приемки на заводе (число, количество кубометров);
    • дополнительная информация о приемке сырья (произвольное текстовое описание).

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

  11. Создать объект для анализа данных (аналитический отчет), в котором выводятся результаты приемки сырья, в частности, информация о том:

    • От каких поставщиков поступило сырье?
    • Какая номенклатура сырья поступила?
    • Какое количество сырья поступило (по данным поставщика)?
    • Какое количество сырья поступило (по данным приемки на заводе)?

    Аналитический отчет должен быть доступен в разделе «Приемка сырья» приложения.

Заполнение тестовыми данными

  1. Ввести виды номенклатуры согласно описанию.
  2. Ввести свойства номенклатуры согласно описанию.
  3. Заполнить не менее одного пункта номенклатуры по каждому виду.
  4. Ввести не менее двух поставщиков.
  5. Зарегистрировать не менее двух поступлений сырья от разных поставщиков.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Наличие пояснительной записки. 1
Создано приложение для автоматизации оперативного учета лесозавода. 5
Приложение разделено на три части по областям деятельности: приемка сырья, переработка, отгрузка продукции. 2
Создан объект «Виды номенклатуры» и размещен во всех подсистемах (минус 1 балл за неправильное размещение). 2
Создан объект для хранения свойств видов номенклатуры. Существует связь между видом номенклатуры и его свойствами (баллы уменьшаются вдвое, если связи нет). 4
Создан объект для хранения номенклатуры согласно постановке задания (минус 1 балл за отсутствующее поле) и размещен во всех подсистемах (минус 1 балл за неправильное размещение). 3
При выборе вида номенклатуры появляются поля для ввода значений соответствующих свойств. 10
Реализована автоматическая подстановка наименования на основании значений свойств. 9
Реализована проверка заполнения свойств номенклатуры. 7
Создан объект для хранения информации о поставщиках и размещен в подсистему «Приемка» (минус 1 балл за неправильное размещение). 2
Создан объект «Поступление сырья» и размещен в подсистеме «Приемка». 2
В «Поступлении сырья» содержится информация о дате приемке нужного формата (за неправильный формат — минус 1 балл). 2
В «Поступлении сырья» содержится информация о поставщике нужного формата (за неправильный формат — минус 1 балл). 2
В «Поступлении сырья» содержится информация о номенклатуре нужного формата (за неправильный формат — минус 1 балл). 2
В «Поступлении сырья» содержится информация о количестве сырья по данным поставщика нужного формата (за неправильный формат — минус 1 балл). 2
В «Поступлении сырья» содержится информация о количестве сырья по данным приемке нужного формата (за неправильный формат — минус 1 балл). 2
В «Поступлении сырья» реализована возможность выбора только той номенклатуры, которая относится к сырью. 4
Создан работающий отчет, правильно отражающий данные согласно постановке задания. Отчет размещен в подсистеме «Приемка» (минус балл за неправильное размещение). 25
Заполнены виды номенклатуры согласно описанию (минус 0,5 балла за каждый отсутствующий вид). 2
Заполнены свойства номенклатуры (минус 0,5 балла за каждое отсутствующее свойство). 4
Введено не менее одного пункта номенклатуры по каждому виду (минус 1 балл за каждую отсутствующую номенклатуру). 3
Заполнены поставщики (минус 0,5 балл за каждое отсутствующее свойство). 1
Зарегистрированы поступления сырья от поставщика. 4

Решение

Видеоразбор задач: https://rutube.ru/plst/934827/.

Сессия 1: https://rutube.ru/video/118f4fd3228aace4aa6c062a24d3f1aa/?playlist=934827.

Рис. 3.1. Пример созданного приложения

Рис. 3.2. Внешний вид справочника «Виды номенклатуры»

Рис. 3.3. Внешний вид справочника «Свойства номенклатуры»

В решении свойства номенклатуры указываются в карточке самой номенклатуры, а именно, в табличной части (см. рис. 3.4).

Рис. 3.4. Карточка номенклатуры

Рис. 3.5. Документ «Поступление сырья»

Пример грамотно оформленного отчета показан на рис. 3.6).

Рис. 3.6. Отчет

Для удобного выбора данных в отчет был создан объект — регистр накопления «РезультатыПриемкиСырья» со следующей структурой (см. рис. 3.7).

Рис. 3.7. Регистр накопления «РезультатыПриемкиСырья»

Задача 3.2.(100 баллов)
Задание 2

Условие

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

Описание

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

Первым этапом переработки является пиление (производство сырых пиломатериалов в лесопильном цехе). Материалом (сырьем) являются круглые лесоматериалы. Результат пиления — сырые пиломатериалы и опилки.

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

Требуется доработать приложение для автоматизации лесопильного завода — реализовать возможность регистрации пиления сырья и выпуска полуфабрикатов: сырых пиломатериалов и опилок.

Постановка

  1. Создать объект для регистрации результатов работы лесопильного цеха — «Результат работы цеха». Сведения о результатах работы лесопильного цеха должны быть доступны в разделе «Переработка» приложения. В объекте для регистрации результатов работы лесопильного цеха должна отражаться следующая информация:

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

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

  2. Создать объект для хранения информации о поставах пиления. Информация о поставах пиления должна быть доступна в разделе «Переработка» приложения. В объекте для хранения информации о поставах пиления должна отражаться следующая информация:

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

    Требуется реализовать проверку на сохранение постава пиления в приложении: если какое-то из полей не заполнено, то такой постав не должен быть сохранен.

    Если процент выхода центральной доски, боковой доски и опилок суммарно не равен 100%, то такой постав не должен быть сохранен, и в этом случае пользователю надо вывести сообщение.

  3. Доработать объект для регистрации результатов работы лесопильного цеха. Добавить возможность указания постава пиления. После указания постава пиления:

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

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

  4. Создать объект для анализа данных (аналитический отчет), в котором выводятся результаты работы лесопильного цеха за период, в частности, информация о том:

    • Какое лесосырье было распилено?
    • Сколько лесосырья было распилено?
    • Какие сырые пиломатериалы были получены?
    • Сколько сырых пиломатериалов получилось?
    • Какие опилки были получены?
    • Сколько опилок получилось?

    Аналитический отчет должен быть доступен в разделе «Переработка» приложения.

Заполнение тестовыми данными

  1. Создать не менее трех различных поставов пиления.
  2. Зарегистрировать не менее трех результатов работы цеха на разные даты.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Создан объект «Результат работы цеха» и помещен в раздел переработка (за неправильное размещение — минус 1 балл). 2
В объекте «Результат работы цеха» есть поле «Дата» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы цеха» есть поле «Номенклатура материала (сырья)» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры сырья доступна только та номенклатура, которая относится к сырью. 4
В объекте «Результат работы цеха» есть поле «Количество материала (лесосырья)» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы цеха» есть поле «Номенклатура продукции» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры продукции доступна только та номенклатура, которая относится к полуфабрикатам — сырым материалам и опилкам. 4
В объекте «Результат работы цеха» есть поле «Количество продукции» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы цеха» есть текстовое поле «Дополнительная информация» (за неверный формат — минус 1 балл). 2
Создан объект для хранения информации о поставах пиления. 2
В объекте есть «Наименование постава» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Номенклатура центральной доски» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Процент выхода центральной доски» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Номенклатура боковой доски» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Процент выхода боковой доски» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Номенклатура опилок» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Процент выхода опилок» нужного формата (за неверный формат — минус 1 балл). 2
При записи реализована проверка заполнения полей «Постава пиления». 6
При записи реализована проверка, что суммарно значение полей «Процент выхода центральной доски», «Процент выхода боковой доски» и «Процент выхода опилок» равен 100. 9
В объекте «Результат работы цеха» есть возможность указания «Постава пиления», при этом номенклатура продукции заполняется в соответствии с «Поставом». 6
В объекте «Результат работы цеха» при указании постава пиления автоматически рассчитывается количество продукции в соответствии с «Поставом» пиления. 8
Создан работающий отчет «Результаты работы лесопильного цеха». Отчет можно формировать за период. Отчет отражает требуемые данные. 27
Введено не менее трех поставов пиления. 3
Зарегистрировано не менее трех результатов работы лесопильного цеха. 3

Решение

Видеоразбор задач финала НТО: https://rutube.ru/plst/934827/.

Сессия 2: https://rutube.ru/video/c8f9bc2bb33f1565c69288c8af95a4f6/?playlist=934827.

Пример документа «Результат работы цеха» (см. рис. 3.8).

Рис. 3.8. Документ «Результат работы цеха»

Пример заполнения постава пиления (см. рис. 3.9).

Рис. 3.9. Документ «Постав пиления»

Алгоритм заполнения данных по поставу пиления записан в модуле формы (предварительно была создана форма документа), приведен на рис. 3.10. Здесь же произведена проверка, что суммарно значение полей «Процент выхода центральной доски», «Процент выхода боковой доски» и «Процент выхода опилок» равен 100.

Рис. 3.10.

Пример отчета о работе цеха приведен на рис. 3.11.

Рис. 3.11. Отчет о работе цеха

Для удобного вывода данных в отчет создана дополнительная таблица — регистр накопления «РезультатРаботыЛесопильногоЦеха» со структурой, приведенной на рис. 3.12.

Рис. 3.12. Регистр накопления

Задача 3.3.(100 баллов)
Задание 3

Условие

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

Описание

Второй этап переработки — сушка (производство сухих пиломатериалов в сушильном комплексе). Материалом (сырьем) для сушки являются сырые пиломатериалы. В результате появляются сухие пиломатериалы.

Сушка происходит по специальным режимам работы сушильного комплекса, в котором содержится информация о том, какой процент влажности доски (сухого пиломатериала) должен получиться, и на какой процент усушки уменьшится объем пиломатериалов.

Требуется доработать приложение для автоматизации лесопильного завода: реализовать возможность регистрации сушки пиломатериалов и выпуска готовой продукции — сухих пиломатериалов.

Постановка:

  1. Создать объект для регистрации результатов работы сушильного комплекса. Информация о результатах работы сушильного комплекса должна быть доступна в разделе «Переработка» приложения. В объекте для регистрации результатов работы сушильного комплекса должна отражаться следующая информация:

    • дата работы сушильного комплекса (формат — дата);
    • номенклатура материала (сырья), которая поступила в сушильный комплекс (берется из соответствующей таблицы);
    • количество материала (сырья) (число, количество кубометров);
    • номенклатура продукции, которая была выпущена в сушильном комплексе (берется из соответствующей таблицы);
    • количество продукции (число, количество кубометров);
    • дополнительная информация о работе сушильного комплекса (произвольное текстовое описание).

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

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

  2. Создать объект для хранения информации о режимах сушки. Информация о режимах сушки должна быть доступна в разделе «Переработка» приложения. В объекте для хранения информации о режимах сушки должна отражаться следующая информация:

    • наименование режима сушки;
    • номенклатура сырых пиломатериалов;
    • итоговый процент влажности сухих пиломатериалов;
    • процент усушки.

    Требуется выполнить проверку на сохранение режима сушки в приложении — если какое-то из полей не заполнено, то такой режим сушки не должен быть сохранен.

  3. Доработать объект для регистрации результатов работы сушильного комплекса. Добавить возможность указания режима сушки.

    После этого:

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

    После указания количества материалов должно быть рассчитано количество продукции в соответствии с режимом сушки (количество продукции уменьшается на процент усушки).

    Если номенклатура материала или номенклатура продукции была указана ранее, то она должна быть очищена перед автоматическим заполнением по режиму сушки.

  4. Создать объект для анализа данных (аналитический отчет), в котором вывыводятся результаты работы сушильного комплекса, а именно, сведения о том:

    • Какие сухие пиломатериалы были получены?
    • Сколько сухих пиломатериалов получилось?

    Информация в аналитическом отчете выводить в следующей иерархии:

    • порода древесины;
    • сорт, процент влажности;
    • длина пиломатериала, сечение;
    • номенклатура.

    Аналитический отчет должен быть доступен в разделе «Переработка» приложения.

Заполнение тестовыми данными

  1. Создать не менее трех различных режимов сушки.
  2. Зарегистрировать не менее трех результатов работы сушильного комплекса на разные даты.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Имеется пояснительная записка. 1
Создан объект «Результат работы сушильного комплекса» и помещен в раздел «Переработка» (за неправильное размещение — минус 1 балл). 2
В объекте «Результат работы сушильного комплекса» есть поле «Дата» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы сушильного комплекса» есть поле «Номенклатура материала (сырья)» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры сырья доступна только та номенклатура, которая относится к сырым лесоматериалам. 4
В объекте «Результат работы сушильного комплекса» есть поле «Количество материала (лесосырья)» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы сушильного комплекса» есть поле «Номенклатура продукции» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры продукции доступна только та номенклатура, которая относится к полуфабрикатам — сухим материалам. 4
В объекте «Результат работы сушильного комплекса» есть поле «Количество продукции» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы сушильного комплекса» есть текстовое поле «Дополнительная информация» (за неверный формат — минус 1 балл). 2
Создан объект для хранения информации о режимах сушки 2
В объекте есть «Наименование режима сушки» (за неверный формат — минус 1 балл). 2
В объекте есть поле «Номенклатура сырых пиломатериалов» нужного формата (за неверный формат — минус 1 балл). 2
В объекте есть поле «Итоговый процент влажности сухих пиломатериалов» нужного формата» (за неверный формат — минус 1 балл). 2
В объекте есть поле «Процент усушки» нужного формата (за неверный формат — минус 1 балл). 2
При записи объекта для хранения информации о режимах сушки реализована проверка заполнения полей. 5
В объекте «Результат работы сушильного комплекса» есть возможность указания режима сушки. Номенклатура материала заполняется в соответствии с режимом сушки. 5
В объекте «Результат работы сушильного комплекса» есть возможность указания режима сушки. Номенклатура продукции заполняется автоматически в соответствии с режимом сушки. 7
Если при подборе номенклатуры продукции по режиму сушки не находится подходящая номенклатура, пользователю выводится сообщение. 10
После указания количества материалов автоматически рассчитывается количество продукции в соответствии с режимом сушки (количество продукции уменьшается на процент усушки). 9
Создан работающий отчет «Результаты работы сушильного комплекса». Отчет можно формировать за период. Отчет отражает требуемые данные. 25
Введено не менее трех режимов сушки. 3
Зарегистрировано не менее трех результатов работы сушильного комплекса. 3

Решение

Видеоразбор задач финала НТО: https://rutube.ru/plst/934827/.

Сессия 3: https://rutube.ru/video/6d5eef016082fd8584aa5576b2f81409/?playlist=934827.

Пример объекта «Результат работы сушильного комплекса» приведен на рис. 3.13.

Рис. 3.13. Объект «Результат работы сушильного комплекса»

Пример заполнения режимов сушки приведен на рис. 3.14.

Рис. 3.14. Объект «Режимы сушки»

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

1C

&НаСервере
Процедура РежимСушкиПриИзмененииНаСервере()
    Объект.НоменклатураМатериала = Объект.РежимСушки.НоменклатураСырье; 
    
    ПроцентВлажонсти = "" + Объект.РежимСушки.ИтоговыйПроцентВлажности + "%";
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ
    |    НоменклатураСвойстваНоменклатуры.Ссылка КАК Ссылка
    |ИЗ
    |    Справочник.Номенклатура.СвойстваНоменклатуры КАК НоменклатураСвойстваНоменклатуры
    |ГДЕ
    |    НоменклатураСвойстваНоменклатуры.Свойство = &Свойство
    |    И НоменклатураСвойстваНоменклатуры.ЗначениеСвойства = &ЗначениеСвойства";
    
    Свойство = Справочники.СвойстваНоменклатуры.НайтиПоНаименованию("Процент влажности");
    Запрос.УстановитьПараметр("ЗначениеСвойства", ПроцентВлажонсти);
    Запрос.УстановитьПараметр("Свойство", Свойство);
    
    РезультатЗапроса = Запрос.Выполнить();
    Если РезультатЗапроса.Пустой() Тогда 
        Сообщить("Номенклатуры с таким процентом влажности нет в системе");
        Возврат;
    КонецЕсли;
    
    Выборка = РезультатЗапроса.Выбрать();
    Если Выборка.Количество() = 1 Тогда  
        Выборка.Следующий();
        Объект.НоменклатураПродукции = Выборка.Ссылка;
        РасчетКоличестваПродукции();
    Иначе
        Сообщение = "Указанному проценту влажности соответствует несколько позиций: ";
        Пока Выборка.Следующий() Цикл
            Сообщение = Сообщение + ", " + Выборка.Ссылка;
        КонецЦикла;
        Сообщение = Сообщение + "/n Выберите номенклатуру вручную"; 
        Сообщить(Сообщение);
    КонецЕсли;
КонецПроцедуры

&НаКлиенте
Процедура РежимСушкиПриИзменении(Элемент)
    РежимСушкиПриИзмененииНаСервере();
КонецПроцедуры

&НаСервере
Процедура РасчетКоличестваПродукции()
    ПроцентСушки = Объект.РежимСушки.ПроцентСушки;
    Объект.КоличествоПродукции = Объект.КоличествоМатериала * (100 - ПроцентСушки)/100;
КонецПроцедуры

&НаКлиенте
Процедура КоличествоМатериалаПриИзменении(Элемент)
    РасчетКоличестваПродукции();
КонецПроцедуры

&НаКлиенте
Процедура НоменклатураПродукцииПриИзменении(Элемент)
    РасчетКоличестваПродукции();
КонецПроцедуры

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

Рис. 3.15.

Кроме того, для «Сбора данных» для отчета был создан регистр накопления «РезультатРаботыСушильногоЦеха» со структурой, приведенной на рис. 3.16.

Рис. 3.16.

Задача 3.4.(100 баллов)
Задание 4

Условие

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

Описание

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

Пеллетный цех работает в разных режимах, при которых пеллеты при выпуске фасуются в разные упаковки. В качестве упаковок используются мешки по 10 кг, 15 кг, 30 кг и биг-бэги по 0,5 т, 1 т и 3 т.

Требуется доработать приложение для автоматизации лесопильного завода и реализовать возможность регистрации выпуска пеллет.

Постановка:

  1. Создать объект для регистрации результатов работы цеха по выпуску пеллет. Информация о результатах работы цеха по выпуску пеллет должна быть доступна в разделе «Переработка» приложения. В объекте для регистрации результатов работы цеха по выпуску пеллет должна отражаться следующая информация:

    • дата работы цеха;
    • номенклатура материала (сырья), которая поступила в цех;
    • количество материала (сырья);
    • номенклатура продукции, которая была выпущена в цехе;
    • количество продукции;
    • дополнительная информация о работе цеха (произвольное текстовое описание)

    При указании номенклатуры материала (сырья) пользователь может выбрать только ту номенклатуру, которая относится к полуфабрикатам лесопильного завода — опилкам.

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

  2. Создать объект для хранения информации об упаковках пеллет. Варианты упаковок представлены в описании. Информация об упаковках должна быть доступна в разделе «Переработка» приложения.
  3. Доработать объект для регистрации результатов работы цеха по выпуску пеллет. Добавить возможность указания, а также информацию о том, какая упаковка используется при выпуске пеллет. При выборе упаковки и вводе количества упаковок должно пересчитываться количество выпущенных пеллет в килограммах. При изменении упаковки такой пересчет также должен происходить. Если пользователь меняет количество выпущенной продукции в килограммах, то должно рассчитываться количество упаковок. Если количество продукции не получается расфасовать полностью в выбранную упаковку (например, 100 кг пеллет не расфасовать в мешки по 30 кг), то пользователю следует вывести об этом предупреждающее сообщение.
  4. Создать объект для анализа данных (аналитический отчет), в котором выводить результаты работы цеха по выпуску пеллет, а именно, информацию о том:

    • Какие пеллеты были произведены?
    • Сколько пеллет было выпущено (кг)?
    • В какие упаковки были расфасованы пеллеты?
    • Сколько упаковок пеллет было выпущено?

    Аналитический отчет должен быть доступен в разделе «Переработка» приложения.

Заполнение тестовыми данными

  1. Создать не менее трех различных упаковок пеллет.
  2. Зарегистрировать не менее трех результатов работы по выпуску пеллет.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Имеется пояснительная записка 1
Создан объект «Результат работы пеллетного цеха» и помещен в раздел «Переработка» (за неправильное размещение — минус 1 балл). 2
В объекте «Результат работы пеллетного цеха» есть поле «Дата» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы пеллетного цеха» есть поле «Номенклатура материала (сырья)» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры сырья доступна только та номенклатура, которая относится к полуфабрикатам завода — опилкам. 4
В объекте «Результат работы пеллетного цеха» есть поле «Количество материала (лесосырья)» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы пеллетного цеха» есть поле «Номенклатура продукции» нужного формата (за неверный формат — минус 1 балл). 2
При выборе номенклатуры продукции доступна только та номенклатура, которая относится к пеллетам. 4
В объекте «Результат работы пеллетного цеха» есть поле «Количество продукции» нужного формата (за неверный формат — минус 1 балл). 2
В объекте «Результат работы пеллетного цеха» есть текстовое поле «Дополнительная информация» (за неверный формат — минус 1 балл). 2
Создан объект для хранения информации об упаковках. 6
В объекте «Результат работы пеллетного цеха» есть возможность указания упаковки и количества упаковок. 5
В объекте «Результат работы пеллетного цеха» при вводе упаковки и количества упаковок пересчитывается количество продукции, и наоборот, при вводе количества продукции пересчитывается количество упаковок. При изменении упаковки количество продукции также пересчитывается. Минус 2 балла, если в какую-то сторону расчет не работает. 18
Если количество продукции не расфасовать в выбранную упаковку, пользователю выводится сообщение об этом. 12
Создан работающий отчет «Результаты работы пеллетного цеха». Отчет можно формировать за период. Отчет отражает требуемые данные. 30
Введено не менее трех упаковок. 3
Зарегистрировано не менее трех результатов работы пеллетного цеха. 3

Решение

Видеоразбор задач финала НТО: https://rutube.ru/plst/934827/.

Сессия 4: https://rutube.ru/video/0928f8c063353d598e4d691afda9ae61/?playlist=934827.

Пример документа, регистрирующего выпуск пеллет, приведен на рис. 3.17.

Рис. 3.17. Документ для регистрации выпуска пеллет

Пример объекта, где хранится информация об упаковках, приведен на рис. 3.18.

Рис. 3.18. Информация об упаковке

Алгоритм подстановки упаковок в документ и пересчет количества продукции в зависимости от упаковок, как и в предыдущих двух задачах реализован в модуле формы документа.

1C
&НаКлиенте
Процедура УпаковкаПаллетПриИзменении(Элемент) 
    

    ВмещаемыйВесОднойУпаковки = РасчетКоличестваУпаковок();
    Объект.КоличествоПродукции = Объект.КоличествоУпаковок * ВмещаемыйВесОднойУпаковки;
        
КонецПроцедуры

&НаКлиенте
Процедура КоличествоУпаковокПриИзменении(Элемент)
    ВмещаемыйВесОднойУпаковки = РасчетКоличестваУпаковок();
    Объект.КоличествоПродукции = Объект.КоличествоУпаковок * ВмещаемыйВесОднойУпаковки;
КонецПроцедуры

&НаКлиенте
Процедура КоличествоПродукцииПриИзменении(Элемент) 
    Объект.КоличествоУпаковок = 0;
    Если ЗначениеЗаполнено(Объект.Упаковка) Тогда 
        ВмещаемыйВесОднойУпаковки = РасчетКоличестваУпаковок();
        КоличествоУпаковок = Объект.КоличествоПродукции / ВмещаемыйВесОднойУпаковки;
        
        Если Цел(КоличествоУпаковок) <> КоличествоУпаковок Тогда 
            Сообщение = СтрШаблон("Нельзя расфасовать %1 кг паллет в упаковки по %2 кг", Объект.КоличествоПродукции, ВмещаемыйВесОднойУпаковки);
            Сообщить(Сообщение);
            Возврат;
        КонецЕсли;
        
        Объект.КоличествоУпаковок = КоличествоУпаковок; 
    КонецЕсли;
КонецПроцедуры

&НаСервере
Функция РасчетКоличестваУпаковок()
    Возврат Объект.Упаковка.Вес;
КонецФункции

Внешний вид правильно работающего отчета приведен на рис. 3.19.

Рис. 3.19. Отчет о работе цеха по выпуску пеллет

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

Рис. 3.20. Регистр накопления

Задача 3.5.(100 баллов)
Задание 5

Условие

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

Описание

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

Цены на сухие пиломатериалы устанавливаются из расчета на 1 м\(^3\), цены на пеллеты устанавливаются в зависимости от упаковки. Прайс-листы могут актуализироваться, в этом случае цены на продукцию могут быть изменены. Актуальным прайс-листом является документ с более поздней датой начала действия. Сформированные прайс-листы используются для оформления продажи продукции лесопильного завода.

На заводе используются следующие виды цен на продукцию:

  • оптовая (себестоимость +20% от себестоимости);
  • розничная (себестоимость +50% от себестоимости).

В данной задаче цены на продукцию по виду цен устанавливаются вручную.

При оформлении продажи продукции лесопильного завода пользователи указывают информацию о том:

  • Кому продается готовая продукция?
  • В каком количестве?
  • По какой цене?

Для сухих пиломатериалов количество продажи указывается в кубометрах. Для пеллет количество продажи указывается в зависимости от вида упаковки (например, пользователь при оформлении продажи может указать, что покупатель приобретает пеллеты в количестве 10 мешков по 30 кг).

Требуется доработать приложение для автоматизации лесопильного завода. Реализовать возможность формирования прайс-листов с ценами на продукцию. Реализовать возможность регистрации продажи готовой продукции.

Постановка:

  1. Создать объект для хранения информации о покупателях продукции лесопильного завода. Информация о покупателе должна быть доступна в разделе «Отгрузка продукции» приложения.
  2. Создать объект для хранения информации о видах цен на продукцию. Информация о видах цен должна быть доступна в разделе «Отгрузка продукции» приложения.
  3. Создать объект для регистрации цен (прайс-листа) на продукцию. Информация о прайс-листах должна быть доступна в разделе «Отгрузка продукции» приложения. В объекте для регистрации прайс-листа должна отражаться следующая информация:

    • дата начала действия прайс-листа;
    • вид цены на продукцию;
    • вид готовой продукции лесопильного завода;
    • перечень продукции (перечень номенклатурных позиций) с указанием цен на нее;
    • дополнительная информация о прайс-листе (произвольное текстовое описание).

    Обратите внимание, что цены на пеллеты устанавливаются в зависимости от упаковки, поэтому в прайс-листе требуется указание вида упаковки. На сухие пиломатериалы цены устанавливаются из расчета на 1 м\(^3\), поэтому указание вида упаковки не требуется.

    Добавить в объект для регистрации прайс-листа сервис по заполнению перечня продукции — при таком заполнении в прайс-лист должны попасть те позиции номенклатуры, которые относятся к указанному в прайс-листе виду готовой продукции лесопильного завода.

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

  4. Создать объект для регистрации продажи продукции лесопильного завода. Информация о продаже должна быть доступна в разделе «Отгрузка продукции» приложения. В объекте для регистрации продажи продукции лесопильного завода должна отражаться следующая информация:

    • дата продажи;
    • информация о покупателе;
    • вид цены на продукцию;
    • вид готовой продукции лесопильного завода, которая продается;
    • перечень продукции, которая продается (перечень номенклатурных позиций);
    • количество продукции;
    • цена продукции;
    • сумма продажи (вычисляется как цена продукции \(\times\) количество продукции).
    • дополнительная информация о продаже продукции (произвольное текстовое описание).

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

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

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

  5. Создать объект для анализа данных (аналитический отчет), в котором выводятся результаты продажи продукция, а именно, информация от том:

    • Каким покупателям была продана продукция?
    • Какая номенклатура была продана (если продукцией являлись пеллеты, то также в какой упаковке были проданы пеллеты)?
    • Какое количество продукции было продано?
    • На какую сумму продукция была продана?

    Аналитический отчет должен быть доступен в разделе «Отгрузка продукции» приложения.

Заполнение тестовыми данными

  1. Создать три прайс-листа: один — на «старую» дату, второй — на ту же продукцию и тот же вид цены, но с более «свежей» датой, третий прайс-лист должен быть актуальным на ту же продукцию, что и в предыдущих прайс-листах, но на другой вид цены.
  2. Зарегистрировать не менее трех документов продаж разной продукции. Одной из продаж должна быть продажа пеллет.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Имеется пояснительная записка. 1
Создан объект для хранения информации о покупателях. Минус 1 балл за неверное расположение в подсистеме. 2
Создан объект для хранения информации о видах цен. Минус 1 балл за неверное расположение в подсистеме. 2
Создан объект для регистрации цен (прайс-лист). Минус 1 балл за неверное расположение. 2
В прайс-листе есть дата начала действия прайс-листа. Минус 1 балл за неверный формат поля. 2
В прайс-листе есть поле «Вид цены на продукцию». Минус 1 балл за неверный формат поля. 2
В прайс-листе есть поле «Вид продукции». Минус 1 балл за неверный формат поля. 2
В прайс-листе есть табличное поле для перечисления продукции и указание цены на продукцию. Минус 1 балл за неверный формат какой-либо колонки «Номенклатура» или «Цена». 4
Табличное поле заполняется продукцией автоматически на основании вида продукции с возможностью удаления ненужных строк. 8
В прайс-листе есть поле для произвольного текстового описания. Минус 1 балл за неверный формат. 2
В прайс-листе при регистрации цен на пеллеты необходимо указать упаковку, при этом для остальных видов продукции указывать упаковку не требуется. 7
Создан объект для регистрации продаж. Минус 1 балл за неверное расположение. 2
В объекте для регистрации продаж есть поле для указания информации о покупателе. Минус 1 балл за неверный формат поля. 2
В объекте для регистрации продаж есть поле для указания вида цены на продукцию. Минус 1 балл за неверный формат поля. 2
В объекте для регистрации продаж есть поле для указания вида готовой продукции. Минус 1 балл за неверный формат поля. 2
В объекте для регистрации продаж есть табличная часть для указания перечня продукции, цены, количества и суммы. 1
В табличной части объекта для регистрации продаж есть поле «Номенклатура». Минус 1 балл за неверный формат. 2
Пользователь может выбрать только ту номенклатуру, которая относится к выбранному виду продукции. 2
В табличной части объекта для регистрации продаж есть поле «Количество продукции» Минус 1 балл за неверный формат. 2
В табличной части объекта для регистрации продаж есть поле «Цена продукции» Минус 1 балл за неверный формат. 2
Цена подставляется автоматически из действующего прайс-листа. 8
В табличной части объекта для регистрации продаж есть поле «Сумма продажи» Минус 1 балл за неверный формат. 2
В объекте для регистрации продажи есть поле для комментариев. Минус 1 балл за неверный формат. 2
При оформлении продажи пеллет количество считается в зависимости от упаковки, т. е. при продаже пеллет обязательно указывать упаковку. 6
Создан работающий отчет согласно заданию, отражающий верные данные. 25
Зарегистрированы три прайс-листа согласно заданию. 3
Зарегистрированы три продажи согласно заданию. 3

Решение

Видеоразбор задач финала НТО: https://rutube.ru/plst/934827/.

Сессия 5: https://rutube.ru/video/66b1e36d7689b4b6a471f07353223507/?playlist=934827.

Пример прайс-листа, регистрирующего цены, приведен на рис. 3.21.

Рис. 3.21. Прайс-лист для регистрации цены

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

Рис. 3.22.

Алгоритм подбора номенклатуры и возможности добавления упаковок создается в модуле формы документа «Прайс-лист».

1C

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ПроверкаВидаНоменклатуры();
КонецПроцедуры

&НаКлиенте
Процедура ВидНоменклатурыПриИзменении(Элемент)
    ПроверкаВидаНоменклатуры();
    ЗаполнитьСписокНоменклатурыПоВиду();
КонецПроцедуры 

&НаСервере
Процедура ПроверкаВидаНоменклатуры()
    ЭтоПаллет = Объект.ВидНоменклатуры.Наименование = "Паллеты";
    Элементы.СписокНоменклатурыУпаковка.Видимость = ЭтоПаллет; 
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьСписокНоменклатурыПоВиду()
    Объект.СписокНоменклатуры.Очистить();
    
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    Номенклатура.Ссылка КАК Номенклатура
        |ИЗ
        |    Справочник.Номенклатура КАК Номенклатура
        |ГДЕ
        |    Номенклатура.ВидНоменклатуры = &ВидНоменклатуры";
    
    Запрос.УстановитьПараметр("ВидНоменклатуры", Объект.ВидНоменклатуры);
    
    РезультатЗапроса = Запрос.Выполнить(); 
    
    Объект.СписокНоменклатуры.Загрузить(РезультатЗапроса.Выгрузить());
    
КонецПроцедуры

Для удобного хранения цен и их использования для подстановки в документы, вывода в отчет и т. д. был создан регистр сведений «ПрайсЛист» со следующей структурой (см. рис. 3.23).

Рис. 3.23. Регистр сведений «ПрайсЛист»

Пример документа регистрации продаж приведен на рис. 3.24.

Рис. 3.24. Регистрация продаж

Для пеллет при регистрации продажи также необходимо указывать упаковку. При выборе номенклатуры с видом «пеллеты» появляется поля для указания упаковки (см. рис. 3.25).

Рис. 3.25.

Алгоритмы подбора номенклатуры, возможности указания упаковок для пеллет, подстановки цены в документ продажи из прайс-листа создаются также в модуле формы документа продажи.

1C
&НаКлиенте
Процедура ВидНоменклатурыПриИзменении(Элемент)
    ПроверкаВидаНоменклатуры();
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ПроверкаВидаНоменклатуры();
КонецПроцедуры

&НаСервере
Процедура ПроверкаВидаНоменклатуры()
    ЭтоПаллет = Объект.ВидНоменклатуры.Наименование = "Паллеты";
    Элементы.СписокНоменклатурыУпаковка.Видимость = ЭтоПаллет; 
КонецПроцедуры

&НаКлиенте
Процедура ВидЦеныПриИзменении(Элемент)
    Для каждого СтрокаРасчета Из Объект.СписокНоменклатуры Цикл        
        СтрокаРасчета.Цена = ПолучитьАктуальнуюЦену(СтрокаРасчета.Номенклатура, СтрокаРасчета.Упаковка, Объект.Дата, Объект.ВидЦены);    
        СтрокаРасчета.Сумма = СтрокаРасчета.Цена * СтрокаРасчета.Количество;
    КонецЦикла;
КонецПроцедуры

&НаКлиенте
Процедура СписокНоменклатурыНоменклатураПриИзменении(Элемент)      
    СтрокаРасчета = Элементы.СписокНоменклатуры.ТекущиеДанные;
    СтрокаРасчета.Цена = ПолучитьАктуальнуюЦену(СтрокаРасчета.Номенклатура, СтрокаРасчета.Упаковка, Объект.Дата, Объект.ВидЦены);
    СтрокаРасчета.Сумма = СтрокаРасчета.Цена * СтрокаРасчета.Количество;
КонецПроцедуры 

&НаКлиенте
Процедура СписокНоменклатурыКоличествоПриИзменении(Элемент)
    СтрокаРасчета = Элементы.СписокНоменклатуры.ТекущиеДанные;
    СтрокаРасчета.Сумма = СтрокаРасчета.Цена * СтрокаРасчета.Количество;
КонецПроцедуры

&НаКлиенте
Процедура СписокНоменклатурыУпаковкаПриИзменении(Элемент)
    СтрокаРасчета = Элементы.СписокНоменклатуры.ТекущиеДанные;
    СтрокаРасчета.Цена = ПолучитьАктуальнуюЦену(СтрокаРасчета.Номенклатура, СтрокаРасчета.Упаковка, Объект.Дата, Объект.ВидЦены);
    СтрокаРасчета.Сумма = СтрокаРасчета.Цена * СтрокаРасчета.Количество;
КонецПроцедуры


&НаСервереБезКонтекста
Функция ПолучитьАктуальнуюЦену(Номенклатура, Упаковка, ДатаДокумента, ВидЦены)    
    Запрос = Новый Запрос;
    Запрос.Текст = 
    "ВЫБРАТЬ
    |    ПрайсЛистСрезПоследних.Цена КАК Цена
    |ИЗ
    |    РегистрСведений.ПрайсЛист.СрезПоследних(
    |            &Период,
    |            Номенклатура = &Номенклатура
    |                И ВидЦены = &ВидЦены
    |                И Упаковка = &Упаковка) КАК ПрайсЛистСрезПоследних";
    
    Запрос.УстановитьПараметр("ВидЦены", ВидЦены);
    Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
    Запрос.УстановитьПараметр("Период", ДатаДокумента);
    Запрос.УстановитьПараметр("Упаковка", Упаковка);
    
    РезультатЗапроса = Запрос.Выполнить();
    
    Если РезультатЗапроса.Пустой() Тогда
        Возврат 0; 
    КонецЕсли;
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();    
    ВыборкаДетальныеЗаписи.Следующий();
    Возврат ВыборкаДетальныеЗаписи.Цена;
    
КонецФункции // ПолучитьАктуальнуюЦену()

Пример отчета по продажам, отвечающего требованиям технического задания, приведен на рис. 3.26.

Рис. 3.26. Отчет по продажам

Для удобного хранения данных также был создан регистр накопления со следующей структурой (см. рис. 3.27).

Рис. 3.27. Регистр накопления

Задача 3.6.(100 баллов)
Задание 6

Условие

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

Описание

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

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

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

Постановка:

  1. Добавить в приложение для автоматизации лесопильного завода новый раздел «Персонал». Создать объект для хранения информации о сотрудниках лесопильного завода, которая должна быть доступна в новом разделе приложения.
  2. Добавить в объект для регистрации результатов работы лесопильного цеха, в объект для регистрации результатов работы сушильного комплекса, в объект для регистрации результатов работ цеха по выпуску пеллет возможность указания списка сотрудников завода, которые работали в тот день в цехе. Добавить возможность указания КТУ (коэффициента трудового участия) для каждого сотрудника, который работал в цехе в указанный день (например, если сотрудник работал половину смены, его КТУ будет равен 0,5). По умолчанию КТУ должен заполняться значением, равным единице.
  3. Создать объект для регистрации выработки сотрудников. Эти сведения должны быть доступны в новом разделе приложения. В объекте для регистрации выработки сотрудников лесопильного завода должна отражаться следующая информация:

    • дата регистрации выработки;
    • список сотрудников, которые работали в этот день;
    • выработка сотрудников (количество кубометров или килограммов (для пеллет));
    • дополнительная информация (произвольное текстовое описание).

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

    Информация о выработке должна заполниться по всем цехам завода (лесопильному цеху, сушильному комплексу, цеху по выпуску пеллет).

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

  4. Создать объект для анализа данных (аналитический отчет), в котором выводятся результаты выработки сотрудников, а именно, информация о том:

    • В какие дни работали сотрудники?
    • Какие сотрудники работали?
    • Какая выработка была у сотрудников?

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

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

Заполнение тестовыми данными

  1. Ввести не менее шести сотрудников лесозавода.
  2. Создать три регистрации результатов работы сотрудников:

    • лесопильного цеха,
    • сушильного комплекса:
    • цеха по производству пеллет.

Критерии оценивания

Таблица: Критерии оценивания
Описание критерия Балл
Имеется пояснительная записка. 1
Создан новый раздел «Персонал». 1
Создан объект для хранения информации о сотрудниках завода. Минус 1 балл за неправильное размещение. 2
В зарегистрированных результатах работы лесопильного цеха, сушильного комплекса и цеха по производству пеллет заполнена информация о сотрудниках и их КТУ. 5
КТУ проставляется по умолчанию — 1. 5
Создан объект для регистрации выработки сотрудников. Минус 1 балл за неправильное размещение. 2
В объекте для регистрации выработки есть поле «Дата регистрации выработки». Минус 1 балл за неверный формат. 2
В объекте для регистрации выработки есть табличное поле для ввода списка сотрудников, которые работали в этот день и указания нормы выработки. Минус 1 балл за неверный формат какой-либо колонки: «Сотрудник» или «Выработка». 4
Список сотрудников заполняется автоматически в соответствии с датой регистрации выработки (по результатам работы цехов). 10
Выработка проставляется в зависимости от КТУ: если КТУ равен 1, то выработка совпадает с объемом выпущенной продукции, если, например, \(\text{КТУ} = 0{,}5\), то выработка такого сотрудника уменьшается вдвое. 10
Создан работающий и показывающий правильные данные аналитический отчет. 30
В аналитическом отчете есть отбор по цеху. 8
Есть вариант аналитического отчета (либо отдельный отчет) в виде графика, который показывает выработку сотрудников по дням работы. 10

Решение

Видеоразбор задач: https://rutube.ru/plst/934827/.

Сессия 6: https://rutube.ru/video/16a8e5778feabda3664a044e5f385087/?playlist=934827.

Пример добавления информации о КТУ в результаты работы всех цехов приведен на рис. 3.28.

Рис. 3.28. Информация о КТУ

Пример документа, регистрирующего выработку сотрудников цеха, приведен на рис. 3.29.

Рис. 3.29. Регистрация выработки сотрудников

Для хранения сводной информации по выработке сотрудников создан регистр накопления со следующей структурой (см. рис. 3.30).

Рис. 3.30.

Алгоритм автоматической подстановки сотрудников и их выработки, согласно заполненному КТУ, создается (по аналогии с предыдущими заданиями) в модуле формы.

1C
&НаКлиенте
Процедура ДатаПриИзменении(Элемент)
    ФормированиеСпискаСотрудниковИВыработки();
КонецПроцедуры

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    ФормированиеСпискаСотрудниковИВыработки();
КонецПроцедуры 

&НаСервере
Процедура ФормированиеСпискаСотрудниковИВыработки()

    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    ВыработкаСотрудниковОбороты.Сотрудник КАК Сотрудник,
        |    ВыработкаСотрудниковОбороты.ВыработкаОборот КАК Выработка
        |ИЗ
        |    РегистрНакопления.ВыработкаСотрудников.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ВыработкаСотрудниковОбороты";
    
    Запрос.УстановитьПараметр("НачалоПериода", НачалоДня(Объект.Дата));
    Запрос.УстановитьПараметр("КонецПериода", КонецДня(Объект.Дата));
    
    РезультатЗапроса = Запрос.Выполнить();
    
    Объект.СписокСотрудников.Загрузить(РезультатЗапроса.Выгрузить());
КонецПроцедуры

Пример отчета в табличном варианте приведен на рис. 3.31.

Рис. 3.31. Отчет (табличный вариант)

Пример отчета в виде графика приведен на рис. 3.32.

Рис. 3.32. Отчет (график)

text slider background image text slider background image
text slider background image text slider background image text slider background image text slider background image