Добавил решение 4-4
Регистры сведений
This commit is contained in:
		
										
											Binary file not shown.
										
									
								
							@@ -0,0 +1,60 @@
 | 
				
			|||||||
 | 
					# Задание к занятию "Регистры сведений"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Задача 1 "Цены"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Описание задачи
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Создать периодический регистр сведений "Цены" для хранения цен номенклатуры с историей.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Требования к результату
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий с новым регистром "Цены", который:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* содержит измерение Номенклатура, ресурс Цена и реквизит Установил;
 | 
				
			||||||
 | 
					* является периодическим с точностью до секунды;
 | 
				
			||||||
 | 
					* скрыт из командного интерфейса.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					В форме списка справочника "Номенклатура" должен находиться динамический список с ценами и соответствующая ему таблица.
 | 
				
			||||||
 | 
					Список должен быть отобран по активному товару (услуге) и упорядочен по убыванию дат.
 | 
				
			||||||
 | 
					При создании новых записей регистра Цены в реквизит Установил должен автоматически подставляться текущий сотрудник.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Процесс выполнения
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Создать регистр сведений "Цены", в котором:
 | 
				
			||||||
 | 
					  * Указать периодичность "До секунды";
 | 
				
			||||||
 | 
					  * Добавить ведущее измерение "Номенклатура", ресурс "Цена" и реквизит "Установил" (СправочникСсылка.Сотрудники);
 | 
				
			||||||
 | 
					  * Снять флажок "Использовать стандартные команды", чтобы скрыть его из командного интерфейса (мы сделаем интерфейс лучше, чем предоставляет платформа автоматически);
 | 
				
			||||||
 | 
					  * В модуле набора записей реализовать обработчик события ОбработкаЗаполнения, в котором:
 | 
				
			||||||
 | 
					     * обойти все записи как элементы коллекции ЭтотОбъект
 | 
				
			||||||
 | 
					     * для каждой записи заполнить реквизит Установил значением по умолчанию (текущим сотрудником);
 | 
				
			||||||
 | 
					* Включить в состав роли БазовыеПрава;
 | 
				
			||||||
 | 
					* В форме списка справочника "Номенклатура" из предыдущих заданий:
 | 
				
			||||||
 | 
					  * Создать динамический список "Цены" с основной таблицей "РегистрСведений.Цены";
 | 
				
			||||||
 | 
					  * Вывести его таблицей формы под таблицей с группами номенклатуры;
 | 
				
			||||||
 | 
					  * В обработчике ПриАктивизацииСтроки таблицы с элементами номенклатуры установить отбор по измерению "Номенклатура", аналогично отбору элементов при активизации группы;
 | 
				
			||||||
 | 
					    * Поскольку установка отбора динамического списка - операция популярная, лучше создать для нее процедуру в общем модуле, например, ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка().
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Задача 2 "История цен"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Описание задачи
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Создать отчет, выводящий историю цен номенклатуры.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Требования к результату
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Выгрузка информационной базы (.dt) с Отчетом "История цен", который:
 | 
				
			||||||
 | 
					* построен на СКД;
 | 
				
			||||||
 | 
					* на первом уровне группировок выводит номенклатуру по иерархии, а на уровне детальных записей - период, упорядоченный по убыванию, цену и сотрудника, установившего ее.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Процесс выполнения
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Создать отчет "История цен", в котором:
 | 
				
			||||||
 | 
					  * Создать основную схему компоновки данных;
 | 
				
			||||||
 | 
					  * Добавить в нее набор данных - запрос;
 | 
				
			||||||
 | 
					  * Открыв "Конструктор запроса", добавить таблицу "РегистрыСведений.Цены" со всеми ее полями.
 | 
				
			||||||
 | 
					  * На закладке "Настройка", в варианте "Основной", добавить группировки:
 | 
				
			||||||
 | 
					    * Номенклатура - Иерархия (под корнем "Отчет").
 | 
				
			||||||
 | 
					    * Пустую (детальные записи, под группировкой "Номенклатура").
 | 
				
			||||||
 | 
					  * В "Выбранные поля" перетащить поля Номенклатура, Период, Установил и Цена.
 | 
				
			||||||
 | 
					  * На закладке "Сортировка" добавить сортировку по номенклатуре (по возрастанию) и по периоду (по убыванию).
 | 
				
			||||||
 | 
					  * Проверить отчет в режиме Предприятия.
 | 
				
			||||||
		Reference in New Issue
	
	Block a user