1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-16 07:10:14 +02:00

Update homework-4-4.md

This commit is contained in:
shumapolina 2023-01-18 19:20:42 +03:00 committed by GitHub
parent 98f439e6fe
commit 35f90bfe86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,60 +1,60 @@
# Задание к занятию "Регистры сведений"
# Задание к занятию «Регистры сведений»
## Задача 1 "Цены"
## Задача 1. «Цены»
### Описание задачи
Создать периодический регистр сведений "Цены" для хранения цен номенклатуры с историей.
Создать периодический регистр сведений «Цены» для хранения цен номенклатуры с историей.
### Требования к результату
Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий с новым регистром "Цены", который:
Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий с новым регистром «Цены», который:
* содержит измерение Номенклатура, ресурс Цена и реквизит Установил;
* является периодическим с точностью до секунды;
* скрыт из командного интерфейса.
В форме списка справочника "Номенклатура" должен находиться динамический список с ценами и соответствующая ему таблица.
В форме списка справочника «Номенклатура» должен находиться динамический список с ценами и соответствующая ему таблица.
Список должен быть отобран по активному товару (услуге) и упорядочен по убыванию дат.
При создании новых записей регистра Цены в реквизит Установил должен автоматически подставляться текущий сотрудник.
### Процесс выполнения
* Создать регистр сведений "Цены", в котором:
* Указать периодичность "До секунды";
* Добавить ведущее измерение "Номенклатура", ресурс "Цена" и реквизит "Установил" (СправочникСсылка.Сотрудники);
* Снять флажок "Использовать стандартные команды", чтобы скрыть его из командного интерфейса (мы сделаем интерфейс лучше, чем предоставляет платформа автоматически);
* В модуле набора записей реализовать обработчик события ОбработкаЗаполнения, в котором:
* обойти все записи как элементы коллекции ЭтотОбъект
* для каждой записи заполнить реквизит Установил значением по умолчанию (текущим сотрудником);
* Включить в состав роли БазовыеПрава;
* В форме списка справочника "Номенклатура" из предыдущих заданий:
* Создать динамический список "Цены" с основной таблицей "РегистрСведений.Цены";
* Вывести его таблицей формы под таблицей с группами номенклатуры;
* В обработчике ПриАктивизацииСтроки таблицы с элементами номенклатуры установить отбор по измерению "Номенклатура", аналогично отбору элементов при активизации группы;
* Поскольку установка отбора динамического списка - операция популярная, лучше создать для нее процедуру в общем модуле, например, ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка().
1. Создать регистр сведений «Цены», в котором:
* указать периодичность «До секунды»;
* добавить ведущее измерение «Номенклатура», ресурс «Цена» и реквизит «Установил» (СправочникСсылка.Сотрудники);
* снять флажок «Использовать стандартные команды», чтобы скрыть его из командного интерфейса (мы сделаем интерфейс лучше, чем предоставляет платформа автоматически);
* в модуле набора записей реализовать обработчик события ОбработкаЗаполнения, в котором:
* обойти все записи как элементы коллекции ЭтотОбъект;
* для каждой записи заполнить реквизит Установил значением по умолчанию (текущим сотрудником).
2. Включить в состав роли БазовыеПрава.
3. В форме списка справочника «Номенклатура» из предыдущих заданий:
* создать динамический список «Цены» с основной таблицей «РегистрСведений.Цены»;
* вывести его таблицей формы под таблицей с группами номенклатуры;
* в обработчике ПриАктивизацииСтроки таблицы с элементами номенклатуры установить отбор по измерению «Номенклатура» аналогично отбору элементов при активизации группы;
* поскольку установка отбора динамического списка — операция популярная, лучше создать для неё процедуру в общем модуле, например, ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка().
## Задача 2 "История цен"
## Задача 2. «История цен»
### Описание задачи
Создать отчет, выводящий историю цен номенклатуры.
Создать отчёт, выводящий историю цен номенклатуры.
### Требования к результату
Выгрузка информационной базы (.dt) с Отчетом "История цен", который:
Выгрузка информационной базы (.dt) с Отчётом «История цен», который:
* построен на СКД;
* на первом уровне группировок выводит номенклатуру по иерархии, а на уровне детальных записей - период, упорядоченный по убыванию, цену и сотрудника, установившего ее.
* на первом уровне группировок выводит номенклатуру по иерархии, а на уровне детальных записей период, упорядоченный по убыванию, цену и сотрудника, установившего её.
### Процесс выполнения
* Создать отчет "История цен", в котором:
* Создать основную схему компоновки данных;
* Добавить в нее набор данных - запрос;
* Открыв "Конструктор запроса", добавить таблицу "РегистрыСведений.Цены" со всеми ее полями.
* На закладке "Настройка", в варианте "Основной", добавить группировки:
* Номенклатура - Иерархия (под корнем "Отчет").
* Пустую (детальные записи, под группировкой "Номенклатура").
* В "Выбранные поля" перетащить поля Номенклатура, Период, Установил и Цена.
* На закладке "Сортировка" добавить сортировку по номенклатуре (по возрастанию) и по периоду (по убыванию).
* Проверить отчет в режиме Предприятия.
Создать отчёт «История цен», в котором:
* создать основную схему компоновки данных;
* добавить в неё набор данных — запрос;
* открыв «Конструктор запроса», добавить таблицу «РегистрыСведений.Цены» со всеми её полями;
* на закладке «Настройка» в варианте «Основной» добавить группировки:
* Номенклатура — Иерархия (под корнем «Отчёт»);
* Пустую (детальные записи, под группировкой «Номенклатура»);
* в «Выбранные поля» перетащить поля Номенклатура, Период, Установил и Цена;
* на закладке «Сортировка» добавить сортировку по номенклатуре (по возрастанию) и по периоду (по убыванию);
* проверить отчёт в режиме Предприятия.