Шаблон загрузки из Excel штатными средствами платформы 8.3 (без com, ado, Excel Application) (обычные и управляемые формы)

Обмен - Загрузка и выгрузка в Excel

Загрузка из Excel загрузка через табличный документ передача файлов с клиента на сервер программное отображение таблицы значений на форме

6
Шаблон для быстрой загрузки из Excel (форматы *.xls, *.xlsx) средствами платформы 8.3 с помощью табличного документа. Не нужно работать с MSExcel.Application, ADO. В платформе 8.3 у табличного документа развили метод Прочитать(), и сейчас можно загружать данные не только из файлов *.mxl, но и *.xls и *.xlsx. Подробнее в описании.

Шаблон для быстрой загрузки различных файлов Excel.

В новых версиях платформы, у табличного документа можно воспользоваться методом Прочитать(ИмяФайла, СпособЧтенияЗначений) для загрузки данных из файлов *.xls, *.xlsx, причем необязательно указывать формат загружаемого файла (второй необязательный параметр).

СпособЧтенияЗначений - Определяет, каким образом нужно интерпретировать значения, считываемые из исходного документа XLS, XLSX или ODS.

Принцип работы обработки

1) Загрузка данных из файла Excel в новый табличный документ:

//загрузка из Excel в табличный документ
ТабДокумент = Новый ТабличныйДокумент;
ТабДокумент.Прочитать(ИмяФайлаНаСервере);

2) Загружаем в построитель отчета как источник данных

ВсегоСтрок = ТабДокумент.ВысотаТаблицы;
ВсегоКолонок = ТабДокумент.ШиринаТаблицы;
	
Если ВсегоСтрок = 0 Тогда
	Возврат;
КонецЕсли;

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

3) Выгружаем результат построителя в ТЗ

ПостроительОтчета.Выполнить();
	
//в таблице значений - таблица загруженных данных
ТабЗначений = ПостроительОтчета.Результат.Выгрузить();

 

При этом имена колонок формируются по первой строке таблице (заголовки), преобразуя текст в ячейке по правилам именования (пример: "Дата рождения" преобразуется "ДатаРождения".

Важно: метод Прочитать() не работает на клиенте, поэтому при работе на управляемых формах в клиент-серверной базе, необходимо будет передать сам файл с клиента через временное хранилище на сервер.

В дальнейшем можно работать непосредственно с таблицей значений.

В Обработке - пример реализации шаблона, для обычных и управляемых форм (одна обработка с двумя формами), при этом:

1) диалог выбора файла Excel,

2) для управляемых форм - передача через временное хранилище файла с клиента на сервер,

3) автоматическое создание колонок, реквизитов и вывод на форму вновь загруженной таблицы значений.

Тестировалось на платформе 8.3.12.1567, на конфигурациях УТ 10.3 и ЗУП 3.1.

6

Скачать файлы

Наименование Файл Версия Размер
шаблон загрузки из Excel штатными средствами платформы 8.3 (без com, ado, Excel Application) (обычные и управляемые формы):
.epf 10,98Kb
07.12.18
2
.epf 10,98Kb 2 Скачать

См. также

Специальные предложения

Избранное Подписка Сортировка: Древо
В этой теме еще нет сообщений.
Оставьте свое сообщение