Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
15 дек 2024, 05:45

Обработка выгрузки данных в Excel

Автор Danisimo, 25 июл 2022, 15:28

0 Пользователей и 1 гость просматривают эту тему.

Danisimo

Добрый день.
Подскажите пожалуйста.  Пишу простенькую обработку. По меркам матёрых программистов. Сам пока учусь.
Суть обработки - это выгрузка на лист Excel в столбик UUID. Пока что по нажатию кнопки. В выбранную книгу.
Не выгружает, не даёт выбрать файл. Из необходимого выдаёт UUID.
Screenshot_4.png
&НаСервере
Функция ВыгрузитьДанныеСервер()
   Попытка
      Excel = Новый COMОбъект("Excel.Application");
   Исключение
      Сообщить(ОписаниеОшибки() + "Возможно программа Exсel не установлена на данном компьютере!");
      Возврат Ложь;
   КонецПопытки;
   Книга = Excel.WorkBooks.Open(ПутьКФайлу);
   Лист = Excel.WorkBook.WorkSheets(1);
   Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |   Организации.Ссылка КАК Ссылка
   |ИЗ
   |   Справочник.Организации КАК Организации";
   
   РезультатЗапроса = Запрос.Выполнить();
   ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
   
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
      i = 1;
      СсылкаНаОбъект = ВыборкаДетальныеЗаписи.Ссылка;
      UUID = СсылкаНаОбъект.УникальныйИдентификатор();
      Лист.Cells(i, "A").Value = UUID;
      i=i+1;
   КонецЦикла;
   Попытка
      Книга.SaveAs("C:\Users\popov_DA\Downloads\Данные UUID");
      Книга.Close();
      Excel.Quit();
   Исключение
      Книга.Close();
      Excel.Quit();
   КонецПопытки;
КонецФункции
&НаКлиенте
Процедура ПутьКФайлуНачалоВыбора(ИмяРеквизита, ФлагСтандартнойОбработки)
   Если ИмяРеквизита="ВыбФайл" Тогда
      ФлагСтандартнойОбработки=0;
      ПутьФайла=СокрЛП(ПутьКФайлу);
      ИмяФайла=СокрЛП(ПутьКФайлу);
      Если ФлагСтандартнойОбработки.ВыбратьФайл(0,ИмяФайла,ПутьФайла,"Укажите файл","Все файлы (*.*)|*.*","")=1 Тогда
         ВыбФайл=СокрЛП(ПутьФайла)+СокрЛП(ИмяФайла);
      КонецЕсли;
   КонецЕсли;
КонецПроцедуры

Процедура ВыгрузитьДанные(Команда)
   
   ВыгрузитьДанныеСервер()
   
КонецПроцедуры

Похожие темы (5)

Рейтинг@Mail.ru

Поиск