Лабы по 1С (Кис) / Лабораторная работа №9
.docxМинистерство цифрового развития, связи и массовых коммуникаций Российской Федерации Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования
«Московский технический университет связи и информатики»
Лабораторная работа №9
по дисциплине
«Информационные технологии и программирование»
Выполнил: студент гр. БББ0000 -
Проверил: Кис Т.А.
Москва, 2023
Задание на лабораторную работу
Остатки номенклатурных позиций
Реализовать возможность фиксации остатков номенклатурных позиций. Необходимо формировать отчёт, формат которого изображён на рисунке ниже.
Обязательно стоит учесть следующие факторы:
1) Приходная накладная фиксирует приход материалов и расходников;
2) Производство продукции фиксирует приход товара и расход материалов, расходников;
3) Расходная накладная фиксирует расход товарной продукции.
Контроль отрицательных остатков материалов и товаров
Реализовать возможность контроля отрицательных остатков в документах «Расходная накладная» и «Производство продукции». При нехватке номенклатурных позиций – необходимо выводить соответствующее сообщение (см. рисунки ниже).
Выполнение задания
Выберем для каждого из регистров накопления «Продажи», «Закупки» и «Остатки номенклатуры» регистраторы: Продажи – Расходная накладная, Закупки – расходная и приходная, Остатки Номенклатуры – Расходная, Приходная накладные и Производство продукции.
Далее добавим соответствующие накладным «измерения» и «ресурсы» в регистры накоплений:
Для каждой расходной накладной откроем конструктор движений и заполним поля соответствующими выражениями (реквизитами) документа. Обязательно заполним в конструкторе регистры с типом движения «Приход» и «Расход» отдельно. (Также нужно учитывать табличную часть – например, Товаров, Материалов и Услуг в накладной производства продукции). Получим, для Производства Продукции:
Для Приходной и Расходной накладных соответственно:
Далее создадим отчёт. Для этого откроем схему компоновки данных и там выберем набор данных по запросу. Создадим запрос через конструктор запроса:
Во вкладке Ресурсы выберем выражение Сумма(КоличествоОстаток) для поля КоличествоОстаток, рассчитываемое по номенклатуре:
В Настройках через Конструктор настроек выберем вид будущей таблицы, в дополнительных настройках выберем макет оформления, расположение полей группировки, краткий тип заголовка полей и отключим расположение итогов по вертикали:
Далее, для учёта номенклатуры и учёта отрицательных остатков перейдём в Модуль менеджера регистра «Остатки номенклатуры» и создадим 3 функции проверки отрицательных остатков – для Товаров, Материалов и Расходников. В каждой будем использовать заранее подготовленный запрос. Если номенклатурной позиции не хватает – выдаётся соответствующее сообщение пользователю.
Каждая функция будет экспортирована в модули объектов накладных. Соответственно, в Расходной накладной (в Модуле объекта) добавим отказ, возвращающий значение функции проверки отрицательных остатков (если отрицательный остаток – в проведении будет отказано):
А в Модуле объекта документа Производство продукции, в функции обработки проведения добавим следующее условие, которое будет проверять отказ сначала для материалов, а потом – для расходников:
Войдём в режим пользователя и сформируем Отчёт «Остатки номенклатура»:
Как видим, отчёт показывает общее количество номенклатурных позиций для каждого вида номенклатуры.
Далее проверим контроль отрицательных остатков в накладных:
Таким образом, мы успешно реализовали контроль отрицательных остатков в документах «Расходная накладная» и «Производство продукции» - при нехватке номенклатурных позиций пользователю выводится окно об отказе в проведении и сообщение, информирующее о том, какой позиции не хватает.