Найдено публикаций: 22
Настройки = Новый НастройкиКомпоновкиДанных;
Элемент = Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
Элемент.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Товар");
Элемент.ИдентификаторПользовательскойНастройки = "Идентификатор";
ПараметрыФормы = Новый Структура("Вариант", Настройки);
ОткрытьФорму("Отчет.ОстаткиТоваровНаСкладах.Форма", ПараметрыФормы);
Функция НайтиСсылкуНаСправочникПоУИД(СсылкаВБазе, ИмяСправочника, Соединение)
Если НЕ ЗначениеЗаполнено(СсылкаВБазе) Тогда
Возврат Соединение.Справочники[ИмяСправочника].ПустаяСсылка();
КонецЕсли;
УИДСтрокой = Строка(СсылкаВБазе.УникальныйИдентификатор());
УИД = Соединение.NewObject("УникальныйИдентификатор", УИДСтрокой);
СсылкаНаСправочник = Соединение.Справочники[ИмяСправочника].ПолучитьСсылку(УИД);
Если Соединение.ОбщегоНазначения.СсылкаСуществует(СсылкаНаСправочник) = Ложь тогда
Возврат Неопределено;
КонецЕсли;
Возврат СсылкаНаСправочник;
КонецФункции
Тип = Тип(ПоследняяОткрытаяСтрока.ТипЗначенияXML);
УИД = Новый УникальныйИдентификатор(ПоследняяОткрытаяСтрока.ЗначениеXML);
Массив = Новый Массив;
Массив.Добавить(УИД);
Значение = Новый (Тип, Массив);
Процедура УстановитьПользовательскийОтбор(КомпоновщикНастроек, Поле, ВидСравнения, Значение) Экспорт
// Сначала найдем выделенный элемент отбора
Для каждого ЭлементНастроек из КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл
Если ТипЗнч(ЭлементНастроек) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
ТекПоле = "";
Для каждого ЭлементОтбора из КомпоновщикНастроек.Настройки.Отбор.Элементы Цикл
Если ЭлементНастроек.ИдентификаторПользовательскойНастройки = ЭлементОтбора.ИдентификаторПользовательскойНастройки Тогда
ТекПоле = ЭлементОтбора.ЛевоеЗначение;
Прервать;
КонецЕсли;
КонецЦикла;
Если Строка(ТекПоле) = Поле Тогда
ЭлементНастроек.ВидСравнения = ВидСравнения;
ЭлементНастроек.ПравоеЗначение = Значение;
ЭлементНастроек.Использование = Истина;
Возврат;
КонецЕсли;
КонецЕсли;
КонецЦикла;
// Найдем отбор
Для каждого ЭлементНастроек из КомпоновщикНастроек.ПользовательскиеНастройки.Элементы Цикл
Если ТипЗнч(ЭлементНастроек) = Тип("ОтборКомпоновкиДанных") Тогда
ТекОтборП = ТиповыеОтчеты_УправляемыйРежим.УстановитьОтбор(ЭлементНастроек, Поле, ВидСравнения, Значение);
Прервать;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Процедура ОбработкаПолученияФормы(ВидФормы, Параметры, ВыбраннаяФорма, ДополнительнаяИнформация, СтандартнаяОбработка)
Если ВидФормы = "ФормаОбъекта" Тогда
Если Параметры.Свойство("Ключ")
И ОбщегоНазначенияСервер.ВходитВИерархию(Параметры.Ключ, Справочники.Проекты.ИнвестиционныеПроекты) Тогда
СтандартнаяОбработка = Ложь;
ВыбраннаяФорма = "ФормаЭлементаУправляемая";
ИначеЕсли Параметры.Свойство("ЗначенияЗаполнения")
И Параметры.ЗначенияЗаполнения.Свойство("Родитель")
И ОбщегоНазначенияСервер.ВходитВИерархию(Параметры.ЗначенияЗаполнения.Родитель, Справочники.Проекты.ИнвестиционныеПроекты) Тогда
СтандартнаяОбработка = Ложь;
ВыбраннаяФорма = "ФормаЭлементаУправляемая";
ИначеЕсли Параметры.Свойство("ЗначениеКопирования")
И ОбщегоНазначенияСервер.ВходитВИерархию(Параметры.ЗначениеКопирования.Родитель, Справочники.Проекты.ИнвестиционныеПроекты) Тогда
СтандартнаяОбработка = Ложь;
ВыбраннаяФорма = "ФормаЭлементаУправляемая";
КонецЕсли;
КонецЕсли;
КонецПроцедуры
// Выгружаем документы только по списку организаций.
МетаданныеОбъекта = Метаданные.НайтиПоТипу(ТипЗнч(Источник));
Если МетаданныеОбъекта <> Неопределено
И Метаданные.Документы.Содержит(МетаданныеОбъекта) Тогда
Если МетаданныеОбъекта.Реквизиты.Найти("Организация") <> Неопределено Тогда
ДатаЗапретаРедактирования = Параметры.ДатыЗапретаРедактирования[Источник.Организация.Код];
Если ЗначениеЗаполнено(ДатаЗапретаРедактирования) Тогда
Если Источник.Дата <= ДатаЗапретаРедактирования Тогда
НеЗамещатьОбъектПриЗагрузке = Истина;
ТолькоПолучитьУзелСсылки = Истина;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
&НаСервереБезКонтекста
Функция ПолучитьЗначениеПоляРасшифровкиНаСервере(ИдентификаторРасшифровки, АдресДанныхРасшифровки)
ДанныеРасшифровки = ПолучитьИзВременногоХранилища(АдресДанныхРасшифровки);
ЭлементРасшифровки = ДанныеРасшифровки.Элементы[ИдентификаторРасшифровки];
МассивРодителей = Новый Массив;
МассивРодителей.Добавить(ЭлементРасшифровки.ПолучитьПоля());
Родители = ЭлементРасшифровки.ПолучитьРодителей();
ЗаполнитьМассивРодителей(МассивРодителей, Родители);
Результат = Новый Соответствие;
Для Счетчик = 1 по МассивРодителей.Количество() Цикл
// Обойдем в обратном порядке, чтобы поставить условия в порядке группировок
ПоляКомпоновки = МассивРодителей[МассивРодителей.Количество() - Счетчик];
Для каждого ПолеКомпоновки из ПоляКомпоновки Цикл
//Если ПолеКомпоновки.Иерархия Тогда
// Продолжить;
//КонецЕсли;
Результат.Вставить(ПолеКомпоновки.Поле, ПолеКомпоновки.Значение);
КонецЦикла;
КонецЦикла;
Возврат Результат;
КонецФункции
&НаСервереБезКонтекста
Процедура ЗаполнитьМассивРодителей(МассивРодителей, Родители)
Для каждого Родитель из Родители Цикл
Если ТипЗнч(Родитель) = Тип("ЭлементРасшифровкиКомпоновкиДанныхПоля") Тогда
МассивРодителей.Добавить(Родитель.ПолучитьПоля());
ИначеЕсли ТипЗнч(Родитель) = Тип("ЭлементРасшифровкиКомпоновкиДанныхГруппировка") Тогда
КонецЕсли;
Родители = Родитель.ПолучитьРодителей();
Если Родители.Количество() > 0 Тогда
ЗаполнитьМассивРодителей(МассивРодителей, Родители);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Функция СоздатьСхемуКомпоновки() Экспорт
СхемаСКД = Новый СхемаКомпоновкиДанных;
ИсточникДанных = СхемаСКД.ИсточникиДанных.Добавить();
ИсточникДанных.Имя = "ИсточникДанных";
ИсточникДанных.ТипИсточникаДанных = "local";
НаборДанных = СхемаСКД.НаборыДанных.Добавить(Тип("НаборДанныхОбъектСхемыКомпоновкиДанных"));
НаборДанных.Имя = "Данные";
НаборДанных.ИмяОбъекта = "Данные";
НаборДанных.ИсточникДанных = "ИсточникДанных";
Настройки = СхемаСКД.НастройкиПоУмолчанию;
Группировка = Настройки.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных"));
Группировка.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных"));
Параметр = СхемаСКД.Параметры.Добавить();
Параметр.Имя = "Период";
Параметр.ТипЗначения = Новый ОписаниеТипов("СтандартныйПериод");
Для каждого СтрокаТЗ из Поля Цикл
ТипЗначения = ЗначениеИзСтрокиВнутр(СтрокаТЗ.ТипЗначения);
Если СтрокаТЗ.Ресурс Тогда
Поле = НаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
Поле.Поле = СтрокаТЗ.Имя + "Тек";
Поле.ТипЗначения = ТипЗначения;
Поле.Заголовок = Представление(СтрокаТЗ) + " (тек)";
Поле.ПутьКДанным = СтрокаТЗ.Имя + "Тек";
Поле = НаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
Поле.Поле = СтрокаТЗ.Имя + "Др";
Поле.ТипЗначения = ТипЗначения;
Поле.Заголовок = Представление(СтрокаТЗ) + " (др)";
Поле.ПутьКДанным = СтрокаТЗ.Имя + "Др";
ВычисляемоеПоле = СхемаСКД.ВычисляемыеПоля.Добавить();
ВычисляемоеПоле.ПутьКДанным = "Разница" + СтрокаТЗ.Имя;
ВычисляемоеПоле.Выражение = "ЕстьNULL(" + СтрокаТЗ.Имя + "Тек, 0) - ЕстьNULL(" + СтрокаТЗ.Имя + "Др, 0)";
ВычисляемоеПоле.ТипЗначения = ТипЗначения;
ВычисляемоеПоле.Заголовок = "Разница (" + Представление(СтрокаТЗ) + ")";
ПолеИтога = СхемаСКД.ПоляИтога.Добавить();
ПолеИтога.ПутьКДанным = СтрокаТЗ.Имя + "Тек";
ПолеИтога.Выражение = "Сумма(" + СтрокаТЗ.Имя + "Тек)";
ПолеИтога = СхемаСКД.ПоляИтога.Добавить();
ПолеИтога.ПутьКДанным = СтрокаТЗ.Имя + "Др";
ПолеИтога.Выражение = "Сумма(" + СтрокаТЗ.Имя + "Др)";
ПолеИтога = СхемаСКД.ПоляИтога.Добавить();
ПолеИтога.ПутьКДанным = "Разница" + СтрокаТЗ.Имя;
ПолеИтога.Выражение = "Сумма(Разница" + СтрокаТЗ.Имя + ")";
Группа = Настройки.Выбор.Элементы.Добавить(Тип("ГруппаВыбранныхПолейКомпоновкиДанных"));
Группа.Расположение = РасположениеПоляКомпоновкиДанных.Горизонтально;
Группа.Заголовок = Представление(СтрокаТЗ);
Группа.Использование = Истина;
ВыбранноеПоле = Группа.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных(СтрокаТЗ.Имя + "Тек");
ВыбранноеПоле.Заголовок = "Текущая";
ВыбранноеПоле.Использование = Истина;
ВыбранноеПоле = Группа.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных(СтрокаТЗ.Имя + "Др");
ВыбранноеПоле.Заголовок = "Другая";
ВыбранноеПоле.Использование = Истина;
ЭлементОформления = Настройки.УсловноеОформление.Элементы.Добавить();
ЭлементОформления.Использование = Истина;
УстановитьОформления(ЭлементОформления.Оформление);
ЭлементОтбора = ЭлементОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Разница" + СтрокаТЗ.Имя);
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.НеРавно;
ЭлементОтбора.ПравоеЗначение = 0;
ЭлементОтбора.Использование = Истина;
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Использование = Истина;
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных(СтрокаТЗ.Имя + "Тек");
ПолеОформления = ЭлементОформления.Поля.Элементы.Добавить();
ПолеОформления.Использование = Истина;
ПолеОформления.Поле = Новый ПолеКомпоновкиДанных(СтрокаТЗ.Имя + "Др");
Иначе
Поле = НаборДанных.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных"));
Поле.Поле = СтрокаТЗ.Имя;
Поле.Заголовок = Представление(СтрокаТЗ);
Поле.ПутьКДанным = СтрокаТЗ.Имя;
Поле.ТипЗначения = ТипЗначения;
ВыбранноеПоле = Настройки.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных"));
ВыбранноеПоле.Поле = Новый ПолеКомпоновкиДанных(СтрокаТЗ.Имя);
ВыбранноеПоле.Использование = Истина;
КонецЕсли;
КонецЦикла;
Возврат СхемаСКД;
КонецФункции
Функция СсылкаСуществует(ЛюбаяСсылка) Экспорт
ТекстЗапроса = "
|ВЫБРАТЬ
| Ссылка КАК Ссылка
|ИЗ
| [ИмяТаблицы]
|ГДЕ
| Ссылка = &Ссылка
|";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "[ИмяТаблицы]", ЛюбаяСсылка.Метаданные().ПолноеИмя());
Запрос = Новый Запрос;
Запрос.Текст = ТекстЗапроса;
Запрос.УстановитьПараметр("Ссылка", ЛюбаяСсылка);
УстановитьПривилегированныйРежим(Истина);
Возврат НЕ Запрос.Выполнить().Пустой();
КонецФункции
ЭлементыФормы.Отбор.Колонки.ПравоеЗначениеДляКраткогоОтображенияЭлемента.ЭлементУправления.УстановитьДействие("НачалоВыбора", Новый Действие("ОтборНачалоВыбора"));
Процедура ОтборНачалоВыбора(Элемент, СтандартнаяОбработка)
ТекущиеДанные = ЭлементыФормы.Отбор.ТекущиеДанные;
Если Строка(ТекущиеДанные.ЛевоеЗначение) = "Родитель" Тогда
СтандартнаяОбработка = Ложь;
Форма = Справочники.Номенклатура.ПолучитьФормуВыбораГруппы(, Элемент);
Форма.Открыть();
КонецЕсли;
КонецПроцедуры
Функция вЧисло(Знач Парам)
Парам = СтрЗаменить(Парам, Символы.НПП, "");
Парам = СтрЗаменить(Парам, " ", "");
Парам = СтрЗаменить(Парам, ",", ".");
Попытка
Возврат Число(Парам);
Исключение
Возврат 0;
КонецПопытки;
КонецФункции
ЧтениеXML = Новый ЧтениеXML();
ЧтениеXML.ОткрытьФайл(ИмяФайла);
Фабрика = СоздатьФабрикуXDTO(ИмяФайлаСхемы); //*.xsd
ОбъектXDTO = Фабрика.ПрочитатьXML(ЧтениеXML);
ЧтениеXML.Закрыть();
Процедура ПеренестиОтбор(ОтборПриемник, ОтборИсточник)
Для каждого ЭлементИсточник Из ОтборИсточник.Элементы Цикл
Если ТипЗнч(ЭлементИсточник) = Тип("ЭлементОтбораКомпоновкиДанных") Тогда
Если ТипЗнч(ЭлементИсточник.ЛевоеЗначение) = Тип("ПолеКомпоновкиДанных") Тогда
Если ОтборПриемник.ДоступныеПоляОтбора.НайтиПоле(ЭлементИсточник.ЛевоеЗначение) = Неопределено Тогда
Продолжить;
КонецЕсли;
КонецЕсли;
КонецЕсли;
ЭлементПриемник = ОтборПриемник.Элементы.Добавить(ТипЗнч(ЭлементИсточник));
ЗаполнитьЗначенияСвойств(ЭлементПриемник, ЭлементИсточник);
Если ТипЗнч(ЭлементИсточник) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда
ПеренестиОтбор(ЭлементПриемник, ЭлементИсточник);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Функция ДатаСозданияСсылки(Ссылка) Экспорт
Если НЕ ЗначениеЗаполнено(Ссылка) Тогда
Возврат Неопределено;
КонецЕсли;
Момент = Дата(1, 1, 1);
Попытка
УИ = Строка(Ссылка.УникальныйИдентификатор());
УИ = ВРег(СтрЗаменить(УИ,"-",""));
Если Сред(УИ, 13, 1) = "1" Тогда
Значение16 = ВРег(Сред(УИ, 14, 3) + Сред(УИ, 9, 4) + Сред(УИ, 1, 8));
Цифры16 = "123456789ABCDEF";
Значение10 = 0;
Длина16 = СтрДлина(Значение16);
Для Ном = 1 По Длина16 Цикл
Значение10 = Значение10 + Pow(16, Длина16-Ном)*Найти(Цифры16, Сред(Значение16, Ном, 1));
КонецЦикла;
Значение10 = Значение10/10000000;
Момент = Дата(1582, 10, 15, 3, 0, 0) + Значение10;
КонецЕсли;
Исключение
КонецПопытки;
Возврат Момент;
КонецФункции
Процедура СгенерироватьКнопкиУправленияГруппировкой(ЭлементТабПоле, Панель)
// ЭлементТабПоле = ЭлементыФормы.ТабДопИнформация;
НачалоВерх = ЭлементТабПоле.Верх + 3; // Привязка к верхнему левому углу ПоляТабличногоДокумента
НачалоЛево = ЭлементТабПоле.Лево + 3; // Привязка к верхнему левому углу ПоляТабличногоДокумента
Имя = ЭлементТабПоле.Имя;
ШагКнопок = 13;
ПрефиксИмениКн = "КнГрГор_" + Имя + "_";
ПрефиксИмениКнВерт = "КнГрВерт_" + Имя + "_";
// Удалить старые кнопки
Сч = 0;
Пока Сч < ЭлементыФормы.Количество() Цикл
ТекЭлемент = ЭлементыФормы.Получить(Сч);
Если (Найти(ТекЭлемент.Имя, ПрефиксИмениКн) > 0) ИЛИ
(Найти(ТекЭлемент.Имя, ПрефиксИмениКнВерт) > 0) Тогда
ЭлементыФормы.Удалить(ТекЭлемент);
Иначе
Сч = Сч + 1;
КонецЕсли;
КонецЦикла;
// Добавть новые кнопки по количеству группировок
КоличествоГруппировок = ЭлементТабПоле.КоличествоУровнейГруппировокСтрок();
Для Сч = 1 По КоличествоГруппировок Цикл
НоваяКнопка = ЭлементыФормы.Добавить(Тип("Кнопка"), ПрефиксИмениКн + Сч, , Панель);
НоваяКнопка.Верх = НачалоВерх;
НоваяКнопка.Лево = НачалоЛево + (ШагКнопок * (Сч - 1));
НоваяКнопка.Высота = 11;
НоваяКнопка.Ширина = 11;
НоваяКнопка.Шрифт = Новый Шрифт("Шрифт диалогов и меню", 6);
НоваяКнопка.Заголовок = "" + Сч;
НоваяКнопка.УстановитьДействие("Нажатие", Новый Действие("СвернутьДоУровня"));
КонецЦикла;
НачалоЛево = НачалоЛево + Сч * ШагКнопок + 3;
// Добавть новые кнопки по количеству группировок
КоличествоГруппировок = ЭлементТабПоле.КоличествоУровнейГруппировокКолонок();
Для Сч = 1 По КоличествоГруппировок Цикл
НоваяКнопка = ЭлементыФормы.Добавить(Тип("Кнопка"), ПрефиксИмениКнВерт + Сч, , Панель);
НоваяКнопка.Верх = НачалоВерх + (ШагКнопок * (Сч - 1));
НоваяКнопка.Лево = НачалоЛево;
НоваяКнопка.Высота = 11;
НоваяКнопка.Ширина = 11;
НоваяКнопка.Шрифт = Новый Шрифт("Шрифт диалогов и меню", 6);
НоваяКнопка.Заголовок = "" + Сч;
НоваяКнопка.УстановитьДействие("Нажатие", Новый Действие("СвернутьДоУровняКолонки"));
КонецЦикла;
КонецПроцедуры //СгенерироватьКнопкиУправленияГруппировкой()
Процедура СвернутьДоУровня(Элемент)
Уровень = Число(Элемент.Заголовок); // здесь записан нужный уровень
Имя = СтрЗаменить(Элемент.Имя, "_", Символы.ПС);
Имя = СтрПолучитьСтроку(Имя, 2);
ЭлементыФормы[Имя].ПоказатьУровеньГруппировокСтрок(Уровень - 1);
КонецПроцедуры //СвернутьДоУровня()
Процедура СвернутьДоУровняКолонки(Элемент)
Уровень = Число(Элемент.Заголовок); // здесь записан нужный уровень
Имя = СтрЗаменить(Элемент.Имя, "_", Символы.ПС);
Имя = СтрПолучитьСтроку(Имя, 2);
ЭлементыФормы[Имя].ПоказатьУровеньГруппировокКолонок(Уровень - 1);
КонецПроцедуры //СвернутьДоУровня()
ЧтениеXML = Новый ЧтениеXML;
ЧтениеXML.ОткрытьФайл(ИмяФайла);
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ЧтениеXML);
ЧтениеXML.Закрыть();
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки(), , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
Таблица = ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);
ВнешниеНаборыДанных = Новый Структура;
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.ПолучитьНастройки(), ДанныеРасшифровки);
ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборыДанных, ДанныеРасшифровки, Истина);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновки, Истина);
ОбработкаОбъект = РеквизитФормыВЗначение("Объект");
СхемаСКД = ОбработкаОбъект.ПолучитьМакет("СхемаСКД");
АдресСхемы = ПоместитьВоВременноеХранилище(СхемаСКД, УникальныйИдентификатор);
ИсточникДоступныхНастроек = Новый ИсточникДоступныхНастроекКомпоновкиДанных(АдресСхемы);
КомпоновщикНастроек.Инициализировать(ИсточникДоступныхНастроек);
КомпоновщикНастроек.ЗагрузитьНастройки(СхемаСКД.НастройкиПоУмолчанию);
СхемаСКД = ПолучитьМакет("СхемаСКД");
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаСКД));
КомпоновщикНастроек.ЗагрузитьНастройки(СхемаСКД.НастройкиПоУмолчанию);