Skip to content

НаборЗапросовИзСхемыКомпоновки и НаборЗапросовИзМакетаКомпоновки #75

@SeiOkami

Description

@SeiOkami
// Получает запросы, которые будут выполняться
//
// Параметры:
//  СхемаИлиАдрес				- СхемаКомпоновкиДанных, Строка	- СКД или Адрес на временное хранилище с СКД
//	НастройкиКомпоновкиДанных	- НастройкиКомпоновкиДанных		- Настройки, которые необходимо выполнять. Если не заполнено, будут выполняться НастройкиПоУмолчанию
//
// Возвращаемое значение:
//   Структура   - набор запросов.
//
Функция НаборЗапросовИзСхемыКомпоновки(СхемаИлиАдрес, НастройкиКомпоновкиДанных = Неопределено) Экспорт
	
	СКД			= ?(ЭтоАдресВременногоХранилища(СхемаИлиАдрес), ПолучитьИзВременногоХранилища(СхемаИлиАдрес), СхемаИлиАдрес);
	Настройки	= ?(НастройкиКомпоновкиДанных = Неопределено, СКД.НастройкиПоУмолчанию, НастройкиКомпоновкиДанных);
	
	КомпоновщикМакета	= Новый КомпоновщикМакетаКомпоновкиДанных;     
	МакетКомпоновки		= КомпоновщикМакета.Выполнить(СКД, Настройки);
	
	Возврат НаборЗапросовИзМакетаКомпоновки(МакетКомпоновки);
	
КонецФункции

// Получает запросы, которые будут выполняться
//
// Параметры:
//  МакетКомпоновки				- МакетКомпоновкиДанных	- Макет компоновки данных.
//
// Возвращаемое значение:
//   Структура   - набор запросов.
//
Функция НаборЗапросовИзМакетаКомпоновки(МакетКомпоновки) Экспорт
	
	НаборЗапросов		= Новый Структура();
	ПараметрыЗапроса	= Новый Структура();
	Для Каждого ЗначениеПараметра Из МакетКомпоновки.ЗначенияПараметров Цикл
		ПараметрыЗапроса.Вставить(ЗначениеПараметра.Имя, ЗначениеПараметра.Значение);
	КонецЦикла;
	Для Каждого НаборДанных Из МакетКомпоновки.НаборыДанных Цикл
		Если ТипЗнч(НаборДанных) = Тип("НаборДанныхЗапросМакетаКомпоновкиДанных") Тогда
			НаборЗапросов.Вставить(НаборДанных.Имя, ДополнительныеПараметрыПоУмолчанию("ОписаниеЗапроса"));
			НаборЗапросов[НаборДанных.Имя].ТекстЗапроса	= НаборДанных.Запрос;
			НаборЗапросов[НаборДанных.Имя].Параметры	= КопияЗначения(ПараметрыЗапроса);
		КонецЕсли;
	КонецЦикла;
	
	Возврат НаборЗапросов;
	
КонецФункции

Metadata

Metadata

Assignees

No one assigned

    Labels

    СКДСистема компоновки данных

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions