Обновить данные зависимых производственных календарей. Обновляет данные зависимых производственных календарей от базовых.
// Обновляет данные зависимых производственных календарей от базовых.
//
Процедура ОбновитьДанныеЗависимыхПроизводственныхКалендарей() Экспорт
Если ОбщегоНазначения.ЭтоАвтономноеРабочееМесто() Тогда
Возврат;
КонецЕсли;
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Год", 2018);
Запрос.Текст =
"ВЫБРАТЬ
| ЗависимыеКалендари.Ссылка КАК Календарь,
| ЗависимыеКалендари.БазовыйКалендарь КАК БазовыйКалендарь
|ПОМЕСТИТЬ ВТЗависимыеКалендари
|ИЗ
| Справочник.ПроизводственныеКалендари КАК ЗависимыеКалендари
|ГДЕ
| ЗависимыеКалендари.БазовыйКалендарь <> ЗНАЧЕНИЕ(Справочник.ПроизводственныеКалендари.ПустаяСсылка)
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ДанныеКалендарей.ПроизводственныйКалендарь КАК ПроизводственныйКалендарь,
| ДанныеКалендарей.Год КАК Год
|ПОМЕСТИТЬ ВТГодыКалендарей
|ИЗ
| РегистрСведений.ДанныеПроизводственногоКалендаря КАК ДанныеКалендарей
|ГДЕ
| ДанныеКалендарей.Год >= &Год
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ЗависимыеКалендари.БазовыйКалендарь КАК БазовыйКалендарь,
| ЗависимыеКалендари.БазовыйКалендарь.Код КАК КодПроизводственногоКалендаря,
| ДанныеБазовыхКалендарей.Год КАК Год
|ИЗ
| ВТЗависимыеКалендари КАК ЗависимыеКалендари
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТГодыКалендарей КАК ДанныеБазовыхКалендарей
| ПО (ДанныеБазовыхКалендарей.ПроизводственныйКалендарь = ЗависимыеКалендари.БазовыйКалендарь)
| ЛЕВОЕ СОЕДИНЕНИЕ ВТГодыКалендарей КАК ДанныеЗависимогоКалендаря
| ПО (ДанныеЗависимогоКалендаря.ПроизводственныйКалендарь = ЗависимыеКалендари.Календарь)
| И (ДанныеЗависимогоКалендаря.Год = ДанныеБазовыхКалендарей.Год)
|ГДЕ
| ДанныеЗависимогоКалендаря.Год ЕСТЬ NULL";
РезультатЗапроса = Запрос.Выполнить();
Если РезультатЗапроса.Пустой() Тогда
Возврат;
КонецЕсли;
ТаблицаИзменений = РезультатЗапроса.Выгрузить();
Справочники.ПроизводственныеКалендари.ОбновитьДанныеЗависимыхПроизводственныхКалендарей(ТаблицаИзменений);
Если ОбщегоНазначения.РазделениеВключено() Тогда
ЗапланироватьОбновлениеДанныхЗависимыхОтПроизводственныхКалендарей(ТаблицаИзменений);
Возврат;
КонецЕсли;
ПараметрыОбработчика = ОбновлениеИнформационнойБазыСлужебный.ПараметрыОтложенногоОбработчикаОбновления(
"КалендарныеГрафики.ОбновитьДанныеЗависимыеОтПроизводственныхКалендарей");
Если ПараметрыОбработчика <> Неопределено И ПараметрыОбработчика.Свойство("ТаблицаИзменений") Тогда
ОбщегоНазначенияКлиентСервер.ДополнитьТаблицу(ТаблицаИзменений, ПараметрыОбработчика.ТаблицаИзменений);
КонецЕсли;
ПараметрыОбработчика = Новый Структура("ТаблицаИзменений");
ПараметрыОбработчика.ТаблицаИзменений = ТаблицаИзменений;
ОбновлениеИнформационнойБазыСлужебный.ЗаписатьПараметрыОтложенногоОбработчикаОбновления(
"КалендарныеГрафики.ОбновитьДанныеЗависимыеОтПроизводственныхКалендарей", ПараметрыОбработчика);
КонецПроцедуры
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
ОбновитьДанныеЗависимыеОтПроизводственныхКалендарей (БСП)
ПриОбновленииДанныхЗависимыхОтПроизводственныхКалендарей (БСП)
ЗапланироватьОбновлениеДанныхЗависимыхОтПроизводственныхКалендарей (БСП)
ОбновитьДанныеПроизводственныхКалендарей (БСП)
ПриЗаполненииБлокируемыхОбъектовЗависимыхОтПроизводственныхКалендарей (БСП)
ЗаполнитьДанныеОбновленияДанныхЗависимыхОтПроизводственныхКалендарей (БСП)
ЗаполнитьДанныеЗависимыеОтПроизводственныхКалендарей (БСП)
ОбновитьГрафикиРаботыПоДаннымПроизводственныхКалендарей (БСП)
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)