Загрузка данных


&НаСервере
Процедура ИмпортироватьНаСервере(АдресФайла)

    ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайла);

    ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xlsx");
    ДвоичныеДанные.Записать(ИмяВременногоФайла);

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

    Добавлено = 0;
    Пропущено = 0;

    Для НомерСтроки = 2 По ТабличныйДокумент.ВысотаТаблицы Цикл

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

        Комментарий = СокрЛП(
            ТабличныйДокумент.Область(НомерСтроки, 2).Текст
        );

        Если ПустаяСтрока(Наименование) Тогда
            Продолжить;
        КонецЕсли;

        СуществующаяЗаявка =
            Справочники.Заявки.НайтиПоНаименованию(Наименование);

        Если НЕ СуществующаяЗаявка.Пустая() Тогда
            Пропущено = Пропущено + 1;
            Продолжить;
        КонецЕсли;

        НоваяЗаявка = Справочники.Заявки.СоздатьЭлемент();
        НоваяЗаявка.Наименование = Наименование;
        НоваяЗаявка.Комментарий = Комментарий;
        НоваяЗаявка.Записать();

        Добавлено = Добавлено + 1;

    КонецЦикла;

    УдалитьФайлы(ИмяВременногоФайла);

    Сообщить(
        "Импорт завершен. Добавлено: " + Добавлено
        + ", пропущено дубликатов: " + Пропущено
    );

КонецПроцедуры