Имя: Пароль:
1C
 
Тип не определен (ПостроительЗапроса)
🠗 (Волшебник 11.06.2025 09:09)
0 Andaluz
 
10.06.25
20:03
Добрый День! Хочу перенести данные из Excel в справочник. Выдает такую вот ошибку. Сюда можно код кидать?
1 Andaluz
 
10.06.25
20:11
&НаКлиенте
Процедура ОбработатьФайл(ВыбранноеИмяФайла)
    ТабДок = Новый ТабличныйДокумент;
    ТабДок.Прочитать(ВыбранноеИмяФайла,СпособЧтенияЗначенийТабличногоДокумента.Значение);
    ПостроительЗапроса = Новый ПостроительЗапроса ;
    ПостроительЗапроса.ИсточникДанных = Новый ОписаниеИсточникаДанных (ТабДок.Область("materials_import"));
    ПостроительЗапроса.Выполнить();
    ТаблицаЗначений=ПостроительЗапроса.Результат.Выгрузить();
    Для Каждого СтрокаТаблицы Из ТаблицаЗначений Цикл
        Если Не ЗначениеЗаполнено (СтрокаТаблицы.Наименование) Тогда
            Продолжить;
        КонецЕсли;
        Материалы=Справочники.МатериалыExcel.СоздатьЭлемент();
        МатериалыExcel.ТипМатериала = СтрокаТаблицы.ТипМатериала;
        МатериалыExcel.ЦенаЕдиницыМатериала = СтрокаТаблицы.ЦенаЕдиницыМатериала;
        МатериалыExcel.КоличествоНаСкладе = СтрокаТаблицы.КоличествоНаСкладе;
        МатериалыExcel.МинимальноеКоличество = СтрокаТаблицы.МинимальноеКоличество;
        МатериалыExcel.КоличествоВУпаковке = СтрокаТаблицы.КоличествоВУпаковке;
        МатериалыExcel.ЕдиницаИзмерения = СторкаТаблицы.ЕдиницаИзмерения;
        МатериалыExcel.Записать();
    КонецЦикла;
КонецПроцедуры
2 Волшебник
 
10.06.25
20:49
Обновите платформу
3 Andaluz
 
10.06.25
20:49
Нашел проблему... Надо было делать запрос на сервере
4 Волшебник
 
10.06.25
20:50
Перенесите процедуру в контекст сервера
5 Волшебник
 
10.06.25
20:52
выравнивайте такие блоки по знаку равно "="
МатериалыExcel.ТипМатериала            = СтрокаТаблицы.ТипМатериала;
МатериалыExcel.ЦенаЕдиницыМатериала    = СтрокаТаблицы.ЦенаЕдиницыМатериала;
МатериалыExcel.КоличествоНаСкладе      = СтрокаТаблицы.КоличествоНаСкладе;
МатериалыExcel.МинимальноеКоличество   = СтрокаТаблицы.МинимальноеКоличество;
МатериалыExcel.КоличествоВУпаковке     = СтрокаТаблицы.КоличествоВУпаковке;
МатериалыExcel.ЕдиницаИзмерения        = СторкаТаблицы.ЕдиницаИзмерения;
6 Волшебник
 
10.06.25
20:52
Ваш программный код должен не только работать правильно, но и выглядеть красиво!
7 Мультук
 
гуру
10.06.25
20:52
(1)

Справочники.МатериалыExcel -- прикольное имя справочника.

Нужно напрячься и внезапно узнать что

а) Всё это стоит делать &НаСервере
б) СоздатьЭлемент() -- не работает &НаКлиенте
в) ТаблицаЗначений  -- не живёт &НаКлиенте
г) Уже определитесь СторкаТаблицы или СтрокаТаблицы
д) Наименование у справочника заполнять разве не нужно ?

В сети, я думаю, есть куча примеров как передать файл с клиента на сервер, а на сервере этот файл  уже обработать
8 Волшебник
 
10.06.25
20:53
Если имена полей справа и слева совпадают, то используйте процедуру ЗаполнитьЗначенияСвойств(Приемник, Источник)
9 Волшебник
 
10.06.25
20:54
(7) СторкаТаблицы заметил! Глаз — алмаз!
Автор — тупой бот
10 Волшебник
 
10.06.25
20:56
Заебали эти боты. Они просто гонят свои ошибки на форум, как будто тут компилятор с искусственным интеллектом.
Кажется, что это вообще коллективные ники, которые агрегируют промты ебанутых программистов.
11 Andaluz
 
11.06.25
04:15
Извините, Ребят. Сам то далек от всей этой темы, меньше месяца занимаюсь этим мешая со своей работой. Бот? В принципе согласен)
12 Andaluz
 
11.06.25
04:19
Если есть желающие, которые могут помочь с созданием бд для практики в колледже, то буду очень благодарен. Дабы не "гнать" свои ошибки на форум
13 Волшебник
 
11.06.25
09:09
(12) Отвали