Функция ПолучитьФайлДвижений(ОписаниеОшибки)
ТЗДокументы = ПолучитьТЗДокументы();
Запрос = Новый Запрос;
Запрос.Текст = ПолучитьТекстЗапроса();
Запрос.УстановитьПараметр("МассивДокументов", ТЗДокументы.ВыгрузитьКолонку("Ссылка"));
ТЗВсеДвижения = Запрос.Выполнить().Выгрузить();
ТЗВсеДвижения.Индексы.Добавить("Регистратор,ИмяРегистра,ВидРегистра");
темпТЗ = ТЗВсеДвижения.Скопировать(, "Регистратор");
темпТЗ.Свернуть("Регистратор");
МассивДокументов = темпТЗ.ВыгрузитьКолонку("Регистратор");
МассивДокументовСтрукт = Новый Массив;
Для каждого ДокументСсылка Из МассивДокументов Цикл
структДок = Новый Структура("ВидДокумента,Документ", ВидДокумента, Строка(ДокументСсылка.УникальныйИдентификатор()));
МассивДвижений = Новый Массив;
ТЗДвиженияДок = ТЗВсеДвижения.Скопировать(Новый Структура("Регистратор", ДокументСсылка), "ИмяРегистра,ВидРегистра");
ТЗДвиженияДок.Свернуть("ИмяРегистра,ВидРегистра");
Для каждого стрТЗДвиженияДок Из ТЗДвиженияДок Цикл
МассивДвижений.Добавить(Новый Структура("ИмяРегистра,ВидРегистра,ТЗДвижения", стрТЗДвиженияДок.ИмяРегистра, стрТЗДвиженияДок.ВидРегистра,
ЗначениеВСтрокуВнутр(ТЗВсеДвижения.Скопировать(Новый Структура("Регистратор,ИмяРегистра,ВидРегистра",
ДокументСсылка, стрТЗДвиженияДок.ИмяРегистра, стрТЗДвиженияДок.ВидРегистра)))));
КонецЦикла;
структДок.Вставить("Движения", МассивДвижений);
МассивДокументовСтрукт.Добавить(структДок);
КонецЦикла;
ЗаписьJSON = Новый ЗаписьJSON;
ПараметрыЗаписиJSON = Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет) ;
ЗаписьJSON.УстановитьСтроку(ПараметрыЗаписиJSON);
ЗаписатьJSON(ЗаписьJSON, МассивДокументовСтрукт);
СтрокаJSON = ЗаписьJSON.Закрыть();
ИмяВременногоФайла = ПолучитьИмяВременногоФайла(".txt");
ЗначениеВФайл(ИмяВременногоФайла, СтрокаJSON);
ДвоичныеДанные = Новый ДвоичныеДанные(ИмяВременногоФайла);
Адрес = ПоместитьВоВременноеХранилище(ДвоичныеДанные);
Возврат Адрес;
КонецФункции