:: Вопросы по 1С
Выгрузка Таблицы Значений в файл
Сергей_Л
Автор

Сообщений: 20257
Откуда: Киров(Вятка)
Дата регистрации: 07.02.2005
Бывает при отладке необходимо посмотреть результаты запроса в обработке, причем сохранить в файл для детального изучения.
Если запрос простой, то нет проблем, затаскиваешь в консоль запросов и все, а если сложный с временными таблицами, то консоль не поможет.
Нашел в инете кусок кода, добавил в него еще запись наименований колонок, может кому пригодится:


ТЗ=Запрос.Выполнить().Выгрузить();

Макет = Новый ТабличныйДокумент;
Секция = Макет.ПолучитьОбласть("R1C1");
Макет.Вывести(Секция);
Строка = 1;
Колонка = 0;

Для Каждого Кол из ТЗ.Колонки Цикл
Колонка = Колонка + 1;
Секция = Макет.ПолучитьОбласть("R"+Строка+"C"+Колонка);
Секция.Область().Текст = Кол.Имя;
Макет.Присоединить(Секция);
КонецЦикла;

Строка = 0;
Колонка = 0;

Для Каждого Стр из ТЗ Цикл
Строка = Строка + 1;
Колонка = 0;
Секция = Макет.ПолучитьОбласть("R"+Строка+"C1");
Макет.Вывести(Секция);
Для Каждого Кол из ТЗ.Колонки Цикл
Колонка = Колонка + 1;
Секция = Макет.ПолучитьОбласть("R"+Строка+"C"+Колонка);
Секция.Область().Текст = Стр[Кол.Имя];
Макет.Присоединить(Секция);
КонецЦикла;
КонецЦикла;

ДиалогФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
ДиалогФайла.Фильтр = "Файл Excel (*.xls)|*.xls";

Если ДиалогФайла.Выбрать() Тогда
Макет.Записать(ДиалогФайла.ПолноеИмяФайла, ТипФайлаТабличногоДокумента.XLS);
Сообщить("Файл записан: " + ДиалогФайла.ПолноеИмяФайла);
КонецЕсли;


------------------
«Не причиняй зла никому и делай добро всем людям, хотя бы только потому, что это люди.»
(Марк Туллий Цицерон)




Исправлено 1 раз(а). Последнее : Сергей_Л, 29.05.12 10:08
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
medstrax
Забанен

Сообщений: 5964
Дата регистрации: 23.03.2007
А к чему такие сложности? Можно в отладчике сохранить таблицу значений как текстовый, либо табличный документ. Вот с деревом значений так сделать нельзя и это иногда напрягает.
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
piva

Сообщений: 18655
Откуда: Курган
Дата регистрации: 24.03.2004
А через построитель отчета не проще было бы ?

Отчет=Новый ПостроительОтчета;
Отчет.ИсточникДанных=Новый ОписаниеИсточникаДанных(ТЗ);
ТабДок=Новый ТабличныйДокумент;
Отчет.ОтображатьСостояние=Истина;
Отчет.Вывести(ТабДок);
ТабДок.Показать();

Уж если начал писать такие конструкции

Секция = Макет.ПолучитьОбласть("R"+Строка+"C"+Колонка);
Секция.Область().Текст = Стр[Кол.Имя];

Тогда пользовал бы их проще
Макет.Область(Строка,Колонка).Текст=Стр[Кол.Имя]

Мда


------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
medstrax
Забанен

Сообщений: 5964
Дата регистрации: 23.03.2007
Совсем минималистичный вариант. Можно кинуть на форму табличное поле с типом "Таблица значений" ("дерево значений") И написать 2 строчки
ЭлементыФормы.ТП.Значение = Запрос.Выполнить().Выгрузить();
ЭлементыФормы.ТП.СоздатьКолонки();
После вывода таблички на форму, щелкаем правой кнопкой по табличному полю и выбираем "Вывести список".
Работает также и с деревом значений.
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
Сергей_Л
Автор

Сообщений: 20257
Откуда: Киров(Вятка)
Дата регистрации: 07.02.2005
piva
Уж если начал писать такие конструкции
Секция = Макет.ПолучитьОбласть("R"+Строка+"C"+Колонка);
Секция.Область().Текст = Стр[Кол.Имя];

Тогда пользовал бы их проще
Макет.Область(Строка,Колонка).Текст=Стр[Кол.Имя]
Я же говорю, скопипастил из инета, раз работает, над оптимизацией не задумывался. А кстати раз ты предложил, можно весь модернизированный рабочий код?


------------------
«Не причиняй зла никому и делай добро всем людям, хотя бы только потому, что это люди.»
(Марк Туллий Цицерон)
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
Сергей_Л
Автор

Сообщений: 20257
Откуда: Киров(Вятка)
Дата регистрации: 07.02.2005
medstrax
Совсем минималистичный вариант
Всех победил!


------------------
«Не причиняй зла никому и делай добро всем людям, хотя бы только потому, что это люди.»
(Марк Туллий Цицерон)
Ratings: 0 negative/0 positive
Re: Выгрузка Таблицы Значений в файл
piva

Сообщений: 18655
Откуда: Курган
Дата регистрации: 24.03.2004
Shift-F9 В отладчике - еще короче


------------------
Часто бывает так, что есть над чем задуматься, а нечем.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 1 (Гостей: 1)

© 2000-2024 Fox Club 
Яндекс.Метрика