mirror of
https://github.com/netology-code/1c-homeworks.git
synced 2024-11-16 07:10:14 +02:00
Update homework-4-5.md
This commit is contained in:
parent
98f439e6fe
commit
e97235a43f
@ -1,32 +1,32 @@
|
||||
# Задание к занятию "Запись и чтение регистров"
|
||||
# Задание к занятию «Запись и чтение регистров»
|
||||
|
||||
## Задача 1 "Установка цен"
|
||||
## Задача 1. «Установка цен»
|
||||
|
||||
### Описание задачи
|
||||
Создать обработку для пакетного изменения цен номенклатуры.
|
||||
|
||||
### Требования к результату
|
||||
Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий с обработкой УстановкаЦен, которая содержит:
|
||||
* Таблицу значений и таблицу формы Номенклатура (с единственной колонкой Номенклатура).
|
||||
* Переключатель с тремя вариантами установки цен:
|
||||
* Фиксированная цена (с полем ввода цены рядом)
|
||||
* Процент от текущей (с полем ввода процента рядом)
|
||||
* Удаление цен
|
||||
* Кнопку и команду Установить, по которой обрабатываются цены номенклатуры из списка. Цены устанавливаются текущей датой. Изменение цены на процент должно исходить от последней цены и позволять как увеличить, так и уменьшить цену. Удаление должно удалять цены за любой период. Установка цен, фиксированной и процентом, должно оставлять историю нетронутой.
|
||||
* таблицу значений и таблицу формы Номенклатура (с единственной колонкой Номенклатура);
|
||||
* переключатель с тремя вариантами установки цен:
|
||||
* фиксированная цена с полем ввода цены рядом,
|
||||
* процент от текущей с полем ввода процента рядом,
|
||||
* удаление цен;
|
||||
* кнопку и команду Установить, по которой обрабатываются цены номенклатуры из списка. Цены устанавливаются текущей датой. Изменение цены на процент должно исходить от последней цены и позволять как увеличить, так и уменьшить цену. Удаление должно удалять цены за любой период. Установка цен, фиксированной и процентом, должно оставлять историю нетронутой.
|
||||
|
||||
### Процесс выполнения
|
||||
|
||||
* Создать обработку УстановкаЦен и создать ее единственную и основную форму.
|
||||
* Добавить реквизит ВариантУстановки (Число) и перетащить его на форму, сделав полем переключателя. В список выбора добавить элементы:
|
||||
* 0 - Фиксированная цена
|
||||
* 1 - Процент от текущей
|
||||
* 2 - Удаление цен.
|
||||
* Добавить реквизиты ФиксированнаяЦена, ПроцентОтТекущей (Число) и перетащить их на форму как поля ввода.
|
||||
* Объединить поле переключателя и поля ввода в группы так, чтобы поля ввода были справа от соответствующих вариантов. Возможно, придется изменить интервалы между элементами.
|
||||
* Реализовать обработчик события ПриИзменении переключателя ВариантУстановки так, чтобы доступным оставалось лишь поле ввода, соответствующее выбранному варианту. Сделать ПроцентОтТекущей недоступным по умолчанию, чтобы это соответствовало варианту по умолчанию (0).
|
||||
* Добавить таблицу значений Номенклатура с единственной колонкой Номенклатура и перетащить ее на форму таблицей формы. Скрыть заголовок колонки, бессмысленный в этом случае.
|
||||
* Добавить команду и кнопку Установить, а в обработчике команды, вызвав серверную процедуру:
|
||||
* Получить элементы справочника Номенклатура, как выбранные непосредственно, так и находящиеся в выбранных пользователем группах. Далее, в зависимости от варианта:
|
||||
* Фиксированная цена - для каждого элемента создать запись в регистре Цены на текущую дату.
|
||||
* Процент от текущей - для каждого элемента прочитать записи и, найдя последнюю, изменить цену на указанный процент и создать запись на текущую дату.
|
||||
* Удаление цен - для каждого элемента записать пустой набор записей с отбором по нему.
|
||||
1. Создать обработку УстановкаЦен и создать её единственную и основную форму.
|
||||
2. Добавить реквизит ВариантУстановки (Число) и перетащить его на форму, сделав полем переключателя. В список выбора добавить элементы:
|
||||
* 0 — Фиксированная цена;
|
||||
* 1 — Процент от текущей;
|
||||
* 2 — Удаление цен.
|
||||
3. Добавить реквизиты ФиксированнаяЦена и ПроцентОтТекущей (Число). Перетащить их на форму как поля ввода.
|
||||
4. Объединить поле переключателя и поля ввода в группы так, чтобы поля ввода были справа от соответствующих вариантов. Возможно, придётся изменить интервалы между элементами.
|
||||
5. Реализовать обработчик события ПриИзменении переключателя ВариантУстановки так, чтобы доступным оставалось лишь поле ввода, соответствующее выбранному варианту. Сделать ПроцентОтТекущей недоступным по умолчанию, чтобы это соответствовало варианту по умолчанию (0).
|
||||
6. Добавить таблицу значений Номенклатура с единственной колонкой Номенклатура и перетащить её на форму таблицей формы. Скрыть заголовок колонки, бессмысленный в этом случае.
|
||||
7. Добавить команду и кнопку Установить, а в обработчике команды, вызвав серверную процедуру:
|
||||
* получить элементы справочника Номенклатура как выбранные непосредственно, так и находящиеся в выбранных пользователем группах. Далее, в зависимости от варианта:
|
||||
* Фиксированная цена — для каждого элемента создать запись в регистре Цены на текущую дату;
|
||||
* Процент от текущей — для каждого элемента прочитать записи и, найдя последнюю, изменить цену на указанный процент и создать запись на текущую дату;
|
||||
* Удаление цен — для каждого элемента записать пустой набор записей с отбором по нему.
|
||||
|
Loading…
Reference in New Issue
Block a user