Загрузка данных


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

	// 1. Сначала подгружаем дефолты из макета, если в регистре данных нет
	Если ЗначениеЗаполнено(Объект.ПроизводственныйКалендарь) Тогда
		// Убедитесь, что передается строковый код календаря
		КодКалендаря = ?(ТипЗнч(Объект.ПроизводственныйКалендарь) = Тип("Строка"), 
			Объект.ПроизводственныйКалендарь, Объект.ПроизводственныйКалендарь.Код);
		
		ДанныеПоУмолчанию = Справочники.ГрафикРаботы.РезультатЗаполненияПроизводственногоКалендаряПоУмолчанию(
			КодКалендаря, НомерТекущегоГода, КодКалендаря
		);
		ПреобразоватьДанныеПроизводственногоКалендаря(ДанныеПоУмолчанию);
	КонецЕсли;

	// 2. Затем считываем данные текущего года и формируем ДниГрафика
	ЗаполнитьДаннымиТекущегоГода();
	
	// 3. Формируем расписание фона по шаблону
	ЗаполнитьПоШаблонуНаСервере();
	
КонецПроцедуры