1С бухгалтерия

Если конфигурация 1С написана с использование БСП, то для передачи запроса и параметров запроса в Консоль запросов можно в отладчике использовать общую функцию:

ОбщегоНазначения.ЗначениеВСтрокуXML(Новый Структура("Текст, Параметры", Запрос.Текст, Запрос.Параметры))

Если БСП нет, то сама функция выглядит так:

Функция ЗначениеВСтрокуXML(Значение) Экспорт
 
	ЗаписьXML = Новый ЗаписьXML;
	ЗаписьXML.УстановитьСтроку();
	СериализаторXDTO.ЗаписатьXML(ЗаписьXML, Значение, НазначениеТипаXML.Явное);
 
	Возврат ЗаписьXML.Закрыть();
КонецФункции

Полученный в отладчике текст копируем и в консоли запросов через кнопку ЕЩЕ - Заполнить из XML вставляем в обработку.
В итоге вставляется и запрос и значения параметров запроса.

Но если нам предстоит переносить не данные самого запроса, а схему компоновки и параметры компоновки данных.
Функция ЗначениеВСтрокуXML в качестве параметров принимает Структуру, поэтому параметры компоновки необходимо преобразовать в структуру. Для этого можно сделать расширение и в общем модуле расширения добавить примерно такую функцию:

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

Тогда в отладчике получение текста XML будет выглядеть так:

ОбщегоНазначения.ЗначениеВСтрокуXML(Новый Структура("Текст, Параметры", Схема.НаборыДанных.Данные.Запрос, ХА_ОбщийМодуль1.Преобразовать(Настройки.ПараметрыДанных.Элементы)))

Соответственно я в общий модуль ОбщийМодуль1 добавил функцию Преобразовать

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • Строки и параграфы переносятся автоматически.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>, <1c7>, <drupal5>, <drupal6>, <javascript>, <php>. Beside the tag style "<foo>" it is also possible to use "[foo]".