Загрузка данных из Excel с произвольным форматом

Есть возможность через внешнее действие загрузить некий Excel и получить его данные для обработки в SQL процедуре. 

Создаем форму и в saveItem вызываем внешнее действие в SELECT 2: 

 select 'io.parseExcel' type, '/uploads/1.xlsx' path, 
    	'' listName, 'parseExcel1' spCallback

Здесь мы указали, что необходимо обработать файл с путем из параметра path с первого листа (имя листа можно указать в параметре listName).

В процедуре SQL коллбека мы можем разобрать содежимое файла: 

CREATE PROCEDURE [dbo].[outer_parseExcel1]
	@parameters ExtendedDictionaryParameter readonly,
	@data nvarchar(128) = '',
	@username nvarchar(128) = ''
AS
BEGIN
	insert into as_temp1 ([key], title, value, value2)
    select * from @parameters 	
END

Для удобства создана временная таблица temp и в нее пишется вся выгрузка колонок:

  • Title - тип данных ячейки,
  • Key - номер строки ячейки,
  • Value - номер колонки ячейки,
  • Value2 -  значений ячейки.

Помимо этих данных будут также переданы входные параметры (type, path, listName, spCallback, langID) и служебные выходные параметры (result, msg).

ВАЖНО. Не нужно рассматривать этот способ как основной способ загрузки данных из внешних источников. Гораздо лучше использовать excel с жесткой структурой (сильно упрощает последующую обработку и анализ данных). См. импорт-экспорт Excel

Falcon Space - функциональная веб-платформа разработки на узком стеке MS SQL/Bootstrap. Вводная по Falcon Space
Насколько полезной была статья?

Google поиск по нашей документации

Выгода от использования Falcon Space

В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Нужна бесплатная консультация?
Планируете делать веб-проект?
Сайт использует Cookie. Правила конфиденциальности OK